diff --git a/gulpfile.js b/gulpfile.js
index dac9c4a28d473badd4df3e748477582a7ee860b7..c9f803b8596deb5374f4cd9d509d7d025185b64d 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -25,6 +25,7 @@ elixir(function (mix) {
   mix.scripts(['lib/jquery.js', 'lib/jquery-ui.min.js', 'lib/bootstrap.js', 'lib/masonry.js', 'lib/imagesloaded.js', 'lib/openpgp.min.js', 'lib/iframeResizer.min.js', 'lib/md5.js'], 'public/js/lib.js')
   mix.scripts(['scriptStartPage.js', 'results.js'], 'public/js/scriptStartPage.js');
   mix.scripts(['scriptResultPage.js', 'results.js'], 'public/js/scriptResultPage.js');
+  mix.scripts(['translations.js'], 'public/js/translations.js');
   //mix.scripts(['scriptSubpages.js'], 'public/js/scriptSubpages.js');
   mix.less('metager/beitritt.less', 'public/css/beitritt.css')
   // utility
diff --git a/public/js/searchbar.js b/public/js/searchbar.js
new file mode 100644
index 0000000000000000000000000000000000000000..305c1f42260e17c217921c47c4f409c4730d8b86
--- /dev/null
+++ b/public/js/searchbar.js
@@ -0,0 +1,425 @@
+$(function () {
+  loadLocalStorage();
+  setSearchbarActionListeners();
+});
+
+/**
+ * Loads the user theme and stored settings from local storage
+ */
+function loadLocalStorage () {
+  if (localStorage) {
+    setSettings();
+  }
+}
+
+function setSearchbarActionListeners () {
+  $('#toggleOptBtn').click(toggleOptionsDialog);
+}
+
+function setSettings () {
+  var acceptedParams = ['autocomplete', 'key', 'lang', 'newtab', 'sprueche'];
+  for (var key in localStorage) {
+    var value = localStorage.getItem(key);
+    var accepted = false;
+    for (var i in acceptedParams) {
+      if (key === 'param_' + acceptedParams[i]) {
+        accepted = true;
+      }
+    }
+    if (accepted) {
+      key = key.substring(6);
+      // Check for existing hidden fields for this key
+      var existing = $('.search-hidden input[name="' + key + '"]');
+      if (existing.length === 0) {
+        // if none exist, create a new one
+        $('.search-hidden').append('<input type="hidden" name="' + key + '" value="' + value + '">');
+      }
+    }
+  }
+  // Change the request method to the given parameter
+  var requestMethod = localStorage.getItem('request');
+  if (requestMethod !== null && (requestMethod === 'GET' || requestMethod === 'POST')) {
+    $('#searchForm').attr('method', requestMethod);
+  }
+}
+
+function toggleOptionsDialog () {
+  var btnMode = $('#toggleOptBtn').attr('data-mode');
+  if (btnMode == 'o') {
+    openOptionsDialog();
+  } else {
+    closeOptionsDialog();
+  }
+}
+
+function openOptionsDialog () {
+  $('#toggleOptBtn').html('<i class="fa fa-chevron-up" aria-hidden="true"></i>');
+  $('#toggleOptBtn').attr('data-mode', 'c');
+  $('.search-option-frame').removeClass('hide');
+}
+
+function closeOptionsDialog () {
+  $('#toggleOptBtn').html('<i class="fa fa-sliders" aria-hidden="true"></i>');
+  $('#toggleOptBtn').attr('data-mode', 'o');
+  $('.search-option-frame').addClass('hide');
+}
+
+$(function () {
+  setFocusCreatorActionListeners();
+  loadInitialCustomFocuses();
+  loadInitialSelectedFocus();
+  focusChanged();
+});
+
+/**
+ * Sets all action listeners for this page
+ */
+function setFocusCreatorActionListeners () {
+  $('.focusCheckbox').click(checkboxCheckListener);
+  $('#addFocusBtn').click(() => showFocusCreateDialog(''));
+  $('#editFocusBtn').click(editCurrentFocus);
+  $('.save-focus-btn').click(saveFocus);
+  $('.delete-focus-btn').click(deleteFocus);
+  $('#focus-select').change(focusChanged);
+  // Save Focus on clicking enter while in the focus name input
+  $('#focus-name').keyup(function (event) {
+    if (event.keyCode == 13) {
+      saveFocus();
+    }
+  });
+  $('#create-focus-modal').on('shown.bs.modal', function () {
+    $('#focus-name').focus();
+  });
+}
+/**
+ * Loads all the custom focuses stored in local storage
+ */
+function loadInitialCustomFocuses () {
+  for (var key in localStorage) {
+    if (key.startsWith('focus_')) {
+      var focus = loadFocusById(key);
+      addFocus(focus.name);
+    }
+  }
+}
+
+function loadInitialSelectedFocus () {
+  setFocus(getFocusInUrl());
+}
+
+/**
+ * Shows the focus create dialog
+ * If an id is given it will try to load a focus for the given id
+ */
+function showFocusCreateDialog (id) {
+  if (id === undefined) {
+    id = '';
+  }
+  document.getElementById('original-id').value = id;
+  $('#create-focus-modal').modal('show');
+  var storedFocus = loadFocusById(id);
+  var focus = {};
+  // Try to load a focus for the given id
+  $('#focus-name').val('');
+  uncheckAll();
+  if (storedFocus !== null) {
+    try {
+      focus = JSON.parse(localStorage.getItem(id));
+      $('#focus-name').val(focus.name);
+      for (var key in focus) {
+        if (key.startsWith('engine_')) {
+          $('.focusCheckbox[name=' + key + ']').prop('checked', true);
+        }
+      }
+    } catch (ex) {
+      console.error(ex);
+    }
+  }
+  toggleDeleteButton();
+}
+
+/**
+ * Shows the focus create dialog for a given id
+ */
+function showFocusEditDialog (id) {
+  showFocusCreateDialog(id);
+}
+
+function getCurrentFocus () {
+  return $("#foki > div.active").attr("id");
+}
+
+/**
+ * Shows an edit dialog for the current selected focus
+ */
+function editCurrentFocus () {
+  var currentFocus = getCurrentFocus();
+  showFocusEditDialog(currentFocus);
+}
+
+/**
+ * Shows/Hides the delete button if (no) checkboxes are selected
+ */
+function toggleDeleteButton () {
+  if (atLeastOneChecked()) {
+    $('.delete-focus-btn').show();
+  } else {
+    $('.delete-focus-btn').hide();
+  }
+}
+
+/**
+ * Save the current Focus
+ * Listens for save button
+ */
+function saveFocus () {
+  /* Vorprüfungen */
+  // Falls keine Suchmaschine ausgewählt wurde
+  if (!atLeastOneChecked()) {
+    switch (document.documentElement.lang) {
+      case 'en':
+        alert('Please select at least 1 search engine.');
+        break;
+      case 'es':
+        alert('Por favor, seleccione al menos un motor de búsqueda.');
+        break;
+      default:
+        alert('Bitte mindestens 1 Suchmaschine auswählen.');
+        break;
+    }
+    return;
+  }
+  // Falls der Name zu kurz ist oder ungültige Zeichen enthält
+  var name = document.getElementById('focus-name').value;
+  if (!isValidName(name)) {
+    switch (document.documentElement.lang) {
+      case 'en':
+        alert('No characters other than a-z, A-Z, 0-9, ä, ö, ü, ß, -, _ allowed, at least 1 character');
+        break;
+      case 'es':
+        alert('Por favor, introduzca un nombre válido');
+        break;
+      default:
+        alert('Bitte gültigen Namen eingeben:\n* Keine Sonderzeichen\n* Mindestens 1 Buchstabe\n');
+        break;
+    }
+    return;
+  }
+  // Liest die original-id des aktuellen fokus-dialogs (gesetzt wenn man einen Fokus bearbeitet)
+  var oldId = document.getElementById('original-id').value;
+  var id = getIdFromName(name);
+  var overwrite = true;
+  // Wenn bereits ein Fokus mit dem Namen existiert, man diesen aber nicht editiert sondern gerade einen Neuen erstellt
+  if (alreadyInUse(name) && oldId !== id) {
+    // Fragt den Nutzer ob er den Fokus überschreiben möchte
+    if (!confirm('Name bereits genutzt\nüberschreiben?')) {
+      // Falls nicht wird das Speichern abgebrochen
+      return;
+    }
+    // Ansonsten wird der andere Fokus gelöscht
+    deleteFocusById(id);
+  }
+  /* Fokus speichern */
+  var focus = {};
+  // Ausgewählte Suchmaschinen lesen und zu Fokus hinzufügen
+  $('input[type=checkbox]:checked').each(function (el) {
+    focus[$(this).attr('name')] = $(this).val();
+  });
+
+  // Name setzen
+  focus['name'] = name;
+  // Alte Version des Fokus löschen (aus localStorage und von der Webseite, falls eine existiert)
+  if (oldId !== '') {
+    localStorage.removeItem(oldId);
+    removeFocusById(oldId);
+  }
+  // Neue Version des Fokus hinzufügen (zu localStorage und der Webseite)
+  localStorage.setItem(id, JSON.stringify(focus));
+  addFocus(name);
+  setFocus(id);
+  // Fokus-Formular verbergen
+  $('#create-focus-modal').modal('hide');
+}
+
+/**
+ * Delete current Focus
+ * Listens for delete button
+ */
+function deleteFocusById (id) {
+  localStorage.removeItem(id);
+  removeFocusById(id);
+  $('#focus-select').change();
+}
+
+/**
+ * Delete current Focus
+ * Listens for delete button
+ */
+function deleteFocus () {
+  var oldId = document.getElementById('original-id').value;
+  deleteFocusById(oldId);
+  $('#create-focus-modal').modal('hide');
+  $('#focus-select').change();
+}
+
+/**
+ * Is the name valid (in terms of characters)?
+ */
+function isValidName (name) {
+  // no Characters other then a-z, A-Z, 0-9, ä, ö, ü, ß, -, _ allowed
+  // at least 1 character
+  return /^[a-zA-Z0-9äöüß\-_ ]+$/.test(name);
+}
+
+/**
+ * Is at least one focus selected?
+ */
+function atLeastOneChecked () {
+  return $('.focusCheckbox:checked').length > 0;
+}
+
+/**
+ * Is there already a focus with this name?
+ */
+function alreadyInUse (name) {
+  return localStorage.hasOwnProperty(getIdFromName(name));
+}
+
+/**
+ * Adds an option to the focus selector
+ */
+function addFocus (name) {
+  var id = getIdFromName(name);
+  var customFocus = $('<div id="' + id +'"><a href="#" target="_self">' + name + '</a><a class="edit-focus" data-id="' + id + '" href="#"><i class="fa fa-wrench"></i></div>');
+  $(customFocus).find(".edit-focus").click(function(){
+    showFocusEditDialog($(this).attr("data-id"));
+  });
+  $("#foki .search-option-frame").before(customFocus);
+}
+
+/**
+ * Remove the focuses html-elements
+ */
+function removeFocus (name) {
+  removeFocusById(getIdFromName(name));
+}
+
+/**
+ * Remove the focuses html-elements
+ */
+function removeFocusById (id) {
+  if (id == '') {
+    return;
+  }
+  $('#focus-select option[value="' + id + '"]').remove();
+}
+
+/**
+ * Turns a name into an id
+ * Converts special characters and spaces
+ */
+function getIdFromName (name) {
+  name = name.toLowerCase();
+  name = name.split(' ').join('_');
+  name = name.split('ä').join('ae');
+  name = name.split('ö').join('oe');
+  name = name.split('ü').join('ue');
+  return 'focus_' + name;
+}
+
+/**
+ * Loads the focus object for the given id from local storage
+ */
+function loadFocusById (id) {
+  return JSON.parse(localStorage.getItem(id));
+}
+
+/**
+ * Unchecks all focuses from the focus creator dialog
+ */
+function uncheckAll () {
+  $('.focusCheckbox').prop('checked', false);
+}
+
+/**
+ * Sets the selected focus to default
+ */
+function setFocusToDefault () {
+  setFocus(DEFAULT_FOCUS);
+}
+
+/**
+ * Sets the selected focus
+ * @param {String} focusID The id of the focus, without #
+ */
+function setFocus (focusID) {
+  $('#focus-select option[value="' + focusID + '"]').prop('selected', true);
+  $('#focus-select').change();
+}
+
+function focusChanged () {
+  var selectedFocus = getCurrentFocus();
+  if (focusIsEditable(selectedFocus)) {
+    enableEditFocusBtn();
+  } else {
+    disableEditFocusBtn();
+  }
+  loadFocusForSearch(selectedFocus);
+}
+
+function focusIsEditable (focus) {
+  if (focus.startsWith('focus_')) {
+    return true;
+  } else {
+    return false;
+  }
+}
+
+function enableEditFocusBtn () {
+  $('#editFocusBtn').removeClass('disabled').click(editCurrentFocus);
+}
+
+function disableEditFocusBtn () {
+  $('#editFocusBtn').addClass('disabled').off('click');
+}
+
+function loadFocusForSearch (focus) {
+  var focus = loadFocusById(focus);
+
+  var url ="/meta/meta.ger3?eingabe=x&focus=";
+
+  console.log(focus, url);
+
+  clearCustomSearch();
+  for (var key in focus) {
+    if (key.startsWith('engine_') && focus[key] == 'on') {
+      addSumaToCustomSearch(key);
+    }
+  }
+}
+
+function getFocusInUrl () {
+  var url = window.location;
+  var focReg = /focus=(focus_\w+)/.exec(url);
+  if (focReg && focReg[1]) {
+    return focReg[1];
+  }
+}
+
+function checkboxCheckListener (event) {
+  toggleDeleteButton();
+  var elem = event.target;
+  if (elem.name) {
+    if (elem.checked) {
+      setCheckedForAllWithName(elem.name, true);
+    } else {
+      setCheckedForAllWithName(elem.name, false);
+    }
+  }
+}
+
+function setCheckedForAllWithName (name, checked) {
+  $('.focusCheckbox[name=' + name + ']').prop('checked', checked);
+}
+
+//# sourceMappingURL=searchbar.js.map
diff --git a/public/js/settings.js b/public/js/settings.js
index 8910eb9cdd6aec2504b8d2c11e9e19f796edb211..2d2b3637078147d1f098802cce1cf74f8df67dcb 100644
--- a/public/js/settings.js
+++ b/public/js/settings.js
@@ -27,31 +27,11 @@ $(document).ready(function () {
   });
   $('#unten').click(function () {
     $('#settings-form').append('<input type="hidden" name="usage" value="once">');
-    switch (getLanguage()) {
-      case 'de':
-        alert('Auf der folgenden Startseite sind Ihre Einstellungen nun einmalig gespeichert. Nach Ihrer ersten Suche sind diese wieder verloren. Wenn Sie diese speichern möchten, können Sie sich allerdings ein Lesezeichen für die generierte Startseite einrichten.');
-        break;
-      case 'en':
-        alert('On the following startpage your settings are saved one-time. They will be lost after your first search. Though if you want to save them, you can create a bookmark for the generated startpage.');
-        break;
-      case 'es':
-        // alert(""); TODO
-        break;
-    }
+      alert(t('saved-settings'));
   });
   $('#plugin').click(function () {
     $('form').attr('action', $('#save').attr('data-href') + '#plugin-modal');
-    switch (getLanguage()) {
-      case 'de':
-        alert('Ihr Browserplugin mit den persönlichen Sucheinstellungen wurde generiert. Folgen Sie bitte der Anleitung auf der folgenden Seite um es zu installieren. Beachten Sie: Zuvor sollten Sie ein eventuell bereits installiertes MetaGer-Plugin entfernen.');
-        break;
-      case 'en':
-        alert('Your browser plugin with personal settings was generated. Please follow the instructions on the following page to install it. Notice that beforehand you might have to delete a former MetaGer plugin.');
-        break;
-      case 'es':
-        // alert(""); TODO
-        break;
-    }
+    alert(t('generated-plugin'));
   });
   $('#settings-focus').val('angepasst');
 });
