fontawesome5;interfont;local frontend resources;languages
This commit is contained in:
		
							parent
							
								
									621771c391
								
							
						
					
					
						commit
						0400e85f89
					
				| 
						 | 
					@ -1,4 +1,8 @@
 | 
				
			||||||
.env
 | 
					.env
 | 
				
			||||||
 | 
					static/css/font-awesome.min.css
 | 
				
			||||||
 | 
					static/js/bootstrap.bundle.min.js
 | 
				
			||||||
 | 
					static/js/jquery.min.js
 | 
				
			||||||
 | 
					static/fonts
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Byte-compiled / optimized / DLL files
 | 
					# Byte-compiled / optimized / DLL files
 | 
				
			||||||
__pycache__/
 | 
					__pycache__/
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										17
									
								
								Dockerfile
								
								
								
								
							
							
						
						
									
										17
									
								
								Dockerfile
								
								
								
								
							| 
						 | 
					@ -5,6 +5,11 @@ WORKDIR /app
 | 
				
			||||||
ENV PYTHONDONTWRITEBYTECODE 1
 | 
					ENV PYTHONDONTWRITEBYTECODE 1
 | 
				
			||||||
ENV PYTHONUNBUFFERED 1
 | 
					ENV PYTHONUNBUFFERED 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# https://github.com/twbs/bootstrap/issues/30553 don't upgrade jquery to 3.5.0 yet
 | 
				
			||||||
 | 
					ENV JQUERY_VERSION=3.4.1
 | 
				
			||||||
 | 
					ENV BOOTSTRAP_VERSION=4.4.1
 | 
				
			||||||
 | 
					ENV INTER_VERSION=3.13
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# install required packages
 | 
					# install required packages
 | 
				
			||||||
RUN apk add --no-cache postgresql-dev gcc python3-dev musl-dev gettext postgresql-client nginx supervisor
 | 
					RUN apk add --no-cache postgresql-dev gcc python3-dev musl-dev gettext postgresql-client nginx supervisor
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -21,6 +26,18 @@ RUN addgroup -S portier && adduser -S portier -G portier
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# add code
 | 
					# add code
 | 
				
			||||||
