From 76bf828a0294cd0a04deeec0d4cf7c3f1bbf70ff Mon Sep 17 00:00:00 2001
From: Anton Georgiev <anto.georgiev@gmail.com>
Date: Tue, 29 Jan 2019 21:15:10 +0000
Subject: [PATCH] pulled latest HTML5 client locales from Transifex

---
 .../imports/startup/client/intl.jsx           |   2 +
 bigbluebutton-html5/private/locales/de.json   | 100 +++++-
 bigbluebutton-html5/private/locales/es.json   | 297 ++++++++++++++++++
 .../private/locales/pl_PL.json                |  41 +++
 4 files changed, 439 insertions(+), 1 deletion(-)
 create mode 100644 bigbluebutton-html5/private/locales/es.json
 create mode 100644 bigbluebutton-html5/private/locales/pl_PL.json

diff --git a/bigbluebutton-html5/imports/startup/client/intl.jsx b/bigbluebutton-html5/imports/startup/client/intl.jsx
index b400dc9894..ec31ea1683 100644
--- a/bigbluebutton-html5/imports/startup/client/intl.jsx
+++ b/bigbluebutton-html5/imports/startup/client/intl.jsx
@@ -21,6 +21,7 @@ import id from 'react-intl/locale-data/id';
 import el from 'react-intl/locale-data/el';
 import it from 'react-intl/locale-data/it';
 import bg from 'react-intl/locale-data/bg';