diff --git a/public/js/translations.js b/public/js/translations.js
new file mode 100644
index 0000000000000000000000000000000000000000..53dcd970cca18518906ba5de147d8fa048279a6a
--- /dev/null
+++ b/public/js/translations.js
@@ -0,0 +1,44 @@
+// Speichert die Ãœbersetzungen
+var translations = {
+    'de': {
+        'select-engine': 'Bitte mindestens 1 Suchmaschine auswählen.',
+        'select-valid-name': 'Bitte gültigen Namen eingeben:\n* Keine Sonderzeichen\n* Mindestens 1 Buchstabe\n',
+        'confirm-overwrite-name': 'Name bereits genutzt.\nÃœberschreiben?',
+        'saved-settings': 'Auf der folgenden Startseite sind Ihre Einstellungen nun einmalig gespeichert. Nach Ihrer ersten Suche sind diese wieder verloren. Wenn Sie diese speichern möchten, können Sie sich allerdings ein Lesezeichen für die generierte Startseite einrichten.',
+        'generated-plugin': 'Ihr Browserplugin mit den persönlichen Sucheinstellungen wurde generiert. Folgen Sie bitte der Anleitung auf der folgenden Seite um es zu installieren. Beachten Sie: Zuvor sollten Sie ein eventuell bereits installiertes MetaGer-Plugin entfernen.'
+    },
+
+    'en': {
+        'select-engine' : 'Please select at least 1 search engine.',
+        'select-valid-name': 'No characters other than a-z, A-Z, 0-9, ä, ö, ü, ß, -, _ allowed, at least 1 character',
+        'confirm-overwrite-name': 'Name already in use.\nOverwrite?',
+        'saved-settings': 'On the following startpage your settings are saved one-time. They will be lost after your first search. Though if you want to save them, you can create a bookmark for the generated startpage.',
+        'generated-plugin': 'Your browser plugin with personal settings was generated. Please follow the instructions on the following page to install it. Notice that beforehand you might have to delete a former MetaGer plugin.'
+    },
+
+    'es': {
+        'select-engine': 'Por favor, seleccione al menos un motor de búsqueda.',
+        'select-valid-name': 'Por favor, introduzca un nombre válido constituido por letras y números.',
+        'confirm-overwrite-name': 'Nombre ya ha sido elegido.\n¿Substituirlo?',
+        // 'saved-settings': '',
+        // 'generated-plugin': ''
+    }
+}
+
+/**
+ * Übersetzt den gegebenen Schlüssel in der gegebenen Sprache
+ * Gibt standardmäßig deutsche Sprachstrings zurück, da davon ausgegangen werden kann, dass diese immer vorhanden sind
+ * @param {string} key Zu übersetzender Schlüssel
+ * @param {string} lang Zu verwendende Sprache
+ */
+function t(key, lang) {
+    if (arguments.length == 1) {
+        var lang = $('html').attr('lang');
+        return translations[lang][key];
+    } else if (arguments.length == 2 && translations[lang] && translations[lang][key]) {
+        return translations[lang][key];
+    } else {
+        return translations.de[key];
+    }
+}
+//# sourceMappingURL=translations.js.map
diff --git a/resources/assets/js/scriptStartPage.js b/resources/assets/js/scriptStartPage.js
index 071411f56978faf39bf769a10692e7f3a18ad3b8..b44c328a2106bd48d6a416ac1dfde938620e91e3 100644
--- a/resources/assets/js/scriptStartPage.js
+++ b/resources/assets/js/scriptStartPage.js
@@ -276,12 +276,16 @@ function toggleDeleteButton() {
  */
 function saveFocus () {
   var name = document.getElementById('focus-name').value;
-  if (isValidName(name) && atLeastOneChecked()) {
+  if(!isValidName(name)) { 
+    alert(t('select-valid-name'));
+  } else if(atLeastOneChecked()) {
+    alert(t('select-engine'));
+  } else {
     var oldId = document.getElementById('original-id').value;
     var id = getIdFromName(name);
     var overwrite = true;
     if (alreadyInUse(name) && oldId !== id) {
-      overwrite = confirm('Name bereits genutzt\nüberschreiben?');
+      overwrite = confirm(t('confirm-overwrite-name'));
       if (overwrite) {
         localStorage.removeItem(id);
         removeFocusById(id);
@@ -301,18 +305,6 @@ function saveFocus () {
       addFocus(name);
       $('#create-focus-modal').modal('hide');
     }
-  } else {
-     switch(document.documentElement.lang) {
-      case 'en':
-        alert('Please select at least 1 search engine.');
-        break;
-      case 'es':
-        alert('Por favor, seleccione al menos un motor de búsqueda.');
-        break;
-      default:
-        alert('Bitte mindestens 1 Suchmaschine auswählen.');
-        break;
-     }
   }
 }
 /**
diff --git a/resources/assets/js/translations.js b/resources/assets/js/translations.js
new file mode 100644
index 0000000000000000000000000000000000000000..0b7c0ae0269b8ead556fce5f856d38a9591f9733
--- /dev/null
+++ b/resources/assets/js/translations.js
@@ -0,0 +1,43 @@
+// Speichert die Ãœbersetzungen
+var translations = {
+    'de': {
+        'select-engine': 'Bitte mindestens 1 Suchmaschine auswählen.',
+        'select-valid-name': 'Bitte gültigen Namen eingeben:\n* Keine Sonderzeichen\n* Mindestens 1 Buchstabe\n',
+        'confirm-overwrite-name': 'Name bereits genutzt.\nÃœberschreiben?',
+        'saved-settings': 'Auf der folgenden Startseite sind Ihre Einstellungen nun einmalig gespeichert. Nach Ihrer ersten Suche sind diese wieder verloren. Wenn Sie diese speichern möchten, können Sie sich allerdings ein Lesezeichen für die generierte Startseite einrichten.',
+        'generated-plugin': 'Ihr Browserplugin mit den persönlichen Sucheinstellungen wurde generiert. Folgen Sie bitte der Anleitung auf der folgenden Seite um es zu installieren. Beachten Sie: Zuvor sollten Sie ein eventuell bereits installiertes MetaGer-Plugin entfernen.'
+    },
+
+    'en': {
+        'select-engine' : 'Please select at least 1 search engine.',
+        'select-valid-name': 'No characters other than a-z, A-Z, 0-9, ä, ö, ü, ß, -, _ allowed, at least 1 character',
+        'confirm-overwrite-name': 'Name already in use.\nOverwrite?',
+        'saved-settings': 'On the following startpage your settings are saved one-time. They will be lost after your first search. Though if you want to save them, you can create a bookmark for the generated startpage.',
+        'generated-plugin': 'Your browser plugin with personal settings was generated. Please follow the instructions on the following page to install it. Notice that beforehand you might have to delete a former MetaGer plugin.'
+    },
+
+    'es': {
+        'select-engine': 'Por favor, seleccione al menos un motor de búsqueda.',
+        'select-valid-name': 'Por favor, introduzca un nombre válido constituido por letras y números.',
+        'confirm-overwrite-name': 'Nombre ya ha sido elegido.\n¿Substituirlo?',
+        // 'saved-settings': '',
+        // 'generated-plugin': ''
+    }
+}
+
+/**
+ * Übersetzt den gegebenen Schlüssel in der gegebenen Sprache
+ * Gibt standardmäßig deutsche Sprachstrings zurück, da davon ausgegangen werden kann, dass diese immer vorhanden sind
+ * @param {string} key Zu übersetzender Schlüssel
+ * @param {string} lang Zu verwendende Sprache
+ */
+function t(key, lang) {
+    if (arguments.length == 1) {
+        var lang = $('html').attr('lang');
+        return translations[lang][key];
+    } else if (arguments.length == 2 && translations[lang] && translations[lang][key]) {
+        return translations[lang][key];
+    } else {
+        return translations.de[key];
+    }
+}
\ No newline at end of file
diff --git a/resources/views/index.blade.php b/resources/views/index.blade.php
index f76335040686dcc1b05c896b7078f3c7c56b8161..7217cf896156986c72eb4053f4817bdbbd3385ff 100644
--- a/resources/views/index.blade.php
+++ b/resources/views/index.blade.php
@@ -270,62 +270,63 @@
 			</a>
 		</div>
 	</div>
-		<fieldset>
-			<form id="searchForm" @if(Request::has('request') && Request::input('request') === "POST") method="POST" @elseif(Request::has('request') && Request::input('request') === "GET") method="GET" @else method="GET" @endif action="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "/meta/meta.ger3") }}" accept-charset="UTF-8">
-				<div class="input-group">
-					<div class="input-group-addon">
-						<button type="button" data-toggle="popover" data-html="true" data-container="body" title="{{ trans('index.design') }}" data-content='&lt;ul id="color-chooser" class="list-inline list-unstyled"&gt;
-							&lt;li &gt;&lt;a id="standard" data-rgba="255,194,107,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="standardHard" data-rgba="255,128,0,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="blue" data-rgba="164,192,230,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="blueHard" data-rgba="2,93,140,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="green" data-rgba="177,226,163,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="greenHard" data-rgba="127,175,27,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="red" data-rgba="255,92,92,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="redHard" data-rgba="255,0,0,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="pink" data-rgba="255,196,246,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="pinkHard" data-rgba="254,67,101,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="black" data-rgba="238,238,238,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-							&lt;li &gt;&lt;a id="blackHard" data-rgba="50,50,50,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
-						&lt;/ul&gt;'>
-							<i class="fa fa-tint" aria-hidden="true"></i>
-						</button>
-					</div>
-					<input type="text" name="eingabe" required="" autofocus="" autocomplete="{{$autocomplete}}" class="form-control" placeholder="{{ trans('index.placeholder') }}">
-					<input type="hidden" name="encoding" value="utf8">
-					<input type="hidden" name="lang" value={{ $lang }} >
-					<input type="hidden" name="resultCount" value={{ $resultCount }} >
-					<input type="hidden" name="time" value={{ $time }} >
-					<input type="hidden" name="sprueche" value={{ $sprueche }} >
-					<input type="hidden" name="newtab" value={{ $newtab }} >
-					<input type="hidden" name="maps" value={{ $maps }} >
-					<input type="hidden" name="key" value={{ $key }} >
-					@foreach ($focusPages as $fp)
-						<input type="hidden" name={{ $fp }} value="on">
-					@endforeach
-					<input type="hidden" name="theme" value={{ $theme }}>
-					<div class="input-group-addon">
-						<button type="submit">
-							<i class="fa fa-search" aria-hidden="true"></i>
-						</button>
-					</div>
+	<fieldset>
+		<form id="searchForm" @if(Request::has('request') && Request::input('request') === "POST") method="POST" @elseif(Request::has('request') && Request::input('request') === "GET") method="GET" @else method="GET" @endif action="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "/meta/meta.ger3") }}" accept-charset="UTF-8">
+			<div class="input-group">
+				<div class="input-group-addon">
+					<button type="button" data-toggle="popover" data-html="true" data-container="body" title="{{ trans('index.design') }}" data-content='&lt;ul id="color-chooser" class="list-inline list-unstyled"&gt;
+						&lt;li &gt;&lt;a id="standard" data-rgba="255,194,107,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="standardHard" data-rgba="255,128,0,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="blue" data-rgba="164,192,230,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="blueHard" data-rgba="2,93,140,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="green" data-rgba="177,226,163,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="greenHard" data-rgba="127,175,27,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="red" data-rgba="255,92,92,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="redHard" data-rgba="255,0,0,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="pink" data-rgba="255,196,246,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="pinkHard" data-rgba="254,67,101,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="black" data-rgba="238,238,238,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+						&lt;li &gt;&lt;a id="blackHard" data-rgba="50,50,50,1" href="#"&gt;&lt;/a&gt;&lt;/li&gt;
+					&lt;/ul&gt;'>
+						<i class="fa fa-tint" aria-hidden="true"></i>
+					</button>
 				</div>
-			</form>
-		</fieldset>
-		<ul class="list-inline searchform-bonus">
-			<li id="plug"
-			@unless ($browser === 'Firefox' || $browser === 'Mozilla' || $browser === 'Chrome' || $browser === 'Opera' || $browser === 'IE' || $browser === 'Edge' || $browser === 'Safari' || $browser === 'Vivaldi')
-				class="hidden"
-			@endunless>
-			<a href="#" data-toggle="modal" data-target="#plugin-modal" class="btn btn-default mutelink" title="{{ trans('index.plugintitle') }}"><i class="fa fa-plug" aria-hidden="true"></i> {{ trans('index.plugin') }}</a></li>
-			@if (LaravelLocalization::getCurrentLocale() == "de")
-			<li>
-				<a href="https://suma-ev.de/presse/Werbefreie-Suche-mit-MetaGer.html" target="_blank" class="btn btn-default mutelink">
-						Werbefreie Suche mit MetaGer
-				</a>
-			</li>
-			@endif
-		</ul>
+				<input type="text" name="eingabe" required="" autofocus="" autocomplete="{{$autocomplete}}" class="form-control" placeholder="{{ trans('index.placeholder') }}">
+				<input type="hidden" name="encoding" value="utf8">
+				<input type="hidden" name="lang" value={{ $lang }} >
+				<input type="hidden" name="resultCount" value={{ $resultCount }} >
+				<input type="hidden" name="time" value={{ $time }} >
+				<input type="hidden" name="sprueche" value={{ $sprueche }} >
+				<input type="hidden" name="newtab" value={{ $newtab }} >
+				<input type="hidden" name="maps" value={{ $maps }} >
+				<input type="hidden" name="key" value={{ $key }} >
+				@foreach ($focusPages as $fp)
+					<input type="hidden" name={{ $fp }} value="on">
+				@endforeach
+				<input type="hidden" name="theme" value={{ $theme }}>
+				<div class="input-group-addon">
+					<button type="submit">
+						<i class="fa fa-search" aria-hidden="true"></i>
+					</button>
+				</div>
+			</div>
+		</form>
+	</fieldset>
+	<ul class="list-inline searchform-bonus">
+		<li id="plug"
+		@unless ($browser === 'Firefox' || $browser === 'Mozilla' || $browser === 'Chrome' || $browser === 'Opera' || $browser === 'IE' || $browser === 'Edge' || $browser === 'Safari' || $browser === 'Vivaldi')
+			class="hidden"
+		@endunless>
+		<a href="#" data-toggle="modal" data-target="#plugin-modal" class="btn btn-default mutelink" title="{{ trans('index.plugintitle') }}"><i class="fa fa-plug" aria-hidden="true"></i> {{ trans('index.plugin') }}</a></li>
+		@if (LaravelLocalization::getCurrentLocale() == "de")
+		<li>
+			<a href="https://suma-ev.de/presse/Werbefreie-Suche-mit-MetaGer.html" target="_blank" class="btn btn-default mutelink">
+					Werbefreie Suche mit MetaGer
+			</a>
+		</li>
+		@endif
+	</ul>
+	<script src="{{ elixir('js/translations.js') }}"></script>
 	<script src="{{ elixir('js/scriptStartPage.js') }}"></script>
 @endsection
 
diff --git a/resources/views/layouts/resultPage.blade.php b/resources/views/layouts/resultPage.blade.php
index 9cd817896c394db486817eef7fb4f869a4582b05..3acc66a4d55af721df5ac583a1b5f92622a87889 100644
--- a/resources/views/layouts/resultPage.blade.php
+++ b/resources/views/layouts/resultPage.blade.php
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html>
+<html lang="{!! trans('staticPages.meta.language') !!}">
 	<head>
 		<title>{{ $eingabe }} - MetaGer</title>
 		<link href="/favicon.ico" rel="icon" type="image/x-icon" />
diff --git a/resources/views/settings.blade.php b/resources/views/settings.blade.php
index b2c8c24c8b939881401e1fdad420e97ba2db998a..9327f832ba8231245def6f14fc2924e2dbbf7fe0 100644
--- a/resources/views/settings.blade.php
+++ b/resources/views/settings.blade.php
@@ -58,5 +58,6 @@
 			<input id="plugin" class="btn btn-primary settings-btn" type="submit" value="{!! trans('settings.speichern.3') !!}">
 		</div>
 	</form>
+	<script src="{{ elixir('js/translations.js') }}"></script>
 	<script src="{{ elixir('js/settings.js') }}"></script>
 @endsection