diff --git a/.gitignore b/.gitignore index fcbee8df402b7fb0d82cde721a45e62c56c2d9d7..53d05fa2e228e01a74c7c4850feae609fb55f9f1 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,5 @@ langfiles.zip **/*.map /.buildpath /.project + +composer.lock \ No newline at end of file diff --git a/app/MetaGer.php b/app/MetaGer.php index 4668b206c9c1a63e64649d4b4a81182f6fcb4329..f64af6e8b08695529228fe808c879ff7ca2cb66d 100644 --- a/app/MetaGer.php +++ b/app/MetaGer.php @@ -690,8 +690,7 @@ class MetaGer return $sumaName === "qualigo" || $sumaName === "similar_product_ads" - || (!$overtureEnabled && $sumaName === "overtureAds") - || $sumaName == "rlvproduct"; + || (!$overtureEnabled && $sumaName === "overtureAds"); } public function sumaIsDisabled($suma) @@ -780,7 +779,7 @@ class MetaGer $realEngNames = []; foreach ($enabledSearchengines as $realEng) { $nam = $realEng["name"]->__toString(); - if ($nam !== "qualigo" && $nam !== "overtureAds" && $nam !== "rlvproduct") { + if ($nam !== "qualigo" && $nam !== "overtureAds") { $realEngNames[] = $nam; } } diff --git a/public/js/searchbar.js b/public/js/searchbar.js index 305c1f42260e17c217921c47c4f409c4730d8b86..16e3a4dd26abe58fa2d8856193fe5bcac9657910 100644 --- a/public/js/searchbar.js +++ b/public/js/searchbar.js @@ -1,6 +1,5 @@ $(function () { loadLocalStorage(); - setSearchbarActionListeners(); }); /** @@ -12,10 +11,6 @@ function loadLocalStorage () { } } -function setSearchbarActionListeners () { - $('#toggleOptBtn').click(toggleOptionsDialog); -} - function setSettings () { var acceptedParams = ['autocomplete', 'key', 'lang', 'newtab', 'sprueche']; for (var key in localStorage) { @@ -41,385 +36,4 @@ function setSettings () { 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 +} \ No newline at end of file diff --git a/resources/assets/js/scriptStartPage.js b/resources/assets/js/scriptStartPage.js index e0858632e4d79be768e6385e4ace6e054100738d..af3617010625c1bd3ccc50f2f989468ecdd9866e 100644 --- a/resources/assets/js/scriptStartPage.js +++ b/resources/assets/js/scriptStartPage.js @@ -155,10 +155,6 @@ var isChrome = !!window.chrome && !!window.chrome.webstore; // Blink engine detection var isBlink = (isChrome || isOpera) && !!window.CSS; // Prüft, ob der URL-Parameter "usage" auf "once" gesetzt ist. - alert(t('select-valid-name')); - } else if(atLeastOneChecked()) { - alert(t('select-engine')); - } else { function loadSavedResults () { var results = new Results(); diff --git a/resources/assets/less/metager/result.less b/resources/assets/less/metager/result.less index 9234952b1231740a3285fe38192199485ee7d95d..41a1022b425569ba9337bd8f80f2f5e4514d073d 100644 --- a/resources/assets/less/metager/result.less +++ b/resources/assets/less/metager/result.less @@ -42,7 +42,7 @@ text-overflow: ellipsis; white-space: nowrap; font-size: @result-font-small; - width: fit-content; + width: auto; &, &:active, &:hover, diff --git a/resources/views/index.blade.php b/resources/views/index.blade.php index 0cc1dc45340490cdf1cda61afd9ce9c29cacf604..07350606a49a31de71db92105ec53752f78f6475 100644 --- a/resources/views/index.blade.php +++ b/resources/views/index.blade.php @@ -11,14 +11,6 @@ @include('parts.searchbar', ['class' => 'startpage-searchbar']) <script type="text/javascript" src="{{ elixir('js/scriptStartPage.js') }}"></script> <script type="text/javascript" src="{{ elixir('js/searchbar.js') }}"></script> - <hr> - <h4>{{ trans('index.plugin.head.8') }}</h4> - <ol> - <li>{!! trans('index.plugin.firefox-klar.1') !!}</li> - <li>{{ trans('index.plugin.firefox-klar.2')}}<img src="/img/FirefoxKlar-Settings.png" width="100%"/></li> - <li>{{ trans('index.plugin.firefox-klar.3') }}<img src="/img/FirefoxKlar-addSearchengine.png" width="100%"/></li> - <li>{{ trans('index.plugin.firefox-klar.4') }}</li> - </ol> <script src="{{ elixir('js/translations.js') }}"></script> @endsection diff --git a/resources/views/layouts/staticPages.blade.php b/resources/views/layouts/staticPages.blade.php index 50ef59d449f9766b2b82a6a2ae082df41b3f2460..7c6b159083a54b04d3d8b0991a4db1c038475bb9 100644 --- a/resources/views/layouts/staticPages.blade.php +++ b/resources/views/layouts/staticPages.blade.php @@ -35,12 +35,6 @@ <body> <header> @yield('homeIcon') - @if(LaravelLocalization::getCurrentLocale() == "de") - <li> - <a href="https://shop.spreadshirt.de/metager/" rel="noopener" target="_blank">MetaGer-Fanshop</a> - - </li> - @endif </header> @include('parts.sidebar', ['id' => 'staticPagesSideBar']) <div class="wrapper"> @@ -60,26 +54,6 @@ @yield('content') </main> @yield('optionalContent') - <div class="hidden-xs mg-img"> - </div> - <div id="info"> - <div class="links"> - <a href="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "kontakt") }}"> - {{ trans('staticPages.nav5') }} - </a> - <span> - </span> - <a href="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "impressum") }}"> - {{ trans('staticPages.nav8') }} - </a> - @if(LaravelLocalization::getCurrentLocale() == "de") - <span> - </span> - <a href="https://shop.spreadshirt.de/metager/" rel="noopener" target="_blank">Fanshop</a> - @endif - </div> - <div> - {{ trans('staticPages.sumaev.1') }}<a href="https://www.suma-ev.de/">{{ trans('staticPages.sumaev.2') }}</a> - <div class="hidden-xs mg-img"> - <img src="{{ action('ImageController@generateImage')}}?site={{ urlencode(url()->current()) }}" class="hidden" /> </div> @if (isset($page) && $page === 'startpage') @include('parts.footer', ['type' => 'startpage', 'id' => 'startPageFooter']) diff --git a/resources/views/metager3.blade.php b/resources/views/metager3.blade.php index a8c368e62370e47841d21e53fd10fa332f66a7c7..ae4112009941cb032f84dfc5c7fb832667f8d648 100644 --- a/resources/views/metager3.blade.php +++ b/resources/views/metager3.blade.php @@ -22,17 +22,13 @@ </div> @endif <main id="results"> - {{-- Show initial products or ads --}} - @if( $metager->getFokus() !== "produktsuche" && !$apiAuthorized) - @include('layouts.products', ['products' => $metager->getProducts()]) + {{-- Show initial ads --}} + @if($mobile) + @include('layouts.ad', ['ad' => $metager->popAd()]) @else - @if($mobile) + @for($i = 0; $i <= 2; $i++) @include('layouts.ad', ['ad' => $metager->popAd()]) - @else - @for($i = 0; $i <= 2; $i++) - @include('layouts.ad', ['ad' => $metager->popAd()]) - @endfor - @endif + @endfor @endif {{-- Show map --}} {{-- Create results and ongoing ads --}} diff --git a/resources/views/metager3results.blade.php b/resources/views/metager3results.blade.php index 9bac71acf0f08cc94c6601a1ac31385002cc3e39..cb6dabc6e0e19bc1672402e17634d03839a90a34 100644 --- a/resources/views/metager3results.blade.php +++ b/resources/views/metager3results.blade.php @@ -19,16 +19,12 @@ </div> @endif <div id="results"> - @if( $metager->getFokus() !== "produktsuche" && !$apiAuthorized) - @include('layouts.products', ['products' => $metager->getProducts()]) + @if($mobile) + @include('layouts.ad', ['ad' => $metager->popAd()]) @else - @if($mobile) + @for($i = 0; $i <= 2; $i++) @include('layouts.ad', ['ad' => $metager->popAd()]) - @else - @for($i = 0; $i <= 2; $i++) - @include('layouts.ad', ['ad' => $metager->popAd()]) - @endfor - @endif + @endfor @endif {{-- Show map --}} {{-- Create results and ongoing ads --}} diff --git a/resources/views/parts/footer.blade.php b/resources/views/parts/footer.blade.php index 20751008432c51d2b2780edcfed35627d20fd9f0..f7d3d5bd5a54b887d54a171fb8069af0009221ed 100644 --- a/resources/views/parts/footer.blade.php +++ b/resources/views/parts/footer.blade.php @@ -1,7 +1,7 @@ @if ($type === 'startpage' || $type === 'subpage' || $type === 'resultpage') <footer class="{{ $id }} noprint"> <div id="info"> - <span><a href="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "kontakt") }}">{{ trans('staticPages.nav5') }}</a> - <a href="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "impressum") }}">{{ trans('staticPages.nav8') }}</a></span> + <span><a href="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "kontakt") }}">{{ trans('staticPages.nav5') }}</a> - <a href="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "impressum") }}">{{ trans('staticPages.nav8') }}</a>@if(LaravelLocalization::getCurrentLocale() == "de") - <a href="https://shop.spreadshirt.de/metager/" rel="noopener" target="_blank">Fanshop</a>@endif</span> <span class="hidden-xs">{{ trans('staticPages.sumaev.1') }}<a href="https://www.suma-ev.de/">{{ trans('staticPages.sumaev.2') }}</a></span> </div> </footer> diff --git a/resources/views/parts/sidebar.blade.php b/resources/views/parts/sidebar.blade.php index cba4263b0b7176eaf9c74a8cb39cfa04c5a9e809..7df1a728d5f2fd6491d12572f848cd73cadd31d5 100644 --- a/resources/views/parts/sidebar.blade.php +++ b/resources/views/parts/sidebar.blade.php @@ -82,6 +82,11 @@ <li> <a href="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "/beitritt/") }}" tabindex="203">{{ trans('staticPages.nav23') }}</a> </li> + @if(LaravelLocalization::getCurrentLocale() == "de") + <li> + <a href="https://shop.spreadshirt.de/metager/" rel="noopener" target="_blank">MetaGer-Fanshop</a> + </li> + @endif <li> <a href="https://www.boost-project.com/de/shops?charity_id=1129&tag=bl" tabindex="204">{{ trans('staticPages.nav17') }}</a> </li>