diff --git a/app/Http/Controllers/StartpageController.php b/app/Http/Controllers/StartpageController.php index c85cb7baa4dc3e0690290d3ca930f4f3f29777af..3d019ab6cb8bc0e8913f536cbf42f5bb96ff1715 100644 --- a/app/Http/Controllers/StartpageController.php +++ b/app/Http/Controllers/StartpageController.php @@ -28,7 +28,7 @@ class StartpageController extends Controller $focusPages = []; $theme = "default"; foreach ($request->all() as $key => $value) { - if ($value === 'on' && $key != 'param_sprueche' && $key != 'param_tab') { + if ($value === 'on' && $key != 'param_sprueche' && $key != 'param_tab' && $key !== 'param_maps') { $focusPages[] = str_replace('param_', '', $key); } if ($key === 'param_theme') { @@ -36,6 +36,8 @@ class StartpageController extends Controller } } + $maps = $request->input('param_maps', 'on'); + $agent = new Agent(); $browser = $agent->browser(); @@ -51,7 +53,8 @@ class StartpageController extends Controller ->with('focusPages', $focusPages) ->with('browser', $browser) ->with('navbarFocus', 'suche') - ->with('theme', $theme); + ->with('theme', $theme) + ->with('maps', $maps); } public function loadPage($subpage) diff --git a/app/MetaGer.php b/app/MetaGer.php index 844a3619dc7f57d1753034db308217da9984755a..b1036f7244c272bbbd305f54f15c15326ea62b31 100644 --- a/app/MetaGer.php +++ b/app/MetaGer.php @@ -44,6 +44,8 @@ class MetaGer protected $mobile; protected $resultCount; protected $sprueche; + protected $maps; + protected $newtab; protected $domainsBlacklisted = []; protected $urlsBlacklisted = []; protected $url; @@ -243,6 +245,7 @@ class MetaGer $this->ads = []; $this->products = []; $this->validated = true; + $this->maps = false; } } @@ -874,12 +877,24 @@ class MetaGer $this->agent = new Agent(); $this->mobile = $this->agent->isMobile(); # Sprüche - $this->sprueche = $request->input('sprueche', 'off'); - if ($this->sprueche === "off") { + $this->sprueche = $request->input('sprueche', 'on'); + if ($this->sprueche === "on") { $this->sprueche = true; } else { $this->sprueche = false; } + $this->maps = $request->input('maps', 'on'); + if ($this->maps === "on") { + $this->maps = true; + } else { + $this->maps = false; + } + $this->newtab = $request->input('newtab', 'on'); + if ($this->newtab === "on") { + $this->newtab = "_blank"; + } else { + $this->newtab = "_self"; + } # Theme $this->theme = preg_replace("/[^[:alnum:][:space:]]/u", '', $request->input('theme', 'default')); # Ergebnisse pro Seite: @@ -912,15 +927,6 @@ class MetaGer $this->time = 5000; $this->cache = "cache"; } - if ($request->has('tab')) { - if ($request->input('tab') === "off") { - $this->tab = "_blank"; - } else { - $this->tab = "_self"; - } - } else { - $this->tab = "_blank"; - } if ($request->has('password')) { $this->password = $request->input('password'); } @@ -1252,9 +1258,9 @@ class MetaGer return $this->site; } - public function getTab() + public function getNewtab() { - return $this->tab; + return $this->newtab; } public function getResults() @@ -1306,6 +1312,11 @@ class MetaGer return $this->sprueche; } + public function getMaps() + { + return $this->maps; + } + public function getCategory() { return $this->category; diff --git a/resources/lang/de/settings.php b/resources/lang/de/settings.php index ea0ad63ed64463b25508b7afd537688705c7414f..6bdb27b1ac5e900ea509477f057c4e9a9e0d82d0 100644 --- a/resources/lang/de/settings.php +++ b/resources/lang/de/settings.php @@ -5,14 +5,23 @@ return [ 'head.2' => 'Hier können Sie Ihr MetaGer anpassen: Nach Anklicken Ihrer gewünschten Einstellungen müssen Sie <a href="#unten">unten auf dieser Seite</a> wählen, ob Sie die Einstellungen dauerhaft speichern, oder nur einmalig setzen wollen.', 'allgemein.1' => 'Allgemein', - 'allgemein.2' => 'Sprüche ausblenden', - 'allgemein.3' => 'Links im gleichen Tab öffnen', - 'allgemein.4' => 'Sprache auswählen:', - 'allgemein.5' => 'Alle Sprachen', - 'allgemein.6' => 'Deutsch', - 'allgemein.6_1' => 'Englisch', - 'allgemein.7' => 'Anzahl der Ergebnisse pro Seite:', - 'allgemein.8' => 'Alle', + + 'allgemein.2.1' => 'Sprüche', + 'allgemein.2.2' => 'anzeigen', + 'allgemein.2.3' => 'nicht anzeigen', + 'allgemein.3.1' => 'Maps', + 'allgemein.3.2' => 'anzeigen', + 'allgemein.3.3' => 'nicht anzeigen', + 'allgemein.4.1' => 'Ergebnisse öffnen:', + 'allgemein.4.2' => 'In einem neuen Tab', + 'allgemein.4.3' => 'Im gleichen Tab', + + 'allgemein.5' => 'Sprache auswählen:', + 'allgemein.6' => 'Alle Sprachen', + 'allgemein.7' => 'Deutsch', + 'allgemein.8' => 'Englisch', + 'allgemein.9' => 'Anzahl der Ergebnisse pro Seite:', + 'allgemein.10' => 'Alle', 'zeit.1' => 'Maximale Suchzeit', 'zeit.2' => '1 Sekunde (Standard)', @@ -30,5 +39,5 @@ return [ 'speichern.3' => 'Plugin mit diesen Einstellungen generieren', 'speichern.4' => 'Einstellungen zurücksetzen', - 'request' => 'Mit welcher Methode soll MetaGer abgefragt werden', + 'request' => 'Abfragemethode', ]; diff --git a/resources/lang/en/settings.php b/resources/lang/en/settings.php index 0b55a5eab39fc5108e1d17c8166de86e976b046a..58b82b75e0a3c549348073f2437de3a3393a1844 100644 --- a/resources/lang/en/settings.php +++ b/resources/lang/en/settings.php @@ -1,29 +1,26 @@ <?php return [ - "head.1" => "Settings", - "head.2" => "Here you can customize your MetaGer: After selecting your desired settings, you have to choose, whether you want to save the settings permanently, or just for once, <a href=\"#unten\">on the bottom of this page.</a>", - "allgemein.1" => "General", - "allgemein.2" => "disable quotes", - "allgemein.3" => "open links in same tab", - "allgemein.4" => "select language:", - "allgemein.5" => "all languages", - "allgemein.6" => "german", - "allgemein.6_1" => "english", - "allgemein.7" => "number of results per page:", - "allgemein.8" => "all", - "zeit.1" => "maximum search time", - "zeit.2" => "1 second (standard)", - "zeit.3" => "2 seconds", - "zeit.4" => "5 seconds", - "zeit.5" => "10 seconds", - "zeit.6" => "20 seconds", - "suchmaschinen.1" => "search engines", - "suchmaschinen.2" => "(deselect all)", - "suchmaschinen.3" => "(select / deselect all)", - "speichern.1" => "Create a startpage for one-time use", - "speichern.2" => "Save settings permanently", - "speichern.3" => "Generate plugin with these settings", - "speichern.4" => "Reset saved settings", - "request" => "Which method should query MetaGer (GET, POST)?" -]; \ No newline at end of file + "head.1" => "Settings", + "head.2" => "Here you can customize your MetaGer: After selecting your desired settings, you have to choose, whether you want to save the settings permanently, or just for once, <a href=\"#unten\">on the bottom of this page.</a>", + "allgemein.1" => "General", + "allgemein.5" => "all languages", + "allgemein.6" => "german", + "allgemein.6_1" => "english", + "allgemein.7" => "number of results per page:", + "allgemein.8" => "all", + "zeit.1" => "maximum search time", + "zeit.2" => "1 second (standard)", + "zeit.3" => "2 seconds", + "zeit.4" => "5 seconds", + "zeit.5" => "10 seconds", + "zeit.6" => "20 seconds", + "suchmaschinen.1" => "search engines", + "suchmaschinen.2" => "(deselect all)", + "suchmaschinen.3" => "(select / deselect all)", + "speichern.1" => "Create a startpage for one-time use", + "speichern.2" => "Save settings permanently", + "speichern.3" => "Generate plugin with these settings", + "speichern.4" => "Reset saved settings", + "request" => "Which method should query MetaGer (GET, POST)?", +]; diff --git a/resources/views/index.blade.php b/resources/views/index.blade.php index e45812ea99cab91affae114f9199a8755387c2a9..5de35fb9294f8c416c5c29f75695a0d8ac2a6b4d 100644 --- a/resources/views/index.blade.php +++ b/resources/views/index.blade.php @@ -188,6 +188,7 @@ <input type="hidden" name="time" value={{ $time }} > <input type="hidden" name="sprueche" value={{ $sprueche }} > <input type="hidden" name="tab" value={{ $tab }} > + <input type="hidden" name="maps" value={{ $maps }} > @foreach ($focusPages as $fp) <input type="hidden" name={{ $fp }} value="on"> @endforeach diff --git a/resources/views/layouts/ad.blade.php b/resources/views/layouts/ad.blade.php index 5016b63d216eeb3021173e9123c0f0b44cc76936..48af348d40608b89f96005b19859bdf92d483d56 100644 --- a/resources/views/layouts/ad.blade.php +++ b/resources/views/layouts/ad.blade.php @@ -3,12 +3,12 @@ <div class="number col-sm-1"></div> <div class="resultInformation col-sm-10"> <p class="title"> - <a class="title" href="{{ $ad['link'] }}" target="{{ $metager->getTab() }}" data-hoster="{{ $ad['gefVon'] }}" data-count="0"> + <a class="title" href="{{ $ad['link'] }}" target="{{ $metager->getNewtab() }}" data-hoster="{{ $ad['gefVon'] }}" data-count="0"> {{ $ad['titel'] }} </a> </p> <p class="link"> - <a href="{{ $ad['link'] }}" target="{{ $metager->getTab() }}" data-hoster="{{ $ad['gefVon'] }}" data-count="0"> + <a href="{{ $ad['link'] }}" target="{{ $metager->getNewtab() }}" data-hoster="{{ $ad['gefVon'] }}" data-count="0"> {{ $ad['anzeigeLink'] }} </a> <span class="hoster"> diff --git a/resources/views/layouts/result.blade.php b/resources/views/layouts/result.blade.php index dd00f388c5e8d8dccc2b7ab983a42fbf1fa76a36..85840c551f634241ec4409ebc93caa2c10e4876f 100644 --- a/resources/views/layouts/result.blade.php +++ b/resources/views/layouts/result.blade.php @@ -5,14 +5,14 @@ <div class="resultInformation col-xs-12 col-sm-11"> <div class="col-xs-10 col-sm-11" style="padding:0; "> <p class="title"> - <a class="title" href="{{ $result->link }}" target="{{ $metager->getTab() }}" data-hoster="{{ strip_tags($result->gefVon) }}" data-count="{{ $result->number }}" rel="noopener"> + <a class="title" href="{{ $result->link }}" target="{{ $metager->getNewtab() }}" data-hoster="{{ strip_tags($result->gefVon) }}" data-count="{{ $result->number }}" rel="noopener"> {{ $result->titel }} </a> </p> <div class="link"> <div> <div class="link-link"> - <a href="{{ $result->link }}" target="{{ $metager->getTab() }}" data-hoster="{{ strip_tags($result->gefVon) }}" data-count="{{ $result->number }}" rel="noopener"> + <a href="{{ $result->link }}" target="{{ $metager->getNewtab() }}" data-hoster="{{ strip_tags($result->gefVon) }}" data-count="{{ $result->number }}" rel="noopener"> {{ $result->anzeigeLink }} </a> </div> @@ -54,7 +54,7 @@ <a href="{{ LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "/partnershops") }}" target="_blank" rel="noopener">{!! trans('result.options.4') !!}</a> </span> @endif - <a class="proxy" onmouseover="$(this).popover('show');" onmouseout="$(this).popover('hide');" data-toggle="popover" data-placement="auto right" data-container="body" data-content="@lang('result.proxytext')" href="{{ $result->proxyLink }}" target="{{ $metager->getTab() }}" rel="noopener"> + <a class="proxy" onmouseover="$(this).popover('show');" onmouseout="$(this).popover('hide');" data-toggle="popover" data-placement="auto right" data-container="body" data-content="@lang('result.proxytext')" href="{{ $result->proxyLink }}" target="{{ $metager->getNewtab() }}" rel="noopener"> <img src="/img/proxyicon.png" alt="" /> {!! trans('result.options.5') !!} </a> @@ -62,14 +62,14 @@ </div> @if( isset($result->logo) ) <div class="col-xs-2 col-sm-1" style="padding: 0;"> - <a href="{{ $result->link }}" target="{{ $metager->getTab() }}" data-hoster="{{ strip_tags($result->gefVon) }}" data-count="{{ $result->number }}"> + <a href="{{ $result->link }}" target="{{ $metager->getNewtab() }}" data-hoster="{{ strip_tags($result->gefVon) }}" data-count="{{ $result->number }}"> <img src="{{ $metager->getImageProxyLink($result->logo) }}" alt="" /> </a> </div> @endif @if( $result->image !== "" ) <div class="description"> - <a href="{{ $result->link }}" target="{{ $metager->getTab() }}" data-hoster="{{ strip_tags($result->gefVon) }}" data-count="{{ $result->number }}" rel="noopener"> + <a href="{{ $result->link }}" target="{{ $metager->getNewtab() }}" data-hoster="{{ strip_tags($result->gefVon) }}" data-count="{{ $result->number }}" rel="noopener"> <img src="{{ $metager->getImageProxyLink($result->image) }}" align="left" width="120px" height="60px" alt="" /> </a> {!! $result->descr !!} diff --git a/resources/views/metager3.blade.php b/resources/views/metager3.blade.php index eca063a573d1610d88ceef1b220efc62952f9da0..4932f39175b9ceca8c516f0fb77e1f0962d03c7d 100644 --- a/resources/views/metager3.blade.php +++ b/resources/views/metager3.blade.php @@ -32,12 +32,14 @@ @include('layouts.ad', ['ad' => $metager->popAd()]) @endfor @endif + @if($metager->getMaps()) <div class="result row" id="map"> <div class="number col-sm-1 hidden-xs"></div> <div class="resultInformation col-xs-12 col-sm-11"> <iframe class="" src="https://maps.metager.de/metager/{{ $metager->getQ() }}" style="width: 100%; height:0; border:0;"></iframe> </div> </div> + @endif @foreach($metager->getResults() as $result) @if($result->number % 7 === 0) @include('layouts.ad', ['ad' => $metager->popAd()]) diff --git a/resources/views/metager3bilder.blade.php b/resources/views/metager3bilder.blade.php index bf12c2a5746d20c59497aca134ab2c0a91bce538..7be2e357ccd3b36d305f2b2bb33d0f311492ed48 100644 --- a/resources/views/metager3bilder.blade.php +++ b/resources/views/metager3bilder.blade.php @@ -23,7 +23,7 @@ @foreach($metager->getResults() as $result) <div class="item"> <div class="img"> - <a href="{{ $result->link }}" target="{{ $metager->getTab() }}"><img src="{{ $metager->getImageProxyLink($result->image) }}" width="150px" alt="" rel="noopener"/></a> + <a href="{{ $result->link }}" target="{{ $metager->getNewtab() }}"><img src="{{ $metager->getImageProxyLink($result->image) }}" width="150px" alt="" rel="noopener"/></a> <span class="label label-default hostlabel">{!! $result->gefVon !!}</span> </div> </div> diff --git a/resources/views/metager3bilderresults.blade.php b/resources/views/metager3bilderresults.blade.php index 5e52f20859552406e7f7ff9d293603ce47b2665b..61ba9e4acaaa9775313099c249250549a92f14f3 100644 --- a/resources/views/metager3bilderresults.blade.php +++ b/resources/views/metager3bilderresults.blade.php @@ -20,7 +20,7 @@ @foreach($metager->getResults() as $result) <div class="item"> <div class="img"> - <a href="{{ $result->link }}" target="{{ $metager->getTab() }}"><img src="{{ $metager->getImageProxyLink($result->image) }}" width="150px" alt="" rel="noopener"/></a> + <a href="{{ $result->link }}" target="{{ $metager->getNewtab() }}"><img src="{{ $metager->getImageProxyLink($result->image) }}" width="150px" alt="" rel="noopener"/></a> <span class="label label-default hostlabel">{{ strip_tags($result->gefVon) }}</span> </div> </div> diff --git a/resources/views/metager3results.blade.php b/resources/views/metager3results.blade.php index 30bc3b26d355911b425273738c1570b183c2c8bd..e502c76e545861b565ce406ccbcd96f79f2664f7 100644 --- a/resources/views/metager3results.blade.php +++ b/resources/views/metager3results.blade.php @@ -25,12 +25,14 @@ @include('layouts.ad', ['ad' => $metager->popAd()]) @endfor @endif + @if($metager->getMaps()) <div class="result row" id="map"> <div class="number col-sm-1 hidden-xs"></div> <div class="resultInformation col-xs-12 col-sm-11"> <iframe class="" src="https://maps.metager.de/metager/{{ $metager->getQ() }}" style="width: 100%; height:0; border:0;"></iframe> </div> </div> + @endif @foreach($metager->getResults() as $result) @if($result->number % 7 === 0) @include('layouts.ad', ['ad' => $metager->popAd()]) diff --git a/resources/views/settings.blade.php b/resources/views/settings.blade.php index 8591c7db5990299d8964175bcadeea2001f4a011..4d713cc771a0dd7ba16e821ca0d874d90cc6554c 100644 --- a/resources/views/settings.blade.php +++ b/resources/views/settings.blade.php @@ -8,36 +8,68 @@ <p id="lead">{!! trans('settings.head.2') !!}</p> <h2>{!! trans('settings.allgemein.1') !!}</h2> <input type="hidden" name="focus" value="angepasst"> - <div class="checkbox settings-checkbox"> - <label><input type="checkbox" name="param_sprueche">{!! trans('settings.allgemein.2') !!}</label> - </div> - <div class="checkbox settings-checkbox"> - <label><input type="checkbox" name="param_tab">{!! trans('settings.allgemein.3') !!}</label> - </div> - <label class="select-label">{!! trans('settings.allgemein.4') !!}</label> - <select class="form-control settings-form-control" name="param_lang"> - <option value="all" @if(App::isLocale('de')) selected @endif >{!! trans('settings.allgemein.5') !!}</option> - <option value="de">{!! trans('settings.allgemein.6') !!}</option> - <option value="en" @if(App::isLocale('en')) selected @endif>{!! trans('settings.allgemein.6_1') !!}</option></select> - <label class="select-label">{!! trans('settings.allgemein.7') !!}</label> - <select class="form-control settings-form-control" name="param_resultCount"> - <option value="10">10</option> - <option value="20" selected>20</option> - <option value="50">50</option> - <option value="100">100</option> - <option value="0">{!! trans('settings.allgemein.8') !!}</option></select> - <label class="select-label">{!! trans('settings.zeit.1') !!}:</label> - <select class="form-control settings-form-control" name="param_time"> - <option value="1000" selected>{!! trans('settings.zeit.2') !!}</option> - <option value="2000">{!! trans('settings.zeit.3') !!}</option> - <option value="5000">{!! trans('settings.zeit.4') !!}</option> - <option value="10000">{!! trans('settings.zeit.5') !!}</option> - <option value="20000">{!! trans('settings.zeit.6') !!}</option></select> - <label class="select-label">{{ trans('settings.request') }}:</label> - <select class="form-control settings-form-control" name="request"> - <option value="GET" selected>GET</option> - <option value="POST">POST</option> - </select> + + <container> + <div class="row"> + <div class="col-sm-6 col-md-4 col-lg-3"> + <label class="select-label">@lang("settings.allgemein.2.1")</label> + <select class="form-control settings-form-control" name="param_sprueche"> + <option value="on" selected>@lang("settings.allgemein.2.2")</option> + <option value="off">@lang("settings.allgemein.2.3")</option> + </select> + </div> + <div class="col-sm-6 col-md-4 col-lg-3"> + <label class="select-label">@lang("settings.allgemein.3.1")</label> + <select class="form-control settings-form-control" name="param_maps"> + <option value="on" selected>@lang("settings.allgemein.3.2")</option> + <option value="off">@lang("settings.allgemein.3.3")</option> + </select> + </div> + <div class="col-sm-6 col-md-4 col-lg-3"> + <label class="select-label">@lang("settings.allgemein.4.1")</label> + <select class="form-control settings-form-control" name="param_newtab"> + <option value="on" selected>@lang("settings.allgemein.4.2")</option> + <option value="off">@lang("settings.allgemein.4.3")</option> + </select> + </div> + <div class="col-sm-6 col-md-4 col-lg-3"> + <label class="select-label">{!! trans('settings.allgemein.5') !!}</label> + <select class="form-control settings-form-control" name="param_lang"> + <option value="all" @if(App::isLocale('de')) selected @endif >{!! trans('settings.allgemein.6') !!}</option> + <option value="de">{!! trans('settings.allgemein.7') !!}</option> + <option value="en" @if(App::isLocale('en')) selected @endif>{!! trans('settings.allgemein.8') !!}</option> + </select> + </div> + <div class="col-sm-6 col-md-4 col-lg-3"> + <label class="select-label">{!! trans('settings.allgemein.9') !!}</label> + <select class="form-control settings-form-control" name="param_resultCount"> + <option value="10">10</option> + <option value="20" selected>20</option> + <option value="50">50</option> + <option value="100">100</option> + <option value="0">{!! trans('settings.allgemein.10') !!}</option> + </select> + </div> + <div class="col-sm-6 col-md-4 col-lg-3"> + <label class="select-label">{!! trans('settings.zeit.1') !!}:</label> + <select class="form-control settings-form-control" name="param_time"> + <option value="1000" selected>{!! trans('settings.zeit.2') !!}</option> + <option value="2000">{!! trans('settings.zeit.3') !!}</option> + <option value="5000">{!! trans('settings.zeit.4') !!}</option> + <option value="10000">{!! trans('settings.zeit.5') !!}</option> + <option value="20000">{!! trans('settings.zeit.6') !!}</option> + </select> + </div> + <div class="col-sm-6 col-md-4 col-lg-3"> + <label class="select-label">{{ trans('settings.request') }}:</label> + <select class="form-control settings-form-control" name="request"> + <option value="GET" selected>GET</option> + <option value="POST">POST</option> + </select> + </div> + </div> + </container> + <h2>{!! trans('settings.suchmaschinen.1') !!} <small><button type="button" class="btn btn-link allUnchecker">{!! trans('settings.suchmaschinen.2') !!}</button></small></h2> @foreach( $foki as $fokus => $sumas ) <div class="headingGroup {{ $fokus }}">