+import pl from 'react-intl/locale-data/pl';
 
 
 addLocaleData([
@@ -40,6 +41,7 @@ addLocaleData([
   ...el,
   ...it,
   ...bg,
+  ...pl,
 ]);
 
 const propTypes = {
diff --git a/bigbluebutton-html5/private/locales/de.json b/bigbluebutton-html5/private/locales/de.json
index ba68eac7d1..5e074a700f 100644
--- a/bigbluebutton-html5/private/locales/de.json
+++ b/bigbluebutton-html5/private/locales/de.json
@@ -18,9 +18,13 @@
     "app.chat.label": "Chat",
     "app.chat.emptyLogLabel": "Chat-Log ist leer",
     "app.chat.clearPublicChatMessage": "Der öffentliche Chatverlauf wurde durch einen Moderator gelöscht",
+    "app.note.title": "Geteilte Notizen",
+    "app.note.label": "Notiz",
+    "app.note.hideNoteLabel": "Notiz verbergen",
     "app.userList.usersTitle": "Teilnehmer",
     "app.userList.participantsTitle": "Teilnehmer",
     "app.userList.messagesTitle": "Nachrichten",
+    "app.userList.notesTitle": "Notizen",
     "app.userList.presenter": "Präsentator",
     "app.userList.you": "Sie",
     "app.userList.locked": "Gesperrt",
@@ -39,6 +43,17 @@
     "app.userList.userAriaLabel": "{0} {1} {2}  Status {3}",
     "app.userList.menu.promoteUser.label": "Zum Moderator befördern",
     "app.userList.menu.demoteUser.label": "Zum Zuschauer zurückstufen",
+    "app.userList.userOptions.manageUsersLabel": "Teilnehmer verwalten",
+    "app.userList.userOptions.muteAllLabel": "Alle Teilnehmer stummschalten",
+    "app.userList.userOptions.muteAllDesc": "Schaltet alle Teilnehmer der Konferenz stumm",
+    "app.userList.userOptions.clearAllLabel": "Lösche alle Statusicons",
+    "app.userList.userOptions.clearAllDesc": "Löscht alle Statusicons der Teilnehmer",
+    "app.userList.userOptions.muteAllExceptPresenterLabel": "Schalte alle Teilnehmer außer den Präsentator stumm",
+    "app.userList.userOptions.muteAllExceptPresenterDesc": "Schaltet alle Teilnehmer außer den Präsentator stumm",
+    "app.userList.userOptions.unmuteAllLabel": "Konferenz-Stummschaltung aufheben",
+    "app.userList.userOptions.unmuteAllDesc": "Hebt die Konferenz-Stummschaltung auf",
+    "app.userList.userOptions.lockViewersLabel": "Zuschauerrechte einschränken",
+    "app.userList.userOptions.lockViewersDesc": "Schränkt bestimmte Funktionen der Konferenzteilnehmer ein",
     "app.media.label": "Media",
     "app.media.screenshare.start": "Bildschirmfreigabe wurde gestartet",
     "app.media.screenshare.end": "Bildschirmfreigabe wurde gestoppt",
@@ -57,6 +72,11 @@
     "app.presentation.presentationToolbar.fitScreenDesc": "Gesamte Folie darstellen",
     "app.presentation.presentationToolbar.zoomLabel": "Vergrößerungsgrad",
     "app.presentation.presentationToolbar.zoomDesc": "Vergrößerungsstufe der Präsentation ändern",
+    "app.presentation.presentationToolbar.zoomInLabel": "Reinzoomen",
+    "app.presentation.presentationToolbar.zoomInDesc": "In die Präsentation hinein zoomen",
+    "app.presentation.presentationToolbar.zoomOutLabel": "Rauszoomen",
+    "app.presentation.presentationToolbar.zoomOutDesc": "Aus der Präsentation heraus zoomen",
+    "app.presentation.presentationToolbar.zoomIndicator": "Zoomstufe anzeigen",
     "app.presentation.presentationToolbar.fitToWidth": "An Breite anpassen",
     "app.presentation.presentationToolbar.goToSlide": "Folie {0}",
     "app.presentationUploder.title": "Präsentation",
@@ -66,10 +86,13 @@
     "app.presentationUploder.dismissLabel": "Abbrechen",
     "app.presentationUploder.dismissDesc": "Fenster schließen und Änderungen verwerfen",
     "app.presentationUploder.dropzoneLabel": "Hochzuladende Dateien hier hin ziehen",
+    "app.presentationUploder.dropzoneImagesLabel": "Bilder hier hinziehen, um sie hochzuladen",
     "app.presentationUploder.browseFilesLabel": "oder nach Dateien suchen",
+    "app.presentationUploder.browseImagesLabel": "oder auf der Festplatte nach Bildern suchen",
     "app.presentationUploder.fileToUpload": "Hochzuladende Datei...",
     "app.presentationUploder.currentBadge": "Aktuell",
     "app.presentationUploder.genericError": "Ups, irgendwas ist schief gelaufen",
+    "app.presentationUploder.rejectedError": "Einige der ausgewählten Dateien wurden zurückgewiesen. Bitte prüfen Sie die Datei-Mime-Typen",
     "app.presentationUploder.upload.progress": "Hochladen ({0}%)",
     "app.presentationUploder.upload.413": "Die Datei ist zu groß",
     "app.presentationUploder.conversion.conversionProcessingSlides": "Verarbeite Seite {0} von {1}",
@@ -79,8 +102,25 @@
     "app.presentationUploder.conversion.generatingSvg": "Erzeuge SVG Bilder...",
     "app.presentationUploder.conversion.pageCountExceeded": "Ups, die Seitenanzahl überschreitet das Limit",
     "app.presentationUploder.conversion.timeout": "Ups, die Konvertierung dauert zu lange",
+    "app.poll.pollPaneTitle": "Umfrage",
+    "app.poll.hidePollDesc": "Versteckt das Umfragemenü",
+    "app.poll.customPollInstruction": "Um selbst erstellte Umfrage zu erstellen, klicken Sie die untenstehende Schaltfläche und geben Sie Ihre Optionen ein",
+    "app.poll.quickPollInstruction": "Wählen Sie eine Schnellumfrageoption aus und starten Sie die Umfrage.",
+    "app.poll.customPollLabel": "Selbst erstellte Umfrage",
+    "app.poll.startCustomLabel": "Selbst erstellte Umfrage starten",
+    "app.poll.activePollInstruction": "Lassen Sie dieses Fenster solange geöffnet, bis alle Antworten abgegeben wurden. Wählen Sie 'Umfrage veröffentlichen' oder navigieren Sie einen Schritt zurück, um die Umfrage zu beenden.",
+    "app.poll.publishLabel": "Umfrage veröffentlichen",
+    "app.poll.backLabel": "Zurück zu den Umfrageoptionen",
     "app.poll.closeLabel": "Schließen",
+    "app.poll.customPlaceholder": "Umfrageoption hinzufügen",
+    "app.poll.tf": "Richtig / Falsch",
+    "app.poll.yn": "Ja / Nein",
+    "app.poll.a2": "A / B",
+    "app.poll.a3": "A / B / C",
+    "app.poll.a4": "A / B / C / D",
+    "app.poll.a5": "A / B / C / D / E",
     "app.poll.liveResult.usersTitle": "Teilnehmer",
+    "app.poll.liveResult.responsesTitle": "Antwort",
     "app.polling.pollingTitle": "Umfrage Optionen",
     "app.polling.pollAnswerLabel": "Umfrageantwort {0}",
     "app.polling.pollAnswerDesc": "Diese Option auswählen für Umfrage {0}",
@@ -102,6 +142,8 @@
     "app.navBar.settingsDropdown.hotkeysDesc": "Liste verfügbarer Tastaturkürzel",
     "app.navBar.settingsDropdown.helpLabel": "Hilfe",
     "app.navBar.settingsDropdown.helpDesc": "Verlinkt zu den Videoanleitungen",
+    "app.navBar.settingsDropdown.endMeetingDesc": "Beendet die aktuelle Konferenz",
+    "app.navBar.settingsDropdown.endMeetingLabel": "Beende Konferenz",
     "app.navBar.userListToggleBtnLabel": "Teilnehmerliste umschalten",
     "app.navBar.toggleUserList.ariaLabel": "Teilnehmer/Nachrichten-Umschalter",
     "app.navBar.toggleUserList.newMessages": "mit Benachrichtigung für neue Nachrichten",
@@ -110,6 +152,8 @@
     "app.navBar.recording.off": "Keine Aufnahme",
     "app.leaveConfirmation.confirmLabel": "Verlassen",
     "app.leaveConfirmation.confirmDesc": "Hiermit verlassen Sie Konferenz",
+    "app.endMeeting.title": "Beende Konferenz",
+    "app.endMeeting.description": "Sind Sie sicher, dass Sie die Konferenz beenden wollen?",
     "app.endMeeting.yesLabel": "Ja",
     "app.endMeeting.noLabel": "Nein",
     "app.about.title": "Versionsinfo",
@@ -198,6 +242,12 @@
     "app.actionsBar.actionsDropdown.initPollDesc": "Eine Umfrage starten",
     "app.actionsBar.actionsDropdown.desktopShareDesc": "Ihren Bildschirm mit anderen teilen",
     "app.actionsBar.actionsDropdown.stopDesktopShareDesc": "Bildschirmfreigabe beenden mit",
+    "app.actionsBar.actionsDropdown.pollBtnLabel": "Umfrage starten",
+    "app.actionsBar.actionsDropdown.pollBtnDesc": "Umschalten des Umfragemenüs",
+    "app.actionsBar.actionsDropdown.createBreakoutRoom": "Breakout-Räume erstellen",
+    "app.actionsBar.actionsDropdown.createBreakoutRoomDesc": "ermöglicht die aktuelle Konferenz in mehrere Räume aufzuteilen",
+    "app.actionsBar.actionsDropdown.takePresenter": "Rolle des Präsentators übernehmen",
+    "app.actionsBar.actionsDropdown.takePresenterDesc": "Sich selber zum neuen Präsentator machen",
     "app.actionsBar.emojiMenu.statusTriggerLabel": "Status setzen",
     "app.actionsBar.emojiMenu.awayLabel": "Abwesend",
     "app.actionsBar.emojiMenu.awayDesc": "Ihren Status auf abwesend setzen",
@@ -293,6 +343,7 @@
     "app.error.404": "Nicht gefunden",
     "app.error.401": "Nicht erlaubt",
     "app.error.403": "Verboten",
+    "app.error.400": "Ungültige Anfrage",
     "app.error.leaveLabel": "Erneut einloggen",
     "app.guest.waiting": "Warte auf Erlaubnis zur Konferenzteilnahme",
     "app.toast.breakoutRoomEnded": "Breakout Raum wurde beendet. Bitte klicken Sie aufs Mikrofon-Icon um wieder der Audiokonferenz im Hauptraum beizutreten",
@@ -315,13 +366,28 @@
     "app.shortcut-help.closePrivateChat": "Privaten Chat schließen",
     "app.shortcut-help.openActions": "Aktionsmenü öffnen",
     "app.shortcut-help.openStatus": "Statusmenü öffnen",
+    "app.lock-viewers.title": "Zuschauerfunktionen einschränken",
+    "app.lock-viewers.description": "Diese Optionen erlauben es Ihnen, bestimmte den Zuschauern zur Verfügung stehende Funktionen einzuschränken - so kann beispielsweise der private Chat unterbunden werden (Diese Einschränkungen gelten nicht für Moderatoren)",
+    "app.lock-viewers.featuresLable": "Funktion",
+    "app.lock-viewers.lockStatusLabel": "Aktiviert",
     "app.lock-viewers.webcamLabel": "Webcam",
+    "app.lock-viewers.otherViewersWebcamLabel": "Nur Moderatoren sehen Webcams",
     "app.lock-viewers.microphoneLable": "Mit Mikrofon",
     "app.lock-viewers.PublicChatLabel": "Öffentlicher Chat",
     "app.lock-viewers.PrivateChatLable": "Privater Chat",
     "app.lock-viewers.Layout": "Layout",
+    "app.recording.startTitle": "Aufzeichnung starten",
+    "app.recording.stopTitle": "Aufzeichnung stoppen",
+    "app.recording.startDescription": "Klicken Sie erneut auf das Icon um die Aufzeichnung zu beenden.",
+    "app.recording.stopDescription": "Sind Sie sicher, dass Sie die Aufzeichnung der Konferenz beenden wollen? Sie können die Aufzeichnung jederzeit durch erneutes Klicken auf das Icon fortsetzen.",
+    "app.videoPreview.cameraLabel": "Kamera",
     "app.videoPreview.cancelLabel": "Abbrechen",
     "app.videoPreview.closeLabel": "Schließen",
+    "app.videoPreview.startSharingLabel": "Kamerafreigabe starten",
+    "app.videoPreview.webcamOptionLabel": "Webcam auswählen",
+    "app.videoPreview.webcamPreviewLabel": "Webcamvorschau",
+    "app.videoPreview.webcamSettingsTitle": "Webcam-Einstellungen",
+    "app.videoPreview.webcamNotFoundLabel": "Keine Webcam gefunden",
     "app.video.joinVideo": "Webcam freigeben",
     "app.video.leaveVideo": "Webcam stoppen",
     "app.video.iceCandidateError": "Fehler beim Hinzufügen vom ice candidate",
@@ -332,6 +398,7 @@
     "app.video.notAllowed": "Freigabeerlaubnis für die Webcam nicht erteilt, prüfen Sie Ihre Browerberechtigungen",
     "app.video.notSupportedError": "Webcam kann nur über sichere Verbindung freigegeben werden, stellen Sie sicher, dass das SSL-Zertifikat gültig ist",
     "app.video.notReadableError": "Konnte nicht auf die Webcam zugreifen. Stellen Sie sicher, dass kein anderes Programm auf die Webcam zugreift",
+    "app.video.mediaFlowTimeout1020": "Fehler 1020: Medienverbindung zum Server konnte nicht hergestellt werden",
     "app.video.swapCam": "Wechseln",
     "app.video.swapCamDesc": "Ausrichtung der Webcams wechseln",
     "app.video.videoMenu": "Videomenü",
@@ -359,10 +426,12 @@
     "app.sfu.mediaServerRequestTimeout2003": "Fehler 2003: Zeitüberschreitung bei Anfragen an den Mediaserver",
     "app.sfu.serverIceGatheringFailed2021": "Fehler 2021: Mediaserver kann ICE Kandidaten nicht erfassen",
     "app.sfu.serverIceGatheringFailed2022": "Fehler 2022: Mediaserver ICE Verbindung fehlgeschlagen",
+    "app.sfu.mediaGenericError2200": "Fehler 2200: Medienserver konnte die Anfrage nicht verarbeiten",
     "app.sfu.invalidSdp2202":"Fehler 2202: Client hat ungültigen SDP generiert",
     "app.sfu.noAvailableCodec2203": "Fehler 2203: Server konnte keinen passenden Codec finden",
     "app.meeting.endNotification.ok.label": "OK",
     "app.whiteboard.toolbar.tools": "Werkzeuge",
+    "app.whiteboard.toolbar.tools.hand": "Verschieben",
     "app.whiteboard.toolbar.tools.pencil": "Stift",
     "app.whiteboard.toolbar.tools.rectangle": "Rechteck",
     "app.whiteboard.toolbar.tools.triangle": "Dreieck",
@@ -399,8 +468,37 @@
     "app.videoDock.webcamFocusDesc": "Ausgewählte Webcam vergrößern",
     "app.videoDock.webcamUnfocusLabel": "Normalgröße",
     "app.videoDock.webcamUnfocusDesc": "Ausgewählte Webcam auf Normalgröße verkleinern",
+    "app.invitation.title": "Breakoutraum-Einladung",
+    "app.invitation.confirm": "Einladen",
+    "app.createBreakoutRoom.title": "Breakout-Räume",
+    "app.createBreakoutRoom.breakoutRoomLabel": "Breakout-Räume {0}",
+    "app.createBreakoutRoom.generatingURL": "Erzeuge URL",
+    "app.createBreakoutRoom.generatedURL": "Erzeugt",
+    "app.createBreakoutRoom.duration": "Dauer {0}",
+    "app.createBreakoutRoom.room": "Raum {0}",
+    "app.createBreakoutRoom.notAssigned": "Nicht zugewiesen ({0})",
+    "app.createBreakoutRoom.join": "Raum beitreten",
     "app.createBreakoutRoom.joinAudio": "Audio starten",
-    "app.externalVideo.close": "Schließen"
+    "app.createBreakoutRoom.returnAudio": "Return audio",
+    "app.createBreakoutRoom.confirm": "Erstellen",
+    "app.createBreakoutRoom.numberOfRooms": "Anzahl der Räume",
+    "app.createBreakoutRoom.durationInMinutes": "Dauer (Minuten)",
+    "app.createBreakoutRoom.randomlyAssign": "Zufällige Raumzuweisung",
+    "app.createBreakoutRoom.endAllBreakouts": "Alle Breakout-Räume beenden",
+    "app.createBreakoutRoom.roomName": "{0} (Raum - {1})",
+    "app.createBreakoutRoom.doneLabel": "Fertig",
+    "app.createBreakoutRoom.nextLabel": "Nächster",
+    "app.createBreakoutRoom.addParticipantLabel": "+ Teilnehmer hinzufügen",
+    "app.createBreakoutRoom.freeJoin": "Den Teilnehmern erlauben, sich selber einen Breakout-Raum auszusuchen.",
+    "app.createBreakoutRoom.leastOneWarnBreakout": "Jedem Breakout-Raum muss wenigstens ein Teilnehmer zugeordnet sein.",
+    "app.createBreakoutRoom.modalDesc": "Vervollständigen Sie die folgenden Schritte um Breakout-Räume zu erzeugen. Verteilen Sie die Teilnehmer auf die Räume.",
+    "app.externalVideo.start": "Neues Video teilen",
+    "app.externalVideo.stop": "Teilen des Videos beenden",
+    "app.externalVideo.title": "Youtube-Video teilen",
+    "app.externalVideo.input": "Youtube-Video URL",
+    "app.externalVideo.urlError": "Dies ist kein gültiges Youtube-Video",
+    "app.externalVideo.close": "Schließen",
+    "app.actionsBar.actionsDropdown.shareExternalVideo": "Youtube-Video teilen"
 
 }
 
diff --git a/bigbluebutton-html5/private/locales/es.json b/bigbluebutton-html5/private/locales/es.json
new file mode 100644
index 0000000000..35e0cfa99c
--- /dev/null
+++ b/bigbluebutton-html5/private/locales/es.json
@@ -0,0 +1,297 @@
+{
+    "app.home.greeting": "¡Bienvenido {0}! Tu presentación iniciará en breve...",
+    "app.chat.submitLabel": "Enviar mensaje",
+    "app.chat.errorMinMessageLength": "El mensaje es {0} caracteres mas corto de lo esperado",
+    "app.chat.errorMaxMessageLength": "El mensaje es {0} caracteres mas largo de lo esperado",
+    "app.chat.inputLabel": "Entrada de mensaje para chat {0}",
+    "app.chat.inputPlaceholder": "Mensaje {0}",
+    "app.chat.titlePublic": "Chat público",
+    "app.chat.titlePrivate": "Chat privado con {0}",
+    "app.chat.partnerDisconnected": "{0} ha abandonado la reunión",
+    "app.chat.closeChatLabel": "Cerrar {0}",
+    "app.chat.hideChatLabel": "Ocultar  {0}",
+    "app.chat.moreMessages": "Más mensajes abajo",
+    "app.chat.dropdown.options": "Opciones de chat",
+    "app.chat.dropdown.clear": "Limpiar",
+    "app.chat.dropdown.copy": "Copiar",
+    "app.chat.dropdown.save": "Guardar",
+    "app.chat.label": "Chat",
+    "app.chat.emptyLogLabel": "Registro de chat vacío",
+    "app.chat.clearPublicChatMessage": "El chat publico fue borrado por un moderador",
+    "app.note.title": "Notas compartidas",
+    "app.note.label": "Nota",
+    "app.note.hideNoteLabel": "Ocultar nota",
+    "app.userList.usersTitle": "Usuarios",
+    "app.userList.participantsTitle": "Participantes",
+    "app.userList.messagesTitle": "Mensajes",
+    "app.userList.notesTitle": "Notas",
+    "app.userList.presenter": "Presentador",
+    "app.userList.you": "Tu",
+    "app.userList.locked": "Bloqueado",
+    "app.userList.label": "Lista de usuarios",
+    "app.userList.toggleCompactView.label": "Cambiar a modo de vista compacta",
+    "app.userList.guest": "Huesped",
+    "app.userList.menuTitleContext": "Opciones disponibles",
+    "app.userList.chatListItem.unreadSingular": "{0} Nuevo Mensaje",
+    "app.userList.chatListItem.unreadPlural": "{0} Nuevos mensajes",
+    "app.userList.menu.chat.label": "Chat",
+    "app.userList.menu.clearStatus.label": "Limpiar estátus",
+    "app.userList.menu.makePresenter.label": "Hacer presentador",
+    "app.userList.menu.removeUser.label": "Eliminar usuario",
+    "app.userList.menu.muteUserAudio.label": "Silenciar usuario",
+    "app.userList.menu.unmuteUserAudio.label": "Activar sonido de usuario",
+    "app.userList.userAriaLabel": "{0} {1} {2} estado {3}",
+    "app.userList.menu.promoteUser.label": "Promover a moderador",
+    "app.userList.menu.demoteUser.label": "Degradar a espectador",
+    "app.userList.userOptions.manageUsersLabel": "Manejar usuarios",
+    "app.userList.userOptions.muteAllLabel": "Deshabilitar audio a todos los usuarios",
+    "app.userList.userOptions.muteAllDesc": "Deshabilitar audio a todos los usuarios en la sesión",
+    "app.userList.userOptions.clearAllLabel": "Borrar todos los iconos de estado",
+    "app.userList.userOptions.clearAllDesc": "Borrar todos los iconos de estado de usuarios",
+    "app.userList.userOptions.muteAllExceptPresenterLabel": "Silenciar a todos los usuarios excepto a presentador",
+    "app.userList.userOptions.muteAllExceptPresenterDesc": "Silenciar a todos los usuarios en la sesión excepto a presentador",
+    "app.userList.userOptions.unmuteAllLabel": "Desactivar función de silenciar",
+    "app.userList.userOptions.unmuteAllDesc": "Habilitar audio en la sesión",
+    "app.userList.userOptions.lockViewersLabel": "Bloquear espectadores",
+    "app.media.label": "Media",
+    "app.media.screenshare.start": "Compartir pantalla ha iniciado",
+    "app.media.screenshare.end": "Compartir pantalla ha finalizado",
+    "app.media.screenshare.safariNotSupported": "Compartir pantalla actualmente no es soportada por Safari. Por favor usilize Firefox o Google Chrome.",
+    "app.meeting.ended": "La sesión ha finalizado",
+    "app.meeting.endedMessage": "Serás enviado a la pantalla de inicio.",
+    "app.presentation.presentationToolbar.prevSlideLabel": "Diapositiva anterior",
+    "app.presentation.presentationToolbar.prevSlideDesc": "Cambiar presentación a diapositiva anterior",
+    "app.presentation.presentationToolbar.nextSlideLabel": "Siguiente diapositiva",
+    "app.presentation.presentationToolbar.nextSlideDesc": "Cambiar presentación a diapositiva siguiente",
+    "app.presentation.presentationToolbar.skipSlideLabel": "Brincar diapositiva",
+    "app.presentation.presentationToolbar.skipSlideDesc": "Cambiar presentación a diapositiva específica",
+    "app.presentation.presentationToolbar.fitWidthLabel": "Ajustar a lo ancho",
+    "app.presentation.presentationToolbar.fitWidthDesc": "Mostrar diapositiva a todo lo ancho",
+    "app.presentation.presentationToolbar.fitScreenLabel": "Ajustar a la pantalla",
+    "app.presentation.presentationToolbar.fitScreenDesc": "Mostrar toda la diapositiva",
+    "app.presentation.presentationToolbar.zoomLabel": "Zoom",
+    "app.presentation.presentationToolbar.zoomDesc": "Cambiar el nivel de Zoom de la presentación",
+    "app.presentation.presentationToolbar.zoomInLabel": "Acercarse",
+    "app.presentation.presentationToolbar.zoomInDesc": "Acercarse en presentación",
+    "app.presentation.presentationToolbar.zoomOutLabel": "Alejarse",
+    "app.presentation.presentationToolbar.zoomOutDesc": "Alejarse en presentación",
+    "app.presentation.presentationToolbar.zoomIndicator": "Mostrar el porcentaje de acercamiento",
+    "app.presentation.presentationToolbar.fitToWidth": "Ajustar a lo ancho",
+    "app.presentation.presentationToolbar.goToSlide": "Diapositiva {0}",
+    "app.presentationUploder.title": "Presentación",
+    "app.presentationUploder.confirmLabel": "Iniciar",
+    "app.presentationUploder.confirmDesc": "Grardar los cambios e iniciar la presentación",
+    "app.presentationUploder.dismissLabel": "Cancelar",
+    "app.presentationUploder.dismissDesc": "Cerrar la ventana modal y descartar cambios.",
+    "app.presentationUploder.dropzoneLabel": "Arrastrar archivo aqui para cargarlo",
+    "app.presentationUploder.dropzoneImagesLabel": "Arrastrar imagenes aqui para cargarlas",
+    "app.presentationUploder.browseFilesLabel": "o buscar archivos",
+    "app.presentationUploder.browseImagesLabel": "o buscar imagenes",
+    "app.presentationUploder.fileToUpload": "Esperando ser cargado...",
+    "app.presentationUploder.currentBadge": "Acual",
+    "app.presentationUploder.genericError": "Ups, algo salio mal",
+    "app.presentationUploder.rejectedError": "Algunos de los archivos seleccionados fueron rechazados. Por favor verifique el mime type de los archivo",
+    "app.presentationUploder.upload.progress": "Cargando ({0}%)",
+    "app.presentationUploder.upload.413": "Erchivo demasiado grande",
+    "app.presentationUploder.conversion.conversionProcessingSlides": "Procesando página {0} de {1}",
+    "app.presentationUploder.conversion.genericConversionStatus": "Convirtiendo archivo...",
+    "app.presentationUploder.conversion.generatingThumbnail": "Generando miniaturas...",
+    "app.presentationUploder.conversion.generatedSlides": "Diapositivas generadas...",
+    "app.presentationUploder.conversion.generatingSvg": "Generando imágenes SVG...",
+    "app.poll.startCustomLabel": "Iniciar encuesta personalizada",
+    "app.poll.publishLabel": "Publicar encuesta",
+    "app.poll.closeLabel": "Cerrar",
+    "app.poll.tf": "Verdadero / Falseo",
+    "app.poll.yn": "Si / No",
+    "app.poll.a2": "A / B",
+    "app.poll.a3": "A / B / C",
+    "app.poll.a4": "A / B / C / D",
+    "app.poll.a5": "A / B / C / D / E",
+    "app.poll.liveResult.usersTitle": "Usuarios",
+    "app.poll.liveResult.responsesTitle": "Respuesta",
+    "app.polling.pollingTitle": "Respuestas de encuesta",
+    "app.polling.pollAnswerLabel": "Respuesta de encuesta {0}",
+    "app.polling.pollAnswerDesc": "Seleccione esta opcion para responder {0}",
+    "app.failedMessage": "Disculpas, problemas conectando al servidor.",
+    "app.connectingMessage": "Conectando...",
+    "app.waitingMessage": "Desconectado. Intentando reconectar en {0} segundos...",
+    "app.navBar.settingsDropdown.optionsLabel": "Opciones",
+    "app.navBar.settingsDropdown.fullscreenLabel": "Desplegar a pantalla completa",
+    "app.navBar.settingsDropdown.settingsLabel": "Abrir configuración",
+    "app.navBar.settingsDropdown.aboutLabel": "Acerca de",
+    "app.navBar.settingsDropdown.leaveSessionLabel": "Cerrar sesión",
+    "app.navBar.settingsDropdown.exitFullscreenLabel": "Salir de pantalla completa",
+    "app.navBar.settingsDropdown.fullscreenDesc": "Hacer el menú de configuración a pantalla completa",
+    "app.navBar.settingsDropdown.settingsDesc": "Cambiar la configuración general",
+    "app.navBar.settingsDropdown.aboutDesc": "Mostrar información acerca del cliente",
+    "app.navBar.settingsDropdown.leaveSessionDesc": "Abandonar la reunión",
+    "app.navBar.settingsDropdown.exitFullscreenDesc": "Salir del modo de pantalla completa",
+    "app.navBar.settingsDropdown.hotkeysLabel": "Acceso rápido",
+    "app.navBar.settingsDropdown.hotkeysDesc": "Lista de accesos rápidos",
+    "app.navBar.settingsDropdown.helpLabel": "Ayuda",
+    "app.navBar.settingsDropdown.helpDesc": "Enlaces a videos tutoriales",
+    "app.navBar.userListToggleBtnLabel": "Alternar lista de usuarios",
+    "app.navBar.toggleUserList.newMessages": "con nueva notificación de mensaje ",
+    "app.leaveConfirmation.confirmLabel": "Salir",
+    "app.leaveConfirmation.confirmDesc": "Te desconecta de la reunión",
+    "app.about.title": "Acerca de",
+    "app.about.version": "Construcción del cliente:",
+    "app.about.copyright": "Derechos de autor:",
+    "app.about.confirmLabel": "OK",
+    "app.about.confirmDesc": "OK",
+    "app.about.dismissLabel": "Cancelar",
+    "app.about.dismissDesc": "Cerrar información acerca del cliente",
+    "app.actionsBar.changeStatusLabel": "Cambiar estátus",
+    "app.actionsBar.muteLabel": "Silenciar",
+    "app.actionsBar.unmuteLabel": "De-silenciar",
+    "app.actionsBar.camOffLabel": "Cámara Apagada",
+    "app.actionsBar.raiseLabel": "Alzar",
+    "app.actionsBar.label": "Barra de acciones",
+    "app.submenu.application.applicationSectionTitle": "Aplicación",
+    "app.submenu.application.fontSizeControlLabel": "Tamaño de fuente",
+    "app.submenu.application.increaseFontBtnLabel": "Incrementar tamaño de fuente",
+    "app.submenu.application.decreaseFontBtnLabel": "Reducir tamaño de fuente",
+    "app.submenu.application.languageLabel": "Lenguaje de aplicación",
+    "app.submenu.application.ariaLanguageLabel": "Cambiar lenguaje de aplicación",
+    "app.submenu.application.languageOptionLabel": "Seleccionar lenguaje",
+    "app.submenu.application.noLocaleOptionLabel": "No hay locales activos",
+    "app.submenu.audio.micSourceLabel": "Fuente de micrófono",
+    "app.submenu.audio.speakerSourceLabel": "Fuente de altavoces",
+    "app.submenu.audio.streamVolumeLabel": "Volumen del flujo de audio",
+    "app.submenu.video.title": "Video",
+    "app.submenu.video.videoSourceLabel": "Fuente del video",
+    "app.submenu.video.videoOptionLabel": "Escoger ver fuente",
+    "app.submenu.video.videoQualityLabel": "Calidad del Video",
+    "app.submenu.video.qualityOptionLabel": "Escoger calidad del video",
+    "app.submenu.video.participantsCamLabel": "Viendo webcams de participantes",
+    "app.submenu.closedCaptions.closedCaptionsLabel": "Subtítulos",
+    "app.submenu.closedCaptions.takeOwnershipLabel": "Tomar el control",
+    "app.submenu.closedCaptions.languageLabel": "Lenguaje",
+    "app.submenu.closedCaptions.localeOptionLabel": "Seleccionar lenguaje",
+    "app.submenu.closedCaptions.noLocaleOptionLabel": "No hay locales activos",
+    "app.submenu.closedCaptions.fontFamilyLabel": "Familia de fuente",
+    "app.submenu.closedCaptions.fontFamilyOptionLabel": "Seleccionar familia de fuente",
+    "app.submenu.closedCaptions.fontSizeLabel": "Tamaño de fuente",
+    "app.submenu.closedCaptions.fontSizeOptionLabel": "Seleccionar tamaño de fuente",
+    "app.submenu.closedCaptions.backgroundColorLabel": "Color de fondo",
+    "app.submenu.closedCaptions.fontColorLabel": "Color de fuente",
+    "app.submenu.participants.muteAllLabel": "Silenciar a todos menos al presentador",
+    "app.submenu.participants.lockAllLabel": "Bloquear a todos los participantes",
+    "app.submenu.participants.lockItemLabel": "Participantes {0}",
+    "app.submenu.participants.lockMicDesc": "Deshabilita micrófono a todos los participantes bloqueados",
+    "app.submenu.participants.lockCamDesc": "Deshabilita el webcam a todos los participantes bloqueados",
+    "app.submenu.participants.lockPublicChatDesc": "Deshabilita el chat público a todos los usuarios bloqueados",
+    "app.submenu.participants.lockPrivateChatDesc": "Deshabilita el chat privado a todos los usuarios bloqueados",
+    "app.submenu.participants.lockLayoutDesc": "Bloquea el diseño a todos los usuarios bloqueados",
+    "app.submenu.participants.lockMicAriaLabel": "Bloquea micrófono",
+    "app.submenu.participants.lockCamAriaLabel": "Bloquea webcam",
+    "app.submenu.participants.lockPublicChatAriaLabel": "Bloquea el chat público",
+    "app.submenu.participants.lockPrivateChatAriaLabel": "Bloquea el chat privado",
+    "app.submenu.participants.lockLayoutAriaLabel": "Bloquea el diseño",
+    "app.submenu.participants.lockMicLabel": "Micrófono",
+    "app.submenu.participants.lockCamLabel": "Webcam",
+    "app.submenu.participants.lockPublicChatLabel": "Chat público",
+    "app.submenu.participants.lockPrivateChatLabel": "Chat privado",
+    "app.submenu.participants.lockLayoutLabel": "Diseño",
+    "app.settings.applicationTab.label": "Aplicación",
+    "app.settings.audioTab.label": "Audio",
+    "app.settings.videoTab.label": "Video",
+    "app.settings.closedcaptionTab.label": "Subtítulos",
+    "app.settings.usersTab.label": "Participantes",
+    "app.settings.main.label": "Configuración",
+    "app.settings.main.cancel.label": "Cancela",
+    "app.settings.main.cancel.label.description": "Deshecha los cambios y cierra el menú de configuración",
+    "app.settings.main.save.label": "Guardar",
+    "app.settings.main.save.label.description": "Gurada cambios y cierra el menú de configuración",
+    "app.actionsBar.actionsDropdown.actionsLabel": "Acciones",
+    "app.actionsBar.actionsDropdown.presentationLabel": "Subir una presentación",
+    "app.actionsBar.actionsDropdown.initPollLabel": "Iniciar una encuesta",
+    "app.actionsBar.actionsDropdown.desktopShareLabel": "Compartir tu pantalla",
+    "app.actionsBar.actionsDropdown.presentationDesc": "Subir tu presentación",
+    "app.actionsBar.actionsDropdown.initPollDesc": "Iniciar una encuesta",
+    "app.actionsBar.actionsDropdown.desktopShareDesc": "Compartir tu pantalla con otros",
+    "app.actionsBar.emojiMenu.awayLabel": "Ausente",
+    "app.actionsBar.emojiMenu.awayDesc": "Cambiar tu estatus a ausente",
+    "app.actionsBar.emojiMenu.raiseHandLabel": "Alzar",
+    "app.actionsBar.emojiMenu.raiseHandDesc": "Alzar la mano para preguntar",
+    "app.actionsBar.emojiMenu.neutralLabel": "Indeciso",
+    "app.actionsBar.emojiMenu.neutralDesc": "Cambiar tu estatus a indeciso",
+    "app.actionsBar.emojiMenu.confusedLabel": "Confundido",
+    "app.actionsBar.emojiMenu.confusedDesc": "Cambiar tu estatus a confundido",
+    "app.actionsBar.emojiMenu.sadLabel": "Triste",
+    "app.actionsBar.emojiMenu.sadDesc": "Cambiar tu estatus a triste",
+    "app.actionsBar.emojiMenu.happyLabel": "Feliz",
+    "app.actionsBar.emojiMenu.happyDesc": "Cambiar tu estatus a feliz",
+    "app.actionsBar.emojiMenu.noneLabel": "Limpiar estátus",
+    "app.actionsBar.emojiMenu.noneDesc": "Limpia tu estatus",
+    "app.actionsBar.emojiMenu.applauseLabel": "Aplausos",
+    "app.actionsBar.emojiMenu.applauseDesc": "Cambiar tu estatus a aplausos",
+    "app.actionsBar.emojiMenu.thumbsUpLabel": "Señal de aprobación",
+    "app.actionsBar.emojiMenu.thumbsUpDesc": "Cambiar tu estatus a señal de aprobación",
+    "app.actionsBar.emojiMenu.thumbsDownLabel": "Señal de desaprobación",
+    "app.actionsBar.emojiMenu.thumbsDownDesc": "Cambia tu estatus a señal de desaprobación",
+    "app.actionsBar.currentStatusDesc": "estatus actual {0}",
+    "app.audioNotification.audioFailedError1001": "Error 1001: WebSocket desconectado",
+    "app.audioNotification.audioFailedError1002": "Error 1002: No puede establecerse conexión de WebSocket",
+    "app.audioNotification.audioFailedError1003": "Error 1003: Versión de navegador no soportado ",
+    "app.audioNotification.audioFailedError1004": "Error 1004: Falla en llamada",
+    "app.audioNotification.audioFailedError1005": "Error 1005: La llamada terminó inesperadamente",
+    "app.audioNotification.audioFailedError1006": "Error 1006: Tiempo de espera de llamada agotado",
+    "app.audioNotification.audioFailedError1007": "Error 1007: Fallo de negociación ICE",
+    "app.audioNotification.audioFailedError1008": "Error 1008: Fallo de transferencia",
+    "app.audioNotification.audioFailedError1009": "Error 1009: No se pudo obtener información de servidor STUN/TURN",
+    "app.audioNotification.audioFailedError1010": "Error 1010: Se acabó tiempo de negociación ICE  ",
+    "app.audioNotification.audioFailedError1011": "Error 1011: Se acabó tiempo recolectando ICE",
+    "app.audioNotification.audioFailedMessage": "Tu conexión de audio falló en conectarse",
+    "app.audioNotification.mediaFailedMessage": "getUserMicMedia falló, Solo orígenes seguros son admitidos",
+    "app.audioNotification.closeLabel": "Cerrar",
+    "app.breakoutJoinConfirmation.title": "Unirse a una sala de grupo",
+    "app.breakoutJoinConfirmation.message": "Quieres unirte",
+    "app.breakoutJoinConfirmation.confirmLabel": "Unirte",
+    "app.breakoutJoinConfirmation.confirmDesc": "Unirte a sala de grupo",
+    "app.breakoutJoinConfirmation.dismissLabel": "Cancelar",
+    "app.breakoutJoinConfirmation.dismissDesc": "Cierra y rechaza Unirse a Sala de Grupo",
+    "app.breakoutTimeRemainingMessage": "Tiempo restante en Sala de Grupo",
+    "app.breakoutWillCloseMessage": "Tiempo transcurrido. Sala de Grupo de cerrará en breve.",
+    "app.calculatingBreakoutTimeRemaining": "Calculando tiempo restante...",
+    "app.audioModal.microphoneLabel": "Micrófono",
+    "app.audioModal.listenOnlyLabel": "Solo escuchar",
+    "app.audioModal.audioChoiceLabel": "¿Como quieres unirte al audio?",
+    "app.audioModal.audioChoiceDesc": "Selecciona como unirse al audio en esta reunión",
+    "app.audioModal.closeLabel": "Cerrar",
+    "app.audio.joinAudio": "Unirse al audio",
+    "app.audio.leaveAudio": "Abandonar audio",
+    "app.audio.enterSessionLabel": "Entrar a la sesión",
+    "app.audio.playSoundLabel": "Reproducir sonido",
+    "app.audio.backLabel": "Atrás",
+    "app.audio.audioSettings.titleLabel": "Seleccionar tu configuración de audio",
+    "app.audio.audioSettings.descriptionLabel": "Ten en cuenta que aparecerá un cuadro de diálogo en tu navegador, que te pide a aceptar compartir tu micrófono.",
+    "app.audio.audioSettings.microphoneSourceLabel": "Fuente del micrófono",
+    "app.audio.audioSettings.speakerSourceLabel": "Fuente de altavoz",
+    "app.audio.audioSettings.microphoneStreamLabel": "Tu volúmen del flujo de audio",
+    "app.audio.listenOnly.backLabel": "Atrás",
+    "app.audio.listenOnly.closeLabel": "Cerrar",
+    "app.error.meeting.ended": "Haz salido de la conferencia",
+    "app.dropdown.close": "Cerrar",
+    "app.error.500": "Ups, algo salio mal",
+    "app.error.404": "No se encontró",
+    "app.error.401": "No autorizado",
+    "app.error.403": "Prohibido",
+    "app.error.leaveLabel": "Ingresa de nuevo",
+    "app.guest.waiting": "Esperando aprobación para unirse",
+    "app.shortcut-help.title": "Atajos",
+    "app.shortcut-help.closeLabel": "Cerrar",
+    "app.lock-viewers.webcamLabel": "Webcam",
+    "app.lock-viewers.microphoneLable": "Micrófono",
+    "app.lock-viewers.PublicChatLabel": "Chat público",
+    "app.lock-viewers.PrivateChatLable": "Chat privado",
+    "app.lock-viewers.Layout": "Diseño",
+    "app.videoPreview.cancelLabel": "Cancelar",
+    "app.videoPreview.closeLabel": "Cerrar",
+    "app.meeting.endNotification.ok.label": "OK",
+    "app.feedback.title": "Haz salido de la conferencia",
+    "app.createBreakoutRoom.joinAudio": "Unirse al audio",
+    "app.externalVideo.close": "Cerrar"
+
+}
+
diff --git a/bigbluebutton-html5/private/locales/pl_PL.json b/bigbluebutton-html5/private/locales/pl_PL.json
new file mode 100644
index 0000000000..794aafd2d8
--- /dev/null
+++ b/bigbluebutton-html5/private/locales/pl_PL.json
@@ -0,0 +1,41 @@
+{
+    "app.chat.submitLabel": "Wyślij wiadomość",
+    "app.chat.titlePrivate": "Czat prywatny z {0}",
+    "app.chat.closeChatLabel": "Zamknij {0}",
+    "app.chat.hideChatLabel": "Ukryj {0}",
+    "app.chat.dropdown.options": "Opcje Czatu",
+    "app.chat.dropdown.clear": "Wyczyść",
+    "app.chat.dropdown.copy": "Kopiuj",
+    "app.chat.dropdown.save": "Zapisz",
+    "app.chat.label": "Czat",
+    "app.note.title": "Udostępnione notatki",
+    "app.note.label": "Notatka",
+    "app.note.hideNoteLabel": "Ukryj notatkÄ™",
+    "app.userList.usersTitle": "Użytkownicy",
+    "app.userList.participantsTitle": "Uczestnicy",
+    "app.userList.messagesTitle": "Wiadomości",
+    "app.userList.notesTitle": "Notatki",
+    "app.userList.presenter": "Prezenter",
+    "app.userList.you": "Ty",
+    "app.userList.label": "Lista użytkowników",
+    "app.userList.guest": "Gość",
+    "app.userList.menuTitleContext": "Dostępne opcje",
+    "app.userList.chatListItem.unreadSingular": "{0} Nowa Wiadomość",
+    "app.userList.menu.chat.label": "Czat",
+    "app.userList.menu.clearStatus.label": "Wyczyść status",
+    "app.userList.menu.removeUser.label": "Usuń użytkownika",
+    "app.poll.closeLabel": "Zamknij",
+    "app.poll.liveResult.usersTitle": "Użytkownicy",
+    "app.settings.usersTab.label": "Uczestincy",
+    "app.settings.main.save.label": "Zapisz",
+    "app.actionsBar.emojiMenu.noneLabel": "Wyczyść status",
+    "app.audioNotification.closeLabel": "Zamknij",
+    "app.audioModal.closeLabel": "Zamknij",
+    "app.audio.listenOnly.closeLabel": "Zamknij",
+    "app.dropdown.close": "Zamknij",
+    "app.shortcut-help.closeLabel": "Zamknij",
+    "app.videoPreview.closeLabel": "Zamknij",
+    "app.externalVideo.close": "Zamknij"
+
+}
+
-- 
GitLab