diff --git a/resources/assets/javascripts/bootstrap/application.js b/resources/assets/javascripts/bootstrap/application.js
index d9175d3752f1ec386b8a4678ade6c407f49ff54e..4802091dbf74054bee7d874522f618bda5a8ff0e 100644
--- a/resources/assets/javascripts/bootstrap/application.js
+++ b/resources/assets/javascripts/bootstrap/application.js
@@ -1,4 +1,5 @@
 import { $gettext } from '../lib/gettext.js';
+import eventBus from "../lib/event-bus";
 
 /* ------------------------------------------------------------------------
  * application.js
@@ -180,11 +181,14 @@ jQuery.ui.accordion.prototype.options.icons = {
     header: 'arrow_right',
     activeHeader: 'arrow_down'
 };
-jQuery.extend(jQuery.ui.dialog.prototype.options, {
-    closeText: $gettext('Schließen')
+eventBus.on('studip:set-locale', () => {
+    jQuery.extend(jQuery.ui.dialog.prototype.options, {
+        closeText: $gettext('Schließen')
+    });
 });
 
 
+
 /* ------------------------------------------------------------------------
  * jQuery timepicker
  * ------------------------------------------------------------------------ */
diff --git a/resources/assets/javascripts/bootstrap/multi_select.js b/resources/assets/javascripts/bootstrap/multi_select.js
index 6e033af6c1b217dcb1f4d938b7f392ae381ba46e..38fa362d61fcdabdd7e58d1c431696ce28912467 100644
--- a/resources/assets/javascripts/bootstrap/multi_select.js
+++ b/resources/assets/javascripts/bootstrap/multi_select.js
@@ -1,6 +1,7 @@
 import { $gettext } from '../lib/gettext.js';
+import eventBus from "../lib/event-bus";
 
-STUDIP.domReady(() => {
+eventBus.on('studip:set-locale', () => {
     $.extend($.ui.multiselect, {
         locale: {
             addAll: $gettext('Alle hinzufügen'),
diff --git a/resources/assets/javascripts/cke/studip-a11y-dialog/a11y-dialog.js b/resources/assets/javascripts/cke/studip-a11y-dialog/a11y-dialog.js
index 133a6baa806d413d875994964942cc97a8ff3b5c..1cef6184743b67200ea1c158e5e4dee1483911a7 100644
--- a/resources/assets/javascripts/cke/studip-a11y-dialog/a11y-dialog.js
+++ b/resources/assets/javascripts/cke/studip-a11y-dialog/a11y-dialog.js
@@ -6,7 +6,7 @@ import A11YDialogUI from './ui.js';
 
 export function updateVoiceLabel() {
     add('de', {
-        'Rich Text Editor': $gettext('Rich Text Editor (Um Bedienhinweise zu erhalten, drücken Sie ALT+0 im Eingabefeld.)'),
+        'Rich Text Editor': 'Rich Text Editor (Um Bedienhinweise zu erhalten, drücken Sie ALT+0 im Eingabefeld.)',
     });
 }
 
diff --git a/resources/assets/javascripts/lib/calendar.js b/resources/assets/javascripts/lib/calendar.js
index a693f6cf781c8f5db101026c681f64c5c630549e..bfe00543b7396a1b36c87878d1a68433443a8813 100644
--- a/resources/assets/javascripts/lib/calendar.js
+++ b/resources/assets/javascripts/lib/calendar.js
@@ -1,4 +1,17 @@
 import { $gettext } from '../lib/gettext.js';
+import eventBus from "./event-bus";
+
+eventBus.on('studip:set-locale', () => {
+    Calendar.day_names = [
+        $gettext('Montag'),
+        $gettext('Dienstag'),
+        $gettext('Mittwoch'),
+        $gettext('Donnerstag'),
+        $gettext('Freitag'),
+        $gettext('Samstag'),
+        $gettext('Sonntag'),
+    ];
+});
 
 /* ------------------------------------------------------------------------
  * calendar gui
@@ -12,13 +25,13 @@ const Calendar = {
     click_in_progress: false,
 
     day_names: [
-        $gettext('Montag'),
-        $gettext('Dienstag'),
-        $gettext('Mittwoch'),
-        $gettext('Donnerstag'),
-        $gettext('Freitag'),
-        $gettext('Samstag'),
-        $gettext('Sonntag')
+        'Montag',
+        'Dienstag',
+        'Mittwoch',
+        'Donnerstag',
+        'Freitag',
+        'Samstag',
+        'Sonntag',
     ],
 
     /**
diff --git a/resources/assets/javascripts/lib/forum.js b/resources/assets/javascripts/lib/forum.js
index 776352720f2f0d1575dfa76a260bd12614b0f17e..1ff2bf50044c537f6a0b02f3624f8c9201ddc419 100644
--- a/resources/assets/javascripts/lib/forum.js
+++ b/resources/assets/javascripts/lib/forum.js
@@ -1,11 +1,16 @@
 import { $gettext } from "./gettext.js";
+import eventBus from "./event-bus";
+
+eventBus.on('studip:set-locale', () => {
+    Forum.warning_text = $gettext('Wenn Sie die Seite verlassen, gehen ihre Änderungen verloren!');
+});
 
 const Forum = {
     confirmDialog: null,
     current_area_id: null,
     current_category_id: null,
     seminar_id: null,
-    warning_text: $gettext('Wenn Sie die Seite verlassen, gehen ihre Änderungen verloren!'),
+    warning_text: 'Wenn Sie die Seite verlassen, gehen ihre Änderungen verloren!',
     clipboard: {},
 
     getTemplate: _.memoize(function(name) {