ADD --chown=portier:portier . /app
 | 
					ADD --chown=portier:portier . /app
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# add static external libraries for frontend
 | 
				
			||||||
 | 
					ADD --chown=portier:portier http://code.jquery.com/jquery-${JQUERY_VERSION}.min.js /app/static/js/jquery.min.js
 | 
				
			||||||
 | 
					ADD --chown=portier:portier https://stackpath.bootstrapcdn.com/bootstrap/${BOOTSTRAP_VERSION}/js/bootstrap.bundle.min.js /app/static/js/bootstrap.bundle.min.js
 | 
				
			||||||
 | 
					RUN mkdir -p /tmp/inter /app/static/fonts \
 | 
				
			||||||
 | 
					    && cd /tmp/inter && wget https://github.com/rsms/inter/releases/download/v${INTER_VERSION}/Inter-${INTER_VERSION}.zip \
 | 
				
			||||||
 | 
					    && unzip Inter-${INTER_VERSION}.zip  && mv /tmp/inter/Inter\ Web/* /app/static/fonts/ \
 | 
				
			||||||
 | 
					    && cd - \
 | 
				
			||||||
 | 
					    && rm -rf /tmp/inter \
 | 
				
			||||||
 | 
					    && chown -R portier:portier /app/static/fonts/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# collect static files and compile localized strings
 | 
				
			||||||
RUN ./manage.py collectstatic --noinput --link
 | 
					RUN ./manage.py collectstatic --noinput --link
 | 
				
			||||||
RUN ./manage.py compilemessages
 | 
					RUN ./manage.py compilemessages
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,6 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$primary: rgb(17, 114, 26);
 | 
				
			||||||
 | 
					$font-family-sans-serif: Inter,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
 | 
				
			||||||
 | 
					$enable-shadows: true;
 | 
				
			||||||
 | 
					$enable-responsive-font-sizes: true;
 | 
				
			||||||
 | 
					$enable-rounded: false;
 | 
				
			||||||
| 
						 | 
					@ -8,7 +8,7 @@ msgid ""
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
"Project-Id-Version: PACKAGE VERSION\n"
 | 
					"Project-Id-Version: PACKAGE VERSION\n"
 | 
				
			||||||
"Report-Msgid-Bugs-To: \n"
 | 
					"Report-Msgid-Bugs-To: \n"
 | 
				
			||||||
"POT-Creation-Date: 2020-05-01 12:17+0000\n"
 | 
					"POT-Creation-Date: 2020-05-01 17:01+0000\n"
 | 
				
			||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
					"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
				
			||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
					"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
				
			||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
					"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
				
			||||||
| 
						 | 
					@ -18,6 +18,14 @@ msgstr ""
 | 
				
			||||||
"Content-Transfer-Encoding: 8bit\n"
 | 
					"Content-Transfer-Encoding: 8bit\n"
 | 
				
			||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 | 
					"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: portier/settings.py:139
 | 
				
			||||||
 | 
					msgid "German"
 | 
				
			||||||
 | 
					msgstr "Deutsch"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: portier/settings.py:140
 | 
				
			||||||
 | 
					msgid "English"
 | 
				
			||||||
 | 
					msgstr "Englisch"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/models.py:11
 | 
					#: restream/models.py:11
 | 
				
			||||||
msgid "restreamconfig_stream_help"
 | 
					msgid "restreamconfig_stream_help"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
| 
						 | 
					@ -49,19 +57,20 @@ msgstr ""
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_confirm_delete.html:6
 | 
					#: restream/templates/restream/restreamconfig_confirm_delete.html:6
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_confirm_delete.html:6
 | 
					#: rtmp/templates/rtmp/stream_confirm_delete.html:6
 | 
				
			||||||
msgid "confirm_delete_header"
 | 
					msgid "confirm_delete_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Löschen bestätigen"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_confirm_delete.html:12
 | 
					#: restream/templates/restream/restreamconfig_confirm_delete.html:12
 | 
				
			||||||
#, python-format
 | 
					#, python-format
 | 
				
			||||||
msgid "are_you_sure_you_want_to_delete_\"%(restreamconfig_config_name)s\"?"
 | 
					msgid "are_you_sure_you_want_to_delete_\"%(restreamconfig_config_name)s\"?"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					"Bist du sicher, dass du \"%(restreamconfig_config_name)s\" löschen willst?"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_confirm_delete.html:15
 | 
					#: restream/templates/restream/restreamconfig_confirm_delete.html:15
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:20
 | 
					#: restream/templates/restream/restreamconfig_detail.html:20
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_confirm_delete.html:18
 | 
					#: rtmp/templates/rtmp/stream_confirm_delete.html:18
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:20
 | 
					#: rtmp/templates/rtmp/stream_detail.html:20
 | 
				
			||||||
msgid "delete"
 | 
					msgid "delete"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Löschen"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:12
 | 
					#: restream/templates/restream/restreamconfig_detail.html:12
 | 
				
			||||||
msgid "restreamconfig_configuration_details_header"
 | 
					msgid "restreamconfig_configuration_details_header"
 | 
				
			||||||
| 
						 | 
					@ -70,26 +79,26 @@ msgstr ""
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:17
 | 
					#: restream/templates/restream/restreamconfig_detail.html:17
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:17
 | 
					#: rtmp/templates/rtmp/stream_detail.html:17
 | 
				
			||||||
msgid "change"
 | 
					msgid "change"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Ändern"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:28
 | 
					#: restream/templates/restream/restreamconfig_detail.html:28
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:18
 | 
					#: restream/templates/restream/restreamconfig_list.html:18
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:28
 | 
					#: rtmp/templates/rtmp/stream_detail.html:28
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:18
 | 
					#: rtmp/templates/rtmp/stream_list.html:18
 | 
				
			||||||
msgid "name"
 | 
					msgid "name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Name"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:30
 | 
					#: restream/templates/restream/restreamconfig_detail.html:30
 | 
				
			||||||
msgid "stream"
 | 
					msgid "stream"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stream"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:35
 | 
					#: restream/templates/restream/restreamconfig_detail.html:35
 | 
				
			||||||
msgid "configured_target_url"
 | 
					msgid "configured_target_url"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Konfigurierte Ziel-URL"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_form.html:5
 | 
					#: restream/templates/restream/restreamconfig_form.html:5
 | 
				
			||||||
msgid "create_new_restreamconfig_configuration_header"
 | 
					msgid "create_new_restreamconfig_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Neue Restream Konfiguration erstellen"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_form.html:14
 | 
					#: restream/templates/restream/restreamconfig_form.html:14
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_update_form.html:14
 | 
					#: restream/templates/restream/restreamconfig_update_form.html:14
 | 
				
			||||||
| 
						 | 
					@ -98,7 +107,7 @@ msgstr ""
 | 
				
			||||||
#: templates/registration/password_change_form.html:13
 | 
					#: templates/registration/password_change_form.html:13
 | 
				
			||||||
#: templates/registration/password_reset_form.html:13
 | 
					#: templates/registration/password_reset_form.html:13
 | 
				
			||||||
msgid "submit"
 | 
					msgid "submit"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Abschicken"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_form.html:21
 | 
					#: restream/templates/restream/restreamconfig_form.html:21
 | 
				
			||||||
msgid "create_new_restreamconfig_configuration_text_html"
 | 
					msgid "create_new_restreamconfig_configuration_text_html"
 | 
				
			||||||
| 
						 | 
					@ -106,30 +115,30 @@ msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:8
 | 
					#: restream/templates/restream/restreamconfig_list.html:8
 | 
				
			||||||
msgid "restreamconfig_configuration_header"
 | 
					msgid "restreamconfig_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Restream Konfiguration"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:12
 | 
					#: restream/templates/restream/restreamconfig_list.html:12
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:12
 | 
					#: rtmp/templates/rtmp/stream_list.html:12
 | 
				
			||||||
msgid "create"
 | 
					msgid "create"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Erstellen"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:19
 | 
					#: restream/templates/restream/restreamconfig_list.html:19
 | 
				
			||||||
msgid "active"
 | 
					msgid "active"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Aktiv"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:20
 | 
					#: restream/templates/restream/restreamconfig_list.html:20
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:20
 | 
					#: rtmp/templates/rtmp/stream_list.html:20
 | 
				
			||||||
msgid "actions"
 | 
					msgid "actions"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Aktionen"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:38
 | 
					#: restream/templates/restream/restreamconfig_list.html:38
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:38
 | 
					#: rtmp/templates/rtmp/stream_list.html:38
 | 
				
			||||||
msgid "details"
 | 
					msgid "details"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Details"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_update_form.html:5
 | 
					#: restream/templates/restream/restreamconfig_update_form.html:5
 | 
				
			||||||
msgid "update_restreamconfig_configuration_header"
 | 
					msgid "update_restreamconfig_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Restream Konfiguration anpassen"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_update_form.html:21
 | 
					#: restream/templates/restream/restreamconfig_update_form.html:21
 | 
				
			||||||
msgid "update_restreamconfig_configuration_text_html"
 | 
					msgid "update_restreamconfig_configuration_text_html"
 | 
				
			||||||
| 
						 | 
					@ -137,80 +146,82 @@ msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:13
 | 
					#: rtmp/models.py:13
 | 
				
			||||||
msgid "rtmp_application_name"
 | 
					msgid "rtmp_application_name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "RTMP Application Name"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:16
 | 
					#: rtmp/models.py:16
 | 
				
			||||||
msgid "application_verbose_name"
 | 
					msgid "application_verbose_name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Application"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:17
 | 
					#: rtmp/models.py:17
 | 
				
			||||||
msgid "application_verbose_name_plural"
 | 
					msgid "application_verbose_name_plural"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Applications"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:20
 | 
					#: rtmp/models.py:20
 | 
				
			||||||
msgid "aplication_class_name"
 | 
					msgid "aplication_class_name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Application"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:27
 | 
					#: rtmp/models.py:27
 | 
				
			||||||
msgid "stream_application_help"
 | 
					msgid "stream_application_help"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Unter welcher RTMP Application gilt diese Stream ID"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:28
 | 
					#: rtmp/models.py:28
 | 
				
			||||||
msgid "stream_stream_help"
 | 
					msgid "stream_stream_help"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "RTMP Stream ID"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:29
 | 
					#: rtmp/models.py:29
 | 
				
			||||||
msgid "stream_name_help"
 | 
					msgid "stream_name_help"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Name für diesen Stream"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:68
 | 
					#: rtmp/models.py:68
 | 
				
			||||||
msgid "stream_class_name"
 | 
					msgid "stream_class_name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stream"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_confirm_delete.html:13
 | 
					#: rtmp/templates/rtmp/stream_confirm_delete.html:13
 | 
				
			||||||
msgid "deleting_stream_configuration_will_also_delete_all_depending_confgurations_warning"
 | 
					msgid "deleting_stream_configuration_will_also_delete_all_depending_confgurations_warning"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					"Achtung! Beim Löschen dieser Stream Konfiguration werden auch alle "
 | 
				
			||||||
 | 
					"abhängigen Konfigurationen gelöscht."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_confirm_delete.html:15
 | 
					#: rtmp/templates/rtmp/stream_confirm_delete.html:15
 | 
				
			||||||
#, python-format
 | 
					#, python-format
 | 
				
			||||||
msgid "are_you_sure_you_want_to_delete_\"%(stream_config_name)s\"?"
 | 
					msgid "are_you_sure_you_want_to_delete_\"%(stream_config_name)s\"?"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Willst du wirklich \"%(stream_config_name)s\" löschen?"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_confirm_delete.html:25
 | 
					#: rtmp/templates/rtmp/stream_confirm_delete.html:25
 | 
				
			||||||
msgid "deleting_configurations_list_header"
 | 
					msgid "deleting_configurations_list_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Diese Konfigurationen werden gelöscht"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:12
 | 
					#: rtmp/templates/rtmp/stream_detail.html:12
 | 
				
			||||||
msgid "stream_configuration_details_header"
 | 
					msgid "stream_configuration_details_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stream Konfiguration Details"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:30
 | 
					#: rtmp/templates/rtmp/stream_detail.html:30
 | 
				
			||||||
msgid "application"
 | 
					msgid "application"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Application"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:33
 | 
					#: rtmp/templates/rtmp/stream_detail.html:33
 | 
				
			||||||
msgid "stream_configuration_do_not_share_warning"
 | 
					msgid "stream_configuration_do_not_share_warning"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Achtung! Gebe diese Stream ID niemals weiter."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:36
 | 
					#: rtmp/templates/rtmp/stream_detail.html:36
 | 
				
			||||||
msgid "how_to_configure_your_encoder_header"
 | 
					msgid "how_to_configure_your_encoder_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Wie du deinen Encoder konfigurierst"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:38
 | 
					#: rtmp/templates/rtmp/stream_detail.html:38
 | 
				
			||||||
msgid "set_this_stream_server_in_encoder"
 | 
					msgid "set_this_stream_server_in_encoder"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stelle diesen Stream Server in deinem Encoder ein"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:40
 | 
					#: rtmp/templates/rtmp/stream_detail.html:40
 | 
				
			||||||
msgid "set_this_stream_id_in_encoder"
 | 
					msgid "set_this_stream_id_in_encoder"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stelle diese Stream ID in deinem Encoder ein"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:48
 | 
					#: rtmp/templates/rtmp/stream_detail.html:48
 | 
				
			||||||
msgid "you_may_need_to_use_this_full_url_instead"
 | 
					msgid "you_may_need_to_use_this_full_url_instead"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Vielleicht musst du diese volle URL verwenden"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_form.html:5
 | 
					#: rtmp/templates/rtmp/stream_form.html:5
 | 
				
			||||||
msgid "create_new_stream_configuration_header"
 | 
					msgid "create_new_stream_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Neue Stream Konfiguration erstellen"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_form.html:21
 | 
					#: rtmp/templates/rtmp/stream_form.html:21
 | 
				
			||||||
msgid "create_new_stream_configuration_text_html"
 | 
					msgid "create_new_stream_configuration_text_html"
 | 
				
			||||||
| 
						 | 
					@ -218,63 +229,60 @@ msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:8
 | 
					#: rtmp/templates/rtmp/stream_list.html:8
 | 
				
			||||||
msgid "stream_configuration_header"
 | 
					msgid "stream_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stream Konfiguration"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:19
 | 
					#: rtmp/templates/rtmp/stream_list.html:19
 | 
				
			||||||
msgid "publishing"
 | 
					msgid "receiving"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Empfängt"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_update_form.html:5
 | 
					#: rtmp/templates/rtmp/stream_update_form.html:5
 | 
				
			||||||
msgid "update_stream_configuration_header"
 | 
					msgid "update_stream_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stream Konfiguration anpassen"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_update_form.html:21
 | 
					#: rtmp/templates/rtmp/stream_update_form.html:21
 | 
				
			||||||
msgid "update_stream_configuration_text_html"
 | 
					msgid "update_stream_configuration_text_html"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:36
 | 
					#: templates/base.html:36
 | 
				
			||||||
msgid "navbar_configuration"
 | 
					msgid "navbar_streaming"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Streaming"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:39
 | 
					#: templates/base.html:39
 | 
				
			||||||
msgid "navbar_configuration_streaming_header"
 | 
					msgid "navbar_configuration_streams"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Streams"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:40
 | 
					#: templates/base.html:40
 | 
				
			||||||
msgid "navbar_configuration_streams"
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/base.html:41
 | 
					 | 
				
			||||||
msgid "navbar_configuration_restreams"
 | 
					msgid "navbar_configuration_restreams"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Restreams"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:43
 | 
					#: templates/base.html:47
 | 
				
			||||||
msgid "navbar_configuration_account_header"
 | 
					#, python-format
 | 
				
			||||||
msgstr ""
 | 
					msgid "hello_%(username)s"
 | 
				
			||||||
 | 
					msgstr "Hallo, %(username)s!"
 | 
				
			||||||
#: templates/base.html:44
 | 
					 | 
				
			||||||
msgid "navbar_configuration_password_change"
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:50
 | 
					#: templates/base.html:50
 | 
				
			||||||
msgid "navbar_logout"
 | 
					msgid "navbar_account_password_change"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Passwort ändern"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:52
 | 
					#: templates/base.html:51
 | 
				
			||||||
 | 
					msgid "navbar_account_logout"
 | 
				
			||||||
 | 
					msgstr "Abmelden"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/base.html:55
 | 
				
			||||||
msgid "navbar_login"
 | 
					msgid "navbar_login"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Anmelden"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/login.html:5 templates/registration/login.html:13
 | 
					#: templates/registration/login.html:5 templates/registration/login.html:13
 | 
				
			||||||
msgid "login"
 | 
					msgid "login"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Anmelden"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/login.html:18
 | 
					#: templates/registration/login.html:18
 | 
				
			||||||
msgid "forgot_password_q"
 | 
					msgid "forgot_password_q"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Passwort vergessen?"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/password_change_done.html:5
 | 
					#: templates/registration/password_change_done.html:5
 | 
				
			||||||
msgid "password_change_successful"
 | 
					msgid "password_change_successful"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Passwort erfolgreich geändert"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/password_change_done.html:6
 | 
					#: templates/registration/password_change_done.html:6
 | 
				
			||||||
msgid "password_change_successful_text"
 | 
					msgid "password_change_successful_text"
 | 
				
			||||||
| 
						 | 
					@ -282,11 +290,11 @@ msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/password_change_done.html:7
 | 
					#: templates/registration/password_change_done.html:7
 | 
				
			||||||
msgid "take_me_to_safety"
 | 
					msgid "take_me_to_safety"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Bring mich in Sicherheit!"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/password_change_form.html:5
 | 
					#: templates/registration/password_change_form.html:5
 | 
				
			||||||
msgid "change_password"
 | 
					msgid "change_password"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Passwort ändern"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/password_change_form.html:20
 | 
					#: templates/registration/password_change_form.html:20
 | 
				
			||||||
msgid "change_password_text_html"
 | 
					msgid "change_password_text_html"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -8,7 +8,7 @@ msgid ""
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
"Project-Id-Version: PACKAGE VERSION\n"
 | 
					"Project-Id-Version: PACKAGE VERSION\n"
 | 
				
			||||||
"Report-Msgid-Bugs-To: \n"
 | 
					"Report-Msgid-Bugs-To: \n"
 | 
				
			||||||
"POT-Creation-Date: 2020-05-01 12:17+0000\n"
 | 
					"POT-Creation-Date: 2020-05-01 17:01+0000\n"
 | 
				
			||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
					"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 | 
				
			||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
					"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 | 
				
			||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
					"Language-Team: LANGUAGE <LL@li.org>\n"
 | 
				
			||||||
| 
						 | 
					@ -18,6 +18,14 @@ msgstr ""
 | 
				
			||||||
"Content-Transfer-Encoding: 8bit\n"
 | 
					"Content-Transfer-Encoding: 8bit\n"
 | 
				
			||||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 | 
					"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: portier/settings.py:139
 | 
				
			||||||
 | 
					msgid "German"
 | 
				
			||||||
 | 
					msgstr "German"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: portier/settings.py:140
 | 
				
			||||||
 | 
					msgid "English"
 | 
				
			||||||
 | 
					msgstr "English"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/models.py:11
 | 
					#: restream/models.py:11
 | 
				
			||||||
msgid "restreamconfig_stream_help"
 | 
					msgid "restreamconfig_stream_help"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
| 
						 | 
					@ -36,60 +44,60 @@ msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/models.py:17
 | 
					#: restream/models.py:17
 | 
				
			||||||
msgid "restreamconfig_verbose_name"
 | 
					msgid "restreamconfig_verbose_name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Restream configuration"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/models.py:18
 | 
					#: restream/models.py:18
 | 
				
			||||||
msgid "restreamconfig_verbose_name_plural"
 | 
					msgid "restreamconfig_verbose_name_plural"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Restream configurations"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/models.py:21
 | 
					#: restream/models.py:21
 | 
				
			||||||
msgid "restreamconfig_class_name"
 | 
					msgid "restreamconfig_class_name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Restream configuration"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_confirm_delete.html:6
 | 
					#: restream/templates/restream/restreamconfig_confirm_delete.html:6
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_confirm_delete.html:6
 | 
					#: rtmp/templates/rtmp/stream_confirm_delete.html:6
 | 
				
			||||||
msgid "confirm_delete_header"
 | 
					msgid "confirm_delete_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Confirm deletion"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_confirm_delete.html:12
 | 
					#: restream/templates/restream/restreamconfig_confirm_delete.html:12
 | 
				
			||||||
#, python-format
 | 
					#, python-format
 | 
				
			||||||
msgid "are_you_sure_you_want_to_delete_\"%(restreamconfig_config_name)s\"?"
 | 
					msgid "are_you_sure_you_want_to_delete_\"%(restreamconfig_config_name)s\"?"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Are you sure you want to delete \"%(restreamconfig_config_name)s\"?"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_confirm_delete.html:15
 | 
					#: restream/templates/restream/restreamconfig_confirm_delete.html:15
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:20
 | 
					#: restream/templates/restream/restreamconfig_detail.html:20
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_confirm_delete.html:18
 | 
					#: rtmp/templates/rtmp/stream_confirm_delete.html:18
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:20
 | 
					#: rtmp/templates/rtmp/stream_detail.html:20
 | 
				
			||||||
msgid "delete"
 | 
					msgid "delete"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Delete"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:12
 | 
					#: restream/templates/restream/restreamconfig_detail.html:12
 | 
				
			||||||
msgid "restreamconfig_configuration_details_header"
 | 
					msgid "restreamconfig_configuration_details_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Restream configuration details"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:17
 | 
					#: restream/templates/restream/restreamconfig_detail.html:17
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:17
 | 
					#: rtmp/templates/rtmp/stream_detail.html:17
 | 
				
			||||||
msgid "change"
 | 
					msgid "change"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Change"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:28
 | 
					#: restream/templates/restream/restreamconfig_detail.html:28
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:18
 | 
					#: restream/templates/restream/restreamconfig_list.html:18
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:28
 | 
					#: rtmp/templates/rtmp/stream_detail.html:28
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:18
 | 
					#: rtmp/templates/rtmp/stream_list.html:18
 | 
				
			||||||
msgid "name"
 | 
					msgid "name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Name"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:30
 | 
					#: restream/templates/restream/restreamconfig_detail.html:30
 | 
				
			||||||
msgid "stream"
 | 
					msgid "stream"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stream"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_detail.html:35
 | 
					#: restream/templates/restream/restreamconfig_detail.html:35
 | 
				
			||||||
msgid "configured_target_url"
 | 
					msgid "configured_target_url"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Configured target URL"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_form.html:5
 | 
					#: restream/templates/restream/restreamconfig_form.html:5
 | 
				
			||||||
msgid "create_new_restreamconfig_configuration_header"
 | 
					msgid "create_new_restreamconfig_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Create new restream configuration"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_form.html:14
 | 
					#: restream/templates/restream/restreamconfig_form.html:14
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_update_form.html:14
 | 
					#: restream/templates/restream/restreamconfig_update_form.html:14
 | 
				
			||||||
| 
						 | 
					@ -98,7 +106,7 @@ msgstr ""
 | 
				
			||||||
#: templates/registration/password_change_form.html:13
 | 
					#: templates/registration/password_change_form.html:13
 | 
				
			||||||
#: templates/registration/password_reset_form.html:13
 | 
					#: templates/registration/password_reset_form.html:13
 | 
				
			||||||
msgid "submit"
 | 
					msgid "submit"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Submit"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_form.html:21
 | 
					#: restream/templates/restream/restreamconfig_form.html:21
 | 
				
			||||||
msgid "create_new_restreamconfig_configuration_text_html"
 | 
					msgid "create_new_restreamconfig_configuration_text_html"
 | 
				
			||||||
| 
						 | 
					@ -106,30 +114,30 @@ msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:8
 | 
					#: restream/templates/restream/restreamconfig_list.html:8
 | 
				
			||||||
msgid "restreamconfig_configuration_header"
 | 
					msgid "restreamconfig_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Restream configuration"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:12
 | 
					#: restream/templates/restream/restreamconfig_list.html:12
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:12
 | 
					#: rtmp/templates/rtmp/stream_list.html:12
 | 
				
			||||||
msgid "create"
 | 
					msgid "create"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Create"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:19
 | 
					#: restream/templates/restream/restreamconfig_list.html:19
 | 
				
			||||||
msgid "active"
 | 
					msgid "active"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Active"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:20
 | 
					#: restream/templates/restream/restreamconfig_list.html:20
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:20
 | 
					#: rtmp/templates/rtmp/stream_list.html:20
 | 
				
			||||||
msgid "actions"
 | 
					msgid "actions"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Actions"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_list.html:38
 | 
					#: restream/templates/restream/restreamconfig_list.html:38
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:38
 | 
					#: rtmp/templates/rtmp/stream_list.html:38
 | 
				
			||||||
msgid "details"
 | 
					msgid "details"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Details"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_update_form.html:5
 | 
					#: restream/templates/restream/restreamconfig_update_form.html:5
 | 
				
			||||||
msgid "update_restreamconfig_configuration_header"
 | 
					msgid "update_restreamconfig_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Update restream configuration"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: restream/templates/restream/restreamconfig_update_form.html:21
 | 
					#: restream/templates/restream/restreamconfig_update_form.html:21
 | 
				
			||||||
msgid "update_restreamconfig_configuration_text_html"
 | 
					msgid "update_restreamconfig_configuration_text_html"
 | 
				
			||||||
| 
						 | 
					@ -137,80 +145,82 @@ msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:13
 | 
					#: rtmp/models.py:13
 | 
				
			||||||
msgid "rtmp_application_name"
 | 
					msgid "rtmp_application_name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "RTMP application name"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:16
 | 
					#: rtmp/models.py:16
 | 
				
			||||||
msgid "application_verbose_name"
 | 
					msgid "application_verbose_name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "RTMP application"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:17
 | 
					#: rtmp/models.py:17
 | 
				
			||||||
msgid "application_verbose_name_plural"
 | 
					msgid "application_verbose_name_plural"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "RTMP applications"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:20
 | 
					#: rtmp/models.py:20
 | 
				
			||||||
msgid "aplication_class_name"
 | 
					msgid "aplication_class_name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Application"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:27
 | 
					#: rtmp/models.py:27
 | 
				
			||||||
msgid "stream_application_help"
 | 
					msgid "stream_application_help"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Application which the stream is assigned to"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:28
 | 
					#: rtmp/models.py:28
 | 
				
			||||||
msgid "stream_stream_help"
 | 
					msgid "stream_stream_help"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stream ID for this stream"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:29
 | 
					#: rtmp/models.py:29
 | 
				
			||||||
msgid "stream_name_help"
 | 
					msgid "stream_name_help"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Name for this stream"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/models.py:68
 | 
					#: rtmp/models.py:68
 | 
				
			||||||
msgid "stream_class_name"
 | 
					msgid "stream_class_name"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stream"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_confirm_delete.html:13
 | 
					#: rtmp/templates/rtmp/stream_confirm_delete.html:13
 | 
				
			||||||
msgid "deleting_stream_configuration_will_also_delete_all_depending_confgurations_warning"
 | 
					msgid "deleting_stream_configuration_will_also_delete_all_depending_confgurations_warning"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					"Attention! Deleting this stream configuration will also delete all depending "
 | 
				
			||||||
 | 
					"configurations."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_confirm_delete.html:15
 | 
					#: rtmp/templates/rtmp/stream_confirm_delete.html:15
 | 
				
			||||||
#, python-format
 | 
					#, python-format
 | 
				
			||||||
msgid "are_you_sure_you_want_to_delete_\"%(stream_config_name)s\"?"
 | 
					msgid "are_you_sure_you_want_to_delete_\"%(stream_config_name)s\"?"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Are you sure you want to delete \"%(stream_config_name)s\"?"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_confirm_delete.html:25
 | 
					#: rtmp/templates/rtmp/stream_confirm_delete.html:25
 | 
				
			||||||
msgid "deleting_configurations_list_header"
 | 
					msgid "deleting_configurations_list_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "List of deleted configurations"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:12
 | 
					#: rtmp/templates/rtmp/stream_detail.html:12
 | 
				
			||||||
msgid "stream_configuration_details_header"
 | 
					msgid "stream_configuration_details_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stream configuration details"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:30
 | 
					#: rtmp/templates/rtmp/stream_detail.html:30
 | 
				
			||||||
msgid "application"
 | 
					msgid "application"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Application"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:33
 | 
					#: rtmp/templates/rtmp/stream_detail.html:33
 | 
				
			||||||
msgid "stream_configuration_do_not_share_warning"
 | 
					msgid "stream_configuration_do_not_share_warning"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Attention! Do not share this stream ID with anyone."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:36
 | 
					#: rtmp/templates/rtmp/stream_detail.html:36
 | 
				
			||||||
msgid "how_to_configure_your_encoder_header"
 | 
					msgid "how_to_configure_your_encoder_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "How to configure your encoder"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:38
 | 
					#: rtmp/templates/rtmp/stream_detail.html:38
 | 
				
			||||||
msgid "set_this_stream_server_in_encoder"
 | 
					msgid "set_this_stream_server_in_encoder"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Set this stream server in your encoder"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:40
 | 
					#: rtmp/templates/rtmp/stream_detail.html:40
 | 
				
			||||||
msgid "set_this_stream_id_in_encoder"
 | 
					msgid "set_this_stream_id_in_encoder"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Set this stream ID in your encoder"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_detail.html:48
 | 
					#: rtmp/templates/rtmp/stream_detail.html:48
 | 
				
			||||||
msgid "you_may_need_to_use_this_full_url_instead"
 | 
					msgid "you_may_need_to_use_this_full_url_instead"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "You may need to use this full URL instead"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_form.html:5
 | 
					#: rtmp/templates/rtmp/stream_form.html:5
 | 
				
			||||||
msgid "create_new_stream_configuration_header"
 | 
					msgid "create_new_stream_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Create new stream configuration"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_form.html:21
 | 
					#: rtmp/templates/rtmp/stream_form.html:21
 | 
				
			||||||
msgid "create_new_stream_configuration_text_html"
 | 
					msgid "create_new_stream_configuration_text_html"
 | 
				
			||||||
| 
						 | 
					@ -218,63 +228,60 @@ msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:8
 | 
					#: rtmp/templates/rtmp/stream_list.html:8
 | 
				
			||||||
msgid "stream_configuration_header"
 | 
					msgid "stream_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Stream configuration"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_list.html:19
 | 
					#: rtmp/templates/rtmp/stream_list.html:19
 | 
				
			||||||
msgid "publishing"
 | 
					msgid "receiving"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Receiving"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_update_form.html:5
 | 
					#: rtmp/templates/rtmp/stream_update_form.html:5
 | 
				
			||||||
msgid "update_stream_configuration_header"
 | 
					msgid "update_stream_configuration_header"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Change stream configuration"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: rtmp/templates/rtmp/stream_update_form.html:21
 | 
					#: rtmp/templates/rtmp/stream_update_form.html:21
 | 
				
			||||||
msgid "update_stream_configuration_text_html"
 | 
					msgid "update_stream_configuration_text_html"
 | 
				
			||||||
msgstr ""
 | 
					msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:36
 | 
					#: templates/base.html:36
 | 
				
			||||||
msgid "navbar_configuration"
 | 
					msgid "navbar_streaming"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Streaming"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:39
 | 
					#: templates/base.html:39
 | 
				
			||||||
msgid "navbar_configuration_streaming_header"
 | 
					msgid "navbar_configuration_streams"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Streams"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:40
 | 
					#: templates/base.html:40
 | 
				
			||||||
msgid "navbar_configuration_streams"
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
#: templates/base.html:41
 | 
					 | 
				
			||||||
msgid "navbar_configuration_restreams"
 | 
					msgid "navbar_configuration_restreams"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Restreams"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:43
 | 
					#: templates/base.html:47
 | 
				
			||||||
msgid "navbar_configuration_account_header"
 | 
					#, python-format
 | 
				
			||||||
msgstr ""
 | 
					msgid "hello_%(username)s"
 | 
				
			||||||
 | 
					msgstr "Hello, %(username)s!"
 | 
				
			||||||
#: templates/base.html:44
 | 
					 | 
				
			||||||
msgid "navbar_configuration_password_change"
 | 
					 | 
				
			||||||
msgstr ""
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:50
 | 
					#: templates/base.html:50
 | 
				
			||||||
msgid "navbar_logout"
 | 
					msgid "navbar_account_password_change"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Change password"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/base.html:52
 | 
					#: templates/base.html:51
 | 
				
			||||||
 | 
					msgid "navbar_account_logout"
 | 
				
			||||||
 | 
					msgstr "Logout"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#: templates/base.html:55
 | 
				
			||||||
msgid "navbar_login"
 | 
					msgid "navbar_login"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Login"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/login.html:5 templates/registration/login.html:13
 | 
					#: templates/registration/login.html:5 templates/registration/login.html:13
 | 
				
			||||||
msgid "login"
 | 
					msgid "login"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Login"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/login.html:18
 | 
					#: templates/registration/login.html:18
 | 
				
			||||||
msgid "forgot_password_q"
 | 
					msgid "forgot_password_q"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Did you forget your password?"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/password_change_done.html:5
 | 
					#: templates/registration/password_change_done.html:5
 | 
				
			||||||
msgid "password_change_successful"
 | 
					msgid "password_change_successful"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Password change was successful"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/password_change_done.html:6
 | 
					#: templates/registration/password_change_done.html:6
 | 
				
			||||||
msgid "password_change_successful_text"
 | 
					msgid "password_change_successful_text"
 | 
				
			||||||
| 
						 | 
					@ -282,11 +289,11 @@ msgstr ""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/password_change_done.html:7
 | 
					#: templates/registration/password_change_done.html:7
 | 
				
			||||||
msgid "take_me_to_safety"
 | 
					msgid "take_me_to_safety"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Help! Take me back to safety!"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/password_change_form.html:5
 | 
					#: templates/registration/password_change_form.html:5
 | 
				
			||||||
msgid "change_password"
 | 
					msgid "change_password"
 | 
				
			||||||
msgstr ""
 | 
					msgstr "Change password"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#: templates/registration/password_change_form.html:20
 | 
					#: templates/registration/password_change_form.html:20
 | 
				
			||||||
msgid "change_password_text_html"
 | 
					msgid "change_password_text_html"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -11,6 +11,7 @@ https://docs.djangoproject.com/en/3.0/ref/settings/
 | 
				
			||||||
"""
 | 
					"""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import os
 | 
					import os
 | 
				
			||||||
 | 
					from django.utils.translation import gettext_lazy as _
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
 | 
					# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
 | 
				
			||||||
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
 | 
					BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
 | 
				
			||||||
| 
						 | 
					@ -42,7 +43,7 @@ INSTALLED_APPS = [
 | 
				
			||||||
    'guardian',
 | 
					    'guardian',
 | 
				
			||||||
    'django_registration',
 | 
					    'django_registration',
 | 
				
			||||||
    'bootstrap4',
 | 
					    'bootstrap4',
 | 
				
			||||||
    'fa',
 | 
					    'fontawesome_5',
 | 
				
			||||||
    'core.apps.CoreConfig',
 | 
					    'core.apps.CoreConfig',
 | 
				
			||||||
    'portal.apps.PortalConfig',
 | 
					    'portal.apps.PortalConfig',
 | 
				
			||||||
    'rtmp.apps.RtmpConfig',
 | 
					    'rtmp.apps.RtmpConfig',
 | 
				
			||||||
| 
						 | 
					@ -53,6 +54,7 @@ INSTALLED_APPS = [
 | 
				
			||||||
MIDDLEWARE = [
 | 
					MIDDLEWARE = [
 | 
				
			||||||
    'django.middleware.security.SecurityMiddleware',
 | 
					    'django.middleware.security.SecurityMiddleware',
 | 
				
			||||||
    'django.contrib.sessions.middleware.SessionMiddleware',
 | 
					    'django.contrib.sessions.middleware.SessionMiddleware',
 | 
				
			||||||
 | 
					    'django.middleware.locale.LocaleMiddleware',
 | 
				
			||||||
    'django.middleware.common.CommonMiddleware',
 | 
					    'django.middleware.common.CommonMiddleware',
 | 
				
			||||||
    'django.middleware.csrf.CsrfViewMiddleware',
 | 
					    'django.middleware.csrf.CsrfViewMiddleware',
 | 
				
			||||||
    'django.contrib.auth.middleware.AuthenticationMiddleware',
 | 
					    'django.contrib.auth.middleware.AuthenticationMiddleware',
 | 
				
			||||||
| 
						 | 
					@ -133,6 +135,16 @@ USE_I18N = True
 | 
				
			||||||
USE_L10N = True
 | 
					USE_L10N = True
 | 
				
			||||||
USE_TZ = True
 | 
					USE_TZ = True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					LANGUAGES = [
 | 
				
			||||||
 | 
					  ('de', _('German')),
 | 
				
			||||||
 | 
					  ('en', _('English')),
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					LOCALE_PATHS = (
 | 
				
			||||||
 | 
					    os.path.join(BASE_DIR, 'locale'),
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Static files (CSS, JavaScript, Images)
 | 
					# Static files (CSS, JavaScript, Images)
 | 
				
			||||||
# https://docs.djangoproject.com/en/3.0/howto/static-files/
 | 
					# https://docs.djangoproject.com/en/3.0/howto/static-files/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -19,6 +19,7 @@ from django.urls import include, path
 | 
				
			||||||
urlpatterns = [
 | 
					urlpatterns = [
 | 
				
			||||||
    path('accounts/', include('django_registration.backends.activation.urls')),
 | 
					    path('accounts/', include('django_registration.backends.activation.urls')),
 | 
				
			||||||
    path('accounts/', include('django.contrib.auth.urls')),
 | 
					    path('accounts/', include('django.contrib.auth.urls')),
 | 
				
			||||||
 | 
					    path('i18n/', include('django.conf.urls.i18n')),
 | 
				
			||||||
    path('admin/', admin.site.urls),
 | 
					    path('admin/', admin.site.urls),
 | 
				
			||||||
    path('rtmp/', include('rtmp.urls')),
 | 
					    path('rtmp/', include('rtmp.urls')),
 | 
				
			||||||
    path('restream/', include('restream.urls')),
 | 
					    path('restream/', include('restream.urls')),
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@ django>=3.0
 | 
				
			||||||
django-registration>=3.1
 | 
					django-registration>=3.1
 | 
				
			||||||
django-bootstrap4
 | 
					django-bootstrap4
 | 
				
			||||||
django-guardian
 | 
					django-guardian
 | 
				
			||||||
django-fa
 | 
					django-fontawesome-5
 | 
				
			||||||
celery>=4.4
 | 
					celery>=4.4
 | 
				
			||||||
gunicorn>=20
 | 
					gunicorn>=20
 | 
				
			||||||
psycopg2-binary
 | 
					psycopg2-binary
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
{% extends 'base.html' %}
 | 
					{% extends 'base.html' %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% load font_awesome %}
 | 
					{% load fontawesome_5 %}
 | 
				
			||||||
{% block 'content' %}
 | 
					{% block 'content' %}
 | 
				
			||||||
<h6>{% trans "confirm_delete_header" %}</h6>
 | 
					<h6>{% trans "confirm_delete_header" %}</h6>
 | 
				
			||||||
<hr class="my-4">
 | 
					<hr class="my-4">
 | 
				
			||||||
| 
						 | 
					@ -12,7 +12,7 @@
 | 
				
			||||||
      <p>{% blocktrans with restreamconfig_config_name=object.name %}are_you_sure_you_want_to_delete_"{{ restreamconfig_config_name }}"?{% endblocktrans %}</p>
 | 
					      <p>{% blocktrans with restreamconfig_config_name=object.name %}are_you_sure_you_want_to_delete_"{{ restreamconfig_config_name }}"?{% endblocktrans %}</p>
 | 
				
			||||||
      {% buttons %}
 | 
					      {% buttons %}
 | 
				
			||||||
        <button type="submit" class="btn btn-danger" value="login">
 | 
					        <button type="submit" class="btn btn-danger" value="login">
 | 
				
			||||||
          {% fa 'trash' %} {% trans "delete" %}
 | 
					          {% fa5_icon 'trash' %} {% trans "delete" %}
 | 
				
			||||||
        </button>
 | 
					        </button>
 | 
				
			||||||
      {% endbuttons %}
 | 
					      {% endbuttons %}
 | 
				
			||||||
      <input type="hidden" name="next" value="{{ next }}">
 | 
					      <input type="hidden" name="next" value="{{ next }}">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
{% extends 'base.html' %}
 | 
					{% extends 'base.html' %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% load font_awesome %}
 | 
					{% load fontawesome_5 %}
 | 
				
			||||||
{% load guardian_tags %}
 | 
					{% load guardian_tags %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% get_obj_perms user for object as "obj_perms" %}
 | 
					{% get_obj_perms user for object as "obj_perms" %}
 | 
				
			||||||
| 
						 | 
					@ -14,10 +14,10 @@
 | 
				
			||||||
  {% get_obj_perms user for object as "obj_perms" %}
 | 
					  {% get_obj_perms user for object as "obj_perms" %}
 | 
				
			||||||
  <div class="col-auto">
 | 
					  <div class="col-auto">
 | 
				
			||||||
  {% if "change_restreamconfig" in obj_perms %}
 | 
					  {% if "change_restreamconfig" in obj_perms %}
 | 
				
			||||||
  <a href="{% url 'restream:restreamconfig_change' pk=object.pk %}" type="button" class="btn btn-primary">{% fa 'pencil' %} {% trans 'change' %}</a>
 | 
					  <a href="{% url 'restream:restreamconfig_change' pk=object.pk %}" type="button" class="btn btn-sm btn-outline-primary">{% fa5_icon 'edit' %} {% trans 'change' %}</a>
 | 
				
			||||||
  {% endif %}
 | 
					  {% endif %}
 | 
				
			||||||
  {% if "delete_restreamconfig" in obj_perms %}
 | 
					  {% if "delete_restreamconfig" in obj_perms %}
 | 
				
			||||||
  <a href="{% url 'restream:restreamconfig_delete' pk=object.pk %}" type="button" class="btn btn-danger">{% fa 'trash' %} {% trans 'delete' %}</a>
 | 
					  <a href="{% url 'restream:restreamconfig_delete' pk=object.pk %}" type="button" class="btn btn-sm btn-outline-danger">{% fa5_icon 'trash' %} {% trans 'delete' %}</a>
 | 
				
			||||||
  {% endif %}
 | 
					  {% endif %}
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</div>
 | 
					</div>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,19 +1,26 @@
 | 
				
			||||||
{% extends 'base.html' %}
 | 
					{% extends 'base.html' %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% load font_awesome %}
 | 
					{% load fontawesome_5 %}
 | 
				
			||||||
{% load guardian_tags %}
 | 
					{% load guardian_tags %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block 'content' %}
 | 
					{% block 'content' %}
 | 
				
			||||||
<h6>{% trans "restreamconfig_configuration_header" %}</h6>
 | 
					
 | 
				
			||||||
<hr class="my-4">
 | 
					<div class="row justify-content-between">
 | 
				
			||||||
<div class="btn-toolbar mb-4" role="toolbar">
 | 
					  <div class="col">
 | 
				
			||||||
 | 
					    <h6>{% trans "restreamconfig_configuration_header" %}</h6>
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					  <div class="col-auto">
 | 
				
			||||||
 | 
					    <div class="btn-toolbar" role="toolbar">
 | 
				
			||||||
      <div class="btn-group" role="group">
 | 
					      <div class="btn-group" role="group">
 | 
				
			||||||
    <a href="{% url 'restream:restreamconfig_create' %}" type="button" class="btn btn-sm btn-outline-success">{% fa 'plus' %} {% trans "create" %}</a>
 | 
					        <a href="{% url 'restream:restreamconfig_create' %}" type="button" class="btn btn-sm btn-outline-primary">{% fa5_icon 'plus' %} {% trans "create" %}</a>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</div>
 | 
					</div>
 | 
				
			||||||
 | 
					<hr class="my-4">
 | 
				
			||||||
<table class="table">
 | 
					<table class="table">
 | 
				
			||||||
  <thead class="thead-dark">
 | 
					  <thead class="thead-light">
 | 
				
			||||||
    <tr>
 | 
					    <tr>
 | 
				
			||||||
      <th scope="col">{% trans "name" %}</th>
 | 
					      <th scope="col">{% trans "name" %}</th>
 | 
				
			||||||
      <th scope="col">{% trans "active" %}</th>
 | 
					      <th scope="col">{% trans "active" %}</th>
 | 
				
			||||||
| 
						 | 
					@ -28,16 +35,16 @@
 | 
				
			||||||
      <th scope="row">{{ object.name }}</th>
 | 
					      <th scope="row">{{ object.name }}</th>
 | 
				
			||||||
      <td>
 | 
					      <td>
 | 
				
			||||||
        {% if object.active %}
 | 
					        {% if object.active %}
 | 
				
			||||||
          <span class="text-success">{% fa 'check-circle' %}</span>
 | 
					          <span class="text-success">{% fa5_icon 'check-circle' %}</span>
 | 
				
			||||||
        {% else %}
 | 
					        {% else %}
 | 
				
			||||||
          <span class="text-danger">{% fa 'times-circle' %}</span>
 | 
					          <span class="text-danger">{% fa5_icon 'times-circle' %}</span>
 | 
				
			||||||
        {% endif %}
 | 
					        {% endif %}
 | 
				
			||||||
      </td>
 | 
					      </td>
 | 
				
			||||||
      <td align="right">
 | 
					      <td align="right">
 | 
				
			||||||
        <div class="btn-group" role="group">
 | 
					        <div class="btn-group" role="group">
 | 
				
			||||||
        <a href="{% url 'restream:restreamconfig_detail' pk=object.pk %}" type="button" class="btn btn-sm btn-primary">{% trans "details" %}</a>
 | 
					        <a href="{% url 'restream:restreamconfig_detail' pk=object.pk %}" type="button" class="btn btn-sm btn-outline-primary">{% trans "details" %}</a>
 | 
				
			||||||
        {% if "delete_restreamconfig" in obj_perms %}
 | 
					        {% if "delete_restreamconfig" in obj_perms %}
 | 
				
			||||||
        <a href="{% url 'restream:restreamconfig_delete' pk=object.pk %}" type="button" class="btn btn-sm btn-danger">{% fa 'trash' %}</a>
 | 
					        <a href="{% url 'restream:restreamconfig_delete' pk=object.pk %}" type="button" class="btn btn-sm btn-outline-danger">{% fa5_icon 'trash' %}</a>
 | 
				
			||||||
        {% endif %}
 | 
					        {% endif %}
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
      </td>
 | 
					      </td>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
{% extends 'base.html' %}
 | 
					{% extends 'base.html' %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% load font_awesome %}
 | 
					{% load fontawesome_5 %}
 | 
				
			||||||
{% block 'content' %}
 | 
					{% block 'content' %}
 | 
				
			||||||
<h6>{% trans "confirm_delete_header" %}</h6>
 | 
					<h6>{% trans "confirm_delete_header" %}</h6>
 | 
				
			||||||
<hr class="my-4">
 | 
					<hr class="my-4">
 | 
				
			||||||
| 
						 | 
					@ -15,7 +15,7 @@
 | 
				
			||||||
      <p>{% blocktrans with stream_config_name=object.name %}are_you_sure_you_want_to_delete_"{{ stream_config_name }}"?{% endblocktrans %}</p>
 | 
					      <p>{% blocktrans with stream_config_name=object.name %}are_you_sure_you_want_to_delete_"{{ stream_config_name }}"?{% endblocktrans %}</p>
 | 
				
			||||||
      {% buttons %}
 | 
					      {% buttons %}
 | 
				
			||||||
        <button type="submit" class="btn btn-danger" value="login">
 | 
					        <button type="submit" class="btn btn-danger" value="login">
 | 
				
			||||||
          {% fa 'trash' %} {% trans "delete" %}
 | 
					          {% fa5_icon 'trash' %} {% trans "delete" %}
 | 
				
			||||||
        </button>
 | 
					        </button>
 | 
				
			||||||
      {% endbuttons %}
 | 
					      {% endbuttons %}
 | 
				
			||||||
      <input type="hidden" name="next" value="{{ next }}">
 | 
					      <input type="hidden" name="next" value="{{ next }}">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
{% extends 'base.html' %}
 | 
					{% extends 'base.html' %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% load font_awesome %}
 | 
					{% load fontawesome_5 %}
 | 
				
			||||||
{% load guardian_tags %}
 | 
					{% load guardian_tags %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% get_obj_perms user for object as "obj_perms" %}
 | 
					{% get_obj_perms user for object as "obj_perms" %}
 | 
				
			||||||
| 
						 | 
					@ -14,10 +14,10 @@
 | 
				
			||||||
  {% get_obj_perms user for object as "obj_perms" %}
 | 
					  {% get_obj_perms user for object as "obj_perms" %}
 | 
				
			||||||
  <div class="col-auto">
 | 
					  <div class="col-auto">
 | 
				
			||||||
    {% if "change_stream" in obj_perms %}
 | 
					    {% if "change_stream" in obj_perms %}
 | 
				
			||||||
  <a href="{% url 'rtmp:stream_change' pk=object.pk %}" type="button" class="btn btn-primary">{% fa 'pencil' %} {% trans 'change' %}</a>
 | 
					    <a href="{% url 'rtmp:stream_change' pk=object.pk %}" type="button" class="btn btn-sm btn-outline-primary">{% fa5_icon 'edit' %} {% trans 'change' %}</a>
 | 
				
			||||||
    {% endif %}
 | 
					    {% endif %}
 | 
				
			||||||
    {% if "delete_stream" in obj_perms %}
 | 
					    {% if "delete_stream" in obj_perms %}
 | 
				
			||||||
  <a href="{% url 'rtmp:stream_delete' pk=object.pk %}" type="button" class="btn btn-danger">{% fa 'trash' %} {% trans 'delete' %}</a>
 | 
					    <a href="{% url 'rtmp:stream_delete' pk=object.pk %}" type="button" class="btn btn-sm btn-outline-danger">{% fa5_icon 'trash' %} {% trans 'delete' %}</a>
 | 
				
			||||||
    {% endif %}
 | 
					    {% endif %}
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</div>
 | 
					</div>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,22 +1,28 @@
 | 
				
			||||||
{% extends 'base.html' %}
 | 
					{% extends 'base.html' %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% load font_awesome %}
 | 
					{% load fontawesome_5 %}
 | 
				
			||||||
{% load guardian_tags %}
 | 
					{% load guardian_tags %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{% block 'content' %}
 | 
					{% block 'content' %}
 | 
				
			||||||
<h6>{% trans "stream_configuration_header" %}</h6>
 | 
					<div class="row justify-content-between">
 | 
				
			||||||
<hr class="my-4">
 | 
					  <div class="col">
 | 
				
			||||||
<div class="btn-toolbar mb-4" role="toolbar">
 | 
					    <h6>{% trans "stream_configuration_header" %}</h6>
 | 
				
			||||||
 | 
					  </div>
 | 
				
			||||||
 | 
					  <div class="col-auto">
 | 
				
			||||||
 | 
					    <div class="btn-toolbar" role="toolbar">
 | 
				
			||||||
      <div class="btn-group" role="group">
 | 
					      <div class="btn-group" role="group">
 | 
				
			||||||
    <a href="{% url 'rtmp:stream_create' %}" type="button" class="btn btn-sm btn-outline-success">{% fa 'plus' %} {% trans "create" %}</a>
 | 
					        <a href="{% url 'rtmp:stream_create' %}" type="button" class="btn btn-sm btn-outline-primary">{% fa5_icon 'plus' %} {% trans "create" %}</a>
 | 
				
			||||||
 | 
					      </div>
 | 
				
			||||||
 | 
					    </div>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</div>
 | 
					</div>
 | 
				
			||||||
 | 
					<hr class="my-4">
 | 
				
			||||||
<table class="table">
 | 
					<table class="table">
 | 
				
			||||||
  <thead class="thead-dark">
 | 
					  <thead class="thead-light">
 | 
				
			||||||
    <tr>
 | 
					    <tr>
 | 
				
			||||||
      <th scope="col">{% trans "name" %}</th>
 | 
					      <th scope="col">{% trans "name" %}</th>
 | 
				
			||||||
      <th scope="col">{% trans "publishing" %}</th>
 | 
					      <th scope="col">{% trans "receiving" %}</th>
 | 
				
			||||||
      <th scope="col" class="text-right">{% trans "actions" %}</th>
 | 
					      <th scope="col" class="text-right">{% trans "actions" %}</th>
 | 
				
			||||||
    </tr>
 | 
					    </tr>
 | 
				
			||||||
  </thead>
 | 
					  </thead>
 | 
				
			||||||
| 
						 | 
					@ -28,16 +34,16 @@
 | 
				
			||||||
      <th scope="ro">{{ object.name }}</th>
 | 
					      <th scope="ro">{{ object.name }}</th>
 | 
				
			||||||
      <td>
 | 
					      <td>
 | 
				
			||||||
        {% if object.publish_counter > 0 %}
 | 
					        {% if object.publish_counter > 0 %}
 | 
				
			||||||
          <span class="text-success">{% fa 'check-circle' %}</span>
 | 
					          <span class="text-success">{% fa5_icon 'check-circle' %}</span>
 | 
				
			||||||
        {% else %}
 | 
					        {% else %}
 | 
				
			||||||
          <span class="text-danger">{% fa 'times-circle' %}</span>
 | 
					          <span class="text-danger">{% fa5_icon 'times-circle' %}</span>
 | 
				
			||||||
        {% endif %}
 | 
					        {% endif %}
 | 
				
			||||||
      </td>
 | 
					      </td>
 | 
				
			||||||
      <td align="right">
 | 
					      <td align="right">
 | 
				
			||||||
        <div class="btn-group" role="group">
 | 
					        <div class="btn-group" role="group">
 | 
				
			||||||
        <a href="{% url 'rtmp:stream_detail' pk=object.pk %}" type="button" class="btn btn-sm btn-primary">{% trans "details" %}</a>
 | 
					        <a href="{% url 'rtmp:stream_detail' pk=object.pk %}" type="button" class="btn btn-sm btn-outline-primary ">{% trans "details" %}</a>
 | 
				
			||||||
        {% if "delete_stream" in obj_perms %}
 | 
					        {% if "delete_stream" in obj_perms %}
 | 
				
			||||||
        <a href="{% url 'rtmp:stream_delete' pk=object.pk %}" type="button" class="btn btn-sm btn-danger">{% fa 'trash' %}</a>
 | 
					        <a href="{% url 'rtmp:stream_delete' pk=object.pk %}" type="button" class="btn btn-sm btn-outline-danger">{% fa5_icon 'trash' %}</a>
 | 
				
			||||||
        {% endif %}
 | 
					        {% endif %}
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
      </td>
 | 
					      </td>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| 
						 | 
					@ -1,7 +1,7 @@
 | 
				
			||||||
{% load static %}
 | 
					{% load static %}
 | 
				
			||||||
{% load i18n %}
 | 
					{% load i18n %}
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% load font_awesome %}
 | 
					{% load fontawesome_5 %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<!DOCTYPE html>
 | 
					<!DOCTYPE html>
 | 
				
			||||||
<html lang="en">
 | 
					<html lang="en">
 | 
				
			||||||
| 
						 | 
					@ -11,9 +11,12 @@
 | 
				
			||||||
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
 | 
					    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <title>{% block 'title' %}portier{% endblock %}</title>
 | 
					    <title>{% block 'title' %}portier{% endblock %}</title>
 | 
				
			||||||
    {% bootstrap_css %}
 | 
					    <link rel="stylesheet" href="{% static 'fonts/inter.css' %}"></link>
 | 
				
			||||||
    {% fa_css %}
 | 
					    <link rel="stylesheet" href="{% static 'css/bootstrap.min.css' %}"></link>
 | 
				
			||||||
    {% bootstrap_javascript jquery='full' %}
 | 
					    <link rel="stylesheet" href="{% static 'css/font-awesome.min.css' %}"></link>
 | 
				
			||||||
 | 
					    {% fontawesome_5_static %}
 | 
				
			||||||
 | 
					    <script src="{% static 'js/jquery.min.js' %}"></script>
 | 
				
			||||||
 | 
					    <script src="{% static 'js/bootstrap.bundle.min.js' %}"></script>
 | 
				
			||||||
  </head>
 | 
					  </head>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  <body>
 | 
					  <body>
 | 
				
			||||||
| 
						 | 
					@ -32,25 +35,46 @@
 | 
				
			||||||
          <ul class="navbar-nav">
 | 
					          <ul class="navbar-nav">
 | 
				
			||||||
          {% if user.is_authenticated %}
 | 
					          {% if user.is_authenticated %}
 | 
				
			||||||
            <li class="nav-item dropdown">
 | 
					            <li class="nav-item dropdown">
 | 
				
			||||||
              <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
 | 
					              <a class="nav-link dropdown-toggle" href="#" id="navbarStreamingDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
 | 
				
			||||||
                {% trans "navbar_configuration" %}
 | 
					                {% trans "navbar_streaming" %}
 | 
				
			||||||
              </a>
 | 
					              </a>
 | 
				
			||||||
              <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
 | 
					              <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarStreamingDropdown">
 | 
				
			||||||
                <h6 class="dropdown-header">{% trans "navbar_configuration_streaming_header" %}</h6>
 | 
					                <a class="dropdown-item{% if not perms.rtmp.add_stream %} disabled{% endif %}" href="{% url 'rtmp:stream_list' %}">{% trans "navbar_configuration_streams" %}</a>
 | 
				
			||||||
                <a class="dropdown-item" href="{% url 'rtmp:stream_list' %}">{% trans "navbar_configuration_streams" %}</a>
 | 
					                <a class="dropdown-item{% if not perms.restream.add_restreamconfig %} disabled{% endif %}" href="{% url 'restream:restreamconfig_list' %}">{% trans "navbar_configuration_restreams" %}</a>
 | 
				
			||||||
                <a class="dropdown-item" href="{% url 'restream:restreamconfig_list' %}">{% trans "navbar_configuration_restreams" %}</a>
 | 
					 | 
				
			||||||
                <div class="dropdown-divider"></div>
 | 
					 | 
				
			||||||
                <h6 class="dropdown-header">{% trans "navbar_configuration_account_header" %}</h6>
 | 
					 | 
				
			||||||
                <a class="dropdown-item" href="{% url 'password_change' %}">{% trans "navbar_configuration_password_change" %}</a>
 | 
					 | 
				
			||||||
              </div>
 | 
					              </div>
 | 
				
			||||||
            </li>
 | 
					            </li>
 | 
				
			||||||
          {% endif %}
 | 
					          {% endif %}
 | 
				
			||||||
            <li class="nav-item">
 | 
					 | 
				
			||||||
          {% if user.is_authenticated %}
 | 
					          {% if user.is_authenticated %}
 | 
				
			||||||
              <a class="nav-link logout" href="{% url 'logout' %}?next={% url 'index' %}">{% trans "navbar_logout" %}</a>
 | 
					            <li class="nav-item dropdown border-left">
 | 
				
			||||||
 | 
					              <a class="nav-link dropdown-toggle" href="#" id="navbarAccountDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
 | 
				
			||||||
 | 
					                {% blocktrans with username=user.get_username %}hello_{{ username }}{% endblocktrans %}
 | 
				
			||||||
 | 
					              </a>
 | 
				
			||||||
 | 
					              <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarAccountDropdown">
 | 
				
			||||||
 | 
					                <a class="dropdown-item" href="{% url 'password_change' %}">{% trans "navbar_account_password_change" %}</a>
 | 
				
			||||||
 | 
					                <a class="dropdown-item" href="{% url 'logout' %}?next={% url 'index' %}">{% trans "navbar_account_logout" %}</a>
 | 
				
			||||||
 | 
					            </li>
 | 
				
			||||||
          {% else %}
 | 
					          {% else %}
 | 
				
			||||||
 | 
					            <li class="nav-item">
 | 
				
			||||||
              <a class="nav-link login" href="{% url 'login' %}?next={% url 'index' %}">{% trans "navbar_login" %}</a>
 | 
					              <a class="nav-link login" href="{% url 'login' %}?next={% url 'index' %}">{% trans "navbar_login" %}</a>
 | 
				
			||||||
 | 
					            </li>
 | 
				
			||||||
          {% endif %}
 | 
					          {% endif %}
 | 
				
			||||||
 | 
					            <li class="nav-item dropdown border-left">
 | 
				
			||||||
 | 
					              <a class="nav-link dropdown-toggle" id="languageSelectDropdown" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
 | 
				
			||||||
 | 
					                {% fa5_icon 'language' %}
 | 
				
			||||||
 | 
					              </a>
 | 
				
			||||||
 | 
					              <div class="dropdown-menu dropdown-menu-right" aria-labelledby="languageSelectDropdown">
 | 
				
			||||||
 | 
					                {% get_current_language as LANGUAGE_CODE %}
 | 
				
			||||||
 | 
					                {% get_available_languages as LANGUAGES %}
 | 
				
			||||||
 | 
					                {% get_language_info_list for LANGUAGES as languages %}
 | 
				
			||||||
 | 
					                {% for language in languages %}
 | 
				
			||||||
 | 
					                <a class="dropdown-item{% if language.code == LANGUAGE_CODE %} font-weight-bold{% endif %}" onclick="$('#languageSelectInput').val('{{ language.code }}'); $('#languageSelectForm').submit()">{{ language.name_local}} ({{ language.code }})</a>
 | 
				
			||||||
 | 
					                {% endfor %}
 | 
				
			||||||
 | 
					              </div>
 | 
				
			||||||
 | 
					              <form action="{% url 'set_language' %}" method="post" id="languageSelectForm">
 | 
				
			||||||
 | 
					                {% csrf_token %}
 | 
				
			||||||
 | 
					                <input name="next" type="hidden" value="{{ redirect_to }}">
 | 
				
			||||||
 | 
					                <input name="language" type="hidden" value="" id="languageSelectInput">
 | 
				
			||||||
 | 
					              </form>
 | 
				
			||||||
            </li>
 | 
					            </li>
 | 
				
			||||||
          </ul>
 | 
					          </ul>
 | 
				
			||||||
        </div>
 | 
					        </div>
 | 
				
			||||||
| 
						 | 
					@ -62,6 +86,7 @@
 | 
				
			||||||
    </main>
 | 
					    </main>
 | 
				
			||||||
    <footer class="text-muted">
 | 
					    <footer class="text-muted">
 | 
				
			||||||
      <div class="container">
 | 
					      <div class="container">
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      </div>
 | 
					      </div>
 | 
				
			||||||
    </footer>
 | 
					    </footer>
 | 
				
			||||||
  </body>
 | 
					  </body>
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,6 +3,7 @@
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% block 'content' %}
 | 
					{% block 'content' %}
 | 
				
			||||||
<h6>{% trans "login" %}</h6>
 | 
					<h6>{% trans "login" %}</h6>
 | 
				
			||||||
 | 
					<hr class="my-4">
 | 
				
			||||||
<div class="row">
 | 
					<div class="row">
 | 
				
			||||||
  <div class="col-sm border-right">
 | 
					  <div class="col-sm border-right">
 | 
				
			||||||
    <form method="post">
 | 
					    <form method="post">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,6 +3,7 @@
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% block 'content' %}
 | 
					{% block 'content' %}
 | 
				
			||||||
<h6>{% trans "password_change_successful" %}</h6>
 | 
					<h6>{% trans "password_change_successful" %}</h6>
 | 
				
			||||||
 | 
					<hr class="my-4">
 | 
				
			||||||
<p>{% trans "password_change_successful_text" %}</p>
 | 
					<p>{% trans "password_change_successful_text" %}</p>
 | 
				
			||||||
<a class="btn btn-primary btn-lg" href="{% url 'index' %}">{% trans "take_me_to_safety" %}</a>
 | 
					<a class="btn btn-primary btn-lg" href="{% url 'index' %}">{% trans "take_me_to_safety" %}</a>
 | 
				
			||||||
{% endblock %}
 | 
					{% endblock %}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,6 +3,7 @@
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% block 'content' %}
 | 
					{% block 'content' %}
 | 
				
			||||||
<h6>{% trans "change_password" %}</h6>
 | 
					<h6>{% trans "change_password" %}</h6>
 | 
				
			||||||
 | 
					<hr class="my-4">
 | 
				
			||||||
<div class="row">
 | 
					<div class="row">
 | 
				
			||||||
  <div class="col-sm border-right">
 | 
					  <div class="col-sm border-right">
 | 
				
			||||||
    <form method="post">
 | 
					    <form method="post">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,6 +3,7 @@
 | 
				
			||||||
{% load bootstrap4 %}
 | 
					{% load bootstrap4 %}
 | 
				
			||||||
{% block 'content' %}
 | 
					{% block 'content' %}
 | 
				
			||||||
<h6>{% trans "reset_password"}</h6>
 | 
					<h6>{% trans "reset_password"}</h6>
 | 
				
			||||||
 | 
					<hr class="my-4">
 | 
				
			||||||
<div class="row">
 | 
					<div class="row">
 | 
				
			||||||
  <div class="col-sm border-right">
 | 
					  <div class="col-sm border-right">
 | 
				
			||||||
    <form method="post">
 | 
					    <form method="post">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue