diff --git a/src/main/java/org/olat/admin/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/admin/_i18n/LocalStrings_en.properties
index 3134eb03cbd60a0b9dff5f539dfd8d4ba3f2285e..ac3f3284a0f08ac5478209c070211b90145338cc 100644
--- a/src/main/java/org/olat/admin/_i18n/LocalStrings_en.properties
+++ b/src/main/java/org/olat/admin/_i18n/LocalStrings_en.properties
@@ -1,4 +1,4 @@
-#Fri Mar 23 15:13:55 CET 2018
+#Sat Apr 18 15:43:37 CEST 2020
 bulkuserreplay.chkbx.onoff='Check box on' means 'Replay ON' and 'AJAX OFF'
 bulkuserreplay.tt=User names in separate lines (no comma, etc.)
 data.no.save=Attention\: your modifications will be lost after an OpenOlat reboot\! To save your changes permanently you have to adapt the file <code>olat.properties</code>. Future releases will provide you with the possibility to save modifications automatically.
diff --git a/src/main/java/org/olat/admin/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/admin/_i18n/LocalStrings_pl.properties
index 687fe629c0c5c44c8615d5ba71c93863d621e759..a948a76ea84f597acd3318fc95d5ea4de7f59d9b 100644
--- a/src/main/java/org/olat/admin/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/admin/_i18n/LocalStrings_pl.properties
@@ -1,56 +1,87 @@
-#Fri Mar 23 15:13:55 CET 2018
+#Sat Apr 18 14:25:47 CEST 2020
 bulkuserreplay.chkbx.onoff=Opcja Replay ON i AJAX OFF
-bulkuserreplay.tt=Nazwy u\u017Cytkownik\u00F3w - jeden w linii
-data.no.save=Uwaga\! Te zmiany nie zostan\u0105 zachowane po nast\u0119pnym restarcie systemu\! By zapisa\u0107 je na sta\u0142e zmodyfikuj plik olat.properties. W nast\u0119pnych wersjach OLAT ta zmiana b\u0119dzie wprowadzana automatycznie.
+bulkuserreplay.tt=Nazwy u\u017Cytkownik\u00F3w - jeden w linii (bez przecink\u00F3w, itp.)
+data.no.save=Uwaga\! Te zmiany nie zostan\u0105 zachowane po nast\u0119pnym restarcie systemu\! Aby zapisa\u0107 je na sta\u0142e zmodyfikuj plik olat.properties. W nast\u0119pnych wersjach OLAT ta zmiana b\u0119dzie wprowadzana automatycznie.
 main.menu.title=Administracja
-menu.admin=Administrowanie
+menu.admin=Administracja
 menu.admin.alt=Administrowanie
 menu.advancedproperties=Zaawansowane w\u0142a\u015Bciwo\u015Bci
 menu.advancedproperties.alt=Formularz wyszukiwania zaawansowanych w\u0142a\u015Bciwo\u015Bci
 menu.ajax=AJAX
 menu.ajax.alt=Modyfikuj tryb AJAX dla ca\u0142ego systemu
-menu.config=Konfiguracja systemu
+menu.bc=Ordner
+menu.bc.alt=Ordner und Thumbnails
+menu.caches=Caches
+menu.cluster=Clustering
+menu.config=Funkcje podstawowe
 menu.config.alt=Skonfiguruj sw\u00F3j system
+menu.devel=Rozw\u00F3j
+menu.devel.alt=Narz\u0119dzia progrmaistyczne
+menu.eassessment=e-Assessment
 menu.errors=B\u0142\u0119dy
-menu.extensions=Modu\u0142y programowe
-menu.extensions.alt=Lista za\u0142adowanych modu\u0142\u00F3w oprogramowania
+menu.errors.alt=B\u0142\u0119dy oraz poziomy log\u00F3w
+menu.extensions=Modu\u0142y oprogramowania
+menu.extensions.alt=Lista za\u0142adowanych modu\u0142\u00F3w
+menu.external.tools=Narz\u0119dzia zewn\u0119trzne
+menu.external.tools.alt=Integration to external tools
+menu.filesfolders=Pliki i katalogi
+menu.filesfolders.alt=Du\u017Ce pliki, version settings and more
+menu.hibernate=Baza danych ORM
+menu.hibernate.alt=Baza danych ORM / Hibernacja
 menu.i18n=J\u0119zyki
 menu.i18n.alt=Konfiguracja domy\u015Blnych i aktywnych j\u0119zyk\u00F3w systemu
 menu.imadmin=Komunikator
 menu.imadmin.alt=Administrowanie komunikatorem
 menu.infomsg=Wiadomo\u015Bci informacyjne
 menu.infomsg.alt=Wiadomo\u015Bci informacyjne
+menu.javavm=Informacje o Java VM
+menu.javavm.alt=Informacje o Java Virtual Machine
 menu.jmx=JMX
 menu.jmx.alt=Poka\u017C warto\u015Bci JMX
+menu.landingpages=Landing pages
 menu.layout=Wygl\u0105d
-menu.layout.alt=Modyfikuj kompozycj\u0119 ca\u0142ego systemu
+menu.layout.alt=Modyfikuj wygl\u0105d ca\u0142ego systemu
+menu.lock=Blokady
+menu.login=Login
+menu.login.alt=Bezpiecze\u0144stwo logowania
 menu.module=Modu\u0142y
 menu.module.alt=Modu\u0142y
 menu.notifications=Powiadomienia
 menu.notifications.alt=Powiadomienia
 menu.onlinetranslation=Narz\u0119dzie t\u0142umaczenia
-menu.onlinetranslation.alt=Narz\u0119dzie t\u0142umaczenia
+menu.onlinetranslation.alt=Przet\u0142umacz OpenOlat na sw\u00F3j j\u0119zyk
 menu.onlinetranslation.customize=Narz\u0119dzie t\u0142umaczenia
-menu.onlinetranslation.customize.alt=Przet\u0142umacz wszystkie elementy OLAT, wykorzystuj\u0105c w tym celu narz\u0119dzie t\u0142umaczenia.
-menu.parent.customizing=Kastomizacja
+menu.onlinetranslation.customize.alt=Przet\u0142umacz wszystkie elementy OpenOlat, wykorzystuj\u0105c w tym celu narz\u0119dzie t\u0142umaczenia.
+menu.parent.customizing=Kustomizacja
+menu.parent.customizing.alt=Modyfikacje OpenOlat
 menu.parent.maintenance=Konserwacja systemu
+menu.parent.maintenance.alt=Konserwacja systemu / zaawansowane ustawienia
+menu.payments=Modu\u0142y p\u0142atno\u015Bci
 menu.quota=Zarz\u0105dzanie przydzia\u0142em
 menu.quota.alt=Zarz\u0105dzanie przydzia\u0142em
-menu.registration=Rejestracja platformy
-menu.registration.alt=Zarejestruj swoj\u0105 instalacj\u0119 OLAT na openolat.org 
+menu.registration=Rejestracja
+menu.registration.alt=Zarejestruj swoj\u0105 instalacj\u0119 OpenOlat na openolat.org
 menu.restapi=REST API
 menu.restapi.alt=Ustawienia REST API
-menu.search=Silnik wyszukiwarki
-menu.search.alt=Administrowanie wyszukiwark\u0105
+menu.scheduler=Harmonogram
+menu.scheduler.alt=Harmonogram kwartalny
+menu.search=Wyszukiwanie typu Full-text
+menu.search.alt=Administracja wyszukiwaniem
 menu.session=Sesje u\u017Cytkownik\u00F3w
+menu.session.alt=Sesje u\u017Cytkownika
+menu.snoop=Snoop user request
+menu.snoop.alt=Snoop user requests
 menu.statistics=Statystyki
 menu.statistics.alt=Statystyki log\u00F3w
 menu.sysinfo=Informacje systemowe
 menu.sysinfo.alt=Informacje systemowe
 menu.system=System
-menu.umgmt=Zarz\u0105dzanie u\u017Cytkownikiem
+menu.system.alt=System
+menu.umgmt=Zarz\u0105dzanie u\u017Cytkownikami
 menu.umgmt.alt=Zarz\u0105dzanie u\u017Cytkownikiem
 menu.userproperties=W\u0142a\u015Bciwo\u015Bci u\u017Cytkownika
 menu.userproperties.alt=Zarz\u0105dzaj w\u0142a\u015Bciwo\u015Bciami u\u017Cytkownika
+menu.usertools=Narz\u0119dzia
+menu.usertools.alt=Narz\u0119dzia
 menu.versions=Wersjonowanie
 menu.versions.alt=Ustawienia wersjonowania
diff --git a/src/main/java/org/olat/admin/sysinfo/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/admin/sysinfo/_i18n/LocalStrings_pl.properties
index 4ab76121e874ee00dea8229eeae0dfc0df14b17f..9cf2d2b5d02bda12bd2e51e65058cf0323f7595e 100644
--- a/src/main/java/org/olat/admin/sysinfo/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/admin/sysinfo/_i18n/LocalStrings_pl.properties
@@ -1,4 +1,4 @@
-#Wed Jan 15 16:19:44 CET 2014
+#Sat Apr 18 15:11:04 CEST 2020
 allow.dmz.requests.done=Wszystkie zapytania do DMZ, b\u0119d\u0105 od tej chwili akceptowane
 allow.login.done=Blokada logowania si\u0119 nowych u\u017Cytkownik\u00F3w zosta\u0142a wy\u0142\u0105czona.
 block.login.done=Logowanie si\u0119 nowych u\u017Cytkownik\u00F3w zosta\u0142o zablokowane.
@@ -74,48 +74,59 @@ persist.block.login=w\u0142\u0105czone
 reject.dmz.requests.done=Wszystkie zapytania do DMZ, b\u0119d\u0105 od tej pory przekierowywane do innego w\u0119z\u0142a
 reject.dmz.requests.sure=Czy na pewno chcesz przekierowa\u0107 wszystkie zapytania do DMZ na inne w\u0119z\u0142y?<br/><br/><b>Wa\u017Cne\:</b> ten w\u0119ze\u0142 powinien zosta\u0107 <b>wy\u0142\u0105czony</b> w mod_jk\!
 run.gc=Run garbage collection
-runtime=Informacje czasu wykonania
+runtime=Dane systemu
 runtime.dispatchingthreads=Wsp\u00F3\u0142bie\u017Cnie pracuj\u0105ce w\u0105tki
 runtime.memory=Pami\u0119\u0107
 runtime.memory.tooltip=Dost\u0119pne {0} MB z {1} MB
-runtime.users.last6months=Aktywni u\u017Cytkownicy w ci\u0105gu ostatnich 6 miesi\u0119cy
-runtime.users.lastday=Aktywni u\u017Cytkownicy w ci\u0105gu ostatnich 24 godzin
-runtime.users.lastmonth=Aktywni u\u017Cytkownicy w ci\u0105gu ostatniego miesi\u0105ca
-runtime.users.lastweek=Aktywni u\u017Cytkownicy w ci\u0105gu ostatniego tygodnia
+runtime.startup=Start systemu
+runtime.time=Obecny czas systemowy
+runtime.users.last6months=W ci\u0105gu ostatnich 6 miesi\u0119cy
+runtime.users.lastday=W ci\u0105gu ostatnich 24 godzin
+runtime.users.lastmonth=W ci\u0105gu ostatniego miesi\u0105ca
+runtime.users.lastweek=W ci\u0105gu ostatniego tygodnia
+runtime.users.lastyear=W ci\u0105gu ostatniego roku
 sess.access=Ostani dost\u0119p
-sess.active=Liczba u\u017Cytkownik\u00F3w, kt\u00F3rzy klikn\u0119li w ci\u0105gu ostatnich {0} minut
+sess.active=Aktywni u\u017Cytkownicy
+sess.and.clicks=$\:sess.active
 sess.attributes.title=Atrybuty
 sess.authent=Autentykacja
 sess.authprovider=Spos\u00F3b logowania
+sess.chat=Chat
+sess.click=Klikni\u0119cia
 sess.created=Utworzony
 sess.details=Szczeg\u00F3\u0142y
 sess.duration=Czas [s]
 sess.first=Imi\u0119
-sess.fqdn=\u0179r\u00F3d\u0142o (FQDN)
+sess.fqdn=Domena (FQDN)
 sess.guistats=Statystyki GUI
 sess.identity=Login
-sess.ip=\u0179r\u00F3d\u0142o (IP)
+sess.ip=Adres (IP)
 sess.kill=Uniewa\u017Cnij sesj\u0119
-sess.kill.done=Sesja u\u017Cytkownika
+sess.kill.done=Uniewa\u017Cnione sesje "{0}".
 sess.kill.info=Uniewa\u017Cnienie sesji przekieruje u\u017Cytkownika do strony logowania.
-sess.kill.sure=Czy na pewno chcesz uniewa\u017Cni\u0107 sesj\u0119?
+sess.kill.sure=Czy na pewno chcesz uniewa\u017Cni\u0107 sesj\u0119 tego u\u017Cytkownika?
 sess.last=Nazwisko
+sess.last.1.minute=W ci\u0105gu ostatniej minuty
+sess.last.5.minutes=W ci\u0105gu ostatnich 5 minut
+sess.lastClick=Last click
 sess.locale=J\u0119zyk
 sess.locks.hold=To\u017Csamo\u015B\u0107 blokuje nast\u0119puj\u0105ce obiekty\:
 sess.locks.nolock=To\u017Csamo\u015B\u0107 nie posiada obecnie \u017Cadnych zablokowanych obiekt\u00F3w.
 sess.locks.title=Blokowane obiekty
 sess.mode=Tryb Ajax
-sess.multiuserevents=zdarzenia multi-user
+sess.multiuserevents=Zdarzenia wielu u\u017Cykownik\u00F3w
 sess.noattributes=To\u017Csamo\u015B\u0107 nie ma powi\u0105zanych atrybut\u00F3w.
+sess.poll=Poll
+sess.request=\u017B\u0105dania
 sess.roles=Role
 sess.secure=Bezpieczny login
 sess.title=Sesje aktywnego u\u017Cytkownika
 sess.webMode=Tryb Web
 session.admin.allow.dmz.requests.intro=<b>Obecnie wszystkie zapytania s\u0105 blokowane w DMZ\!</b>
 session.admin.allow.dmz.requests.link=Zezw\u00F3l na wszystkie zapytania do DMZ i logowanie do tego w\u0119z\u0142a
-session.admin.allow.login.link=Wy\u0142\u0105cz blokad\u0119 logowania si\u0119 nowych u\u017Cytkownik\u00F3w 
+session.admin.allow.login.link=Wy\u0142\u0105cz blokad\u0119 logowania si\u0119 nowych u\u017Cytkownik\u00F3w
 session.admin.block.login.link=Zablokuj mo\u017Cliwo\u015B\u0107 logowania si\u0119 nowych u\u017Cytkownik\u00F3w
-session.admin.invalidate.all.link=Uniewa\u017Cnij wszystkie sesje 
+session.admin.invalidate.all.link=Uniewa\u017Cnij wszystkie sesje
 session.admin.reject.dmz.requests.intro=Przekieruj wszystkie zapytania do DMZ na inny w\u0119ze\u0142, dost\u0119pny w mod_jk. Wyj\u0105tek\: u\u017Cytkownik z prawami administratora, przez zak\u0142adk\u0119 klaster, 'Prze\u0142\u0105cz do w\u0119z\u0142a'
 session.admin.reject.dmz.requests.link=Zablokuj wszystkie zapytania do DMZ, w celu przekierowania nowych logowa\u0144 do innego w\u0119z\u0142a
 session.configuration=Konfiguracja
@@ -125,12 +136,25 @@ session.timeout.label=Czas trwania sesji w sekundach
 sessionadministration.title=Administracja sesj\u0105
 sessions=Sesje
 snoop=Dok\u0142adne informacje
+staticFolder=Katalog
 sysinfo=Informacja o systemie
 sysinfo.basedir=Folder g\u0142owny
+sysinfo.cluster=Klaster
 sysinfo.memory=Informacje o pami\u0119ci
+sysinfo.node=W\u0119ze\u0142
+sysinfo.olatdata=Katalog danych
 sysinfo.startuptime=Czas uruchamiania serwera
 sysinfo.version=Wersja
 sysinfo.version.date=Data kompilacji
 sysinfo.version.git=Wersja Git
+table.header.name=Nazwa
+table.header.next.fire.time=Dalej
+table.header.previous.fire.time=Wstecz
+table.header.running=Dzia\u0142aj\u0105ce
+table.header.trigger=Wyj\u0105tek
+title.connection.statistics=Statystki po\u0142\u0105cze\u0144 do bazy danych
 title.hibernate.statistics=Hibernate database access statistics
 usersession.title=Informacje o sesjach u\u017Cytkownika
+vfs.context.name=Name
+vfs.context.type=Typ
+vfs.context.url=URL
diff --git a/src/main/java/org/olat/core/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/core/_i18n/LocalStrings_pl.properties
index 877ac6f50694fd8abd36cc1ae77625e73f1e2a8e..6652622b3160d3b56c681048429a5819c6266a3d 100644
--- a/src/main/java/org/olat/core/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/core/_i18n/LocalStrings_pl.properties
@@ -1,4 +1,4 @@
-#Wed Sep 26 11:47:44 CEST 2018
+#Sat Apr 18 17:45:22 CEST 2020
 alert=Wybierz co najmniej jeden obiekt.
 back=Wstecz
 calendar.choose=Pobierz dat\u0119 z mini kalendarza
@@ -83,7 +83,7 @@ table.action=Akcja
 table.backward=Wstecz
 table.changecols=Dostosuj tabel\u0119
 table.download=Pobierz tabel\u0119
-table.entries=Wpis\u00F3w
+table.entries=Wpisy
 table.entries.dative=Wpisy
 table.entry=Wpis
 table.forward=Dalej
@@ -97,8 +97,10 @@ this.language.translator.names=Bartlomiej Gajc, Piotr Kowalski, Daniel Majchrzak
 tomcat.options.restart=Uruchom ponownie teraz
 tomcat.options.restartonidle=Uruchom ponownie, gdy wszyscy u\u017Cytkownicy wyloguj\u0105 si\u0119
 toolbox.actions=Akcje
+toolbox.tools=Administracja
 top=Id\u017A do g\u00F3ry
 top.alt=Id\u017A do g\u00F3ry strony
+user.fullname.separator=/
 user.guest=Go\u015B\u0107
 warn.beta.feature=Uwaga, funkcja w fazie beta\! B\u0105d\u017A \u015Bwiadomy, \u017Ce jej u\u017Cycie mo\u017Ce powodowa\u0107 nieoczekiwane zachowanie przegl\u0105darki.
 warn.header=Ostrze\u017Cenie
diff --git a/src/main/java/org/olat/core/commons/controllers/filechooser/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/core/commons/controllers/filechooser/_i18n/LocalStrings_pl.properties
index 69e417d42688e6b4d96fb4d3f67ba63e75b68131..0a47df07e5d3506adb49cadde59fa955a5eb1499 100644
--- a/src/main/java/org/olat/core/commons/controllers/filechooser/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/core/commons/controllers/filechooser/_i18n/LocalStrings_pl.properties
@@ -1,4 +1,4 @@
-#Thu Jul 27 14:32:13 CEST 2017
+#Sat Apr 18 17:45:32 CEST 2020
 button.create=Utw\u00F3rz
 calloutTrigerLink.select.site=Wybierz stron\u0119
 calloutTriggerLink=Wybierz, utw\u00F3rz lub prze\u015Blij plik
@@ -7,6 +7,7 @@ chooseLink=Wybierz plik
 command.create=Utw\u00F3rz stron\u0119 i otw\u00F3rz w edytorze
 command.edit=Otw\u00F3rz stron\u0119 w edytorze
 command.preview.label=Wybierz plik HTML
+command.remove=Usu\u0144 stron\u0119
 createLink=Utw\u00F3rz plik
 error.deleted=Skonfigurowany plik nie istnieje. Utw\u00F3rz plik ponownie lub wybierz inny.
 error.name.empty=Prosz\u0119 wpisa\u0107 nazw\u0119 tworzonego pliku
diff --git a/src/main/java/org/olat/core/commons/controllers/impressum/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/core/commons/controllers/impressum/_i18n/LocalStrings_pl.properties
index 7f605a8f1fd5a20579999372d54c5a409fa547d6..7a14cd08bed09a193268388e7548371a6ea82ef1 100644
--- a/src/main/java/org/olat/core/commons/controllers/impressum/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/core/commons/controllers/impressum/_i18n/LocalStrings_pl.properties
@@ -1,4 +1,4 @@
-#Thu Jul 27 14:37:23 CEST 2017
+#Sat Apr 18 17:45:39 CEST 2020
 ContactController.menu.title=Kontakt
 ContactController.menu.title.alt=Kontakt
 ImpressumController.menu.title=$\:menu.impressum
@@ -12,6 +12,7 @@ contactform.title=Kontakt
 enable=w\u0142\u0105czone
 enable.impressum=W\u0142\u0105cz znak wodny
 main.menu.title=$\:menu.impressum
+main.menu.title.alt=$\:menu.impressum
 position=Pozycja
 position.footer=Stopka
 position.top=G\u00F3ra
diff --git a/src/main/java/org/olat/core/commons/controllers/resume/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/core/commons/controllers/resume/_i18n/LocalStrings_pl.properties
index 9cf10485ea1804d5979f78230ca3b48d19570ac2..2a018103bad0cb2112c497aad77066d98a43856d 100644
--- a/src/main/java/org/olat/core/commons/controllers/resume/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/core/commons/controllers/resume/_i18n/LocalStrings_pl.properties
@@ -1,6 +1,6 @@
-#Thu Jul 27 14:38:39 CEST 2017
+#Sat Apr 18 12:11:33 CEST 2020
 askagain.label=Nie pytaj ponownie
 resume=Czy chcesz wznowi\u0107 poprzedni\u0105 sesj\u0119?
 resume.button=Tak
 resume.button.cancel=Nie
-resume.button.landing=Strona startowa
+resume.button.landing=Strona domowa
diff --git a/src/main/java/org/olat/core/commons/editor/fileeditor/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/core/commons/editor/fileeditor/_i18n/LocalStrings_pl.properties
new file mode 100644
index 0000000000000000000000000000000000000000..0bcbecc8ad3a688bbf23de2d6cd15db3d4a39b76
--- /dev/null
+++ b/src/main/java/org/olat/core/commons/editor/fileeditor/_i18n/LocalStrings_pl.properties
@@ -0,0 +1,2 @@
+#Sat Apr 18 17:45:48 CEST 2020
+editor.display.name=OpenOlat
diff --git a/src/main/java/org/olat/core/commons/editor/plaintexteditor/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/core/commons/editor/plaintexteditor/_i18n/LocalStrings_pl.properties
index dff585ffe4127bc66bc6e7ce4ec2e4475ee24d59..f54d2f35cae17f878f16b162fd64ed807e8a39cb 100644
--- a/src/main/java/org/olat/core/commons/editor/plaintexteditor/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/core/commons/editor/plaintexteditor/_i18n/LocalStrings_pl.properties
@@ -1,3 +1,6 @@
-#Mon Mar 02 09:54:16 CET 2009
+#Sat Apr 18 17:46:03 CEST 2020
+close=Zamknij
+file.name={0}
 plaintext.error.tolarge=Dokument nie mo\u017Ce zosta\u0107 otwarty ze wzgl\u0119du na zbyt du\u017Cy rozmiar ({0} KB). Dozwolone s\u0105 pliki o rozmiarze do {1} KB
+save.close=Zapisz i zamknij
 textarea=Zawarto\u015B\u0107 dokumentu
diff --git a/src/main/java/org/olat/core/dispatcher/ErrorsDispatcher.java b/src/main/java/org/olat/core/dispatcher/ErrorsDispatcher.java
index 1dbd08ea90569021477b8dd4d93137f4619d6d3a..57e4931fd9f2710eb43d388e8edcd9e476fb874d 100644
--- a/src/main/java/org/olat/core/dispatcher/ErrorsDispatcher.java
+++ b/src/main/java/org/olat/core/dispatcher/ErrorsDispatcher.java
@@ -44,6 +44,7 @@ public class ErrorsDispatcher implements Dispatcher {
 	@Override
 	public void execute(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 		try(PrintWriter writer = response.getWriter()) {
+			response.setContentType("text/html;charset=utf-8");
 			writer.append("<!DOCTYPE html><html>")
 			      .append("<head><title>Unexpected error</title></head>")
 			      .append("<body><h3>An unexpected error occured... Sorry!</h3><p>Error code: ")
diff --git a/src/main/java/org/olat/course/nodes/BigBlueButtonCourseNode.java b/src/main/java/org/olat/course/nodes/BigBlueButtonCourseNode.java
index 1a22d18d2b10f331fbe2e5ab0ba8347ca43bfbad..5700f89e3784d68ff2c32620b1c4e11fc6cafcd3 100644
--- a/src/main/java/org/olat/course/nodes/BigBlueButtonCourseNode.java
+++ b/src/main/java/org/olat/course/nodes/BigBlueButtonCourseNode.java
@@ -21,6 +21,7 @@ package org.olat.course.nodes;
 
 import java.util.List;
 
+import org.olat.core.CoreSpringFactory;
 import org.olat.core.gui.UserRequest;
 import org.olat.core.gui.components.stack.BreadcrumbPanel;
 import org.olat.core.gui.control.Controller;
@@ -42,6 +43,9 @@ import org.olat.course.run.navigation.NodeRunConstructionResult;
 import org.olat.course.run.userview.NodeEvaluation;
 import org.olat.course.run.userview.UserCourseEnvironment;
 import org.olat.modules.ModuleConfiguration;
+import org.olat.modules.bigbluebutton.BigBlueButtonManager;
+import org.olat.modules.bigbluebutton.BigBlueButtonMeeting;
+import org.olat.modules.bigbluebutton.model.BigBlueButtonErrors;
 import org.olat.modules.bigbluebutton.ui.BigBlueButtonMeetingDefaultConfiguration;
 import org.olat.modules.bigbluebutton.ui.BigBlueButtonRunController;
 import org.olat.repository.RepositoryEntry;
@@ -150,4 +154,18 @@ public class BigBlueButtonCourseNode extends AbstractAccessableCourseNode {
 		return false;
 	}
 
+	@Override
+	public void cleanupOnDelete(ICourse course) {
+		BigBlueButtonManager bigBlueButtonManager = CoreSpringFactory.getImpl(BigBlueButtonManager.class);
+		RepositoryEntry courseEntry = course.getCourseEnvironment().getCourseGroupManager().getCourseEntry();
+		List<BigBlueButtonMeeting> meetings = bigBlueButtonManager.getMeetings(courseEntry, getIdent(), null);
+		BigBlueButtonErrors errors = new BigBlueButtonErrors();
+		for(BigBlueButtonMeeting meeting:meetings) {
+			CoreSpringFactory.getImpl(BigBlueButtonManager.class).deleteMeeting(meeting, errors);
+		}
+		super.cleanupOnDelete(course);
+	}
+	
+	
+
 }
diff --git a/src/main/java/org/olat/course/nodes/IQSELFCourseNode.java b/src/main/java/org/olat/course/nodes/IQSELFCourseNode.java
index da475a142a0eb3085fb5d5be081e0b5ffeee81ef..fb078e249dd3a02b6170537ef71f7e836d543ba1 100644
--- a/src/main/java/org/olat/course/nodes/IQSELFCourseNode.java
+++ b/src/main/java/org/olat/course/nodes/IQSELFCourseNode.java
@@ -260,7 +260,11 @@ public class IQSELFCourseNode extends AbstractAccessableCourseNode implements Se
 	public boolean archiveNodeData(Locale locale, ICourse course, ArchiveOptions options,
 			ZipOutputStream exportStream, String archivePath, String charset) {
 		String repositorySoftKey = (String) getModuleConfiguration().get(IQEditController.CONFIG_KEY_REPOSITORY_SOFTKEY);
-		RepositoryEntry re = RepositoryManager.getInstance().lookupRepositoryEntryBySoftkey(repositorySoftKey, true);
+		RepositoryEntry re = RepositoryManager.getInstance().lookupRepositoryEntryBySoftkey(repositorySoftKey, false);
+		if(re == null) {
+			log.error("Cannot archive course node. Missing repository entry with soft key: ", repositorySoftKey);
+			return false;
+		}
 		
 		try {
 			if(ImsQTI21Resource.TYPE_NAME.equals(re.getOlatResource().getResourceableTypeName())) {
diff --git a/src/main/java/org/olat/course/nodes/IQSURVCourseNode.java b/src/main/java/org/olat/course/nodes/IQSURVCourseNode.java
index 82612535703bbbdf0daa52b3502db9d8fbd455e6..a68bc105b5353a397c47413620428ed6950524d4 100644
--- a/src/main/java/org/olat/course/nodes/IQSURVCourseNode.java
+++ b/src/main/java/org/olat/course/nodes/IQSURVCourseNode.java
@@ -305,7 +305,11 @@ public class IQSURVCourseNode extends AbstractAccessableCourseNode implements QT
 			ZipOutputStream exportStream, String archivePath, String charset) {
 		QTIExportManager qem = QTIExportManager.getInstance();
 		String repositorySoftKey = (String) getModuleConfiguration().get(IQEditController.CONFIG_KEY_REPOSITORY_SOFTKEY);
-		RepositoryEntry re = RepositoryManager.getInstance().lookupRepositoryEntryBySoftkey(repositorySoftKey, true);
+		RepositoryEntry re = RepositoryManager.getInstance().lookupRepositoryEntryBySoftkey(repositorySoftKey, false);
+		if(re == null) {
+			log.error("Cannot archive course node. Missing repository entry with soft key: ", repositorySoftKey);
+			return false;
+		}
 
 		QTIExportFormatter qef = new QTIExportFormatterCSVType3(locale, null,"\t", "\"", "\r\n", false);
 		try {
diff --git a/src/main/java/org/olat/course/nodes/IQTESTCourseNode.java b/src/main/java/org/olat/course/nodes/IQTESTCourseNode.java
index 5caa4b0707b677eaeac9688268bf955401ef386c..7979b05a7d21ae8e667da9edd623619e3f48bd16 100644
--- a/src/main/java/org/olat/course/nodes/IQTESTCourseNode.java
+++ b/src/main/java/org/olat/course/nodes/IQTESTCourseNode.java
@@ -713,7 +713,12 @@ public class IQTESTCourseNode extends AbstractAccessableCourseNode implements Pe
 		// 1) prepare result export
 		CourseEnvironment courseEnv = course.getCourseEnvironment();
 		try {
-			RepositoryEntry re = RepositoryManager.getInstance().lookupRepositoryEntryBySoftkey(repositorySoftKey, true);
+			RepositoryEntry re = RepositoryManager.getInstance().lookupRepositoryEntryBySoftkey(repositorySoftKey, false);
+			if(re == null) {
+				log.error("Cannot archive course node. Missing repository entry with soft key: ", repositorySoftKey);
+				return false;
+			}
+			
 			boolean onyx = QTIResourceTypeModule.isOnyxTest(re.getOlatResource());
 			if (onyx) {
 				return true;
diff --git a/src/main/java/org/olat/course/nodes/bigbluebutton/BigBlueButtonConfigForm.java b/src/main/java/org/olat/course/nodes/bigbluebutton/BigBlueButtonConfigForm.java
index c828ab446152362ab7dede2758bc3cf123fb36c6..88b8c6b00c40e36e3395fcf347bc60de14e8597b 100644
--- a/src/main/java/org/olat/course/nodes/bigbluebutton/BigBlueButtonConfigForm.java
+++ b/src/main/java/org/olat/course/nodes/bigbluebutton/BigBlueButtonConfigForm.java
@@ -54,6 +54,8 @@ public class BigBlueButtonConfigForm extends FormBasicController {
 
 	@Override
 	protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
+		setFormContextHelp("Course+element+BigBlueButton");
+		
 		String[] accessValues = new String[] { translate("vc.access.start") };
 		
 		boolean moderatorStart = config.getBooleanSafe(BigBlueButtonEditController.MODERATOR_START_MEETING, true);
diff --git a/src/main/java/org/olat/course/run/scoring/ScoreAccounting.java b/src/main/java/org/olat/course/run/scoring/ScoreAccounting.java
index 866b9f0f94235e3bd8f8ca080a40d02fd59df34a..1af8e609ba85bcc5e12b607eaf5066c593d164de 100644
--- a/src/main/java/org/olat/course/run/scoring/ScoreAccounting.java
+++ b/src/main/java/org/olat/course/run/scoring/ScoreAccounting.java
@@ -26,6 +26,7 @@
 package org.olat.course.run.scoring;
 
 import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Date;
 import java.util.HashMap;
@@ -38,6 +39,7 @@ import org.olat.core.CoreSpringFactory;
 import org.olat.core.id.Identity;
 import org.olat.core.logging.Tracing;
 import org.olat.core.util.nodes.INode;
+import org.olat.core.util.tree.TreeHelper;
 import org.olat.core.util.tree.TreeVisitor;
 import org.olat.core.util.tree.Visitor;
 import org.olat.course.condition.interpreter.ConditionInterpreter;
@@ -46,6 +48,7 @@ import org.olat.course.nodes.AssessableCourseNode;
 import org.olat.course.nodes.CalculatedAssessableCourseNode;
 import org.olat.course.nodes.CourseNode;
 import org.olat.course.nodes.PersistentAssessableCourseNode;
+import org.olat.course.nodes.STCourseNode;
 import org.olat.course.run.userview.UserCourseEnvironment;
 import org.olat.modules.assessment.AssessmentEntry;
 import org.olat.modules.assessment.model.AssessmentEntryStatus;
@@ -496,6 +499,10 @@ public class ScoreAccounting {
 			error = true;
 			return Boolean.FALSE;
 		}
+		if(foundNode instanceof STCourseNode) {
+			return evalUserVisibleOfCourseNode((STCourseNode)foundNode);
+		}
+		
 		AssessableCourseNode acn = (AssessableCourseNode) foundNode;
 		ScoreEvaluation se = evalCourseNode(acn);
 		if (se == null) { // the node could not provide any sensible information on scoring. e.g. a STNode with no calculating rules
@@ -505,6 +512,35 @@ public class ScoreAccounting {
 		// check if the results are visible
 		return se.getUserVisible() != null && se.getUserVisible().booleanValue();
 	}
+	
+	private boolean evalUserVisibleOfCourseNode(STCourseNode stNode) {
+		ScoreCalculator scoreCalculator = stNode.getScoreCalculator();
+		List<String> nodes = new ArrayList<>();
+		List<String> passedNodes = scoreCalculator.getPassedNodes();
+		if(passedNodes != null) {
+			nodes.addAll(passedNodes);
+		}
+		List<String> sumNodes = scoreCalculator.getSumOfScoreNodes();
+		if(sumNodes != null) {
+			nodes.addAll(sumNodes);
+		}
+		if(nodes.isEmpty()) {
+			TreeHelper.collectNodeIdentifiersRecursive(stNode, nodes);
+			nodes.remove(stNode.getIdent());
+		}
+		
+		for(String childIdent:nodes) {
+			CourseNode childNode = findChildByID(childIdent);
+			if(childNode instanceof AssessableCourseNode && !(childNode instanceof STCourseNode)) {
+				AssessableCourseNode acn = (AssessableCourseNode)childNode;
+				ScoreEvaluation se = evalCourseNode(acn);
+				if (se != null && se.getUserVisible() != null && se.getUserVisible().booleanValue()) {
+					return Boolean.TRUE;
+				}
+			}
+		}
+		return Boolean.FALSE;
+	}
 
 	private CourseNode findChildByID(String id) {
 		return userCourseEnvironment.getCourseEnvironment().getRunStructure().getNode(id);
diff --git a/src/main/java/org/olat/home/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/home/_i18n/LocalStrings_pl.properties
index d7121f69e34f508ef535e1224819226160b57962..fdebe4338c3f68224aea2b7062b41c22a263e521 100644
--- a/src/main/java/org/olat/home/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/home/_i18n/LocalStrings_pl.properties
@@ -1,6 +1,8 @@
-#Thu Sep 03 11:24:43 CEST 2015
+#Sat Apr 18 17:52:48 CEST 2020
 command.portal.back=Zako\u0144cz konfiguracj\u0119
 command.portal.edit=Konfiguruj stron\u0119
+course.closed=Zako\u0144czone
+course.favorit=Ulubione
 email.disabled=Tw\u00F3j adres e-mail zosta\u0142 uniewa\u017Cniony przez administratora, wi\u0119c nie mo\u017Cesz otrzymywa\u0107 wiadomo\u015Bci, wysy\u0142anych z OLAT. Aby aktywowa\u0107 sw\u00F3j adres e-mail, przejd\u017A do Strony g\u0142\u00F3wnej, kliknij w link Ustawienia i w zak\u0142adce Profil, wpisz nowy adres.
 guestinfo.header=Informacje
 guestinfo.message=Konto go\u015Bcia umo\u017Cliwia wgl\u0105d do systemu OLAT, z ograniczon\u0105 funkcjonalno\u015Bci\u0105<br><br>Masz dost\u0119p tylko do zasob\u00F3w edukacyjnych b\u0119d\u0105cych jawnie udost\u0119pnionych go\u015Bciom.<br><br> Aby uzyska\u0107 dost\u0119p do reszty musisz si\u0119 zarejestrowa\u0107. 
diff --git a/src/main/java/org/olat/modules/adobeconnect/manager/AdobeConnectManagerImpl.java b/src/main/java/org/olat/modules/adobeconnect/manager/AdobeConnectManagerImpl.java
index 243234950901e9c58adf7b634a7ee3964ea0fecf..458d8afac14264a9ccaeeb8f66a2beacde405936 100644
--- a/src/main/java/org/olat/modules/adobeconnect/manager/AdobeConnectManagerImpl.java
+++ b/src/main/java/org/olat/modules/adobeconnect/manager/AdobeConnectManagerImpl.java
@@ -405,24 +405,26 @@ public class AdobeConnectManagerImpl implements AdobeConnectManager, DeletableGr
 						+ "' subIdent:'" + meeting.getSubIdent() + "'", errors);
 				return null;
 			}
-			String urlPath = sco.getUrlPath();
-			UriBuilder builder = adobeConnectModule
-					.getAdobeConnectHostUriBuilder()
-					.path(urlPath);
-
-			BreezeSession session = null;
-			Authentication authentication = securityManager.findAuthentication(identity, ACONNECT_PROVIDER);
-			if(authentication != null) {
-				session = getAdapter().commonInfo(authentication, errors);
-			}
-
-			if(session != null && StringHelper.containsNonWhitespace(session.getSession())) {
-				builder.queryParam("session", session.getSession());
-			} else {
-				String fullName = userManager.getUserDisplayName(identity);
-				builder.queryParam("guestName", fullName).build();
+			if(sco != null) {
+				String urlPath = sco.getUrlPath();
+				UriBuilder builder = adobeConnectModule
+						.getAdobeConnectHostUriBuilder()
+						.path(urlPath);
+	
+				BreezeSession session = null;
+				Authentication authentication = securityManager.findAuthentication(identity, ACONNECT_PROVIDER);
+				if(authentication != null) {
+					session = getAdapter().commonInfo(authentication, errors);
+				}
+	
+				if(session != null && StringHelper.containsNonWhitespace(session.getSession())) {
+					builder.queryParam("session", session.getSession());
+				} else {
+					String fullName = userManager.getUserDisplayName(identity);
+					builder.queryParam("guestName", fullName).build();
+				}
+				return builder.build().toString();
 			}
-			return builder.build().toString();
 		}
 		return null;
 	}
diff --git a/src/main/java/org/olat/modules/bigbluebutton/manager/BigBlueButtonManagerImpl.java b/src/main/java/org/olat/modules/bigbluebutton/manager/BigBlueButtonManagerImpl.java
index 16f11d2be63d6102dd90c79adc9e62071443d34b..20027db1dd2ae999d48140b3a8a0bc72f7390cf9 100644
--- a/src/main/java/org/olat/modules/bigbluebutton/manager/BigBlueButtonManagerImpl.java
+++ b/src/main/java/org/olat/modules/bigbluebutton/manager/BigBlueButtonManagerImpl.java
@@ -55,6 +55,7 @@ import org.olat.course.CourseFactory;
 import org.olat.course.ICourse;
 import org.olat.group.BusinessGroup;
 import org.olat.group.BusinessGroupService;
+import org.olat.group.DeletableGroupData;
 import org.olat.modules.bigbluebutton.BigBlueButtonManager;
 import org.olat.modules.bigbluebutton.BigBlueButtonMeeting;
 import org.olat.modules.bigbluebutton.BigBlueButtonMeetingTemplate;
@@ -69,6 +70,7 @@ import org.olat.modules.bigbluebutton.model.BigBlueButtonMeetingImpl;
 import org.olat.modules.bigbluebutton.model.BigBlueButtonMeetingInfos;
 import org.olat.modules.bigbluebutton.model.BigBlueButtonServerInfos;
 import org.olat.repository.RepositoryEntry;
+import org.olat.repository.RepositoryEntryDataDeletable;
 import org.olat.repository.RepositoryEntryRef;
 import org.olat.repository.RepositoryManager;
 import org.olat.repository.manager.RepositoryEntryDAO;
@@ -85,7 +87,8 @@ import org.w3c.dom.Document;
  *
  */
 @Service
-public class BigBlueButtonManagerImpl implements BigBlueButtonManager, InitializingBean {
+public class BigBlueButtonManagerImpl implements BigBlueButtonManager,
+	DeletableGroupData, RepositoryEntryDataDeletable, InitializingBean {
 	
 	private static final Logger log = Tracing.createLoggerFor(BigBlueButtonManagerImpl.class);
 
@@ -215,6 +218,26 @@ public class BigBlueButtonManagerImpl implements BigBlueButtonManager, Initializ
 		bigBlueButtonMeetingTemplateDao.updateTemplate(template);
 	}
 
+	@Override
+	public boolean deleteGroupDataFor(BusinessGroup group) {
+		List<BigBlueButtonMeeting> meetings = bigBlueButtonMeetingDao.getMeetings(null, null, group);
+		BigBlueButtonErrors errors = new BigBlueButtonErrors();
+		for(BigBlueButtonMeeting meeting:meetings) {
+			deleteMeeting(meeting, errors);
+		}
+		return !errors.hasErrors();
+	}
+	
+	@Override
+	public boolean deleteRepositoryEntryData(RepositoryEntry re) {
+		List<BigBlueButtonMeeting> meetings = bigBlueButtonMeetingDao.getMeetings(re, null, null);
+		BigBlueButtonErrors errors = new BigBlueButtonErrors();
+		for(BigBlueButtonMeeting meeting:meetings) {
+			deleteMeeting(meeting, errors);
+		}
+		return !errors.hasErrors();
+	}
+
 	@Override
 	public BigBlueButtonServer createServer(String url, String recordingUrl, String sharedSecret) {
 		return bigBlueButtonServerDao.createServer(url, recordingUrl, sharedSecret);
diff --git a/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonConfigurationController.java b/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonConfigurationController.java
index 23e972292492f35242e2b4c63bfad4cadc4a7fcb..da11f8a6cfe310fa44902ee031d1769669cfcfe2 100644
--- a/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonConfigurationController.java
+++ b/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonConfigurationController.java
@@ -86,7 +86,7 @@ public class BigBlueButtonConfigurationController extends FormBasicController {
 	protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
 		setFormTitle("bigbluebutton.title");
 		setFormInfo("bigbluebutton.intro");
-		setFormContextHelp("Communication and Collaboration#_bigbluebutton_config");
+		setFormContextHelp("BigBlueButton+module");
 		String[] enabledValues = new String[]{ translate("enabled") };
 		
 		moduleEnabled = uifactory.addCheckboxesHorizontal("bigbluebutton.module.enabled", formLayout, ENABLED_KEY, enabledValues);
@@ -220,7 +220,7 @@ public class BigBlueButtonConfigurationController extends FormBasicController {
 		listenTo(editServerCtlr);
 		
 		cmc = new CloseableModalController(getWindowControl(), "close", editServerCtlr.getInitialComponent(),
-				true, translate("add.single.meeting"));
+				true, translate("add.server"));
 		cmc.activate();
 		listenTo(cmc);
 	}
diff --git a/src/main/java/org/olat/modules/bigbluebutton/ui/_content/meetings_admin.html b/src/main/java/org/olat/modules/bigbluebutton/ui/_content/meetings_admin.html
index 3673585e5fd07d5e73486f87cef6070850eb87dc..bbb60815b6b8f814cfe3bb62ab1bfb66ad0df07a 100644
--- a/src/main/java/org/olat/modules/bigbluebutton/ui/_content/meetings_admin.html
+++ b/src/main/java/org/olat/modules/bigbluebutton/ui/_content/meetings_admin.html
@@ -1,3 +1,4 @@
+<div>$r.contextHelpWithWrapper("Course+element+BigBlueButton")</div>
 #if($r.available("add.meeting"))
 <div class="o_button_group o_button_group_right">
 	$r.render("add.meeting")
diff --git a/src/main/java/org/olat/repository/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/repository/_i18n/LocalStrings_pl.properties
index c148bc52d84e63ad48dc19b12aad058f52859f66..c2f8a25dd2581afdd234be721590347516aebdc6 100644
--- a/src/main/java/org/olat/repository/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/repository/_i18n/LocalStrings_pl.properties
@@ -1,13 +1,17 @@
-#Mon Aug 21 14:37:31 CEST 2017
+#Sat Apr 18 18:06:02 CEST 2020
+BinderTemplate=Templatka portfolio 2.0
 CourseModule=Kurs
+EPStructuredMapTemplate=Templatka portfolio
 Failed=Przesy\u0142anie tego pliku nie powiod\u0142o si\u0119.
 FileResource.ANIM=Animacja
 FileResource.BLOG=Blog
-FileResource.DOC=Word
+FileResource.DOC=S\u0142owo
 FileResource.FILE=Inny plik
+FileResource.FORM=Ankieta
 FileResource.GLOSSARY=S\u0142ownik
 FileResource.IMAGE=Obrazek
 FileResource.IMSCP=Pakiet CP
+FileResource.IMSQTI21=Test (QTI 2.1)
 FileResource.MOVIE=Film
 FileResource.PDF=PDF
 FileResource.PODCAST=Podcast
@@ -21,6 +25,22 @@ FileResource.WIKI=Wiki
 FileResource.XLS=Excel
 NoImage=Ten format pliku nie mo\u017Ce by\u0107 za\u0142adowany jako obraz.
 ULLimitExceeded=Rozmiar pliku obrazu nie mo\u017Ce przekroczy\u0107 {0} kB.
+access.info.catalog=Widoczno\u015B\u0107 katalogu
+access.info.conditions=Warunki
+access.info.conditions.always=Zawsze
+access.info.conditions.coach=Tylko z statusem "$\:cif.status.coachpublished", "$\:cif.status.published" wed\u0142ug "$\:cif.status.closed"
+access.info.conditions.no=Nie
+access.info.conditions.not.share.allUsers=Dost\u0119p dla wszystkich wy\u0142\u0105czony
+access.info.conditions.not.share.guests=Dost\u0119p dla go\u015Bci wy\u0142\u0105czony
+access.info.conditions.participant=Tylko ze statusem "$\:cif.status.published" lub "$\:cif.status.closed"
+access.info.conditions.yes=Tak
+access.info.explain=Widoczno\u015B\u0107 zasobu w katalogu zale\u017Cy od statusu oraz ustawie\u0144 udost\u0119pniania
+access.info.role=Rola u\u017Cytkownika
+access.info.role.allUsers=Wszyscy u\u017Cytkownicy
+access.info.role.coach=Trener
+access.info.role.guests=Go\u015Bcie
+access.info.role.owner=W\u0142a\u015Bciciel
+access.info.role.participant=Uczestnik
 add.blog=Dodaj blog
 add.blog.intro=Dodaj Blog (archiwum ZIP wygenerowane po pobraniu z OpenOlat)
 add.course=Dodaj kurs
@@ -50,10 +70,24 @@ add.wiki=Dodaj Wiki
 add.wiki.intro=Dodaj Wiki (plik ZIP wygenerowany przez system OpenOlat).
 add.wrongtype=Format tego zasobu edukacyjnego nie odpowiada wybranemu formatowi. Nie dodano zasobu.
 addinfo.owner=Dodatkowe informacje
+admin.lifecycles.intro=Utw\u00F3rz i edytuj warunki semestru, aby zdefiniowa\u0107 okresy realizacji kursu semestru zamiast definiowa\u0107 okres realizacji kursu indywidualnie dla ka\u017Cdego kursu. Warunki semestru, kt\u00F3re tu utworzy\u0142e\u015B, mo\u017Cesz wykorzysta\u0107 podczas konfigurowania okresu realizacji kursu. Jako identyfikator mo\u017Cesz u\u017Cy\u0107 czego\u015B takiego jak \u201ESS15\u201D i jako nazw\u0119 \u201ESemestr letni 2015\u201D
+admin.lifecycles.title=Zarz\u0105dzanie warunkami kursu dla semestru
+admin.menu.lifecycle.title=Warunki semestru
+after.course.end=zaraz po zako\u0144czeniu kursu
+allcourses=Wszystkie kursy
 assessment=$org.olat.group.ui.main\:assessment
+book=ksi\u0105\u017Cka
+book.with.type=ksi\u0105\u017Cka {0}
+bulk.update.nothing.applicable.selected=Ta akcja jest niedozwolona dla wybranych zasob\u00F3w edukacyjnych
+bulk.update.nothing.selected=Musisz zaznaczy\u0107 conajmniej jeden zas\u00F3b edukacyjny
 cap.launch=\u0141adowanie zasobu edukacyjnego. Prosz\u0119 czeka\u0107...
+catalog.path=\u015Acie\u017Cka
+ccif.date.end=Koniec
+change.to.close.text=change to finished (read only, keep user access)
+change.to.delete=Usu\u0144
+change.to.delete.text=change to deleted (remove owners, put into trash)
 chkbx.calendar.onoff=Kalendarz
-chkbx.chat.onoff=Aktywuj czata kursu
+chkbx.chat.onoff=Aktywuj czat kursu
 chkbx.efficency.onoff=Wykaz osi\u0105gni\u0119\u0107
 chkbx.glossary.onoff=Aktywuj s\u0142ownik
 cif.access=Dost\u0119p maj\u0105
@@ -63,10 +97,21 @@ cif.access.owners=Tylko w\u0142a\u015Bciciele tego zasobu edukacyjnego
 cif.access.owners_authors=W\u0142a\u015Bciciele i inni autorzy
 cif.access.users=Wszyscy zarejestrowani u\u017Cytkownicy
 cif.access.users_guests=Zarejestrowani u\u017Cytkownicy i go\u015Bcie
+cif.access.users_guests.warning=Ta konfiguracja umo\u017Cliwia go\u015Bciom dost\u0119p do zasob\u00F3w edukacyjnych bez ogranicze\u0144. Nale\u017Cy pami\u0119ta\u0107, \u017Ce skonfigurowane poni\u017Cej metody rezerwacji nie b\u0119d\u0105 mia\u0142y zastosowania dla go\u015Bci. Je\u015Bli skonfigurujesz metody rezerwacji, te metody rezerwacji b\u0119d\u0105 mia\u0142y zastosowanie tylko do zarejestrowanych u\u017Cytkownik\u00F3w, kt\u00F3rzy chc\u0105 uzyska\u0107 dost\u0119p do zasobu. W trakcie kursu mo\u017Cesz uniemo\u017Cliwi\u0107 dost\u0119p do element\u00F3w pojedynczego kursu dla go\u015Bci.
+cif.allusers=Wszyscy u\u017Cytkownicy
 cif.author=Autor
+cif.author.can=Autorzy mog\u0105
+cif.author.search=Autor / w\u0142a\u015Bciciel
+cif.authors=Autorzy
+cif.canCopy=kopiuj
+cif.canDownload=pobierz
 cif.canLaunch=Mo\u017Ce zosta\u0107 uruchomiony
 cif.canLaunch.na=<i>Uruchamianie nie jest obs\u0142ugiwane</i>
-ccif.date.end=Koniec
+cif.canReference=odniesienie
+cif.categories=Kategorie
+cif.credits=Certyfikacja
+cif.curriculums=Programy nauczania
+cif.date.end=Koniec
 cif.date.start=Pocz\u0105tek
 cif.dates=Okres uruchomienia
 cif.dates.none=Niezdefiniowany
@@ -76,94 +121,251 @@ cif.description=Opis
 cif.displayname=Tytu\u0142 zasobu edukacyjnego
 cif.downloaded=Liczba \u015Bci\u0105gni\u0119\u0107
 cif.error.allempty=Wype\u0142nij co najmniej jedno pole formularza.
+cif.error.corrupted=Zas\u00F3b edukacyjny jest uszkodzony i nie mo\u017Cna go wy\u015Bwietli\u0107. Skontaktuj si\u0119 z obs\u0142ug\u0105 klienta lub u\u017Cyj \u0142\u0105cza usuwania, aby usun\u0105\u0107 ten zas\u00F3b z systemu.
 cif.error.description.empty=Wype\u0142nij pole "Opis"
 cif.error.displayname.empty=Wype\u0142nij pole "Tytu\u0142 zasobu edukacyjnego".
 cif.error.idnotint=Taki numer identyfikacyjny nie istnieje.
+cif.error.image=Ten obraz nie mo\u017Ce by\u0107 zapisany
 cif.error.mimetype=$org.olat.core.commons.modules.bc\:WrongMimeType
+cif.error.movie=Zwiastun filmy nie mo\u017Ce by\u0107 zapisany.
 cif.error.resourcename.empty=Wype\u0142nij pole "Odwo\u0142ania".
+cif.expenditureOfWork=Wydatki na prac\u0119
+cif.externalid=Zewn\u0119trzne ID
+cif.externalref=Odwo\u0142anie
+cif.externalref.hover=Odno\u015Bnik zewn\u0119trzny wy\u015Bwietlany na stronie przegl\u0105du kursu.
+cif.freetext=Tekst licencji
+cif.groups=Grupy
+cif.guests=Go\u015Bcie
 cif.id=ID
 cif.id.na=Niedost\u0119pny
 cif.initialAuthor=Autor
 cif.lastUsage.na=-
 cif.lastusage=Data ostatniego uruchomienia
 cif.launched=Liczba uruchomie\u0144
+cif.license=Licencja
+cif.license.elements=Szczeg\u00F3\u0142y licencji przedmiotu
+cif.license.elements.content=Ten zas\u00F3b zawiera elementy z nast\u0119puj\u0105cymi licencjami\: {0} Upewnij si\u0119, \u017Ce wybierasz licencj\u0119 dla {1}, kt\u00F3ra jest co najmniej tak restrykcyjna, jak licencje na elementy zawarte.
+cif.license.text=Tekst licencji
+cif.licensor=Licencjodawca
+cif.location=Lokalizacja
+cif.mainLanguage=G\u0142\u00F3wny j\u0119zyk
+cif.managedflags=Modu\u0142y zarz\u0105dzane zewn\u0119trznie
+cif.membership.mandatory=Tylko moje kursy
+cif.objectives=Cele
 cif.ores_id=Identyfikator zasobu OpenOlat
-cif.owners=W\u0142a\u015Bciciel
+cif.organisations=Organizacje
+cif.owned.resources.only=Moje zasoby
+cif.owned.resources.usage=Referencyjne zasoby
+cif.owned.resources.usage.all=Wszystkie
+cif.owned.resources.usage.notUsed=Brak odniesienia
+cif.owned.resources.usage.used=Referencje
+cif.owners=Prawa w\u0142a\u015Bciciela
+cif.private.dates=Daty
+cif.public.dates=Semestr
+cif.publish=Publikacja
+cif.release=wydane
+cif.requirements=Wymagania
 cif.resourcename=Nazwa pliku
+cif.resources.status=Filtruj
+cif.resources.status.active=Aktywne
+cif.resources.status.all=Wszyskie
+cif.resources.status.closed=Zako\u0144czone
+cif.softkey=OpenOlat ID
+cif.status.closed=$\:status.closed
+cif.status.coachpublished=Dost\u0119p dla trenera
+cif.status.deleted=Usuni\u0119te
+cif.status.preparation=Przygotowywane
+cif.status.published=Opublikowane
+cif.status.review=Do weryfikacji
+cif.status.trash=Kosz
+cif.taxonomy.levels=Tematy
 cif.type=Typ
 cif.type.na=n/a
 cif.usedbycnt=Obecni u\u017Cytkownicy
-close.ressource.step1=Informacje dotycz\u0105ce funkcji "Zamknij"
+close.ressource.step1=Informacje dotycz\u0105ce funkcji "Zako\u0144cz"
 close.ressource.step2=Ustawienia opcjonalne
-close.ressource.step3=Wy\u015Blij wiadomo\u015B\u0107 do u\u017Cytkownik\u00F3w
+close.ressource.step3=Wy\u015Blij wiadomo\u015B\u0107 E-mail do u\u017Cytkownik\u00F3w
+close.ressource.warning=Ten kurs ju\u017C si\u0119 zako\u0144czy\u0142
+closed.resources.title=Zako\u0144czone kursy
 cmd.back=Wstecz
 cmd.backward=Wstecz
 cmd.bookmark=Ustaw zak\u0142adk\u0119
 cmd.cancel=Anuluj
-cmd.close=Zamknij
+cmd.close=Zako\u0144cz
 cmd.create.ressource=Utw\u00F3rz
-cmd.delete=Usu\u0144
+cmd.delete=Usu\u0144 obraz
 cmd.finish=Zako\u0144cz
 cmd.forward=Dalej
 cmd.import.ressource=Import
+cmd.import.ressource.desc=Wybierz zas\u00F3b edukacyjny do zaimportowania\: <ul> <li> Formaty OpenOlat\: kurs, folder zasob\u00F3w, glosariusz, wiki, podcast, blog, portfolio </li> <li> Filmy wideo\: MP4 </li> <li> Standardowe formaty \: IMS, IMS QTI, SCORM 1.2 </li> <li> Pliki\: dowolne </li> </ul>
+cmd.import.ressource.url.desc=Wprowad\u017A adres URL aby zaimportow\u0107\: <ul> <li> Filmy\: MP4, Youtube, Vimeo, Panopto </li> <li> Blog lub podcast </li> </ul>
+cmd.import.url.ressource=Adres URL
+comments=Komentarze
 confirmation.no.toolHelp=Anuluj.
 confirmation.yes.toolHelp=Usu\u0144 zas\u00F3b edukacyjny
-course.config.changed.text=Ustawienia kursu zosta\u0142y zmodyfikowane Wszyscy uczestnicy kursu ({0}) b\u0119d\u0105 musieli uruchomi\u0107 kurs ponownie. Czy chcesz kontynuowa\u0107? (Je\u017Celi 'Nie', wszystkie modyfikacje zostan\u0105 utracone). 
+contact.attachment=$org.olat.modules.co\:contact.attachment
+contact.attachment.maxsize=$org.olat.modules.co\:contact.attachment.maxsize
+contact.body=$org.olat.modules.co\:contact.body
+contact.cp.from=$org.olat.modules.co\:contact.cp.from
+contact.from=$org.olat.modules.co\:contact.from
+contact.subject=$org.olat.modules.co\:contact.subject
+contact.to=$org.olat.modules.co\:contact.to
+contact.to.coach=Wszyscy trenerzy
+contact.to.owner=Wszyscy w\u0142a\u015Bciciele kurs\u00F3w
+contact.to.participant=Wszyscy uczestnicy
+copy.suffix=(copy)
+course.config.changed.text=Ustawienia kursu zosta\u0142y zmodyfikowane Wszyscy uczestnicy kursu ({0}) b\u0119d\u0105 musieli uruchomi\u0107 kurs ponownie. Czy chcesz kontynuowa\u0107? (Je\u017Celi 'Nie', wszystkie modyfikacje zostan\u0105 utracone).
 course.config.changed.title=Zmiana ustawie\u0144
-coursefolder=Folder sk\u0142adowania
+course.made.by=z
+coursefolder=Katalog sk\u0142adowania
 cp.may.scorm=Materia\u0142 CP nie zosta\u0142 dodany. Tw\u00F3j materia\u0142 zawiera atrybuty formatu SCORM. Spr\u00F3buj doda\u0107 ten zas\u00F3b jako materia\u0142 SCORM.
+create.lifecycle=Dodaj semestr
 csc.courseedit=Uruchom edytor kursu
 csc.detailsview=Poka\u017C widok szczeg\u00F3\u0142owy
 csc.intro=Jak chcesz kontynuowa\u0107?
-csc.startwizard=Utw\u00F3rz prosty kurs za pomoc\u0105 kreatora
+csc.label=Jak chcesz kontynuowa\u0107?
+csc.startwizard=Utw\u00F3rz podstawowy kurs za pomoc\u0105 kreatora
 csc.title=Nast\u0119pne kroki
-del.header=Usu\u0144 zas\u00F3b edukacyjny
+day=Dzie\u0144
+del.header=Usu\u0144 zas\u00F3b edukacyjny {0}
+delete.lifecycle=Usu\u0144 semestr
+delete.lifecycle.confirm=Czy aby napewno chcesz usun\u0105\u0107 semestr \u201E{1}\u201D z odniesieniami \u201E{0}\u201D?
+details=Informacje
+details.acces=Wydany
+details.access=Udost\u0119pnij
 details.bookmark=Ustaw zak\u0142adk\u0119
+details.bookmark.label=Zak\u0142adka
+details.bookmark.remove=Usu\u0144 zak\u0142adk\u0119
 details.catadd=Dodaj do katalogu
-details.categoriesheader=Pozycja w katalogu
+details.catalog=Katalog
+details.catalog.title=$\:details.catalog
+details.categoriesheader=Wpsiy w katalogu
+details.certificates=Efektywno\u015B\u0107
 details.chdesc=Zmie\u0144 opis
 details.chprop=Zmie\u0144 w\u0142a\u015Bciwo\u015Bci
 details.close=Zamknij widok szczeg\u00F3\u0142owy
 details.close.ressoure=Zamknij
+details.close.ressoure.auto.desc=<strong>Ten kurs b\u0119dzie automatycznie zamkni\u0119ty {0}.</strong>
+details.close.ressoure.desc=U\u017Cywaj\u0105c tej metody zas\u00F3b edukacyjny prze\u0142\u0105czy si\u0119 w tryb "uko\u0144czony".
+details.close.ressoure.desc.1=Kurs istnieje, dane u\u017Cytkownik\u00F3w s\u0105 za\u0142\u0105czone.
+details.close.ressoure.desc.2=Wszyscy uczestnicy tego kursu wci\u0105\u017C maja do niego dost\u0119p.
+details.close.ressoure.desc.3=Ten kurs jest tylko w trybie do odczytu.
+details.close.ressoure.desc.4=Ten kurs mo\u017Ce by\u0107 odnaleziony w zak\u0142adce Kursy pod etykiet\u0105 "Zako\u0144czone".
+details.closed=Zako\u0144cz
 details.copy=Kopiuj
+details.copy.confirm=Czy chcesz skopiowa\u0107 ten zas\u00F3b edukacyjny? {0}
+details.copy.confirm.warning=<div class\="o_warning">Nie masz uprawnie\u0144 aby skopiowa\u0107 te zasoby edukacyjne </div><p>Czy chesz je zduplikowa\u0107? {0}</p>
+details.copy.success={0} zas\u00F3b edykacyjny zosta\u0142 zduplikowany.
 details.delete=Usu\u0144
-details.delete.error.editor=Nie mo\u017Cna usun\u0105\u0107 zasobu edukacyjnego. Ten zas\u00F3b jest obecnie u\u017Cywany przez innego u\u017Cytkownika w edytorze.
-details.delete.error.references=Nie mo\u017Cna usun\u0105\u0107 zasobu edukacyjnego. S\u0105 aktywne odniesienia do tego zasobu.<br /><br /><font color\="red">{0}</font>
+details.delete.acknowledge=Potwierdzenie
+details.delete.acknowledge.error=Potwierd\u017A.
+details.delete.acknowledge.msg=Wszystkie pliki zostan\u0105 trwale usuni\u0119te, nie b\u0119dzie mo\u017Cliwo\u015Bci odzyskania ich.
+details.delete.alt=Usu\u0144 {0}
+details.delete.entries=Zasoby edykacyjne
+details.delete.error.editor=Nie mo\u017Cna usun\u0105\u0107 zasobu edukacyjnego {0}. Ten zas\u00F3b jest obecnie u\u017Cywany przez innego u\u017Cytkownika w edytorze.
+details.delete.error.references=Nie mo\u017Cna usun\u0105\u0107 zasobu edukacyjnego {1}. S\u0105 aktywne odniesienia do tego zasobu.<br /><br /><font color\="red">{0}</font>
+details.delete.managed=zarz\u0105dzany
+details.delete.notOrphan=wci\u0105\u017C jest odniesienie
+details.delete.notOwner=nie w\u0142a\u015Bciciel
+details.delete.references=Czy r\u00F3wnie\u017C chcesz usun\u0105\u0107 powi\u0105zane zasoby edukacyjne?
+details.delete.soft.acknowledge.msg=Zas\u00F3b edykacyjny zostanie oznaczony jako usuni\u0119ty.
+details.delete.soft.auto.desc=<strong>Ten kurs zostanie automatycznie usuni\u0119ty {0}.</strong>
+details.delete.soft.desc=U\u017Cywaj\u0105c tej metody, zas\u00F3b edukacyjny zostanie oznaczony jako usuni\u0119ty
+details.delete.soft.desc.1=Dane uczestnik\u00F3w tego kursu zostan\u0105 r\u00F3wnie\u017C usuni\u0119te.
+details.delete.soft.desc.2=Tylko w\u0142a\u015Bciciel ma dost\u0119p do tego kursu.
+details.delete.soft.desc.3=The course can be found in the authoring in the tab "Deleted".
 details.description=Opis zasobu edukacyjnego
 details.download=Eksportuj
 details.download.compatible=Eksportuj do starszych wersji
 details.edit=Modyfikuj
 details.edit.error.references=Nie mo\u017Cna edytowa\u0107 zasobu edukacyjnego. S\u0105 aktywne odniesienia do tego zasobu.<br /><br /><font color\="red">{0}</font>
-details.entryinfoheader=Informacje
+details.entryinfoheader=Informacje techniczne
+details.execution=Wykonanie
+details.execution.title=Konfiguracja wykonania
+details.expenditureOfWork.desc=Wydatek czasu
+details.expenditureOfWork.example=5-7 godzin na tydzie\u0144
 details.extlinkheader=Zewn\u0119trzny link do tego zasobu edukacyjnego
 details.groups=Zarz\u0105dzaj w\u0142a\u015Bcicielami
+details.groups.participant=Zarz\u0105dzaj uczestnikami
+details.groups.tutor=Zarz\u0105dzaj trenerami
 details.header=Szczeg\u00F3\u0142y
-details.launch=Poka\u017C
+details.info=Info
+details.info.title=Informacje
+details.label.recent=Ostatnia wizyta
+details.label.score=Wynik
+details.label.status=Status
+details.launch=Poka\u017C zawarto\u015B\u0107
+details.layout=Rozmieszczenie
+details.lifecycle.change=Usu\u0144
 details.members=Zarz\u0105dzaj cz\u0142onkami
+details.metadata=Metadane
+details.metadata.title=$\:details.metadata
 details.noreferenceinfo=Nie u\u017Cyto w \u017Cadnym kursie
+details.notifications.acknowledge=Potwierdzenie E-mail
+details.notifications.acknowledge.value=W\u0142a\u015Bciciele
 details.notypeinfo=Brak informacji o typie
 details.openeditor=Edytuj
+details.options=Opcje
 details.orders=Rezerwacje
+details.override.close=Otw\u00F3rz do edycji
+details.overview=Overview
 details.owner=W\u0142a\u015Bciciel zasobu edukacyjnego
+details.personal=Moje dane
+details.read.only=Ustaw jako "tylko do odczytu"
+details.read.only.acknowledge=Potwierdzenie
+details.read.only.acknowledge.error=Prosz\u0119 potwierdzi\u0107.
+details.read.only.acknowledge.msg=Wszystkie elementy kursu \u0142\u0105cznie z testami ... b\u0119d\u0105 w trybie tylko do odczytu i nie b\u0119d\u0105 ju\u017C mog\u0142y by\u0107 edytowane.
 details.referenceinfo=Powi\u0105zania
+details.referenceinfo.binder.template=Liczba segregator\u00F3w korzystaj\u0105cych z tego szablonu\: {0}
+details.referenceinfo.data.collections=Liczba zbior\u00F3w danych\: {0}
+details.referenceinfo.txt=U\u017Cywane w nast\u0119puj\u0105cych kursach\:
 details.referenceinfoheader=Informacje o u\u017Cyciu
+details.settings=Ustawienia
 details.summaryprop=Podsumowanie ustawie\u0144
+details.toolbar=Pasek narz\u0119dzi
+details.toolbar.title=$\:details.toolbar
 details.typeinfoheader=Informacje o typie
+details.unclose.resource=Otw\u00F3rz ponownie
+details.unclose.resource.desc=Dzi\u0119ki tej funkcji zasoby edukacyjne zostan\u0105 ponownie otwarte.
+details.unclose.resource.desc.1=Ten kurs mo\u017Cna ponownie edytowa\u0107.
+details.unclose.resource.desc.2=Wszyscy cz\u0142onkowie kursu mog\u0105 umieszcza\u0107 wpisy na forum, przeprowadza\u0107 testy ...
+details.unclose.resource.title=Otw\u00F3rz ponownie ten kurs
+dialog.confirm.close=Czy aby naprawd\u0119 chcesz zako\u0144czy\u0107 ten zas\u00F3b edukacyjny? Zawiera <strong> {0} cz\u0142onk\u00F3w </strong>, kt\u00F3rzy mog\u0105 go obecnie u\u017Cywa\u0107.
+dialog.confirm.delete=Czy aby naprawd\u0119 chcesz usun\u0105\u0107 ten zas\u00F3b edukacyjny? Zawiera <strong> {0} cz\u0142onk\u00F3w </strong>, kt\u00F3rzy mog\u0105 go obecnie u\u017Cywa\u0107.
+dialog.confirm.delete.corrupted=$\: del.confirm <div class \= 'o_error'> Ten zas\u00F3b edukacyjny zosta\u0142 zidentyfikowany jako uszkodzony i dlatego nie mo\u017Cna go zarchiwizowa\u0107. Kontynuuj usuwanie zasobu z systemu bez archiwizacji. </div>
+dialog.confirm.delete.notAllDeleteable=Nie masz uprawnie\u0144 do usuni\u0119cia wszystkich zasob\u00F3w edukacyjnych
+dialog.confirm.delete.permanent=U\u017Cywaj\u0105c tej metody zas\u00F3b edukacyjny zawieraj\u0105cy wszystkie dane u\u017Cytkownika zostanie trwale usuni\u0119ty i nie b\u0119dzie mo\u017Cna go odzyska\u0107.
+dialog.confirm.restore=Czy naprawd\u0119 chcesz przywr\u00F3ci\u0107 ten zas\u00F3b edukacyjny?
 dialog.modal.bg.leave.text=$org.olat.group.ui.main\:dialog.modal.bg.leave.text
 dialog.modal.bg.send.mail=$org.olat.group.ui.main\:dialog.modal.bg.send.mail
 disabledexportreason=Ten zas\u00F3b edukacyjny nie mo\u017Ce zosta\u0107 wyeksportowany.
 disabledforwardreason=Najpierw zapisz swoje wpisy.
+edit.lifecycle=Edytuj semestr
 edit.member=$org.olat.group.ui.main\:edit.member
 edit.member.groups=$org.olat.group.ui.main\:edit.member.groups
 error.atleastone=$org.olat.course.member\:error.atleastone
+error.contact.to.empty=Nie mo\u017Cna znale\u017A\u0107 odbiorcy.
 error.course.alreadylocked=Kurs jest w tej chwili edytowany przez {0} dlatego jest zablokowany.
 error.createcopy=Wyst\u0105pi\u0142 b\u0142\u0105d podczas kopiowania obiektu. Akcja anulowana
 error.download=Wyst\u0105pi\u0142 b\u0142\u0105d podczas \u015Bci\u0105gania obiektu. Akcja anulowana
 error.export=B\u0142\u0105d podczas eksportu obiektu. Akcja anulowana.
+error.import=B\u0142\u0105d podczas importowania tego obiektu. Dzia\u0142anie zosta\u0142o przerwane.
 error.launch=Wyst\u0105pi\u0142 b\u0142\u0105d podczas uruchamiania obiektu. Akcja anulowana.
+error.lifecycle.after=Data nie mo\u017Ce by\u0107 wcze\u015Bniejsza ni\u017C powy\u017Csze daty.
 error.msg.send.no.rcps=$org.olat.modules.co\:error.msg.send.no.rcps
+filter.booked.author=Zarezerwowany jako autor
+filter.booked.coach=Zarezerwowany jako trener
+filter.booked.participant=Zarezerwowany jako uczestnik
 filter.current.courses=Aktualne kursy
+filter.not.booked=Nie zarezerwowano
+filter.not.passed=Nie zdano
+filter.old.courses=Zako\u0144czone kursy
+filter.only.courses=Tylko kursy
+filter.passed=Zdane
+filter.selected=\u2713
 filter.show.all=Poka\u017C wszystko
+filter.upcoming.courses=Nadchodz\u0105ce kursy
+filter.without.passed.infos=Bez oceny
 filtered.first=Nie jeste\u015B zalogowany. Dlatego poni\u017Csza lista jest niekompletna (
 filtered.second=).
 form.clean.catalog=Usu\u0144 wszystkie wpisy w katalogu tego kursu
@@ -177,26 +379,57 @@ glossary.isconfigured=S\u0142ownik
 glossary.no.glossary=Nie wybrano s\u0142ownika
 groups.header=Przypisz w\u0142a\u015Bcicieli zasobu edukacyjnego
 groups.intro=Przypisz u\u017Cytkownik\u00F3w OpenOlat do w\u0142a\u015Bcicieli wybranego zasobu edukacyjnego.<br />W\u0142a\u015Bciciele mog\u0105 czyta\u0107, modyfikowa\u0107 i usuwa\u0107 zas\u00F3b edukacyjny.
+groups.participant.header=Zarz\u0105dzaj uczestnikami tego zasobu edukacyjnego
+groups.participant.intro=$org.olat.resource.accesscontrol.ui\:members.participants.info
+groups.tutor.header=Zarz\u0105dzaj trenerami tego zasobu edukacyjnego
+groups.tutor.intro=$org.olat.resource.accesscontrol.ui\:members.tutors.info
 heading.disabled=Funkcja niedost\u0119pna
 home=$org.olat.group.ui.main\:home
+import.file=Plik
 import.member=$org.olat.group.ui.main\:import.member
 index.header=Zasoby edukacyjne
 index.header.alt=Wyszukaj swoje zasoby edukacyjne
+info.catalog.entries=U\u017Cyj przycisku \u201EDodaj do katalogu\u201D na pasku narz\u0119dzi powy\u017Cej, aby doda\u0107 zas\u00F3b do okre\u015Blonego poziomu w katalogu. Katalog pozwala u\u017Cytkownikom przegl\u0105da\u0107 dost\u0119pne zasoby w zale\u017Cno\u015Bci od konfiguracji dost\u0119pu do zasob\u00F3w. Mo\u017Cesz doda\u0107 zas\u00F3b do wielu poziom\u00F3w katalogu.
 info.could.not.delete.entry=Nie mozna usun\u0105\u0107 tego wpisu
 info.entry.deleted=Wpis usuni\u0119ty.
+info.entry.read.only=Wpis zosta\u0142 pomy\u015Blnie zako\u0144czony.
+info.header=<i class\='o_icon o_icon-lg o_icon_info_resource'> </i>
 info.message.change.title=Status kursu zosta\u0142 zmieniony na [Zamkni\u0119ty].
 launch.noaccess=Nie masz wystarczaj\u0105cych uprawnie\u0144 do uruchomienia tego zasobu edukacyjnego.
+license.admin.title=Zasoby edukacyjne
+lifecycle.label=Nazwisko
+lifecycle.softkey=Identyfikator
+lifecycle.validFrom=$\:cif.date.start
+lifecycle.validTo=$\:cif.date.end
 mail.member=$org.olat.group.ui.main\:mail.member
+managed.resource=Zarz\u0105dzanie zewn\u0119trzne
+managed.resource.intro=Kurs zosta\u0142 stworzony przez narz\u0119dzie zewn\u0119trzne. Dlatego niekt\u00F3re ustawienia i modu\u0142y nie mog\u0105 by\u0107 modyfikowane i u\u017Cywane w OpenOlat. Nast\u0119puj\u0105ce elementy s\u0105 blokowane w OpenOlat\:
+menu.repository.admin=Repozytorium
+menu.repository.admin.alt=$\:menu.repository.admin
 message.entry.selected=Zas\u00F3b edukacyjny {0} typu {1} zosta\u0142 pomy\u015Blnie przydzielony.
+month=Miesi\u0105\u0107
+msg.send.ok=$org.olat.modules.co\:msg.send.ok
 msg.warnusers=(Ten zas\u00F3b jest teraz u\u017Cywany przez {0} u\u017Cytkownik\u00F3w)
+my.course.comment.enabled=Komentarze w "Kursie"
+my.course.rating.enabled=Oceny w \u201EKursie\u201D
+my.course.search.enabled=Wyszukaj w "Kursie"
 new.blog=Utw\u00F3rz blog
 new.blog.intro=Utw\u00F3rz nowy blog
 new.course=Utw\u00F3rz kurs
 new.course.intro=Utw\u00F3rz nowy kurs
+new.cp=Uw\u00F3rz tre\u015Bci edukacyjne CP
+new.cp.intro=Uw\u00F3rz nowe tre\u015Bci edukacyjne CP
+new.excel=Utw\u00F3rz dokument Excel
+new.form=Nowa templata ankiety
 new.glossary=Utw\u00F3rz s\u0142ownik
-new.glossary.intro=utw\u00F3rz nowy s\u0142ownik
+new.glossary.intro=Utw\u00F3rz nowy s\u0142ownik
 new.podcast=Utw\u00F3rz Podcast
 new.podcast.intro=Utw\u00F3rz nowy Podcast
+new.portfolio=Templatka portfolio
+new.portfolio.intro=Ut\u00F3wrz now\u0105 templatk\u0119 portfolio
+new.portfoliov2=Templatka portfolio 2.0
+new.portfoliov2.intro=Ut\u00F3wrz now\u0105 templatk\u0119 portfolio 2.0
+new.powerpoint=PowerPoint
 new.sharedfolder=Utw\u00F3rz folder zasob\u00F3w
 new.sharedfolder.intro=Utw\u00F3rz nowy folder zasob\u00F3w
 new.survey=Utw\u00F3rz ankiet\u0119 
@@ -205,10 +438,16 @@ new.test=Utw\u00F3rz test
 new.test.intro=Utw\u00F3rz nowy test
 new.wiki=Utw\u00F3rz Wiki
 new.wiki.intro=Utw\u00F3rz now\u0105 Wiki
+new.word=Utw\u00F3rz dokument Word
+no.catalog.entries=Ten zas\u00F3b nie zosta\u0142 jeszcze dodany do katalogu. U\u017Cyj przycisku \u201EDodaj do katalogu\u201D na pasku narz\u0119dzi powy\u017Cej, aby doda\u0107 zas\u00F3b do okre\u015Blonego poziomu w katalogu. Katalog pozwala u\u017Cytkownikom przegl\u0105da\u0107 dost\u0119pne zasoby w zale\u017Cno\u015Bci od konfiguracji dost\u0119pu do zasob\u00F3w. Mo\u017Cesz doda\u0107 zas\u00F3b do wielu poziom\u00F3w katalogu.
 no.lifecycle=Bez ogranicze\u0144
-nomembers=XXX No members
-notification.mail.added.body=*** Wiadomo\u015B\u0107 generowana automatycznie, nie odpowiadaj na ni\u0105 *** \r\n\r\nZosta\u0142e\u015B dodany przez {0} {1} ({2}) do kursu\:\r\n\r\nNazwa kursu\: $coursename\r\nOpis\: $coursedescription\r\nURL\: $courseurl\r\n\r\nW razie pyta\u0144 skontaktuj si\u0119 z {0} {1} ({2}).
+nomembers=XXX Brak cz\u0142onk\u00F3w
+notification.mail.added.auto.body=*** To jest wiadomo\u015B\u0107 jest generowana automatycznie. Prosz\u0119 na ni\u0105 nie odpowiada\u0107 *** Zarejestrowa\u0142e\u015B si\u0119 na nast\u0119puj\u0105cy kurs\: Nazwa kursu\: $coursename Opis\: $coursedescription Link\: $courseurl
+notification.mail.added.auto.subject=$\:notification.mail.added.subject
+notification.mail.added.body=*** Wiadomo\u015B\u0107 generowana automatycznie, Prosz\u0119 nie odpowiadaj na ni\u0105 *** \r\n\r\nZosta\u0142e\u015B dodany przez {0} {1} ({2}) do kursu\:\r\n\r\nNazwa kursu\: $coursename\r\nOpis\: $coursedescription\r\nURL\: $courseurl\r\n\r\nW razie pyta\u0144 skontaktuj si\u0119 z {0} {1} ({2}).
 notification.mail.added.subject=Kurs $coursename
+notification.mail.close.body=*** This is an automatically generated message. Please do not answer to this message ***\r\n\r\nThe following course has been closed by {0} {1} at {4}.\r\n\r\nCourse name\: $coursename\r\nDescription\: $coursedescription\r\n\r\nIf you have questions regarding this action, please contact {0} {1} ({2}).
+notification.mail.close.subject=Kurs $coursename $courseref zosta\u0142 zamkni\u0119ty
 notification.mail.removed.body=*** Wiadomo\u015B\u0107 generowana automatycznie, nie odpowiadaj na ni\u0105 *** \r\n\r\nZosta\u0142e\u015B usuni\u0119ty przez {0} {1} ({2}) z kursu\:\r\n\r\nNazwa kursu\: $coursename\r\nOpis\: $coursedescription\r\n\r\nW razie pyta\u0144 skontaktuj si\u0119 z {0} {1} ({2}).
 notification.mail.removed.subject=Kurs $coursename\: zosta\u0142e\u015B usuni\u0119ty.
 orderby.creationDate=Data utworzenia
@@ -245,8 +484,10 @@ search.course=Kursy
 search.courses.closed=Zako\u0144czone
 search.courses.student=Szukaj
 search.cp=Pakiety CP
+search.curriculums=Program
 search.deleted=Usuni\u0119te
 search.filter.showAll=Wszystkie
+search.filter.type=Typ
 search.generic=Wyszukiwarka
 search.glossary=S\u0142owniki
 search.home=Zasoby edukacyjne
@@ -278,34 +519,63 @@ tab.layout=Wygl\u0105d
 tab.log=Pliki log
 tab.public=Og\u00F3lnie
 tab.sharedfolder=Folder zasob\u00F3w
+table.filter=Filtr
+table.guests=$\:cif.guests
+table.guests.enabled=Tak
+table.header.ac=Dost\u0119p
 table.header.access=Dost\u0119p*
 table.header.author=Autor
 table.header.date=Utworzono
+table.header.deletedby=Usuni\u0119to przez
+table.header.deletiondate=Data usni\u0119cia
 table.header.description=Opis
-table.header.details=Wybierz
+table.header.details=<i class\='o_icon o_icon_details o_icon-lg'> </i>
 table.header.displayname=Tytu\u0142 zasobu edukacyjnego
-table.header.edit=$org.olat.group.ui.main\:table.header.edit
+table.header.edit=<i class\='o_icon o_icon_edit o_icon-lg'> </i>
+table.header.externalid=Zew. ID
+table.header.externalref=Zew. Pow.
 table.header.firstName=$org.olat.group.ui.main\:table.header.firstName
 table.header.firstTime=$org.olat.group.ui.main\:table.header.firstTime
 table.header.freePlace=$org.olat.group.ui.main\:table.header.freePlace
 table.header.graduate=$org.olat.group.ui.main\:table.header.graduate
 table.header.groups=$org.olat.group.ui.main\:table.header.groups
+table.header.guests=Go\u015Bcie
+table.header.key=ID
 table.header.lastName=$org.olat.group.ui.main\:table.header.lastName
 table.header.lastTime=$org.olat.group.ui.main\:table.header.lastTime
-table.header.lastusage=Ostatnio uruchomiono
+table.header.lastusage=Ostatnio dost\u0119p
+table.header.lecture.infos=Lektury
+table.header.license=Licencje
+table.header.lifecycle.end=$\:cif.date.end
+table.header.lifecycle.label=Semestr
+table.header.lifecycle.softkey=ID semestru
+table.header.lifecycle.start=$\:cif.date.start
+table.header.location=$\:cif.location
 table.header.login=$org.olat.group.ui.main\:table.header.login
 table.header.mail=$org.olat.group.ui.main\:table.header.mail
+table.header.mark=<i class\="o_icon o_icon_bookmark_header o_icon-lg" title\="Bookmark"> </i>
 table.header.online=$org.olat.group.ui.main\:table.header.online
 table.header.participants=$org.olat.group.ui.main\:table.header.participants
 table.header.participantsCount=$org.olat.group.ui.main\:table.header.participantsCount
+table.header.references=Ref.
 table.header.remove=$org.olat.group.ui.main\:table.header.remove
 table.header.role=$org.olat.group.ui.main\:table.header.role
+table.header.start=Przerwa obiadowa
 table.header.tutors=$org.olat.group.ui.main\:table.header.tutors
 table.header.tutorsCount=$org.olat.group.ui.main\:table.header.tutorsCount
 table.header.typeimg=Typ
 table.header.waitingList=$org.olat.group.ui.main\:table.header.waitingList
 table.preview=<i class\='o_icon o_icon-lg o_icon_preview' title\='$\:preview.header'> </i>
+table.rollcall.enabled=Nieobecno\u015Bci
 table.select=<i class\='o_icon o_icon-lg o_icon_select'> </i>
+table.sort=Posortuj
+table.status.closed=$\:status.closed
+table.status.coachpublished=$\:cif.status.coachpublished
+table.status.deleted=$\:cif.status.deleted
+table.status.preparation=$\:cif.status.preparation
+table.status.published=$\:cif.status.published
+table.status.review=$\:cif.status.review
+table.status.trash=$\:cif.status.trash
 table.subject.addeddate=Kiedy dodano?
 table.subject.birthDay=Data urodzenia
 table.subject.city=Miasto
@@ -324,9 +594,11 @@ table.subject.street=Ulica
 table.subject.telMobile=Numer telefonu kom\u00F3rkowego
 table.subject.telOffice=Numer stacjonarnego telefonu s\u0142u\u017Cbowego
 table.subject.telPrivate=Numer stacjonarnego telefonu prywatnego
-table.subject.zipCode=Kod
+table.subject.zipCode=Kod pocztowy
+table.switch.list=Lista
+table.switch.table=Tabela
 table.user.login=Nazwa u\u017Cytkownika
-title.prefix.closed=zamkni\u0119ty
+title.prefix.closed=Nie aktywny
 tools=$\:table.header.actions
 tools.add.blog=Blog
 tools.add.course=Kurs
@@ -335,6 +607,7 @@ tools.add.glossary=S\u0142ownik
 tools.add.header=Importuj
 tools.add.owners=Dodaj w\u0142a\u015Bcicieli
 tools.add.podcast=Podcast
+tools.add.qti21=Test QTI 2.1
 tools.add.scorm=Pakiet SCORM
 tools.add.survey=Ankieta
 tools.add.test=Test
@@ -342,8 +615,11 @@ tools.add.webdoc=Inne formaty
 tools.add.wiki=Wiki
 tools.administration.header=Administracja
 tools.delete.header=Usu\u0144
-tools.delete.resource=Zas\u00F3b edukacyjny
+tools.delete.permanently=Usu\u0144 trwale
+tools.delete.resource=Usu\u0144 zas\u00F3b
 tools.details.header=Zas\u00F3b edukacyjny
+tools.edit.catalog=Wpisy katalogu
+tools.edit.description=Zmie\u0144 infopage
 tools.new.blog=Blog
 tools.new.createcourse=Kurs
 tools.new.createcp=Pakiet CP
@@ -353,23 +629,31 @@ tools.new.createtest=Test
 tools.new.glossary=S\u0142ownik
 tools.new.header=Utw\u00F3rz
 tools.new.podcast=Podcast
+tools.new.portfolio=Templatka portfolio
 tools.new.wiki=Wiki
-user.notfound=The following users have not been found\: {0}
+tools.restore=Przywr\u00F3\u0107
+tools.send.mail=Wy\u015Blij E-mail
+upload.url=URL
+user.notfound=Nast\u0119puj\u0105ca lczba u\u017Cytkownik\u00F3 nie zosta\u0142a odnaleziona\: {0}
+vfs.context.repositoryentry=Zas\u00F3b edukacyjny
 warn.config.reference.no.access=Zauwa\u017C, \u017Ce opcja "Can be referenced" jest aktywna dopiero po udzieleniu dost\u0119pu do tego zasobu r\u00F3wnie\u017C innym autorom.
 warn.entry.meantimedeleted=Wpis zosta\u0142 w mi\u0119dzyczasie usuni\u0119ty przez innego u\u017Cytkownika.
 warning.course.alreadylocked=Kurs jest w tej chwili zablokowany przez {0}.
 warning.course.alreadylocked.bySameUser=Powiniene\u015B najpierw zamkn\u0105\u0107 edytor kursu. W przeciwnym wypadku, nie b\u0119dziesz m\u00F3g\u0142 zmienia\u0107 swoich ustawie\u0144.
+warning.unclose.text=Czy aby napewno chesz otworzy\u0107 ponownie ten kurs?
+warning.unclose.title=Otw\u00F3rz ponownie kurs
+week=Tydzie\u0144
 wizard.closecourse.title=Kreator zamykania kursu
 wizard.hint=Mo\u017Cesz zmieni\u0107 te ustawienia p\u00F3\u017Aniej.
 wizard.step2.attention=<b>UWAGA\:</b> Po wybraniu opcji "Usu\u0144 wszystkich nauczycieli i uczestnik\u00F3w z grup edukacyjnych i grup uprawnie\u0144 w tym kursie", nauczyciele i uczestnicy kursu, nie b\u0119d\u0105 ju\u017C mieli dost\u0119pu do ca\u0142ej zawarto\u015Bci kursu. Nie b\u0119d\u0105 mieli r\u00F3wnie\u017C mo\u017Cliwo\u015Bci przegl\u0105dania np. wynik\u00F3w test\u00F3w za pomoc\u0105 narz\u0119dzia oceniania w tym kursie.
 wizard.step3.mail.body=*** Ta wiadomo\u015B\u0107 zosta\u0142a wygenerowana automatycznie. Nie odpowiadaj na ni\u0105\! ***\r\n\r\nStatus kursu {0} zosta\u0142 zmieniony na "Zamkni\u0119ty" przez nauczyciela {1}.\r\n\r\nTen kurs nie b\u0119dzie ju\u017C wi\u0119cej edytowany i aktualizowany. Je\u017Celi subskrybowa\u0142e\u015B poszczeg\u00F3lne elementy tego kursu, to mo\u017Cesz wy\u0142\u0105czy\u0107 subskrypcj\u0119 w sekcji 'Powiadomienia', na Stronie domowej. Twoje uczestnictwo w grupie, r\u00F3wnie\u017C mo\u017Ce zosta\u0107 anulowane. Je\u017Celi potrzebujesz wi\u0119cej informacji, skontaktuj si\u0119 z {1}.
-wizard.step3.mail.subject=[OpenOlat] Kurs {0} jest zamkni\u0119ty.
+wizard.step3.mail.subject=[OpenOlat] Kurs {0} jest nie aktywny.
 wizard.velocity.step1.par1=Co oznacza funkcja "Zamknij"?
 wizard.velocity.step1.par2=Za pomoc\u0105 tego kreatora, mo\u017Cesz zmieni\u0107 status kursu na <b>[zamkni\u0119ty]</b>. W ten spos\u00F3b poinformujesz uczestnik\u00F3w kursu, \u017Ce nie b\u0119dzie on ju\u017C d\u0142u\u017Cej edytowany i aktualizowany.
 wizard.velocity.step1.par3=Jakie s\u0105 dodatkowe opcje?
 wizard.velocity.step1.par3a=W drugim kroku kreatora mo\u017Cesz <b>usun\u0105\u0107 ca\u0142\u0105 zawarto\u015B\u0107 katalogu kursu</b> oraz <b>wszystkich nauczycieli i uczestnik\u00F3w kursu, z powi\u0105zanych grup edukacyjnych i grup uprawnie\u0144</b>.
 wizard.velocity.step1.par3b=W trzecim kroku kreatora mo\u017Cesz <b>poinformowa\u0107 wszystkich nauczycieli i uczestnik\u00F3w grup edukacyjnych i grup uprawnie\u0144</b> w tym kursie, o jego planowanym zamkni\u0119ciu. Informacja ta zostanie rozes\u0142ana za pomoc\u0105 poczty elektronicznej.
-wizard.velocity.step1.par4=Co oznacza funkcja "Zamknij"?
+wizard.velocity.step1.par4=Co oznacza funkcja "Deaktywuj"?
 wizard.velocity.step1.par4a=Konfiguracja kursu (ustawienia kursu, dost\u0119p, bezpiecze\u0144stwo) pozostanie niezmieniona.
 wizard.velocity.step1.par4b=Wszyscy autoryzowani u\u017Cytkownicy b\u0119d\u0105 wci\u0105\u017C mieli dost\u0119p do zawarto\u015Bci kursu, w zale\u017Cno\u015Bci od ich indywidualnych uprawnie\u0144.<br /><b>UWAGA\:</b>Wybieraj\u0105c "Usu\u0144 wszystkich nauczycieli i uczestnik\u00F3w z grup edukacyjnych i grup uprawnie\u0144 w tym kursie", nie b\u0119dziesz mie\u0107 mo\u017Cliwo\u015Bci przegl\u0105dania wynik\u00F3w test\u00F3w uczestnik\u00F3w kursu, za pomoc\u0105 narz\u0119dzia oceniania.
 wizard.velocity.step1.par4c=Wszystkie dane u\u017Cytkownik\u00F3w (np. wpisy w forach i Wiki) pozostan\u0105 niezmienione i b\u0119d\u0105 dost\u0119pne dost\u0119pne zar\u00F3wno do odczytu, jak i do edycji.
@@ -378,3 +662,4 @@ wizard.velocity.step1.par4e=<b>UWAGA\: Nadanie statusu "zamkni\u0119ty" dla kurs
 wizardsteptitledescription=Wprowad\u017A opis
 wizardsteptitleproperties=Wprowad\u017A ustawienia
 wizardsteptitleupload=Przeka\u017C plik
+year=Rok
diff --git a/src/main/java/org/olat/repository/ui/settings/RepositoryEntryInfoController.java b/src/main/java/org/olat/repository/ui/settings/RepositoryEntryInfoController.java
index 4b81555f9aed988ebeb467e6152b0a11e0b7a79f..f76e34b893781db6ecf34f74e31eb79d7d033327 100644
--- a/src/main/java/org/olat/repository/ui/settings/RepositoryEntryInfoController.java
+++ b/src/main/java/org/olat/repository/ui/settings/RepositoryEntryInfoController.java
@@ -281,6 +281,8 @@ public class RepositoryEntryInfoController extends FormBasicController {
 		} else {
 			displayName.clearError();
 		}
+		
+		allOk &= validateTextElement(description, 80000);
 
 		allOk &= validateTextElement(objectives, 2000);
 		allOk &= validateTextElement(requirements, 2000);
diff --git a/src/main/java/org/olat/user/ui/admin/_i18n/LocalStrings_pl.properties b/src/main/java/org/olat/user/ui/admin/_i18n/LocalStrings_pl.properties
index 1a47b03de0d00128f186cf97630223e5a699f5ca..9aa70ad300e072e153d6fab23f81edb13bc34cb3 100644
--- a/src/main/java/org/olat/user/ui/admin/_i18n/LocalStrings_pl.properties
+++ b/src/main/java/org/olat/user/ui/admin/_i18n/LocalStrings_pl.properties
@@ -1,9 +1,7 @@
-#Fri Mar 23 15:13:55 CET 2018
+#Sat Apr 18 17:58:56 CEST 2020
 error.deleteworkflow.locked.by=The workflow regarding the deletion of users is being edited by user {0}. Please try again later.
 menu.administratorgroup=Administratorzy
 menu.administratorgroup.alt=Zarz\u0105dzaj grup\u0105 administrator\u00F3w
-menu.inviteegroup=Anonimowy u\u017Cytkownik/go\u015B\u0107
-menu.inviteegroup.alt=Zarz\u0105dzaj grup\u0105 anonimowych u\u017Cytkownik\u00F3w (go\u015Bci)
 menu.authorgroup=Autorzy
 menu.authorgroup.alt=Zarz\u0105dzaj swoj\u0105 grup\u0105 autor\u00F3w
 menu.created.lastmonth=Nowi od ostatniego miesi\u0105ca
@@ -18,6 +16,8 @@ menu.deletedusers=Usuni\u0119ci u\u017Cytkownicy
 menu.deletedusers.alt=U\u017Cytkownicy usuni\u0119ci z OLAT
 menu.groupmanagergroup=Administrator grupy
 menu.groupmanagergroup.alt=Zarz\u0105dzaj administratorami grupy
+menu.inviteegroup=Anonimowy u\u017Cytkownik/go\u015B\u0107
+menu.inviteegroup.alt=Zarz\u0105dzaj grup\u0105 anonimowych u\u017Cytkownik\u00F3w (go\u015Bci)
 menu.logondeniedgroup=U\u017Cytkownicy niedopuszczeni do zalogowania
 menu.logondeniedgroup.alt=U\u017Cytkownicy niedopuszczeni do zalogowania si\u0119 w OLAT
 menu.menuaccess=Dost\u0119p i uprawnienia
@@ -30,8 +30,8 @@ menu.sysadmingroup=Administratorzy systemu
 menu.sysadmingroup.alt=Zarz\u0105dzaj grup\u0105 administrator\u00F3w systemu
 menu.ucreate=Utw\u00F3rz u\u017Cytkownika
 menu.ucreate.alt=Utw\u00F3rz u\u017Cytkownika
-menu.usearch=Wyszukiwanie u\u017Cytkownika
-menu.usearch.alt=Wyszukiwanie u\u017Cytkownika
+menu.usearch=Wyszukiwanie
+menu.usearch.alt=Wyszukiwanie
 menu.useradmin=Zarz\u0105dzanie u\u017Cytkownikami
 menu.useradmin.alt=Zarz\u0105dzaj u\u017Cytkownikami i rolami systemowymi
 menu.userdelete=Usu\u0144 u\u017Cytkownika
diff --git a/src/main/resources/serviceconfig/olat.properties b/src/main/resources/serviceconfig/olat.properties
index 9332a8fb873437b5f39aceed22d66e6f0c89d08b..31ab172215fa656806790c128cbf5727310b6fad 100644
--- a/src/main/resources/serviceconfig/olat.properties
+++ b/src/main/resources/serviceconfig/olat.properties
@@ -567,7 +567,7 @@ webdav.termsfolders.enabled=true
 # User agents for which the basic authentication should never be proposed
 webdav.basic.authentication.black.list=Microsoft Office Excel,Microsoft Excel,Microsoft-WebDAV-MiniRedir
 # User agents which don't play nice
-webdav.user.agent.black.list=-
+webdav.user.agent.black.list=,-
 
 ########################################################################
 # Image and PDF scale/thumbnail options