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/.gitlab-ci.yml b/.gitlab-ci.yml index 545757598a4b41c411a7bf7a684ea05acdf88eb9..7846555d6a4fd2476061675f30fec5cebf4cae78 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -7,7 +7,7 @@ update(144.76.113.134): # Abhängigkeiten überprüfen - which composer - which git - - which php7.0 + - which php - which sqlite3 script: # Pfad zum neu geklonten Repo @@ -24,16 +24,17 @@ update(144.76.113.134): - scp -P 63824 metager@metager3.de:~/blacklistDomains.txt config/ - touch storage/logs/laravel.log - touch storage/logs/worker.log + - touch database/metager.sqlite - chmod 777 config/sumas.xml config/sumasEn.xml database/metager.sqlite - chmod -R 777 storage - chmod -R 777 bootstrap/cache - npm install - npm run prodution + - php artisan migrate --force - if [ -f ~/MetaGer/artisan ]; then php ~/MetaGer/artisan down;fi - cd ~/ - while [ -d ~/MetaGer ]; do rm -rf ~/MetaGer;done - mv MetaGer_neu MetaGer - - php ~/MetaGer/artisan migrate --force - sudo pkill --signal SIGHUP supervisord - php ~/MetaGer/artisan up @@ -46,7 +47,7 @@ update(metager2): # Abhängigkeiten überprüfen - which composer - which git - - which php7.0 + - which php - which sqlite3 script: # Pfad zum neu geklonten Repo @@ -63,16 +64,17 @@ update(metager2): - scp -P 63824 metager@metager3.de:~/blacklistDomains.txt config/ - touch storage/logs/laravel.log - touch storage/logs/worker.log + - touch database/metager.sqlite - chmod 777 config/sumas.xml config/sumasEn.xml database/metager.sqlite - chmod -R 777 storage - chmod -R 777 bootstrap/cache - npm install - npm run prodution + - php artisan migrate --force - if [ -f ~/MetaGer/artisan ]; then php ~/MetaGer/artisan down;fi - cd ~/ - while [ -d ~/MetaGer ]; do rm -rf ~/MetaGer;done - mv MetaGer_neu MetaGer - - php ~/MetaGer/artisan migrate --force - sudo pkill --signal SIGHUP supervisord - php ~/MetaGer/artisan up @@ -85,7 +87,7 @@ update(metager3.de): # Abhängigkeiten überprüfen - which composer - which git - - which php7.0 + - which php - which sqlite3 script: # Pfad zum neu geklonten Repo @@ -102,15 +104,16 @@ update(metager3.de): - scp -P 63824 metager@metager3.de:~/blacklistDomains.txt config/ - touch storage/logs/laravel.log - touch storage/logs/worker.log + - touch database/metager.sqlite - chmod 777 config/sumas.xml config/sumasEn.xml database/metager.sqlite - chmod -R 777 storage - chmod -R 777 bootstrap/cache - npm install - - ./gulpbuild.sh + - npm run prodution + - php artisan migrate --force - if [ -f ~/MetaGer/artisan ]; then php ~/MetaGer/artisan down;fi - cd ~/ - while [ -d ~/MetaGer ]; do rm -rf ~/MetaGer;done - mv MetaGer_neu MetaGer - - php ~/MetaGer/artisan migrate --force - sudo pkill --signal SIGHUP supervisord - php ~/MetaGer/artisan up \ No newline at end of file diff --git a/app/Jobs/Searcher.php b/app/Jobs/Searcher.php index bd33d47bccd5324b94093b5191da4ea8d1ca490e..eb253a325b08cbcd645086cc7bc6db17a90c10c6 100644 --- a/app/Jobs/Searcher.php +++ b/app/Jobs/Searcher.php @@ -15,7 +15,11 @@ class Searcher implements ShouldQueue use InteractsWithQueue, Queueable, SerializesModels; protected $name, $ch, $pid, $counter, $lastTime, $connectionInfo; + # Each Searcher will shutdown after a specified time(s) or number of requests protected $MAX_REQUESTS = 100; + # This value should always be below the retry_after value in config/queue.php + protected $MAX_TIME = 240; + protected $startTime = null; protected $importantEngines = array("Fastbot", "overture", "overtureAds"); protected $recheck; @@ -35,6 +39,7 @@ class Searcher implements ShouldQueue $this->name = $name; $this->pid = getmypid(); $this->recheck = false; + $this->startTime = microtime(true); // Submit this worker to the Redis System Redis::expire($this->name, 5); } @@ -92,7 +97,9 @@ class Searcher implements ShouldQueue // In sync mode every Searcher may only retrieve one result because it would block // the execution of the remaining code otherwise: - if(getenv("QUEUE_DRIVER") === "sync" || $this->counter > $this->MAX_REQUESTS){ + if(getenv("QUEUE_DRIVER") === "sync" + || $this->counter > $this->MAX_REQUESTS + || (microtime(true)-$this->startTime) > $this->MAX_TIME){ break; } } diff --git a/app/MetaGer.php b/app/MetaGer.php index 20ae46d3508018763bb8673c94a975037f1b521b..f64af6e8b08695529228fe808c879ff7ca2cb66d 100644 --- a/app/MetaGer.php +++ b/app/MetaGer.php @@ -30,7 +30,6 @@ class MetaGer protected $engines = []; protected $results = []; protected $ads = []; - protected $products = []; protected $warnings = []; protected $errors = []; protected $addedHosts = []; @@ -38,6 +37,7 @@ class MetaGer protected $canCache = false; # Daten über die Abfrage$ protected $ip; + protected $useragent; protected $language; protected $agent; protected $apiKey = ""; @@ -295,7 +295,6 @@ class MetaGer if ($this->validated) { $this->ads = []; - $this->products = []; $this->maps = false; } @@ -380,9 +379,6 @@ class MetaGer foreach ($engine->ads as $ad) { $this->ads[] = $ad; } - foreach ($engine->products as $product) { - $this->products[] = $product; - } } } @@ -694,8 +690,7 @@ class MetaGer return $sumaName === "qualigo" || $sumaName === "similar_product_ads" - || (!$overtureEnabled && $sumaName === "overtureAds") - || $sumaName == "rlvproduct"; + || (!$overtureEnabled && $sumaName === "overtureAds"); } public function sumaIsDisabled($suma) @@ -784,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; } } @@ -944,6 +939,8 @@ class MetaGer # nicht einmal wir selbst noch Zugriff auf die Daten haben: $this->ip = preg_replace("/(\d+)\.(\d+)\.\d+.\d+/s", "$1.$2.0.0", $this->ip); + $this->useragent = $request->header('User-Agent'); + # Language if (isset($_SERVER['HTTP_LANGUAGE'])) { $this->language = $_SERVER['HTTP_LANGUAGE']; @@ -1061,40 +1058,52 @@ class MetaGer public function checkSpecialSearches(Request $request) { - if ($request->filled('site')) { - $site = $request->input('site'); - } else { - $site = ""; - } - - $this->searchCheckSitesearch($site); - $this->searchCheckHostBlacklist(); - $this->searchCheckDomainBlacklist(); + $this->searchCheckSitesearch($request); + $this->searchCheckHostBlacklist($request); + $this->searchCheckDomainBlacklist($request); $this->searchCheckUrlBlacklist(); $this->searchCheckPhrase(); - $this->searchCheckStopwords(); + $this->searchCheckStopwords($request); $this->searchCheckNoSearch(); } - private function searchCheckSitesearch($site) + private function searchCheckSitesearch($request) { // matches '[... ]site:test.de[ ...]' while (preg_match("/(^|.+\s)site:(\S+)(?:\s(.+)|($))/si", $this->q, $match)) { $this->site = $match[2]; $this->q = $match[1] . $match[3]; } - if ($site !== "") { - $this->site = $site; + # Overwrite Setting if it's submitted via Parameter + if ($request->has('site')) { + $this->site = $request->input('site'); } } - private function searchCheckHostBlacklist() + private function searchCheckHostBlacklist($request) { // matches '[... ]-site:test.de[ ...]' while (preg_match("/(^|.+\s)-site:([^\s\*]\S*)(?:\s(.+)|($))/si", $this->q, $match)) { $this->hostBlacklist[] = $match[2]; $this->q = $match[1] . $match[3]; } + # Overwrite Setting if it's submitted via Parameter + if($request->has('blacklist')){ + $this->hostBlacklist = []; + $blacklistString = trim($request->input('blacklist')); + if(strpos($blacklistString, ",") !== FALSE){ + $blacklistArray = explode(',', $blacklistString); + foreach($blacklistArray as $blacklistElement){ + $blacklistElement = trim($blacklistElement); + if(strpos($blacklistElement, "*") !== 0){ + $this->hostBlacklist[] = $blacklistElement; + } + } + }else if(strpos($blacklistString, "*") !== 0){ + $this->hostBlacklist[] = $blacklistString; + } + } + // print the host blacklist as a user warning if (sizeof($this->hostBlacklist) > 0) { $hostString = ""; @@ -1106,13 +1115,29 @@ class MetaGer } } - private function searchCheckDomainBlacklist() + private function searchCheckDomainBlacklist($request) { // matches '[... ]-site:*.test.de[ ...]' while (preg_match("/(^|.+\s)-site:\*\.(\S+)(?:\s(.+)|($))/si", $this->q, $match)) { $this->domainBlacklist[] = $match[2]; $this->q = $match[1] . $match[3]; } + # Overwrite Setting if it's submitted via Parameter + if($request->has('blacklist')){ + $this->domainBlacklist = []; + $blacklistString = trim($request->input('blacklist')); + if(strpos($blacklistString, ",") !== FALSE){ + $blacklistArray = explode(',', $blacklistString); + foreach($blacklistArray as $blacklistElement){ + $blacklistElement = trim($blacklistElement); + if(strpos($blacklistElement, "*.") === 0){ + $this->domainBlacklist[] = substr($blacklistElement, strpos($blacklistElement, "*.")+2); + } + } + }else if(strpos($blacklistString, "*.") === 0){ + $this->domainBlacklist[] = substr($blacklistString, strpos($blacklistString, "*.")+2); + } + } // print the domain blacklist as a user warning if (sizeof($this->domainBlacklist) > 0) { $domainString = ""; @@ -1142,13 +1167,27 @@ class MetaGer } } - private function searchCheckStopwords() + private function searchCheckStopwords($request) { // matches '[... ]-test[ ...]' while (preg_match("/(^|.+\s)-(\S+)(?:\s(.+)|($))/si", $this->q, $match)) { $this->stopWords[] = $match[2]; $this->q = $match[1] . $match[3]; } + # Overwrite Setting if submitted via Parameter + if($request->has('stop')){ + $this->stopWords = []; + $stop = trim($request->input('stop')); + if(strpos($stop, ',') !== FALSE){ + $stopArray = explode(',', $stop); + foreach($stopArray as $stopElement){ + $stopElement = trim($stopElement); + $this->stopWords[] = $stopElement; + } + }else{ + $this->stopWords[] = $stop; + } + } // print the stopwords as a user warning if (sizeof($this->stopWords) > 0) { $stopwordsString = ""; @@ -1248,24 +1287,6 @@ class MetaGer } } - public function hasProducts() - { - if (count($this->products) > 0) { - return true; - } else { - return false; - } - } - - public function getProducts() - { - $return = []; - foreach ($this->products as $product) { - $return[] = get_object_vars($product); - } - return $return; - } - public function canCache() { return $this->canCache; @@ -1457,6 +1478,11 @@ class MetaGer { return $this->ip; } + + public function getUserAgent() + { + return $this->useragent; + } public function getEingabe() { diff --git a/app/Models/Result.php b/app/Models/Result.php index b82962529a1de94c3347077734f47ef5755f534a..445c5180c653efdf771fbbe5715d2e6bcaaca765 100644 --- a/app/Models/Result.php +++ b/app/Models/Result.php @@ -13,7 +13,8 @@ class Result public $anzeigeLink; # Der tatsächlich angezeigte Link (rein optisch) public $descr; # Die eventuell gekürzte Beschreibung des Suchergebnisses public $longDescr; # Die ungekürzte Beschreibung des Suchergebnisses - public $gefVon; # Das bei Suchergebnissen angezeigte von ... mitsamt Verlinkung + public $gefVon; # Die Suchmaschine von der dieses Ergebnis stammt + public $gefVonLink; public $sourceRank; # Das Ranking für dieses Suchergebnis von der Seite, die es geliefert hat (implizit durch Ergebnisreihenfolge: 20 - Position in Ergebnisliste) public $partnershop; # Ist das Ergebnis von einem Partnershop? (bool) public $image; # Ein Vorschaubild für das Suchergebnis (als URL) @@ -28,7 +29,7 @@ class Result public $rank; # Das Ranking für das Ergebnis # Erstellt ein neues Ergebnis - public function __construct($provider, $titel, $link, $anzeigeLink, $descr, $gefVon, $sourceRank, $additionalInformation = []) + public function __construct($provider, $titel, $link, $anzeigeLink, $descr, $gefVon, $gefVonLink, $sourceRank, $additionalInformation = []) { $provider = simplexml_load_string($provider); $this->titel = strip_tags(trim($titel)); @@ -46,6 +47,7 @@ class Result } $this->gefVon = trim($gefVon); + $this->gefVonLink = trim($gefVonLink); $this->proxyLink = $this->generateProxyLink($this->link); $this->sourceRank = $sourceRank; if ($this->sourceRank <= 0 || $this->sourceRank > 20) { diff --git a/app/Models/Searchengine.php b/app/Models/Searchengine.php index c54d53eaa35979edabe8988458a5f0fe0f174a99..99985b494fe67fea76728740c3b72d57d7901643 100644 --- a/app/Models/Searchengine.php +++ b/app/Models/Searchengine.php @@ -23,7 +23,6 @@ abstract class Searchengine public $cached = false; public $ip; # Die IP aus der metager - public $gefVon; # Der HTML-Code für die Verlinkung des Suchanbieters public $uses; # Die Anzahl der Nutzungen dieser Suchmaschine public $homepage; # Die Homepage dieser Suchmaschine public $name; # Der Name dieser Suchmaschine @@ -69,9 +68,8 @@ abstract class Searchengine return; } - $this->useragent = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1"; + $this->useragent = $metager->getUserAgent(); $this->ip = $metager->getIp(); - $this->gefVon = $this->displayName; $this->startTime = microtime(); # Suchstring generieren @@ -242,7 +240,7 @@ abstract class Searchengine Cache::put($this->hash, $body, $this->cacheDuration); } } - if ($body !== "") { + if ($body !== "" && $body !== "connected" && $body !== "waiting") { $this->loadResults($body); $this->getNext($metager, $body); $this->loaded = true; @@ -335,9 +333,6 @@ abstract class Searchengine { $affil_data = 'ip=' . $this->ip; $affil_data .= '&ua=' . $this->useragent; - if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { - $affil_data .= '&xfip=' . $_SERVER['HTTP_X_FORWARDED_FOR']; - } $affilDataValue = $this->urlEncode($affil_data); # Wir benötigen die ServeUrl: $serveUrl = $this->urlEncode($url); diff --git a/app/Models/parserSkripte/Allesklar.php b/app/Models/parserSkripte/Allesklar.php index 2f5bb9e2c7f8dfc46fba1f8566eaae0a91931a12..7c7ca825af279b14823befe71796788308b85b3b 100644 --- a/app/Models/parserSkripte/Allesklar.php +++ b/app/Models/parserSkripte/Allesklar.php @@ -43,7 +43,7 @@ class Allesklar extends Searchengine $link, $link, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } catch (\Exception $e) { diff --git a/app/Models/parserSkripte/BASE.php b/app/Models/parserSkripte/BASE.php index 1ab7fe8cc59be1b2a21245419886d0952618d851..5ebbbf91340b12d18407ede036375a7b8ef0697c 100644 --- a/app/Models/parserSkripte/BASE.php +++ b/app/Models/parserSkripte/BASE.php @@ -49,7 +49,7 @@ class BASE extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Beammachine.php b/app/Models/parserSkripte/Beammachine.php index 2dd2355b7849bafff06d5a685a1beb7308245249..a37c2258c144bf647210962649d4207013ec9be2 100644 --- a/app/Models/parserSkripte/Beammachine.php +++ b/app/Models/parserSkripte/Beammachine.php @@ -34,7 +34,7 @@ class Beammachine extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Bing.php b/app/Models/parserSkripte/Bing.php index 5d94c4dc086a1c01fb4b3b16f23f87c66ff8cd46..af6ebc9fe882d9889349159903906f631163f430 100644 --- a/app/Models/parserSkripte/Bing.php +++ b/app/Models/parserSkripte/Bing.php @@ -32,7 +32,7 @@ class Bing extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); }); diff --git a/app/Models/parserSkripte/Bing_bilder.php b/app/Models/parserSkripte/Bing_bilder.php index 24b854814ff8f982f9bb3e946b81698e2597aacd..56dc4fd21ed1ff81bb938dab7bff5017cdf74f68 100644 --- a/app/Models/parserSkripte/Bing_bilder.php +++ b/app/Models/parserSkripte/Bing_bilder.php @@ -31,7 +31,7 @@ class Bing_bilder extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, ['image' => $image] ); diff --git a/app/Models/parserSkripte/Blogsearch.php b/app/Models/parserSkripte/Blogsearch.php index b35df83218003fa6fd24333f3f5cd8b5d2a5bf0d..ebe8bb006213f5e7053a67aea565f83734091b71 100644 --- a/app/Models/parserSkripte/Blogsearch.php +++ b/app/Models/parserSkripte/Blogsearch.php @@ -36,7 +36,7 @@ class Blogsearch extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Dailymotion.php b/app/Models/parserSkripte/Dailymotion.php index 2cc36d8d660542d253205db4de78d01e6ba78efa..d2a25e7f18c390e28733cb6600cc2e157165d8aa 100644 --- a/app/Models/parserSkripte/Dailymotion.php +++ b/app/Models/parserSkripte/Dailymotion.php @@ -37,7 +37,7 @@ class Dailymotion extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, ['partnershop' => false] ); diff --git a/app/Models/parserSkripte/Dart.php b/app/Models/parserSkripte/Dart.php index 86f601e7162a3f5755674ba8b123851d060b1678..b854d65cf496f3227e374aee4116ab4fea771c1e 100644 --- a/app/Models/parserSkripte/Dart.php +++ b/app/Models/parserSkripte/Dart.php @@ -57,7 +57,7 @@ class Dart extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Dmoznebel.php b/app/Models/parserSkripte/Dmoznebel.php index 09354fe7aa52da4884a9f9125a66605489c84c7a..6fb2878d2e4eaa7913c6730fb5404a37ae939101 100644 --- a/app/Models/parserSkripte/Dmoznebel.php +++ b/app/Models/parserSkripte/Dmoznebel.php @@ -36,7 +36,7 @@ class Dmoznebel extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Dmoznebel_int.php b/app/Models/parserSkripte/Dmoznebel_int.php index cf2702461d0ed6d206cbc43eeb2117ba4396eef2..b23e45ad9858ad71632207031841ca6276716673 100644 --- a/app/Models/parserSkripte/Dmoznebel_int.php +++ b/app/Models/parserSkripte/Dmoznebel_int.php @@ -28,7 +28,7 @@ class Dmoznebel_int extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Ebay.php b/app/Models/parserSkripte/Ebay.php index 1312083bc63cb1471010bd48c6a8261bed738a7c..34ce81907b2244b4dfe82226fb1847a78f5c532a 100644 --- a/app/Models/parserSkripte/Ebay.php +++ b/app/Models/parserSkripte/Ebay.php @@ -51,7 +51,7 @@ class Ebay extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, ['partnershop' => false, 'price' => $price, diff --git a/app/Models/parserSkripte/Ecoshopper.php b/app/Models/parserSkripte/Ecoshopper.php index 4bee36facb5d0a9781b9d3b6bbf8be048b2db617..e5c752a1673628093ccb4c3aa63f21952ae3fdb5 100644 --- a/app/Models/parserSkripte/Ecoshopper.php +++ b/app/Models/parserSkripte/Ecoshopper.php @@ -49,7 +49,7 @@ class Ecoshopper extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, ['partnershop' => false, 'image' => $image] diff --git a/app/Models/parserSkripte/Europeana.php b/app/Models/parserSkripte/Europeana.php index e61a6e70ffa5a07e7f7d1dbb8984fbe2fcac4d1d..5fe68369ed4b8dfd5e746f31cdc2de6cd85c910f 100644 --- a/app/Models/parserSkripte/Europeana.php +++ b/app/Models/parserSkripte/Europeana.php @@ -42,7 +42,7 @@ class Europeana extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, ['image' => $image] ); diff --git a/app/Models/parserSkripte/Exalead.php b/app/Models/parserSkripte/Exalead.php index 1d6694d4bf6480e2e00da6c48b81517c14a74582..7592ca1bccc63508bc95b15b17790051684b65f5 100644 --- a/app/Models/parserSkripte/Exalead.php +++ b/app/Models/parserSkripte/Exalead.php @@ -61,7 +61,7 @@ class Exalead extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } catch (\ErrorException $e) { diff --git a/app/Models/parserSkripte/Fairmondo.php b/app/Models/parserSkripte/Fairmondo.php index 4a5f6068ac52776144b67e0562743520ea463801..cbe480aa450f2a218e5edab367b2b0aacc991ed1 100644 --- a/app/Models/parserSkripte/Fairmondo.php +++ b/app/Models/parserSkripte/Fairmondo.php @@ -42,7 +42,7 @@ class Fairmondo extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, [ 'price' => $price, diff --git a/app/Models/parserSkripte/Fastbot.php b/app/Models/parserSkripte/Fastbot.php index 448b9cf07aac43bd5ee6d9df2963f60fdb34d14c..63a3a12c6e27f7239235df3f3a370b907dbe7359 100644 --- a/app/Models/parserSkripte/Fastbot.php +++ b/app/Models/parserSkripte/Fastbot.php @@ -38,7 +38,7 @@ class Fastbot extends Searchengine $link, $result[3], $result[2], - $this->gefVon, + $this->displayName,$this->homepage, $counter ); } diff --git a/app/Models/parserSkripte/Fernsehsuche.php b/app/Models/parserSkripte/Fernsehsuche.php index 1c9d7045760b3810869bdecafced642a5bb08eea..8773c3c4c0e63d5782c52da2dad8326963614cc6 100644 --- a/app/Models/parserSkripte/Fernsehsuche.php +++ b/app/Models/parserSkripte/Fernsehsuche.php @@ -38,7 +38,7 @@ class Fernsehsuche extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, ['image' => $image] ); diff --git a/app/Models/parserSkripte/Fess.php b/app/Models/parserSkripte/Fess.php index a691422439a4a0e263fd0f2e4bae4c43dd4ca6b9..c25a006bee160d44abfc1fbdacd312cf6ddb668f 100644 --- a/app/Models/parserSkripte/Fess.php +++ b/app/Models/parserSkripte/Fess.php @@ -37,7 +37,7 @@ class Fess extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } catch (\ErrorException $e) { diff --git a/app/Models/parserSkripte/Flickr.php b/app/Models/parserSkripte/Flickr.php index 4c6f53d4fb38508abb0713abf4213f2bf8e59c47..37be977e01d7882720c5152cb7ead36ac7c640f6 100644 --- a/app/Models/parserSkripte/Flickr.php +++ b/app/Models/parserSkripte/Flickr.php @@ -37,7 +37,7 @@ class Flickr extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, ['image' => $image] ); diff --git a/app/Models/parserSkripte/Goyax.php b/app/Models/parserSkripte/Goyax.php index 9c21a49525fc398f6395643ca8ec753ab77721b7..3ffe53aa9fc8e3ff0fefd7432c8d37042c12a12f 100644 --- a/app/Models/parserSkripte/Goyax.php +++ b/app/Models/parserSkripte/Goyax.php @@ -31,7 +31,7 @@ class Goyax extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); }); diff --git a/app/Models/parserSkripte/Loklak.php b/app/Models/parserSkripte/Loklak.php index 04d005eafce7ff4572e2eb7e164aca6a7645f132..deae65cda496322006a08aae619799828ceaccbb 100644 --- a/app/Models/parserSkripte/Loklak.php +++ b/app/Models/parserSkripte/Loklak.php @@ -35,7 +35,7 @@ class Loklak extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Mg_hochsch_de.php b/app/Models/parserSkripte/Mg_hochsch_de.php index 6914c8100b5d464864975de4882c9b07f097184e..2f86369ba6142dd30597c5090a942dfa5db8daf2 100644 --- a/app/Models/parserSkripte/Mg_hochsch_de.php +++ b/app/Models/parserSkripte/Mg_hochsch_de.php @@ -34,7 +34,7 @@ class Mg_hochsch_de extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Mg_produkt2.php b/app/Models/parserSkripte/Mg_produkt2.php index 8d22633d3acd76ac37c1e0b91f3931cf65b1378c..9ac2a37c94233b55b6d0aed99da22b70407d975e 100644 --- a/app/Models/parserSkripte/Mg_produkt2.php +++ b/app/Models/parserSkripte/Mg_produkt2.php @@ -42,7 +42,7 @@ class Mg_produkt2 extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, ['image' => $image] ); diff --git a/app/Models/parserSkripte/Mnogosearch.php b/app/Models/parserSkripte/Mnogosearch.php index 43f2ed81aac47f09d892fb47cbabc5f39465ec7e..9998be59ce8e70ad86217fcace3f28def0bb3283 100644 --- a/app/Models/parserSkripte/Mnogosearch.php +++ b/app/Models/parserSkripte/Mnogosearch.php @@ -39,7 +39,7 @@ class Mnogosearch extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); }); diff --git a/app/Models/parserSkripte/Nebel.php b/app/Models/parserSkripte/Nebel.php index d78e604defa02f3d2d46902e3261727bcaaebce1..34b0e085b38f40363fa9548dca2504e7d452d1a6 100644 --- a/app/Models/parserSkripte/Nebel.php +++ b/app/Models/parserSkripte/Nebel.php @@ -34,7 +34,7 @@ class Nebel extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Onenewspage.php b/app/Models/parserSkripte/Onenewspage.php index 009a2006608320d699dcd928983c669a6de96178..a6dbc68b7939556c0cdab22246ea36b1c9e6e0b7 100644 --- a/app/Models/parserSkripte/Onenewspage.php +++ b/app/Models/parserSkripte/Onenewspage.php @@ -37,7 +37,7 @@ class Onenewspage extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, $additionalInformation ); diff --git a/app/Models/parserSkripte/Onenewspagegermany.php b/app/Models/parserSkripte/Onenewspagegermany.php index 624bd77e42e1cf017efe5cf6338e8e97fe28cdec..1aaa97a75c609dde96729024d14c64e0be0c95de 100644 --- a/app/Models/parserSkripte/Onenewspagegermany.php +++ b/app/Models/parserSkripte/Onenewspagegermany.php @@ -40,7 +40,7 @@ class Onenewspagegermany extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, $additionalInformation ); diff --git a/app/Models/parserSkripte/Onenewspagevideo.php b/app/Models/parserSkripte/Onenewspagevideo.php index ee260caad6d04652f150350b00c35b298fa1aa9e..f70170f205f98ceed4ede56398fe4cc6409f4824 100644 --- a/app/Models/parserSkripte/Onenewspagevideo.php +++ b/app/Models/parserSkripte/Onenewspagevideo.php @@ -36,7 +36,7 @@ class Onenewspagevideo extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, $additionalInformation ); diff --git a/app/Models/parserSkripte/Openclipart.php b/app/Models/parserSkripte/Openclipart.php index 74d10fdb4b19fd6c7cb9954b5ea2a978152a8187..cb9a335cacd9c37dc0d59f693b56db471650b9c6 100644 --- a/app/Models/parserSkripte/Openclipart.php +++ b/app/Models/parserSkripte/Openclipart.php @@ -37,7 +37,7 @@ class Openclipart extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, ['image' => $image] ); diff --git a/app/Models/parserSkripte/Opencrawlastronomie.php b/app/Models/parserSkripte/Opencrawlastronomie.php index 0ffc5439c45476152effa7d08458ca9e1ded4696..82c3124ae0081f5824e794d2710e77bd3c875972 100644 --- a/app/Models/parserSkripte/Opencrawlastronomie.php +++ b/app/Models/parserSkripte/Opencrawlastronomie.php @@ -41,7 +41,7 @@ class Opencrawlastronomie extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); $count++; diff --git a/app/Models/parserSkripte/Opencrawlpolitik.php b/app/Models/parserSkripte/Opencrawlpolitik.php index bc6ab7ca65f4700c694c9a627286d061d8cf91c8..1ac681d72a65e0428a9f085afe7d0df5390c8286 100644 --- a/app/Models/parserSkripte/Opencrawlpolitik.php +++ b/app/Models/parserSkripte/Opencrawlpolitik.php @@ -49,7 +49,7 @@ class Opencrawlpolitik extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, $additionalInformation ); diff --git a/app/Models/parserSkripte/Opencrawlregengergie.php b/app/Models/parserSkripte/Opencrawlregengergie.php index 726d0fe388b3a9c7ba6d148821a0fb5f3af1b3ae..94963e6985b8d7406fb2b215c9559dddc84709c2 100644 --- a/app/Models/parserSkripte/Opencrawlregengergie.php +++ b/app/Models/parserSkripte/Opencrawlregengergie.php @@ -41,7 +41,7 @@ class Opencrawlregengergie extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); $count++; diff --git a/app/Models/parserSkripte/Overture.php b/app/Models/parserSkripte/Overture.php index 60a82a51218bd7e9a6575cb7120614050c13a170..1cd0b69a9d577382cbe2886bed7e5313a44eba76 100644 --- a/app/Models/parserSkripte/Overture.php +++ b/app/Models/parserSkripte/Overture.php @@ -36,7 +36,7 @@ class Overture extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } @@ -55,7 +55,7 @@ class Overture extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/OvertureAds.php b/app/Models/parserSkripte/OvertureAds.php index 386330eee74a9224558489370eca5e53b02bea4d..35bdcde119166e541e87154d463e94ce62b69a6b 100644 --- a/app/Models/parserSkripte/OvertureAds.php +++ b/app/Models/parserSkripte/OvertureAds.php @@ -35,7 +35,7 @@ class OvertureAds extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Pixabay.php b/app/Models/parserSkripte/Pixabay.php index 6f620ca5ca5210c6fd2044e8dff85b1903d38df9..a6e9716e2050861551b19c11aaffd609b7f0dbab 100644 --- a/app/Models/parserSkripte/Pixabay.php +++ b/app/Models/parserSkripte/Pixabay.php @@ -37,7 +37,7 @@ class Pixabay extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter, ['image' => $image] ); diff --git a/app/Models/parserSkripte/Qip.php b/app/Models/parserSkripte/Qip.php index 0fd5f08734d2c31b5b9184e2569f8cb1513b4915..f06db08d555ba6c92c8cb3693d08e120370c0c30 100644 --- a/app/Models/parserSkripte/Qip.php +++ b/app/Models/parserSkripte/Qip.php @@ -36,7 +36,7 @@ class Qip extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Qualigo.php b/app/Models/parserSkripte/Qualigo.php index ff240f80268227b8e3fa3a0521ede039f0c4d786..6cec3158c076fa7337bdee5adf75b7c410efb2eb 100644 --- a/app/Models/parserSkripte/Qualigo.php +++ b/app/Models/parserSkripte/Qualigo.php @@ -36,7 +36,7 @@ class Qualigo extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Radiobrowser.php b/app/Models/parserSkripte/Radiobrowser.php index 075cd447bbdf773f7486c07feca55fce657109ec..8c1391b6dce9d24d879e4a645f4ac4d84d1c6990 100644 --- a/app/Models/parserSkripte/Radiobrowser.php +++ b/app/Models/parserSkripte/Radiobrowser.php @@ -50,7 +50,7 @@ class Radiobrowser extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Rlvproduct.php b/app/Models/parserSkripte/Rlvproduct.php deleted file mode 100644 index e3cca849ccdf9e9ad96394d898edba7877b3b364..0000000000000000000000000000000000000000 --- a/app/Models/parserSkripte/Rlvproduct.php +++ /dev/null @@ -1,41 +0,0 @@ -products[] = new \App\Models\Result( - $this->engine, - $result["productTitle"], - $result["shopLink"], - $result["shopLink"], - "", - $result["shopTitle"], - $counter, - ['partnershop' => false, - 'price' => $result["price"], - 'image' => $image, - 'shipping' => $result["distribution"]] - ); - } - } -} diff --git a/app/Models/parserSkripte/Similar_product.php b/app/Models/parserSkripte/Similar_product.php index 4a583402912ab85169b93ae7146c04561ead915f..7e8d1755824200433ed9ece8cf06256658cfa933 100644 --- a/app/Models/parserSkripte/Similar_product.php +++ b/app/Models/parserSkripte/Similar_product.php @@ -30,7 +30,7 @@ class Similar_product extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Similar_product_ads.php b/app/Models/parserSkripte/Similar_product_ads.php index a8d1f42c28192a014bf69aae5128394bbff6a888..c3b2e50aa9f41a8486f3d8251f856856842c3421 100644 --- a/app/Models/parserSkripte/Similar_product_ads.php +++ b/app/Models/parserSkripte/Similar_product_ads.php @@ -34,7 +34,7 @@ class Similar_product_ads extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Suchticker.php b/app/Models/parserSkripte/Suchticker.php index 14b004deeec2158836bd53c3770d10f63f32716b..04be4238b872a1594f2312f00d13fad592b0ce6a 100644 --- a/app/Models/parserSkripte/Suchticker.php +++ b/app/Models/parserSkripte/Suchticker.php @@ -34,7 +34,7 @@ class Suchticker extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Tuhh.php b/app/Models/parserSkripte/Tuhh.php index 568a71aa9d518bc655c35f0ec7b2d5054ebbbe6c..57be5d54a78f405ed05087321e2b5e8f4a53b08c 100644 --- a/app/Models/parserSkripte/Tuhh.php +++ b/app/Models/parserSkripte/Tuhh.php @@ -40,7 +40,7 @@ class Tuhh extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); $count++; diff --git a/app/Models/parserSkripte/Wikipedia.php b/app/Models/parserSkripte/Wikipedia.php index f1fdd6ecf7fd6e70e1d97b138445a677b31aa78d..c975bc4876d8388354552d1c3a02e1b701f77f5a 100644 --- a/app/Models/parserSkripte/Wikipedia.php +++ b/app/Models/parserSkripte/Wikipedia.php @@ -24,7 +24,7 @@ class Wikipedia extends Searchengine $link, $result[3], $result[2], - $this->gefVon, + $this->displayName,$this->homepage, $counter ); } diff --git a/app/Models/parserSkripte/Witch.php b/app/Models/parserSkripte/Witch.php index 70e49ba418a174a036b155a222274b1e0239072f..1d058f46038bfdb218f8848dbde838c81b757f8c 100644 --- a/app/Models/parserSkripte/Witch.php +++ b/app/Models/parserSkripte/Witch.php @@ -37,7 +37,7 @@ class Witch extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Yacy.php b/app/Models/parserSkripte/Yacy.php index 37b0ce821f7f7ead742bf38e043b0b9cc86ee0de..833fe5e0381e7b946745333fd6e366fae421135a 100644 --- a/app/Models/parserSkripte/Yacy.php +++ b/app/Models/parserSkripte/Yacy.php @@ -36,7 +36,7 @@ class Yacy extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Yacyunih.php b/app/Models/parserSkripte/Yacyunih.php index ed8fe9595a0d42d0a9b07fe7a9db054526d54521..d6ef93b0a43cc34d504be69e225e3ae8ff8a9681 100644 --- a/app/Models/parserSkripte/Yacyunih.php +++ b/app/Models/parserSkripte/Yacyunih.php @@ -43,7 +43,7 @@ class Yacyunih extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); $count++; diff --git a/app/Models/parserSkripte/Yandex.php b/app/Models/parserSkripte/Yandex.php index 3169de7e6b81479bd580d47f15a25adad93203e2..b15b5bfcf9d00626b6b7ab04f12bef1157552082 100644 --- a/app/Models/parserSkripte/Yandex.php +++ b/app/Models/parserSkripte/Yandex.php @@ -48,7 +48,7 @@ class Yandex extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/app/Models/parserSkripte/Zeitde.php b/app/Models/parserSkripte/Zeitde.php index 2a2f51619f89a1b09733812a99a6f357661f8830..467ba7d7f4ff40176f913b76119a7003ac4b7408 100644 --- a/app/Models/parserSkripte/Zeitde.php +++ b/app/Models/parserSkripte/Zeitde.php @@ -38,7 +38,7 @@ class Zeitde extends Searchengine $link, $anzeigeLink, $descr, - $this->gefVon, + $this->displayName,$this->homepage, $this->counter ); } diff --git a/composer.lock b/composer.lock deleted file mode 100644 index 522c13df82932110b96fb00e700d9ef7599d9409..0000000000000000000000000000000000000000 --- a/composer.lock +++ /dev/null @@ -1,4216 +0,0 @@ -{ - "_readme": [ - "This file locks the dependencies of your project to a known state", - "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", - "This file is @generated automatically" - ], - "content-hash": "27d7554c4cf4ca03f97a076d1628bd02", - "packages": [ - { - "name": "doctrine/inflector", - "version": "v1.3.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/inflector.git", - "reference": "5527a48b7313d15261292c149e55e26eae771b0a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/inflector/zipball/5527a48b7313d15261292c149e55e26eae771b0a", - "reference": "5527a48b7313d15261292c149e55e26eae771b0a", - "shasum": "" - }, - "require": { - "php": "^7.1" - }, - "require-dev": { - "phpunit/phpunit": "^6.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Doctrine\\Common\\Inflector\\": "lib/Doctrine/Common/Inflector" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "Common String Manipulations with regard to casing and singular/plural rules.", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "inflection", - "pluralize", - "singularize", - "string" - ], - "time": "2018-01-09T20:05:19+00:00" - }, - { - "name": "doctrine/lexer", - "version": "v1.0.1", - "source": { - "type": "git", - "url": "https://github.com/doctrine/lexer.git", - "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c", - "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-0": { - "Doctrine\\Common\\Lexer\\": "lib/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", - "homepage": "http://www.doctrine-project.org", - "keywords": [ - "lexer", - "parser" - ], - "time": "2014-09-09T13:34:57+00:00" - }, - { - "name": "egulias/email-validator", - "version": "2.1.3", - "source": { - "type": "git", - "url": "https://github.com/egulias/EmailValidator.git", - "reference": "1bec00a10039b823cc94eef4eddd47dcd3b2ca04" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/1bec00a10039b823cc94eef4eddd47dcd3b2ca04", - "reference": "1bec00a10039b823cc94eef4eddd47dcd3b2ca04", - "shasum": "" - }, - "require": { - "doctrine/lexer": "^1.0.1", - "php": ">= 5.5" - }, - "require-dev": { - "dominicsayers/isemail": "dev-master", - "phpunit/phpunit": "^4.8.35", - "satooshi/php-coveralls": "^1.0.1" - }, - "suggest": { - "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Egulias\\EmailValidator\\": "EmailValidator" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Eduardo Gulias Davis" - } - ], - "description": "A library for validating emails against several RFCs", - "homepage": "https://github.com/egulias/EmailValidator", - "keywords": [ - "email", - "emailvalidation", - "emailvalidator", - "validation", - "validator" - ], - "time": "2017-11-15T23:40:40+00:00" - }, - { - "name": "erusev/parsedown", - "version": "1.6.4", - "source": { - "type": "git", - "url": "https://github.com/erusev/parsedown.git", - "reference": "fbe3fe878f4fe69048bb8a52783a09802004f548" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/erusev/parsedown/zipball/fbe3fe878f4fe69048bb8a52783a09802004f548", - "reference": "fbe3fe878f4fe69048bb8a52783a09802004f548", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.35" - }, - "type": "library", - "autoload": { - "psr-0": { - "Parsedown": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Emanuil Rusev", - "email": "hello@erusev.com", - "homepage": "http://erusev.com" - } - ], - "description": "Parser for Markdown.", - "homepage": "http://parsedown.org", - "keywords": [ - "markdown", - "parser" - ], - "time": "2017-11-14T20:44:03+00:00" - }, - { - "name": "fideloper/proxy", - "version": "3.3.4", - "source": { - "type": "git", - "url": "https://github.com/fideloper/TrustedProxy.git", - "reference": "9cdf6f118af58d89764249bbcc7bb260c132924f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/9cdf6f118af58d89764249bbcc7bb260c132924f", - "reference": "9cdf6f118af58d89764249bbcc7bb260c132924f", - "shasum": "" - }, - "require": { - "illuminate/contracts": "~5.0", - "php": ">=5.4.0" - }, - "require-dev": { - "illuminate/http": "~5.0", - "mockery/mockery": "~0.9.3", - "phpunit/phpunit": "^5.7" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.3-dev" - }, - "laravel": { - "providers": [ - "Fideloper\\Proxy\\TrustedProxyServiceProvider" - ] - } - }, - "autoload": { - "psr-4": { - "Fideloper\\Proxy\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Chris Fidao", - "email": "fideloper@gmail.com" - } - ], - "description": "Set trusted proxies for Laravel", - "keywords": [ - "load balancing", - "proxy", - "trusted proxy" - ], - "time": "2017-06-15T17:19:42+00:00" - }, - { - "name": "guzzlehttp/guzzle", - "version": "6.3.0", - "source": { - "type": "git", - "url": "https://github.com/guzzle/guzzle.git", - "reference": "f4db5a78a5ea468d4831de7f0bf9d9415e348699" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/guzzle/zipball/f4db5a78a5ea468d4831de7f0bf9d9415e348699", - "reference": "f4db5a78a5ea468d4831de7f0bf9d9415e348699", - "shasum": "" - }, - "require": { - "guzzlehttp/promises": "^1.0", - "guzzlehttp/psr7": "^1.4", - "php": ">=5.5" - }, - "require-dev": { - "ext-curl": "*", - "phpunit/phpunit": "^4.0 || ^5.0", - "psr/log": "^1.0" - }, - "suggest": { - "psr/log": "Required for using the Log middleware" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "6.2-dev" - } - }, - "autoload": { - "files": [ - "src/functions_include.php" - ], - "psr-4": { - "GuzzleHttp\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } - ], - "description": "Guzzle is a PHP HTTP client library", - "homepage": "http://guzzlephp.org/", - "keywords": [ - "client", - "curl", - "framework", - "http", - "http client", - "rest", - "web service" - ], - "time": "2017-06-22T18:50:49+00:00" - }, - { - "name": "guzzlehttp/promises", - "version": "v1.3.1", - "source": { - "type": "git", - "url": "https://github.com/guzzle/promises.git", - "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/promises/zipball/a59da6cf61d80060647ff4d3eb2c03a2bc694646", - "reference": "a59da6cf61d80060647ff4d3eb2c03a2bc694646", - "shasum": "" - }, - "require": { - "php": ">=5.5.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4-dev" - } - }, - "autoload": { - "psr-4": { - "GuzzleHttp\\Promise\\": "src/" - }, - "files": [ - "src/functions_include.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } - ], - "description": "Guzzle promises library", - "keywords": [ - "promise" - ], - "time": "2016-12-20T10:07:11+00:00" - }, - { - "name": "guzzlehttp/psr7", - "version": "1.4.2", - "source": { - "type": "git", - "url": "https://github.com/guzzle/psr7.git", - "reference": "f5b8a8512e2b58b0071a7280e39f14f72e05d87c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/f5b8a8512e2b58b0071a7280e39f14f72e05d87c", - "reference": "f5b8a8512e2b58b0071a7280e39f14f72e05d87c", - "shasum": "" - }, - "require": { - "php": ">=5.4.0", - "psr/http-message": "~1.0" - }, - "provide": { - "psr/http-message-implementation": "1.0" - }, - "require-dev": { - "phpunit/phpunit": "~4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4-dev" - } - }, - "autoload": { - "psr-4": { - "GuzzleHttp\\Psr7\\": "src/" - }, - "files": [ - "src/functions_include.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - }, - { - "name": "Tobias Schultze", - "homepage": "https://github.com/Tobion" - } - ], - "description": "PSR-7 message implementation that also provides common utility methods", - "keywords": [ - "http", - "message", - "request", - "response", - "stream", - "uri", - "url" - ], - "time": "2017-03-20T17:10:46+00:00" - }, - { - "name": "jaybizzle/crawler-detect", - "version": "v1.2.58", - "source": { - "type": "git", - "url": "https://github.com/JayBizzle/Crawler-Detect.git", - "reference": "2f1502a434baad1da0fa43c3f3e2b09504fa6b81" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/JayBizzle/Crawler-Detect/zipball/2f1502a434baad1da0fa43c3f3e2b09504fa6b81", - "reference": "2f1502a434baad1da0fa43c3f3e2b09504fa6b81", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "require-dev": { - "phpunit/phpunit": "4.8.*", - "satooshi/php-coveralls": "1.*" - }, - "type": "library", - "autoload": { - "psr-4": { - "Jaybizzle\\CrawlerDetect\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mark Beech", - "email": "m@rkbee.ch", - "role": "Developer" - } - ], - "description": "CrawlerDetect is a PHP class for detecting bots/crawlers/spiders via the user agent", - "homepage": "https://github.com/JayBizzle/Crawler-Detect/", - "keywords": [ - "crawler", - "crawler detect", - "crawler detector", - "crawlerdetect", - "php crawler detect" - ], - "time": "2018-02-03T12:01:03+00:00" - }, - { - "name": "jenssegers/agent", - "version": "v2.6.0", - "source": { - "type": "git", - "url": "https://github.com/jenssegers/agent.git", - "reference": "df71082ed2a95fc8a82ba30832ccf72df939f02a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/jenssegers/agent/zipball/df71082ed2a95fc8a82ba30832ccf72df939f02a", - "reference": "df71082ed2a95fc8a82ba30832ccf72df939f02a", - "shasum": "" - }, - "require": { - "jaybizzle/crawler-detect": "^1.2", - "mobiledetect/mobiledetectlib": "^2.7.6", - "php": ">=5.4.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.0|^5.0|^6.0", - "satooshi/php-coveralls": "^1.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - }, - "laravel": { - "providers": [ - "Jenssegers\\Agent\\AgentServiceProvider" - ], - "aliases": { - "Agent": "Jenssegers\\Agent\\Facades\\Agent" - } - } - }, - "autoload": { - "psr-4": { - "Jenssegers\\Agent\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jens Segers", - "homepage": "https://jenssegers.com" - } - ], - "description": "Desktop/mobile user agent parser with support for Laravel, based on Mobiledetect", - "homepage": "https://github.com/jenssegers/agent", - "keywords": [ - "Agent", - "browser", - "desktop", - "laravel", - "mobile", - "platform", - "user agent", - "useragent" - ], - "time": "2017-11-10T10:35:35+00:00" - }, - { - "name": "laravel/framework", - "version": "v5.5.33", - "source": { - "type": "git", - "url": "https://github.com/laravel/framework.git", - "reference": "ef7880e665390f999f4def7c9f78133636f973cf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/ef7880e665390f999f4def7c9f78133636f973cf", - "reference": "ef7880e665390f999f4def7c9f78133636f973cf", - "shasum": "" - }, - "require": { - "doctrine/inflector": "~1.1", - "erusev/parsedown": "~1.6", - "ext-mbstring": "*", - "ext-openssl": "*", - "league/flysystem": "~1.0", - "monolog/monolog": "~1.12", - "mtdowling/cron-expression": "~1.0", - "nesbot/carbon": "~1.20", - "php": ">=7.0", - "psr/container": "~1.0", - "psr/simple-cache": "^1.0", - "ramsey/uuid": "~3.0", - "swiftmailer/swiftmailer": "~6.0", - "symfony/console": "~3.3", - "symfony/debug": "~3.3", - "symfony/finder": "~3.3", - "symfony/http-foundation": "~3.3", - "symfony/http-kernel": "~3.3", - "symfony/process": "~3.3", - "symfony/routing": "~3.3", - "symfony/var-dumper": "~3.3", - "tijsverkoyen/css-to-inline-styles": "~2.2", - "vlucas/phpdotenv": "~2.2" - }, - "replace": { - "illuminate/auth": "self.version", - "illuminate/broadcasting": "self.version", - "illuminate/bus": "self.version", - "illuminate/cache": "self.version", - "illuminate/config": "self.version", - "illuminate/console": "self.version", - "illuminate/container": "self.version", - "illuminate/contracts": "self.version", - "illuminate/cookie": "self.version", - "illuminate/database": "self.version", - "illuminate/encryption": "self.version", - "illuminate/events": "self.version", - "illuminate/filesystem": "self.version", - "illuminate/hashing": "self.version", - "illuminate/http": "self.version", - "illuminate/log": "self.version", - "illuminate/mail": "self.version", - "illuminate/notifications": "self.version", - "illuminate/pagination": "self.version", - "illuminate/pipeline": "self.version", - "illuminate/queue": "self.version", - "illuminate/redis": "self.version", - "illuminate/routing": "self.version", - "illuminate/session": "self.version", - "illuminate/support": "self.version", - "illuminate/translation": "self.version", - "illuminate/validation": "self.version", - "illuminate/view": "self.version", - "tightenco/collect": "self.version" - }, - "require-dev": { - "aws/aws-sdk-php": "~3.0", - "doctrine/dbal": "~2.5", - "filp/whoops": "^2.1.4", - "mockery/mockery": "~1.0", - "orchestra/testbench-core": "3.5.*", - "pda/pheanstalk": "~3.0", - "phpunit/phpunit": "~6.0", - "predis/predis": "^1.1.1", - "symfony/css-selector": "~3.3", - "symfony/dom-crawler": "~3.3" - }, - "suggest": { - "aws/aws-sdk-php": "Required to use the SQS queue driver and SES mail driver (~3.0).", - "doctrine/dbal": "Required to rename columns and drop SQLite columns (~2.5).", - "ext-pcntl": "Required to use all features of the queue worker.", - "ext-posix": "Required to use all features of the queue worker.", - "fzaninotto/faker": "Required to use the eloquent factory builder (~1.4).", - "guzzlehttp/guzzle": "Required to use the Mailgun and Mandrill mail drivers and the ping methods on schedules (~6.0).", - "laravel/tinker": "Required to use the tinker console command (~1.0).", - "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (~1.0).", - "league/flysystem-cached-adapter": "Required to use Flysystem caching (~1.0).", - "league/flysystem-rackspace": "Required to use the Flysystem Rackspace driver (~1.0).", - "nexmo/client": "Required to use the Nexmo transport (~1.0).", - "pda/pheanstalk": "Required to use the beanstalk queue driver (~3.0).", - "predis/predis": "Required to use the redis cache and queue drivers (~1.0).", - "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (~3.0).", - "symfony/css-selector": "Required to use some of the crawler integration testing tools (~3.3).", - "symfony/dom-crawler": "Required to use most of the crawler integration testing tools (~3.3).", - "symfony/psr-http-message-bridge": "Required to psr7 bridging features (~1.0)." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.5-dev" - } - }, - "autoload": { - "files": [ - "src/Illuminate/Foundation/helpers.php", - "src/Illuminate/Support/helpers.php" - ], - "psr-4": { - "Illuminate\\": "src/Illuminate/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Taylor Otwell", - "email": "taylor@laravel.com" - } - ], - "description": "The Laravel Framework.", - "homepage": "https://laravel.com", - "keywords": [ - "framework", - "laravel" - ], - "time": "2018-01-30T15:06:13+00:00" - }, - { - "name": "league/flysystem", - "version": "1.0.42", - "source": { - "type": "git", - "url": "https://github.com/thephpleague/flysystem.git", - "reference": "09eabc54e199950041aef258a85847676496fe8e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/09eabc54e199950041aef258a85847676496fe8e", - "reference": "09eabc54e199950041aef258a85847676496fe8e", - "shasum": "" - }, - "require": { - "php": ">=5.5.9" - }, - "conflict": { - "league/flysystem-sftp": "<1.0.6" - }, - "require-dev": { - "ext-fileinfo": "*", - "phpspec/phpspec": "^3.4", - "phpunit/phpunit": "^5.7" - }, - "suggest": { - "ext-fileinfo": "Required for MimeType", - "ext-ftp": "Allows you to use FTP server storage", - "ext-openssl": "Allows you to use FTPS server storage", - "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2", - "league/flysystem-aws-s3-v3": "Allows you to use S3 storage with AWS SDK v3", - "league/flysystem-azure": "Allows you to use Windows Azure Blob storage", - "league/flysystem-cached-adapter": "Flysystem adapter decorator for metadata caching", - "league/flysystem-eventable-filesystem": "Allows you to use EventableFilesystem", - "league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files", - "league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib", - "league/flysystem-webdav": "Allows you to use WebDAV storage", - "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter", - "spatie/flysystem-dropbox": "Allows you to use Dropbox storage", - "srmklive/flysystem-dropbox-v2": "Allows you to use Dropbox storage for PHP 5 applications" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.1-dev" - } - }, - "autoload": { - "psr-4": { - "League\\Flysystem\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Frank de Jonge", - "email": "info@frenky.net" - } - ], - "description": "Filesystem abstraction: Many filesystems, one API.", - "keywords": [ - "Cloud Files", - "WebDAV", - "abstraction", - "aws", - "cloud", - "copy.com", - "dropbox", - "file systems", - "files", - "filesystem", - "filesystems", - "ftp", - "rackspace", - "remote", - "s3", - "sftp", - "storage" - ], - "time": "2018-01-27T16:03:56+00:00" - }, - { - "name": "mcamara/laravel-localization", - "version": "v1.3.4", - "source": { - "type": "git", - "url": "https://github.com/mcamara/laravel-localization.git", - "reference": "fc2188a82611507f85f2219664b0d789f3d38212" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mcamara/laravel-localization/zipball/fc2188a82611507f85f2219664b0d789f3d38212", - "reference": "fc2188a82611507f85f2219664b0d789f3d38212", - "shasum": "" - }, - "require": { - "laravel/framework": "~5.2||~5.3||~5.4||~5.5", - "php": ">=7.0.0" - }, - "require-dev": { - "orchestra/testbench-browser-kit": "~3.4", - "phpunit/phpunit": "6.0.*" - }, - "suggest": { - "ext-intl": "*" - }, - "type": "library", - "extra": { - "laravel": { - "providers": [ - "Mcamara\\LaravelLocalization\\LaravelLocalizationServiceProvider" - ], - "aliases": { - "LaravelLocalization": "Mcamara\\LaravelLocalization\\Facades\\LaravelLocalization" - } - } - }, - "autoload": { - "classmap": [], - "psr-0": { - "Mcamara\\LaravelLocalization": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marc Cámara", - "email": "mcamara88@gmail.com", - "role": "Developer" - } - ], - "description": "Easy localization for Laravel", - "homepage": "https://github.com/mcamara/laravel-localization", - "keywords": [ - "laravel", - "localization", - "php" - ], - "time": "2018-01-23T15:10:21+00:00" - }, - { - "name": "mobiledetect/mobiledetectlib", - "version": "2.8.30", - "source": { - "type": "git", - "url": "https://github.com/serbanghita/Mobile-Detect.git", - "reference": "5500bbbf312fe77ef0c7223858dad84fe49ee0c3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/serbanghita/Mobile-Detect/zipball/5500bbbf312fe77ef0c7223858dad84fe49ee0c3", - "reference": "5500bbbf312fe77ef0c7223858dad84fe49ee0c3", - "shasum": "" - }, - "require": { - "php": ">=5.0.0" - }, - "require-dev": { - "phpunit/phpunit": "~4.8.35||~5.7" - }, - "type": "library", - "autoload": { - "classmap": [ - "Mobile_Detect.php" - ], - "psr-0": { - "Detection": "namespaced/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Serban Ghita", - "email": "serbanghita@gmail.com", - "homepage": "http://mobiledetect.net", - "role": "Developer" - } - ], - "description": "Mobile_Detect is a lightweight PHP class for detecting mobile devices. It uses the User-Agent string combined with specific HTTP headers to detect the mobile environment.", - "homepage": "https://github.com/serbanghita/Mobile-Detect", - "keywords": [ - "detect mobile devices", - "mobile", - "mobile detect", - "mobile detector", - "php mobile detect" - ], - "time": "2017-12-18T10:38:51+00:00" - }, - { - "name": "monolog/monolog", - "version": "1.23.0", - "source": { - "type": "git", - "url": "https://github.com/Seldaek/monolog.git", - "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/fd8c787753b3a2ad11bc60c063cff1358a32a3b4", - "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4", - "shasum": "" - }, - "require": { - "php": ">=5.3.0", - "psr/log": "~1.0" - }, - "provide": { - "psr/log-implementation": "1.0.0" - }, - "require-dev": { - "aws/aws-sdk-php": "^2.4.9 || ^3.0", - "doctrine/couchdb": "~1.0@dev", - "graylog2/gelf-php": "~1.0", - "jakub-onderka/php-parallel-lint": "0.9", - "php-amqplib/php-amqplib": "~2.4", - "php-console/php-console": "^3.1.3", - "phpunit/phpunit": "~4.5", - "phpunit/phpunit-mock-objects": "2.3.0", - "ruflin/elastica": ">=0.90 <3.0", - "sentry/sentry": "^0.13", - "swiftmailer/swiftmailer": "^5.3|^6.0" - }, - "suggest": { - "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", - "doctrine/couchdb": "Allow sending log messages to a CouchDB server", - "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)", - "ext-mongo": "Allow sending log messages to a MongoDB server", - "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", - "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver", - "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", - "php-console/php-console": "Allow sending log messages to Google Chrome", - "rollbar/rollbar": "Allow sending log messages to Rollbar", - "ruflin/elastica": "Allow sending log messages to an Elastic Search server", - "sentry/sentry": "Allow sending log messages to a Sentry server" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Monolog\\": "src/Monolog" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" - } - ], - "description": "Sends your logs to files, sockets, inboxes, databases and various web services", - "homepage": "http://github.com/Seldaek/monolog", - "keywords": [ - "log", - "logging", - "psr-3" - ], - "time": "2017-06-19T01:22:40+00:00" - }, - { - "name": "mtdowling/cron-expression", - "version": "v1.2.1", - "source": { - "type": "git", - "url": "https://github.com/mtdowling/cron-expression.git", - "reference": "9504fa9ea681b586028adaaa0877db4aecf32bad" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mtdowling/cron-expression/zipball/9504fa9ea681b586028adaaa0877db4aecf32bad", - "reference": "9504fa9ea681b586028adaaa0877db4aecf32bad", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "require-dev": { - "phpunit/phpunit": "~4.0|~5.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Cron\\": "src/Cron/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Michael Dowling", - "email": "mtdowling@gmail.com", - "homepage": "https://github.com/mtdowling" - } - ], - "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", - "keywords": [ - "cron", - "schedule" - ], - "time": "2017-01-23T04:29:33+00:00" - }, - { - "name": "nesbot/carbon", - "version": "1.22.1", - "source": { - "type": "git", - "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "7cdf42c0b1cc763ab7e4c33c47a24e27c66bfccc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/7cdf42c0b1cc763ab7e4c33c47a24e27c66bfccc", - "reference": "7cdf42c0b1cc763ab7e4c33c47a24e27c66bfccc", - "shasum": "" - }, - "require": { - "php": ">=5.3.0", - "symfony/translation": "~2.6 || ~3.0" - }, - "require-dev": { - "friendsofphp/php-cs-fixer": "~2", - "phpunit/phpunit": "~4.0 || ~5.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.23-dev" - } - }, - "autoload": { - "psr-4": { - "Carbon\\": "src/Carbon/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Brian Nesbitt", - "email": "brian@nesbot.com", - "homepage": "http://nesbot.com" - } - ], - "description": "A simple API extension for DateTime.", - "homepage": "http://carbon.nesbot.com", - "keywords": [ - "date", - "datetime", - "time" - ], - "time": "2017-01-16T07:55:07+00:00" - }, - { - "name": "paragonie/random_compat", - "version": "v2.0.11", - "source": { - "type": "git", - "url": "https://github.com/paragonie/random_compat.git", - "reference": "5da4d3c796c275c55f057af5a643ae297d96b4d8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/5da4d3c796c275c55f057af5a643ae297d96b4d8", - "reference": "5da4d3c796c275c55f057af5a643ae297d96b4d8", - "shasum": "" - }, - "require": { - "php": ">=5.2.0" - }, - "require-dev": { - "phpunit/phpunit": "4.*|5.*" - }, - "suggest": { - "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." - }, - "type": "library", - "autoload": { - "files": [ - "lib/random.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Paragon Initiative Enterprises", - "email": "security@paragonie.com", - "homepage": "https://paragonie.com" - } - ], - "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", - "keywords": [ - "csprng", - "pseudorandom", - "random" - ], - "time": "2017-09-27T21:40:39+00:00" - }, - { - "name": "piwik/piwik-php-tracker", - "version": "1.4.0", - "source": { - "type": "git", - "url": "https://github.com/piwik/piwik-php-tracker.git", - "reference": "f9a0168c87f01f2d5de95029a1ba0d1fd6c3d5ab" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/piwik/piwik-php-tracker/zipball/f9a0168c87f01f2d5de95029a1ba0d1fd6c3d5ab", - "reference": "f9a0168c87f01f2d5de95029a1ba0d1fd6c3d5ab", - "shasum": "" - }, - "type": "library", - "autoload": { - "classmap": [ - "." - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-2-Clause" - ], - "authors": [ - { - "name": "The Piwik Team", - "email": "hello@piwik.org", - "homepage": "http://piwik.org/the-piwik-team/" - } - ], - "description": "PHP Client for Piwik Analytics Tracking API", - "homepage": "http://piwik.org", - "keywords": [ - "analytics", - "piwik", - "tracker" - ], - "time": "2017-11-09T03:20:23+00:00" - }, - { - "name": "predis/predis", - "version": "v1.1.1", - "source": { - "type": "git", - "url": "https://github.com/nrk/predis.git", - "reference": "f0210e38881631afeafb56ab43405a92cafd9fd1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nrk/predis/zipball/f0210e38881631afeafb56ab43405a92cafd9fd1", - "reference": "f0210e38881631afeafb56ab43405a92cafd9fd1", - "shasum": "" - }, - "require": { - "php": ">=5.3.9" - }, - "require-dev": { - "phpunit/phpunit": "~4.8" - }, - "suggest": { - "ext-curl": "Allows access to Webdis when paired with phpiredis", - "ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol" - }, - "type": "library", - "autoload": { - "psr-4": { - "Predis\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Daniele Alessandri", - "email": "suppakilla@gmail.com", - "homepage": "http://clorophilla.net" - } - ], - "description": "Flexible and feature-complete Redis client for PHP and HHVM", - "homepage": "http://github.com/nrk/predis", - "keywords": [ - "nosql", - "predis", - "redis" - ], - "time": "2016-06-16T16:22:20+00:00" - }, - { - "name": "psr/container", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/container.git", - "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", - "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Container\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common Container Interface (PHP FIG PSR-11)", - "homepage": "https://github.com/php-fig/container", - "keywords": [ - "PSR-11", - "container", - "container-interface", - "container-interop", - "psr" - ], - "time": "2017-02-14T16:28:37+00:00" - }, - { - "name": "psr/http-message", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/php-fig/http-message.git", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", - "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Http\\Message\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interface for HTTP messages", - "homepage": "https://github.com/php-fig/http-message", - "keywords": [ - "http", - "http-message", - "psr", - "psr-7", - "request", - "response" - ], - "time": "2016-08-06T14:39:51+00:00" - }, - { - "name": "psr/log", - "version": "1.0.2", - "source": { - "type": "git", - "url": "https://github.com/php-fig/log.git", - "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", - "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Log\\": "Psr/Log/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interface for logging libraries", - "homepage": "https://github.com/php-fig/log", - "keywords": [ - "log", - "psr", - "psr-3" - ], - "time": "2016-10-10T12:19:37+00:00" - }, - { - "name": "psr/simple-cache", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/simple-cache.git", - "reference": "753fa598e8f3b9966c886fe13f370baa45ef0e24" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/753fa598e8f3b9966c886fe13f370baa45ef0e24", - "reference": "753fa598e8f3b9966c886fe13f370baa45ef0e24", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\SimpleCache\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interfaces for simple caching", - "keywords": [ - "cache", - "caching", - "psr", - "psr-16", - "simple-cache" - ], - "time": "2017-01-02T13:31:39+00:00" - }, - { - "name": "ramsey/uuid", - "version": "3.7.3", - "source": { - "type": "git", - "url": "https://github.com/ramsey/uuid.git", - "reference": "44abcdad877d9a46685a3a4d221e3b2c4b87cb76" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/ramsey/uuid/zipball/44abcdad877d9a46685a3a4d221e3b2c4b87cb76", - "reference": "44abcdad877d9a46685a3a4d221e3b2c4b87cb76", - "shasum": "" - }, - "require": { - "paragonie/random_compat": "^1.0|^2.0", - "php": "^5.4 || ^7.0" - }, - "replace": { - "rhumsaa/uuid": "self.version" - }, - "require-dev": { - "codeception/aspect-mock": "^1.0 | ~2.0.0", - "doctrine/annotations": "~1.2.0", - "goaop/framework": "1.0.0-alpha.2 | ^1.0 | ^2.1", - "ircmaxell/random-lib": "^1.1", - "jakub-onderka/php-parallel-lint": "^0.9.0", - "mockery/mockery": "^0.9.9", - "moontoast/math": "^1.1", - "php-mock/php-mock-phpunit": "^0.3|^1.1", - "phpunit/phpunit": "^4.7|^5.0", - "squizlabs/php_codesniffer": "^2.3" - }, - "suggest": { - "ext-libsodium": "Provides the PECL libsodium extension for use with the SodiumRandomGenerator", - "ext-uuid": "Provides the PECL UUID extension for use with the PeclUuidTimeGenerator and PeclUuidRandomGenerator", - "ircmaxell/random-lib": "Provides RandomLib for use with the RandomLibAdapter", - "moontoast/math": "Provides support for converting UUID to 128-bit integer (in string form).", - "ramsey/uuid-console": "A console application for generating UUIDs with ramsey/uuid", - "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Ramsey\\Uuid\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marijn Huizendveld", - "email": "marijn.huizendveld@gmail.com" - }, - { - "name": "Thibaud Fabre", - "email": "thibaud@aztech.io" - }, - { - "name": "Ben Ramsey", - "email": "ben@benramsey.com", - "homepage": "https://benramsey.com" - } - ], - "description": "Formerly rhumsaa/uuid. A PHP 5.4+ library for generating RFC 4122 version 1, 3, 4, and 5 universally unique identifiers (UUID).", - "homepage": "https://github.com/ramsey/uuid", - "keywords": [ - "guid", - "identifier", - "uuid" - ], - "time": "2018-01-20T00:28:24+00:00" - }, - { - "name": "swiftmailer/swiftmailer", - "version": "v6.0.2", - "source": { - "type": "git", - "url": "https://github.com/swiftmailer/swiftmailer.git", - "reference": "412333372fb6c8ffb65496a2bbd7321af75733fc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/412333372fb6c8ffb65496a2bbd7321af75733fc", - "reference": "412333372fb6c8ffb65496a2bbd7321af75733fc", - "shasum": "" - }, - "require": { - "egulias/email-validator": "~2.0", - "php": ">=7.0.0" - }, - "require-dev": { - "mockery/mockery": "~0.9.1", - "symfony/phpunit-bridge": "~3.3@dev" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "6.0-dev" - } - }, - "autoload": { - "files": [ - "lib/swift_required.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Chris Corbyn" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - } - ], - "description": "Swiftmailer, free feature-rich PHP mailer", - "homepage": "http://swiftmailer.symfony.com", - "keywords": [ - "email", - "mail", - "mailer" - ], - "time": "2017-09-30T22:39:41+00:00" - }, - { - "name": "symfony/console", - "version": "v3.4.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/console.git", - "reference": "26b6f419edda16c19775211987651cb27baea7f1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/26b6f419edda16c19775211987651cb27baea7f1", - "reference": "26b6f419edda16c19775211987651cb27baea7f1", - "shasum": "" - }, - "require": { - "php": "^5.5.9|>=7.0.8", - "symfony/debug": "~2.8|~3.0|~4.0", - "symfony/polyfill-mbstring": "~1.0" - }, - "conflict": { - "symfony/dependency-injection": "<3.4", - "symfony/process": "<3.3" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~3.3|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/event-dispatcher": "~2.8|~3.0|~4.0", - "symfony/lock": "~3.4|~4.0", - "symfony/process": "~3.3|~4.0" - }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.4-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Console\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Console Component", - "homepage": "https://symfony.com", - "time": "2018-01-29T09:03:43+00:00" - }, - { - "name": "symfony/css-selector", - "version": "v3.1.10", - "source": { - "type": "git", - "url": "https://github.com/symfony/css-selector.git", - "reference": "722a87478a72d95dc2a3bcf41dc9c2d13fd4cb2d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/722a87478a72d95dc2a3bcf41dc9c2d13fd4cb2d", - "reference": "722a87478a72d95dc2a3bcf41dc9c2d13fd4cb2d", - "shasum": "" - }, - "require": { - "php": ">=5.5.9" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\CssSelector\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jean-François Simon", - "email": "jeanfrancois.simon@sensiolabs.com" - }, - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony CssSelector Component", - "homepage": "https://symfony.com", - "time": "2017-01-02T20:31:54+00:00" - }, - { - "name": "symfony/debug", - "version": "v3.4.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/debug.git", - "reference": "53f6af2805daf52a43b393b93d2f24925d35c937" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/53f6af2805daf52a43b393b93d2f24925d35c937", - "reference": "53f6af2805daf52a43b393b93d2f24925d35c937", - "shasum": "" - }, - "require": { - "php": "^5.5.9|>=7.0.8", - "psr/log": "~1.0" - }, - "conflict": { - "symfony/http-kernel": ">=2.3,<2.3.24|~2.4.0|>=2.5,<2.5.9|>=2.6,<2.6.2" - }, - "require-dev": { - "symfony/http-kernel": "~2.8|~3.0|~4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.4-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Debug\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Debug Component", - "homepage": "https://symfony.com", - "time": "2018-01-18T22:16:57+00:00" - }, - { - "name": "symfony/event-dispatcher", - "version": "v4.0.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "74d33aac36208c4d6757807d9f598f0133a3a4eb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/74d33aac36208c4d6757807d9f598f0133a3a4eb", - "reference": "74d33aac36208c4d6757807d9f598f0133a3a4eb", - "shasum": "" - }, - "require": { - "php": "^7.1.3" - }, - "conflict": { - "symfony/dependency-injection": "<3.4" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~3.4|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/expression-language": "~3.4|~4.0", - "symfony/stopwatch": "~3.4|~4.0" - }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\EventDispatcher\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony EventDispatcher Component", - "homepage": "https://symfony.com", - "time": "2018-01-03T07:38:00+00:00" - }, - { - "name": "symfony/finder", - "version": "v3.4.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/finder.git", - "reference": "613e26310776f49a1773b6737c6bd554b8bc8c6f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/613e26310776f49a1773b6737c6bd554b8bc8c6f", - "reference": "613e26310776f49a1773b6737c6bd554b8bc8c6f", - "shasum": "" - }, - "require": { - "php": "^5.5.9|>=7.0.8" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.4-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Finder\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Finder Component", - "homepage": "https://symfony.com", - "time": "2018-01-03T07:37:34+00:00" - }, - { - "name": "symfony/http-foundation", - "version": "v3.4.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-foundation.git", - "reference": "8c39071ac9cc7e6d8dab1d556c990dc0d2cc3d30" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/8c39071ac9cc7e6d8dab1d556c990dc0d2cc3d30", - "reference": "8c39071ac9cc7e6d8dab1d556c990dc0d2cc3d30", - "shasum": "" - }, - "require": { - "php": "^5.5.9|>=7.0.8", - "symfony/polyfill-mbstring": "~1.1", - "symfony/polyfill-php70": "~1.6" - }, - "require-dev": { - "symfony/expression-language": "~2.8|~3.0|~4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.4-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\HttpFoundation\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony HttpFoundation Component", - "homepage": "https://symfony.com", - "time": "2018-01-29T09:03:43+00:00" - }, - { - "name": "symfony/http-kernel", - "version": "v3.4.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/http-kernel.git", - "reference": "911d2e5dd4beb63caad9a72e43857de984301907" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/911d2e5dd4beb63caad9a72e43857de984301907", - "reference": "911d2e5dd4beb63caad9a72e43857de984301907", - "shasum": "" - }, - "require": { - "php": "^5.5.9|>=7.0.8", - "psr/log": "~1.0", - "symfony/debug": "~2.8|~3.0|~4.0", - "symfony/event-dispatcher": "~2.8|~3.0|~4.0", - "symfony/http-foundation": "^3.4.4|^4.0.4" - }, - "conflict": { - "symfony/config": "<2.8", - "symfony/dependency-injection": "<3.4", - "symfony/var-dumper": "<3.3", - "twig/twig": "<1.34|<2.4,>=2" - }, - "provide": { - "psr/log-implementation": "1.0" - }, - "require-dev": { - "psr/cache": "~1.0", - "symfony/browser-kit": "~2.8|~3.0|~4.0", - "symfony/class-loader": "~2.8|~3.0", - "symfony/config": "~2.8|~3.0|~4.0", - "symfony/console": "~2.8|~3.0|~4.0", - "symfony/css-selector": "~2.8|~3.0|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/dom-crawler": "~2.8|~3.0|~4.0", - "symfony/expression-language": "~2.8|~3.0|~4.0", - "symfony/finder": "~2.8|~3.0|~4.0", - "symfony/process": "~2.8|~3.0|~4.0", - "symfony/routing": "~3.4|~4.0", - "symfony/stopwatch": "~2.8|~3.0|~4.0", - "symfony/templating": "~2.8|~3.0|~4.0", - "symfony/translation": "~2.8|~3.0|~4.0", - "symfony/var-dumper": "~3.3|~4.0" - }, - "suggest": { - "symfony/browser-kit": "", - "symfony/config": "", - "symfony/console": "", - "symfony/dependency-injection": "", - "symfony/finder": "", - "symfony/var-dumper": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.4-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\HttpKernel\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony HttpKernel Component", - "homepage": "https://symfony.com", - "time": "2018-01-29T12:29:46+00:00" - }, - { - "name": "symfony/polyfill-mbstring", - "version": "v1.7.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "78be803ce01e55d3491c1397cf1c64beb9c1b63b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/78be803ce01e55d3491c1397cf1c64beb9c1b63b", - "reference": "78be803ce01e55d3491c1397cf1c64beb9c1b63b", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "suggest": { - "ext-mbstring": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.7-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - }, - "files": [ - "bootstrap.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for the Mbstring extension", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "mbstring", - "polyfill", - "portable", - "shim" - ], - "time": "2018-01-30T19:27:44+00:00" - }, - { - "name": "symfony/polyfill-php70", - "version": "v1.7.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php70.git", - "reference": "3532bfcd8f933a7816f3a0a59682fc404776600f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/3532bfcd8f933a7816f3a0a59682fc404776600f", - "reference": "3532bfcd8f933a7816f3a0a59682fc404776600f", - "shasum": "" - }, - "require": { - "paragonie/random_compat": "~1.0|~2.0", - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.7-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php70\\": "" - }, - "files": [ - "bootstrap.php" - ], - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "time": "2018-01-30T19:27:44+00:00" - }, - { - "name": "symfony/process", - "version": "v3.4.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/process.git", - "reference": "09a5172057be8fc677840e591b17f385e58c7c0d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/09a5172057be8fc677840e591b17f385e58c7c0d", - "reference": "09a5172057be8fc677840e591b17f385e58c7c0d", - "shasum": "" - }, - "require": { - "php": "^5.5.9|>=7.0.8" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.4-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Process\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Process Component", - "homepage": "https://symfony.com", - "time": "2018-01-29T09:03:43+00:00" - }, - { - "name": "symfony/routing", - "version": "v3.4.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/routing.git", - "reference": "235d01730d553a97732990588407eaf6779bb4b2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/235d01730d553a97732990588407eaf6779bb4b2", - "reference": "235d01730d553a97732990588407eaf6779bb4b2", - "shasum": "" - }, - "require": { - "php": "^5.5.9|>=7.0.8" - }, - "conflict": { - "symfony/config": "<2.8", - "symfony/dependency-injection": "<3.3", - "symfony/yaml": "<3.4" - }, - "require-dev": { - "doctrine/annotations": "~1.0", - "doctrine/common": "~2.2", - "psr/log": "~1.0", - "symfony/config": "~2.8|~3.0|~4.0", - "symfony/dependency-injection": "~3.3|~4.0", - "symfony/expression-language": "~2.8|~3.0|~4.0", - "symfony/http-foundation": "~2.8|~3.0|~4.0", - "symfony/yaml": "~3.4|~4.0" - }, - "suggest": { - "doctrine/annotations": "For using the annotation loader", - "symfony/config": "For using the all-in-one router or any loader", - "symfony/dependency-injection": "For loading routes from a service", - "symfony/expression-language": "For using expression matching", - "symfony/http-foundation": "For using a Symfony Request object", - "symfony/yaml": "For using the YAML loader" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.4-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Routing\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Routing Component", - "homepage": "https://symfony.com", - "keywords": [ - "router", - "routing", - "uri", - "url" - ], - "time": "2018-01-16T18:03:57+00:00" - }, - { - "name": "symfony/translation", - "version": "v3.4.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/translation.git", - "reference": "10b32cf0eae28b9b39fe26c456c42b19854c4b84" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/10b32cf0eae28b9b39fe26c456c42b19854c4b84", - "reference": "10b32cf0eae28b9b39fe26c456c42b19854c4b84", - "shasum": "" - }, - "require": { - "php": "^5.5.9|>=7.0.8", - "symfony/polyfill-mbstring": "~1.0" - }, - "conflict": { - "symfony/config": "<2.8", - "symfony/dependency-injection": "<3.4", - "symfony/yaml": "<3.4" - }, - "require-dev": { - "psr/log": "~1.0", - "symfony/config": "~2.8|~3.0|~4.0", - "symfony/dependency-injection": "~3.4|~4.0", - "symfony/finder": "~2.8|~3.0|~4.0", - "symfony/intl": "^2.8.18|^3.2.5|~4.0", - "symfony/yaml": "~3.4|~4.0" - }, - "suggest": { - "psr/log": "To use logging capability in translator", - "symfony/config": "", - "symfony/yaml": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.4-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\Translation\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony Translation Component", - "homepage": "https://symfony.com", - "time": "2018-01-18T22:16:57+00:00" - }, - { - "name": "symfony/var-dumper", - "version": "v3.4.4", - "source": { - "type": "git", - "url": "https://github.com/symfony/var-dumper.git", - "reference": "472a9849930cf21f73abdb02240f17cf5b5bd1a7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/472a9849930cf21f73abdb02240f17cf5b5bd1a7", - "reference": "472a9849930cf21f73abdb02240f17cf5b5bd1a7", - "shasum": "" - }, - "require": { - "php": "^5.5.9|>=7.0.8", - "symfony/polyfill-mbstring": "~1.0" - }, - "conflict": { - "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0" - }, - "require-dev": { - "ext-iconv": "*", - "twig/twig": "~1.34|~2.4" - }, - "suggest": { - "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", - "ext-intl": "To show region name in time zone dump", - "ext-symfony_debug": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.4-dev" - } - }, - "autoload": { - "files": [ - "Resources/functions/dump.php" - ], - "psr-4": { - "Symfony\\Component\\VarDumper\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony mechanism for exploring and dumping PHP variables", - "homepage": "https://symfony.com", - "keywords": [ - "debug", - "dump" - ], - "time": "2018-01-29T09:03:43+00:00" - }, - { - "name": "tijsverkoyen/css-to-inline-styles", - "version": "2.2.1", - "source": { - "type": "git", - "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", - "reference": "0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757", - "reference": "0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757", - "shasum": "" - }, - "require": { - "php": "^5.5 || ^7.0", - "symfony/css-selector": "^2.7 || ^3.0 || ^4.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.2.x-dev" - } - }, - "autoload": { - "psr-4": { - "TijsVerkoyen\\CssToInlineStyles\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Tijs Verkoyen", - "email": "css_to_inline_styles@verkoyen.eu", - "role": "Developer" - } - ], - "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", - "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", - "time": "2017-11-27T11:13:29+00:00" - }, - { - "name": "vlucas/phpdotenv", - "version": "v2.4.0", - "source": { - "type": "git", - "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "3cc116adbe4b11be5ec557bf1d24dc5e3a21d18c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/3cc116adbe4b11be5ec557bf1d24dc5e3a21d18c", - "reference": "3cc116adbe4b11be5ec557bf1d24dc5e3a21d18c", - "shasum": "" - }, - "require": { - "php": ">=5.3.9" - }, - "require-dev": { - "phpunit/phpunit": "^4.8 || ^5.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.4-dev" - } - }, - "autoload": { - "psr-4": { - "Dotenv\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause-Attribution" - ], - "authors": [ - { - "name": "Vance Lucas", - "email": "vance@vancelucas.com", - "homepage": "http://www.vancelucas.com" - } - ], - "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", - "keywords": [ - "dotenv", - "env", - "environment" - ], - "time": "2016-09-01T10:05:43+00:00" - } - ], - "packages-dev": [ - { - "name": "doctrine/instantiator", - "version": "1.1.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "185b8868aa9bf7159f5f953ed5afb2d7fcdc3bda" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/185b8868aa9bf7159f5f953ed5afb2d7fcdc3bda", - "reference": "185b8868aa9bf7159f5f953ed5afb2d7fcdc3bda", - "shasum": "" - }, - "require": { - "php": "^7.1" - }, - "require-dev": { - "athletic/athletic": "~0.1.8", - "ext-pdo": "*", - "ext-phar": "*", - "phpunit/phpunit": "^6.2.3", - "squizlabs/php_codesniffer": "^3.0.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2.x-dev" - } - }, - "autoload": { - "psr-4": { - "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "http://ocramius.github.com/" - } - ], - "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://github.com/doctrine/instantiator", - "keywords": [ - "constructor", - "instantiate" - ], - "time": "2017-07-22T11:58:36+00:00" - }, - { - "name": "filp/whoops", - "version": "2.1.14", - "source": { - "type": "git", - "url": "https://github.com/filp/whoops.git", - "reference": "c6081b8838686aa04f1e83ba7e91f78b7b2a23e6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/c6081b8838686aa04f1e83ba7e91f78b7b2a23e6", - "reference": "c6081b8838686aa04f1e83ba7e91f78b7b2a23e6", - "shasum": "" - }, - "require": { - "php": "^5.5.9 || ^7.0", - "psr/log": "^1.0.1" - }, - "require-dev": { - "mockery/mockery": "0.9.*", - "phpunit/phpunit": "^4.8.35 || ^5.7", - "symfony/var-dumper": "^2.6 || ^3.0" - }, - "suggest": { - "symfony/var-dumper": "Pretty print complex values better with var-dumper available", - "whoops/soap": "Formats errors as SOAP responses" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "psr-4": { - "Whoops\\": "src/Whoops/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Filipe Dobreira", - "homepage": "https://github.com/filp", - "role": "Developer" - } - ], - "description": "php error handling for cool kids", - "homepage": "https://filp.github.io/whoops/", - "keywords": [ - "error", - "exception", - "handling", - "library", - "throwable", - "whoops" - ], - "time": "2017-11-23T18:22:44+00:00" - }, - { - "name": "fzaninotto/faker", - "version": "v1.7.1", - "source": { - "type": "git", - "url": "https://github.com/fzaninotto/Faker.git", - "reference": "d3ed4cc37051c1ca52d22d76b437d14809fc7e0d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/d3ed4cc37051c1ca52d22d76b437d14809fc7e0d", - "reference": "d3ed4cc37051c1ca52d22d76b437d14809fc7e0d", - "shasum": "" - }, - "require": { - "php": "^5.3.3 || ^7.0" - }, - "require-dev": { - "ext-intl": "*", - "phpunit/phpunit": "^4.0 || ^5.0", - "squizlabs/php_codesniffer": "^1.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.8-dev" - } - }, - "autoload": { - "psr-4": { - "Faker\\": "src/Faker/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "François Zaninotto" - } - ], - "description": "Faker is a PHP library that generates fake data for you.", - "keywords": [ - "data", - "faker", - "fixtures" - ], - "time": "2017-08-15T16:48:10+00:00" - }, - { - "name": "hamcrest/hamcrest-php", - "version": "v1.2.2", - "source": { - "type": "git", - "url": "https://github.com/hamcrest/hamcrest-php.git", - "reference": "b37020aa976fa52d3de9aa904aa2522dc518f79c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/b37020aa976fa52d3de9aa904aa2522dc518f79c", - "reference": "b37020aa976fa52d3de9aa904aa2522dc518f79c", - "shasum": "" - }, - "require": { - "php": ">=5.3.2" - }, - "replace": { - "cordoval/hamcrest-php": "*", - "davedevelopment/hamcrest-php": "*", - "kodova/hamcrest-php": "*" - }, - "require-dev": { - "phpunit/php-file-iterator": "1.3.3", - "satooshi/php-coveralls": "dev-master" - }, - "type": "library", - "autoload": { - "classmap": [ - "hamcrest" - ], - "files": [ - "hamcrest/Hamcrest.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD" - ], - "description": "This is the PHP port of Hamcrest Matchers", - "keywords": [ - "test" - ], - "time": "2015-05-11T14:41:42+00:00" - }, - { - "name": "mockery/mockery", - "version": "0.9.9", - "source": { - "type": "git", - "url": "https://github.com/mockery/mockery.git", - "reference": "6fdb61243844dc924071d3404bb23994ea0b6856" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mockery/mockery/zipball/6fdb61243844dc924071d3404bb23994ea0b6856", - "reference": "6fdb61243844dc924071d3404bb23994ea0b6856", - "shasum": "" - }, - "require": { - "hamcrest/hamcrest-php": "~1.1", - "lib-pcre": ">=7.0", - "php": ">=5.3.2" - }, - "require-dev": { - "phpunit/phpunit": "~4.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "0.9.x-dev" - } - }, - "autoload": { - "psr-0": { - "Mockery": "library/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Pádraic Brady", - "email": "padraic.brady@gmail.com", - "homepage": "http://blog.astrumfutura.com" - }, - { - "name": "Dave Marshall", - "email": "dave.marshall@atstsolutions.co.uk", - "homepage": "http://davedevelopment.co.uk" - } - ], - "description": "Mockery is a simple yet flexible PHP mock object framework for use in unit testing with PHPUnit, PHPSpec or any other testing framework. Its core goal is to offer a test double framework with a succinct API capable of clearly defining all possible object operations and interactions using a human readable Domain Specific Language (DSL). Designed as a drop in alternative to PHPUnit's phpunit-mock-objects library, Mockery is easy to integrate with PHPUnit and can operate alongside phpunit-mock-objects without the World ending.", - "homepage": "http://github.com/padraic/mockery", - "keywords": [ - "BDD", - "TDD", - "library", - "mock", - "mock objects", - "mockery", - "stub", - "test", - "test double", - "testing" - ], - "time": "2017-02-28T12:52:32+00:00" - }, - { - "name": "myclabs/deep-copy", - "version": "1.7.0", - "source": { - "type": "git", - "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e", - "reference": "3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0" - }, - "require-dev": { - "doctrine/collections": "^1.0", - "doctrine/common": "^2.6", - "phpunit/phpunit": "^4.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "DeepCopy\\": "src/DeepCopy/" - }, - "files": [ - "src/DeepCopy/deep_copy.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Create deep copies (clones) of your objects", - "keywords": [ - "clone", - "copy", - "duplicate", - "object", - "object graph" - ], - "time": "2017-10-19T19:58:43+00:00" - }, - { - "name": "phar-io/manifest", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/phar-io/manifest.git", - "reference": "2df402786ab5368a0169091f61a7c1e0eb6852d0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/2df402786ab5368a0169091f61a7c1e0eb6852d0", - "reference": "2df402786ab5368a0169091f61a7c1e0eb6852d0", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-phar": "*", - "phar-io/version": "^1.0.1", - "php": "^5.6 || ^7.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", - "time": "2017-03-05T18:14:27+00:00" - }, - { - "name": "phar-io/version", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/phar-io/version.git", - "reference": "a70c0ced4be299a63d32fa96d9281d03e94041df" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/version/zipball/a70c0ced4be299a63d32fa96d9281d03e94041df", - "reference": "a70c0ced4be299a63d32fa96d9281d03e94041df", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Library for handling version information and constraints", - "time": "2017-03-05T17:38:23+00:00" - }, - { - "name": "phpdocumentor/reflection-common", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionCommon.git", - "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6", - "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6", - "shasum": "" - }, - "require": { - "php": ">=5.5" - }, - "require-dev": { - "phpunit/phpunit": "^4.6" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jaap van Otterdijk", - "email": "opensource@ijaap.nl" - } - ], - "description": "Common reflection classes used by phpdocumentor to reflect the code structure", - "homepage": "http://www.phpdoc.org", - "keywords": [ - "FQSEN", - "phpDocumentor", - "phpdoc", - "reflection", - "static analysis" - ], - "time": "2017-09-11T18:02:19+00:00" - }, - { - "name": "phpdocumentor/reflection-docblock", - "version": "4.3.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "94fd0001232e47129dd3504189fa1c7225010d08" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/94fd0001232e47129dd3504189fa1c7225010d08", - "reference": "94fd0001232e47129dd3504189fa1c7225010d08", - "shasum": "" - }, - "require": { - "php": "^7.0", - "phpdocumentor/reflection-common": "^1.0.0", - "phpdocumentor/type-resolver": "^0.4.0", - "webmozart/assert": "^1.0" - }, - "require-dev": { - "doctrine/instantiator": "~1.0.5", - "mockery/mockery": "^1.0", - "phpunit/phpunit": "^6.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src/" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - } - ], - "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "time": "2017-11-30T07:14:17+00:00" - }, - { - "name": "phpdocumentor/type-resolver", - "version": "0.4.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/9c977708995954784726e25d0cd1dddf4e65b0f7", - "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7", - "shasum": "" - }, - "require": { - "php": "^5.5 || ^7.0", - "phpdocumentor/reflection-common": "^1.0" - }, - "require-dev": { - "mockery/mockery": "^0.9.4", - "phpunit/phpunit": "^5.2||^4.8.24" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": [ - "src/" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - } - ], - "time": "2017-07-14T14:27:02+00:00" - }, - { - "name": "phpspec/prophecy", - "version": "1.7.4", - "source": { - "type": "git", - "url": "https://github.com/phpspec/prophecy.git", - "reference": "9f901e29c93dae4aa77c0bb161df4276f9c9a1be" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/9f901e29c93dae4aa77c0bb161df4276f9c9a1be", - "reference": "9f901e29c93dae4aa77c0bb161df4276f9c9a1be", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.0.2", - "php": "^5.3|^7.0", - "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0", - "sebastian/comparator": "^1.1|^2.0", - "sebastian/recursion-context": "^1.0|^2.0|^3.0" - }, - "require-dev": { - "phpspec/phpspec": "^2.5|^3.2", - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.7.x-dev" - } - }, - "autoload": { - "psr-0": { - "Prophecy\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Konstantin Kudryashov", - "email": "ever.zet@gmail.com", - "homepage": "http://everzet.com" - }, - { - "name": "Marcello Duarte", - "email": "marcello.duarte@gmail.com" - } - ], - "description": "Highly opinionated mocking framework for PHP 5.3+", - "homepage": "https://github.com/phpspec/prophecy", - "keywords": [ - "Double", - "Dummy", - "fake", - "mock", - "spy", - "stub" - ], - "time": "2017-11-24T13:59:53+00:00" - }, - { - "name": "phpunit/php-code-coverage", - "version": "5.3.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "661f34d0bd3f1a7225ef491a70a020ad23a057a1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/661f34d0bd3f1a7225ef491a70a020ad23a057a1", - "reference": "661f34d0bd3f1a7225ef491a70a020ad23a057a1", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-xmlwriter": "*", - "php": "^7.0", - "phpunit/php-file-iterator": "^1.4.2", - "phpunit/php-text-template": "^1.2.1", - "phpunit/php-token-stream": "^2.0.1", - "sebastian/code-unit-reverse-lookup": "^1.0.1", - "sebastian/environment": "^3.0", - "sebastian/version": "^2.0.1", - "theseer/tokenizer": "^1.1" - }, - "require-dev": { - "phpunit/phpunit": "^6.0" - }, - "suggest": { - "ext-xdebug": "^2.5.5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.3.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", - "homepage": "https://github.com/sebastianbergmann/php-code-coverage", - "keywords": [ - "coverage", - "testing", - "xunit" - ], - "time": "2017-12-06T09:29:45+00:00" - }, - { - "name": "phpunit/php-file-iterator", - "version": "1.4.5", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/730b01bc3e867237eaac355e06a36b85dd93a8b4", - "reference": "730b01bc3e867237eaac355e06a36b85dd93a8b4", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.4.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" - } - ], - "description": "FilterIterator implementation that filters files based on a list of suffixes.", - "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", - "keywords": [ - "filesystem", - "iterator" - ], - "time": "2017-11-27T13:52:08+00:00" - }, - { - "name": "phpunit/php-text-template", - "version": "1.2.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686", - "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Simple template engine.", - "homepage": "https://github.com/sebastianbergmann/php-text-template/", - "keywords": [ - "template" - ], - "time": "2015-06-21T13:50:34+00:00" - }, - { - "name": "phpunit/php-timer", - "version": "1.0.9", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f", - "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f", - "shasum": "" - }, - "require": { - "php": "^5.3.3 || ^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sb@sebastian-bergmann.de", - "role": "lead" - } - ], - "description": "Utility class for timing", - "homepage": "https://github.com/sebastianbergmann/php-timer/", - "keywords": [ - "timer" - ], - "time": "2017-02-26T11:10:40+00:00" - }, - { - "name": "phpunit/php-token-stream", - "version": "2.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-token-stream.git", - "reference": "791198a2c6254db10131eecfe8c06670700904db" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/791198a2c6254db10131eecfe8c06670700904db", - "reference": "791198a2c6254db10131eecfe8c06670700904db", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "php": "^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.2.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Wrapper around PHP's tokenizer extension.", - "homepage": "https://github.com/sebastianbergmann/php-token-stream/", - "keywords": [ - "tokenizer" - ], - "time": "2017-11-27T05:48:46+00:00" - }, - { - "name": "phpunit/phpunit", - "version": "6.5.6", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "3330ef26ade05359d006041316ed0fa9e8e3cefe" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/3330ef26ade05359d006041316ed0fa9e8e3cefe", - "reference": "3330ef26ade05359d006041316ed0fa9e8e3cefe", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-json": "*", - "ext-libxml": "*", - "ext-mbstring": "*", - "ext-xml": "*", - "myclabs/deep-copy": "^1.6.1", - "phar-io/manifest": "^1.0.1", - "phar-io/version": "^1.0", - "php": "^7.0", - "phpspec/prophecy": "^1.7", - "phpunit/php-code-coverage": "^5.3", - "phpunit/php-file-iterator": "^1.4.3", - "phpunit/php-text-template": "^1.2.1", - "phpunit/php-timer": "^1.0.9", - "phpunit/phpunit-mock-objects": "^5.0.5", - "sebastian/comparator": "^2.1", - "sebastian/diff": "^2.0", - "sebastian/environment": "^3.1", - "sebastian/exporter": "^3.1", - "sebastian/global-state": "^2.0", - "sebastian/object-enumerator": "^3.0.3", - "sebastian/resource-operations": "^1.0", - "sebastian/version": "^2.0.1" - }, - "conflict": { - "phpdocumentor/reflection-docblock": "3.0.2", - "phpunit/dbunit": "<3.0" - }, - "require-dev": { - "ext-pdo": "*" - }, - "suggest": { - "ext-xdebug": "*", - "phpunit/php-invoker": "^1.1" - }, - "bin": [ - "phpunit" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "6.5.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "The PHP Unit Testing framework.", - "homepage": "https://phpunit.de/", - "keywords": [ - "phpunit", - "testing", - "xunit" - ], - "time": "2018-02-01T05:57:37+00:00" - }, - { - "name": "phpunit/phpunit-mock-objects", - "version": "5.0.6", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", - "reference": "33fd41a76e746b8fa96d00b49a23dadfa8334cdf" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/33fd41a76e746b8fa96d00b49a23dadfa8334cdf", - "reference": "33fd41a76e746b8fa96d00b49a23dadfa8334cdf", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.0.5", - "php": "^7.0", - "phpunit/php-text-template": "^1.2.1", - "sebastian/exporter": "^3.1" - }, - "conflict": { - "phpunit/phpunit": "<6.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.5" - }, - "suggest": { - "ext-soap": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Mock Object library for PHPUnit", - "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/", - "keywords": [ - "mock", - "xunit" - ], - "time": "2018-01-06T05:45:45+00:00" - }, - { - "name": "sebastian/code-unit-reverse-lookup", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", - "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.7 || ^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Looks up which function or method a line of code belongs to", - "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", - "time": "2017-03-04T06:30:41+00:00" - }, - { - "name": "sebastian/comparator", - "version": "2.1.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "34369daee48eafb2651bea869b4b15d75ccc35f9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/34369daee48eafb2651bea869b4b15d75ccc35f9", - "reference": "34369daee48eafb2651bea869b4b15d75ccc35f9", - "shasum": "" - }, - "require": { - "php": "^7.0", - "sebastian/diff": "^2.0 || ^3.0", - "sebastian/exporter": "^3.1" - }, - "require-dev": { - "phpunit/phpunit": "^6.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.1.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides the functionality to compare PHP values for equality", - "homepage": "https://github.com/sebastianbergmann/comparator", - "keywords": [ - "comparator", - "compare", - "equality" - ], - "time": "2018-02-01T13:46:46+00:00" - }, - { - "name": "sebastian/diff", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "347c1d8b49c5c3ee30c7040ea6fc446790e6bddd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/347c1d8b49c5c3ee30c7040ea6fc446790e6bddd", - "reference": "347c1d8b49c5c3ee30c7040ea6fc446790e6bddd", - "shasum": "" - }, - "require": { - "php": "^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Diff implementation", - "homepage": "https://github.com/sebastianbergmann/diff", - "keywords": [ - "diff" - ], - "time": "2017-08-03T08:09:46+00:00" - }, - { - "name": "sebastian/environment", - "version": "3.1.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "cd0871b3975fb7fc44d11314fd1ee20925fce4f5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/cd0871b3975fb7fc44d11314fd1ee20925fce4f5", - "reference": "cd0871b3975fb7fc44d11314fd1ee20925fce4f5", - "shasum": "" - }, - "require": { - "php": "^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", - "keywords": [ - "Xdebug", - "environment", - "hhvm" - ], - "time": "2017-07-01T08:51:00+00:00" - }, - { - "name": "sebastian/exporter", - "version": "3.1.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "234199f4528de6d12aaa58b612e98f7d36adb937" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/234199f4528de6d12aaa58b612e98f7d36adb937", - "reference": "234199f4528de6d12aaa58b612e98f7d36adb937", - "shasum": "" - }, - "require": { - "php": "^7.0", - "sebastian/recursion-context": "^3.0" - }, - "require-dev": { - "ext-mbstring": "*", - "phpunit/phpunit": "^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "http://www.github.com/sebastianbergmann/exporter", - "keywords": [ - "export", - "exporter" - ], - "time": "2017-04-03T13:19:02+00:00" - }, - { - "name": "sebastian/global-state", - "version": "2.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4", - "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4", - "shasum": "" - }, - "require": { - "php": "^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.0" - }, - "suggest": { - "ext-uopz": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Snapshotting of global state", - "homepage": "http://www.github.com/sebastianbergmann/global-state", - "keywords": [ - "global state" - ], - "time": "2017-04-27T15:39:26+00:00" - }, - { - "name": "sebastian/object-enumerator", - "version": "3.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/7cfd9e65d11ffb5af41198476395774d4c8a84c5", - "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5", - "shasum": "" - }, - "require": { - "php": "^7.0", - "sebastian/object-reflector": "^1.1.1", - "sebastian/recursion-context": "^3.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Traverses array structures and object graphs to enumerate all referenced objects", - "homepage": "https://github.com/sebastianbergmann/object-enumerator/", - "time": "2017-08-03T12:35:26+00:00" - }, - { - "name": "sebastian/object-reflector", - "version": "1.1.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "773f97c67f28de00d397be301821b06708fca0be" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/773f97c67f28de00d397be301821b06708fca0be", - "reference": "773f97c67f28de00d397be301821b06708fca0be", - "shasum": "" - }, - "require": { - "php": "^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Allows reflection of object attributes, including inherited and non-public ones", - "homepage": "https://github.com/sebastianbergmann/object-reflector/", - "time": "2017-03-29T09:07:27+00:00" - }, - { - "name": "sebastian/recursion-context", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8", - "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8", - "shasum": "" - }, - "require": { - "php": "^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", - "time": "2017-03-03T06:23:57+00:00" - }, - { - "name": "sebastian/resource-operations", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52", - "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52", - "shasum": "" - }, - "require": { - "php": ">=5.6.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides a list of PHP built-in functions that operate on resources", - "homepage": "https://www.github.com/sebastianbergmann/resource-operations", - "time": "2015-07-28T20:34:47+00:00" - }, - { - "name": "sebastian/version", - "version": "2.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/version.git", - "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019", - "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019", - "shasum": "" - }, - "require": { - "php": ">=5.6" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that helps with managing the version number of Git-hosted PHP projects", - "homepage": "https://github.com/sebastianbergmann/version", - "time": "2016-10-03T07:35:21+00:00" - }, - { - "name": "symfony/dom-crawler", - "version": "v3.1.10", - "source": { - "type": "git", - "url": "https://github.com/symfony/dom-crawler.git", - "reference": "7eede2a901a19928494194f7d1815a77b9a473a0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/7eede2a901a19928494194f7d1815a77b9a473a0", - "reference": "7eede2a901a19928494194f7d1815a77b9a473a0", - "shasum": "" - }, - "require": { - "php": ">=5.5.9", - "symfony/polyfill-mbstring": "~1.0" - }, - "require-dev": { - "symfony/css-selector": "~2.8|~3.0" - }, - "suggest": { - "symfony/css-selector": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1-dev" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Component\\DomCrawler\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony DomCrawler Component", - "homepage": "https://symfony.com", - "time": "2017-01-21T17:13:55+00:00" - }, - { - "name": "theseer/tokenizer", - "version": "1.1.0", - "source": { - "type": "git", - "url": "https://github.com/theseer/tokenizer.git", - "reference": "cb2f008f3f05af2893a87208fe6a6c4985483f8b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/cb2f008f3f05af2893a87208fe6a6c4985483f8b", - "reference": "cb2f008f3f05af2893a87208fe6a6c4985483f8b", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-tokenizer": "*", - "ext-xmlwriter": "*", - "php": "^7.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - } - ], - "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", - "time": "2017-04-07T12:08:54+00:00" - }, - { - "name": "webmozart/assert", - "version": "1.3.0", - "source": { - "type": "git", - "url": "https://github.com/webmozart/assert.git", - "reference": "0df1908962e7a3071564e857d86874dad1ef204a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozart/assert/zipball/0df1908962e7a3071564e857d86874dad1ef204a", - "reference": "0df1908962e7a3071564e857d86874dad1ef204a", - "shasum": "" - }, - "require": { - "php": "^5.3.3 || ^7.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.6", - "sebastian/version": "^1.0.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.3-dev" - } - }, - "autoload": { - "psr-4": { - "Webmozart\\Assert\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Assertions to validate method input/output with nice error messages.", - "keywords": [ - "assert", - "check", - "validate" - ], - "time": "2018-01-29T19:49:41+00:00" - } - ], - "aliases": [], - "minimum-stability": "stable", - "stability-flags": [], - "prefer-stable": false, - "prefer-lowest": false, - "platform": { - "php": ">=5.6.4" - }, - "platform-dev": [] -} diff --git a/config/queue.php b/config/queue.php index 549322ed99938b0b6bde999703611df0ac962af0..f22a90f7afe93c3ee301cfce6110f92f25119745 100644 --- a/config/queue.php +++ b/config/queue.php @@ -45,7 +45,7 @@ return [ 'driver' => 'beanstalkd', 'host' => 'localhost', 'queue' => 'default', - 'retry_after' => 90, + 'retry_after' => 90, ], 'sqs' => [ @@ -61,7 +61,7 @@ return [ 'driver' => 'redis', 'connection' => 'default', 'queue' => 'default', - 'retry_after' => 90, + 'retry_after' => 300, ], ], diff --git a/database/metager.sqlite b/database/metager.sqlite deleted file mode 100644 index c137bd09eb073efcb5f2b6db4f36729f0a8172f9..0000000000000000000000000000000000000000 Binary files a/database/metager.sqlite and /dev/null differ diff --git a/database/migrations/2018_02_22_122047_create_failed_jobs_table.php b/database/migrations/2018_02_22_122047_create_failed_jobs_table.php new file mode 100644 index 0000000000000000000000000000000000000000..d432dff085f78b868a82c7264ccc960b2d39155e --- /dev/null +++ b/database/migrations/2018_02_22_122047_create_failed_jobs_table.php @@ -0,0 +1,35 @@ +bigIncrements('id'); + $table->text('connection'); + $table->text('queue'); + $table->longText('payload'); + $table->longText('exception'); + $table->timestamp('failed_at')->useCurrent(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('failed_jobs'); + } +} diff --git a/public/google1d0130450de230c1.html b/public/google1d0130450de230c1.html new file mode 100644 index 0000000000000000000000000000000000000000..c039a393eca51ae0d0fa4748669e213364b65079 --- /dev/null +++ b/public/google1d0130450de230c1.html @@ -0,0 +1 @@ +google-site-verification: google1d0130450de230c1.html \ No newline at end of file diff --git a/public/img/Firefox.png b/public/img/Firefox.png index 13b833d29f47d44bc6ac786ea721ec15feb1d6e1..10febca1054e18fdfe32f05e3abf259efc371fee 100644 Binary files a/public/img/Firefox.png and b/public/img/Firefox.png differ diff --git a/public/img/FirefoxKlar-Settings.png b/public/img/FirefoxKlar-Settings.png new file mode 100644 index 0000000000000000000000000000000000000000..ff8fdeb79ec8f86b19226c093f16ac621936239b Binary files /dev/null and b/public/img/FirefoxKlar-Settings.png differ diff --git a/public/img/FirefoxKlar-addSearchengine.png b/public/img/FirefoxKlar-addSearchengine.png new file mode 100644 index 0000000000000000000000000000000000000000..5c208a259fad18a400cb986076b6e4db812f5292 Binary files /dev/null and b/public/img/FirefoxKlar-addSearchengine.png differ diff --git a/public/img/aufruf.png b/public/img/aufruf.png deleted file mode 100644 index fc0443ff91146f0368ba0265bf40e7a9d60e3649..0000000000000000000000000000000000000000 Binary files a/public/img/aufruf.png and /dev/null differ diff --git a/public/img/blacklist-tutorial-options.png b/public/img/blacklist-tutorial-options.png index 3fd80b437fed02e2dbcd2f4001f716e79808d027..9539da990adca64c9fcfd8ae7a491961dadede24 100644 Binary files a/public/img/blacklist-tutorial-options.png and b/public/img/blacklist-tutorial-options.png differ diff --git a/public/js/searchbar.js b/public/js/searchbar.js new file mode 100644 index 0000000000000000000000000000000000000000..16e3a4dd26abe58fa2d8856193fe5bcac9657910 --- /dev/null +++ b/public/js/searchbar.js @@ -0,0 +1,39 @@ +$(function () { + loadLocalStorage(); +}); + +/** + * Loads the user theme and stored settings from local storage + */ +function loadLocalStorage () { + if (localStorage) { + setSettings(); + } +} + +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(''); + } + } + } + // Change the request method to the given parameter + var requestMethod = localStorage.getItem('request'); + if (requestMethod !== null && (requestMethod === 'GET' || requestMethod === 'POST')) { + $('#searchForm').attr('method', requestMethod); + } +} \ No newline at end of file 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(''); - 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/public/metager_maps/.gitkeep b/public/metager_maps/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/public/metager_maps/app-release.apk b/public/metager_maps/app-release.apk new file mode 100644 index 0000000000000000000000000000000000000000..ba78bfa0bd3d75558ec96e4a50cf937236cb2e87 Binary files /dev/null and b/public/metager_maps/app-release.apk differ diff --git a/public/metager_maps/version.txt b/public/metager_maps/version.txt new file mode 100644 index 0000000000000000000000000000000000000000..872765e5f28545f268e3101f5cfb06b45f32f5ae --- /dev/null +++ b/public/metager_maps/version.txt @@ -0,0 +1 @@ +1.9 \ No newline at end of file diff --git a/readme.md b/readme.md index 7b50c984b2473452de81e0fba25cfe1a6be14bc0..cc73063a9b7d2ed0defffab47153f73ee6b01c34 100644 --- a/readme.md +++ b/readme.md @@ -6,11 +6,15 @@ ## Abhängigkeiten * composer (https://getcomposer.org/) -* php7.0 - * php7.0-mbstring - * php7.0-dom - * php7.0-xml - * php7.0-zip +* php + * php-common + * php-curl + * php-mbstring + * php-mysql + * php-sqlite3 + * php-xml + * php-zip + * php-redis * sqlite3 * redis-server * Die Perl-Pakete @@ -19,7 +23,7 @@ ## Offizielle Dokumentation -Die Dokumentation ist im Wiki des Gitlab-Projektes zu finden. +Die Dokumentation ist im [Wiki des Gitlab-Projektes](https://gitlab.metager3.de/open-source/MetaGer/wikis/home) zu finden. ## Beiträge @@ -30,10 +34,10 @@ Es steht dir jedoch frei, ein Ticket zu eröffnen. ## Sicherheitslücken Falls du eine Sicherheitslücke findest oder dir etwas unsicher vorkommt, -zögere bitte nicht ein Ticket zu schreiben oder eine Mail an [office@suma-ev.de](mailto:office@suma-ev.de) zu senden. +zögere bitte nicht ein [Ticket zu schreiben](https://gitlab.metager3.de/open-source/MetaGer/issues) oder eine Mail an [office@suma-ev.de](mailto:office@suma-ev.de) zu senden. ## Lizenzen Der MetaGer-eigene Code, sofern nicht anders anders angegeben, steht unter der [AGPL-Lizenz Version 3](https://www.gnu.org/licenses/agpl-3.0). -Eine Liste der Projekte, auf denen MetaGer basiert, und deren Lizenzen sind in der Datei LICENSE zu finden. +Eine Liste der Projekte, auf denen MetaGer basiert, und deren Lizenzen sind in der Datei [LICENSE]( zu finden. diff --git a/resources/assets/js/lib/lightslider.js b/resources/assets/js/lib/lightslider.js deleted file mode 100644 index aa8459843032e850ac5239deb91705aa258a9579..0000000000000000000000000000000000000000 --- a/resources/assets/js/lib/lightslider.js +++ /dev/null @@ -1,1140 +0,0 @@ -(function ($, undefined) { - 'use strict'; - var defaults = { - item: 3, - autoWidth: false, - slideMove: 1, - slideMargin: 10, - addClass: '', - mode: 'slide', - useCSS: true, - cssEasing: 'ease', //'cubic-bezier(0.25, 0, 0.25, 1)', - easing: 'linear', //'for jquery animation',// - speed: 400, //ms' - auto: false, - pauseOnHover: false, - loop: false, - slideEndAnimation: true, - pause: 2000, - keyPress: false, - controls: true, - prevHtml: '', - nextHtml: '', - rtl: false, - adaptiveHeight: false, - vertical: false, - verticalHeight: 500, - vThumbWidth: 100, - thumbItem: 10, - pager: true, - gallery: false, - galleryMargin: 5, - thumbMargin: 5, - currentPagerPosition: 'middle', - enableTouch: true, - enableDrag: true, - freeMove: true, - swipeThreshold: 40, - responsive: [], - /* jshint ignore:start */ - onBeforeStart: function ($el) {}, - onSliderLoad: function ($el) {}, - onBeforeSlide: function ($el, scene) {}, - onAfterSlide: function ($el, scene) {}, - onBeforeNextSlide: function ($el, scene) {}, - onBeforePrevSlide: function ($el, scene) {} - /* jshint ignore:end */ - }; - $.fn.lightSlider = function (options) { - if (this.length === 0) { - return this; - } - - if (this.length > 1) { - this.each(function () { - $(this).lightSlider(options); - }); - return this; - } - - var plugin = {}, - settings = $.extend(true, {}, defaults, options), - settingsTemp = {}, - $el = this; - plugin.$el = this; - - if (settings.mode === 'fade') { - settings.vertical = false; - } - var $children = $el.children(), - windowW = $(window).width(), - breakpoint = null, - resposiveObj = null, - length = 0, - w = 0, - on = false, - elSize = 0, - $slide = '', - scene = 0, - property = (settings.vertical === true) ? 'height' : 'width', - gutter = (settings.vertical === true) ? 'margin-bottom' : 'margin-right', - slideValue = 0, - pagerWidth = 0, - slideWidth = 0, - thumbWidth = 0, - interval = null, - isTouch = ('ontouchstart' in document.documentElement); - var refresh = {}; - - refresh.chbreakpoint = function () { - windowW = $(window).width(); - if (settings.responsive.length) { - var item; - if (settings.autoWidth === false) { - item = settings.item; - } - if (windowW < settings.responsive[0].breakpoint) { - for (var i = 0; i < settings.responsive.length; i++) { - if (windowW < settings.responsive[i].breakpoint) { - breakpoint = settings.responsive[i].breakpoint; - resposiveObj = settings.responsive[i]; - } - } - } - if (typeof resposiveObj !== 'undefined' && resposiveObj !== null) { - for (var j in resposiveObj.settings) { - if (resposiveObj.settings.hasOwnProperty(j)) { - if (typeof settingsTemp[j] === 'undefined' || settingsTemp[j] === null) { - settingsTemp[j] = settings[j]; - } - settings[j] = resposiveObj.settings[j]; - } - } - } - if (!$.isEmptyObject(settingsTemp) && windowW > settings.responsive[0].breakpoint) { - for (var k in settingsTemp) { - if (settingsTemp.hasOwnProperty(k)) { - settings[k] = settingsTemp[k]; - } - } - } - if (settings.autoWidth === false) { - if (slideValue > 0 && slideWidth > 0) { - if (item !== settings.item) { - scene = Math.round(slideValue / ((slideWidth + settings.slideMargin) * settings.slideMove)); - } - } - } - } - }; - - refresh.calSW = function () { - if (settings.autoWidth === false) { - slideWidth = (elSize - ((settings.item * (settings.slideMargin)) - settings.slideMargin)) / settings.item; - } - }; - - refresh.calWidth = function (cln) { - var ln = cln === true ? $slide.find('.lslide').length : $children.length; - if (settings.autoWidth === false) { - w = ln * (slideWidth + settings.slideMargin); - } else { - w = 0; - for (var i = 0; i < ln; i++) { - w += (parseInt($children.eq(i).width()) + settings.slideMargin); - } - } - return w; - }; - plugin = { - doCss: function () { - var support = function () { - var transition = ['transition', 'MozTransition', 'WebkitTransition', 'OTransition', 'msTransition', 'KhtmlTransition']; - var root = document.documentElement; - for (var i = 0; i < transition.length; i++) { - if (transition[i] in root.style) { - return true; - } - } - }; - if (settings.useCSS && support()) { - return true; - } - return false; - }, - keyPress: function () { - if (settings.keyPress) { - $(document).on('keyup.lightslider', function (e) { - if (!$(':focus').is('input, textarea')) { - if (e.preventDefault) { - e.preventDefault(); - } else { - e.returnValue = false; - } - if (e.keyCode === 37) { - $el.goToPrevSlide(); - } else if (e.keyCode === 39) { - $el.goToNextSlide(); - } - } - }); - } - }, - controls: function () { - if (settings.controls) { - $el.after('
' + settings.prevHtml + '' + settings.nextHtml + '
'); - if (!settings.autoWidth) { - if (length <= settings.item) { - $slide.find('.lSAction').hide(); - } - } else { - if (refresh.calWidth(false) < elSize) { - $slide.find('.lSAction').hide(); - } - } - $slide.find('.lSAction a').on('click', function (e) { - if (e.preventDefault) { - e.preventDefault(); - } else { - e.returnValue = false; - } - if ($(this).attr('class') === 'lSPrev') { - $el.goToPrevSlide(); - } else { - $el.goToNextSlide(); - } - return false; - }); - } - }, - initialStyle: function () { - var $this = this; - if (settings.mode === 'fade') { - settings.autoWidth = false; - settings.slideEndAnimation = false; - } - if (settings.auto) { - settings.slideEndAnimation = false; - } - if (settings.autoWidth) { - settings.slideMove = 1; - settings.item = 1; - } - if (settings.loop) { - settings.slideMove = 1; - settings.freeMove = false; - } - settings.onBeforeStart.call(this, $el); - refresh.chbreakpoint(); - $el.addClass('lightSlider').wrap('
'); - $slide = $el.parent('.lSSlideWrapper'); - if (settings.rtl === true) { - $slide.parent().addClass('lSrtl'); - } - if (settings.vertical) { - $slide.parent().addClass('vertical'); - elSize = settings.verticalHeight; - $slide.css('height', elSize + 'px'); - } else { - elSize = $el.outerWidth(); - } - $children.addClass('lslide'); - if (settings.loop === true && settings.mode === 'slide') { - refresh.calSW(); - refresh.clone = function () { - if (refresh.calWidth(true) > elSize) { - /**/ - var tWr = 0, - tI = 0; - for (var k = 0; k < $children.length; k++) { - tWr += (parseInt($el.find('.lslide').eq(k).width()) + settings.slideMargin); - tI++; - if (tWr >= (elSize + settings.slideMargin)) { - break; - } - } - var tItem = settings.autoWidth === true ? tI : settings.item; - - /**/ - if (tItem < $el.find('.clone.left').length) { - for (var i = 0; i < $el.find('.clone.left').length - tItem; i++) { - $children.eq(i).remove(); - } - } - if (tItem < $el.find('.clone.right').length) { - for (var j = $children.length - 1; j > ($children.length - 1 - $el.find('.clone.right').length); j--) { - scene--; - $children.eq(j).remove(); - } - } - /**/ - for (var n = $el.find('.clone.right').length; n < tItem; n++) { - $el.find('.lslide').eq(n).clone().removeClass('lslide').addClass('clone right').appendTo($el); - scene++; - } - for (var m = $el.find('.lslide').length - $el.find('.clone.left').length; m > ($el.find('.lslide').length - tItem); m--) { - $el.find('.lslide').eq(m - 1).clone().removeClass('lslide').addClass('clone left').prependTo($el); - } - $children = $el.children(); - } else { - if ($children.hasClass('clone')) { - $el.find('.clone').remove(); - $this.move($el, 0); - } - } - }; - refresh.clone(); - } - refresh.sSW = function () { - length = $children.length; - if (settings.rtl === true && settings.vertical === false) { - gutter = 'margin-left'; - } - if (settings.autoWidth === false) { - $children.css(property, slideWidth + 'px'); - } - $children.css(gutter, settings.slideMargin + 'px'); - w = refresh.calWidth(false); - $el.css(property, w + 'px'); - if (settings.loop === true && settings.mode === 'slide') { - if (on === false) { - scene = $el.find('.clone.left').length; - } - } - }; - refresh.calL = function () { - $children = $el.children(); - length = $children.length; - }; - if (this.doCss()) { - $slide.addClass('usingCss'); - } - refresh.calL(); - if (settings.mode === 'slide') { - refresh.calSW(); - refresh.sSW(); - if (settings.loop === true) { - slideValue = $this.slideValue(); - this.move($el, slideValue); - } - if (settings.vertical === false) { - this.setHeight($el, false); - } - - } else { - this.setHeight($el, true); - $el.addClass('lSFade'); - if (!this.doCss()) { - $children.fadeOut(0); - $children.eq(scene).fadeIn(0); - } - } - if (settings.loop === true && settings.mode === 'slide') { - $children.eq(scene).addClass('active'); - } else { - $children.first().addClass('active'); - } - }, - pager: function () { - var $this = this; - refresh.createPager = function () { - thumbWidth = (elSize - ((settings.thumbItem * (settings.thumbMargin)) - settings.thumbMargin)) / settings.thumbItem; - var $children = $slide.find('.lslide'); - var length = $slide.find('.lslide').length; - var i = 0, - pagers = '', - v = 0; - for (i = 0; i < length; i++) { - if (settings.mode === 'slide') { - // calculate scene * slide value - if (!settings.autoWidth) { - v = i * ((slideWidth + settings.slideMargin) * settings.slideMove); - } else { - v += ((parseInt($children.eq(i).width()) + settings.slideMargin) * settings.slideMove); - } - } - var thumb = $children.eq(i * settings.slideMove).attr('data-thumb'); - if (settings.gallery === true) { - pagers += '
  • '; - } else { - pagers += '
  • ' + (i + 1) + '
  • '; - } - if (settings.mode === 'slide') { - if ((v) >= w - elSize - settings.slideMargin) { - i = i + 1; - var minPgr = 2; - if (settings.autoWidth) { - pagers += '
  • ' + (i + 1) + '
  • '; - minPgr = 1; - } - if (i < minPgr) { - pagers = null; - $slide.parent().addClass('noPager'); - } else { - $slide.parent().removeClass('noPager'); - } - break; - } - } - } - var $cSouter = $slide.parent(); - $cSouter.find('.lSPager').html(pagers); - if (settings.gallery === true) { - if (settings.vertical === true) { - // set Gallery thumbnail width - $cSouter.find('.lSPager').css('width', settings.vThumbWidth + 'px'); - } - pagerWidth = (i * (settings.thumbMargin + thumbWidth)) + 0.5; - $cSouter.find('.lSPager').css({ - property: pagerWidth + 'px', - 'transition-duration': settings.speed + 'ms' - }); - if (settings.vertical === true) { - $slide.parent().css('padding-right', (settings.vThumbWidth + settings.galleryMargin) + 'px'); - } - $cSouter.find('.lSPager').css(property, pagerWidth + 'px'); - } - var $pager = $cSouter.find('.lSPager').find('li'); - $pager.first().addClass('active'); - $pager.on('click', function () { - if (settings.loop === true && settings.mode === 'slide') { - scene = scene + ($pager.index(this) - $cSouter.find('.lSPager').find('li.active').index()); - } else { - scene = $pager.index(this); - } - $el.mode(false); - if (settings.gallery === true) { - $this.slideThumb(); - } - return false; - }); - }; - if (settings.pager) { - var cl = 'lSpg'; - if (settings.gallery) { - cl = 'lSGallery'; - } - $slide.after(''); - var gMargin = (settings.vertical) ? 'margin-left' : 'margin-top'; - $slide.parent().find('.lSPager').css(gMargin, settings.galleryMargin + 'px'); - refresh.createPager(); - } - - setTimeout(function () { - refresh.init(); - }, 0); - }, - setHeight: function (ob, fade) { - var obj = null, - $this = this; - if (settings.loop) { - obj = ob.children('.lslide ').first(); - } else { - obj = ob.children().first(); - } - var setCss = function () { - var tH = obj.outerHeight(), - tP = 0, - tHT = tH; - if (fade) { - tH = 0; - tP = ((tHT) * 100) / elSize; - } - ob.css({ - 'height': tH + 'px', - 'padding-bottom': tP + '%' - }); - }; - setCss(); - if (obj.find('img').length) { - if ( obj.find('img')[0].complete) { - setCss(); - if (!interval) { - $this.auto(); - } - }else{ - obj.find('img').load(function () { - setTimeout(function () { - setCss(); - if (!interval) { - $this.auto(); - } - }, 100); - }); - } - }else{ - if (!interval) { - $this.auto(); - } - } - }, - active: function (ob, t) { - if (this.doCss() && settings.mode === 'fade') { - $slide.addClass('on'); - } - var sc = 0; - if (scene * settings.slideMove < length) { - ob.removeClass('active'); - if (!this.doCss() && settings.mode === 'fade' && t === false) { - ob.fadeOut(settings.speed); - } - if (t === true) { - sc = scene; - } else { - sc = scene * settings.slideMove; - } - //t === true ? sc = scene : sc = scene * settings.slideMove; - var l, nl; - if (t === true) { - l = ob.length; - nl = l - 1; - if (sc + 1 >= l) { - sc = nl; - } - } - if (settings.loop === true && settings.mode === 'slide') { - //t === true ? sc = scene - $el.find('.clone.left').length : sc = scene * settings.slideMove; - if (t === true) { - sc = scene - $el.find('.clone.left').length; - } else { - sc = scene * settings.slideMove; - } - if (t === true) { - l = ob.length; - nl = l - 1; - if (sc + 1 === l) { - sc = nl; - } else if (sc + 1 > l) { - sc = 0; - } - } - } - - if (!this.doCss() && settings.mode === 'fade' && t === false) { - ob.eq(sc).fadeIn(settings.speed); - } - ob.eq(sc).addClass('active'); - } else { - ob.removeClass('active'); - ob.eq(ob.length - 1).addClass('active'); - if (!this.doCss() && settings.mode === 'fade' && t === false) { - ob.fadeOut(settings.speed); - ob.eq(sc).fadeIn(settings.speed); - } - } - }, - move: function (ob, v) { - if (settings.rtl === true) { - v = -v; - } - if (this.doCss()) { - if (settings.vertical === true) { - ob.css({ - 'transform': 'translate3d(0px, ' + (-v) + 'px, 0px)', - '-webkit-transform': 'translate3d(0px, ' + (-v) + 'px, 0px)' - }); - } else { - ob.css({ - 'transform': 'translate3d(' + (-v) + 'px, 0px, 0px)', - '-webkit-transform': 'translate3d(' + (-v) + 'px, 0px, 0px)', - }); - } - } else { - if (settings.vertical === true) { - ob.css('position', 'relative').animate({ - top: -v + 'px' - }, settings.speed, settings.easing); - } else { - ob.css('position', 'relative').animate({ - left: -v + 'px' - }, settings.speed, settings.easing); - } - } - var $thumb = $slide.parent().find('.lSPager').find('li'); - this.active($thumb, true); - }, - fade: function () { - this.active($children, false); - var $thumb = $slide.parent().find('.lSPager').find('li'); - this.active($thumb, true); - }, - slide: function () { - var $this = this; - refresh.calSlide = function () { - if (w > elSize) { - slideValue = $this.slideValue(); - $this.active($children, false); - if ((slideValue) > w - elSize - settings.slideMargin) { - slideValue = w - elSize - settings.slideMargin; - } else if (slideValue < 0) { - slideValue = 0; - } - $this.move($el, slideValue); - if (settings.loop === true && settings.mode === 'slide') { - if (scene >= (length - ($el.find('.clone.left').length / settings.slideMove))) { - $this.resetSlide($el.find('.clone.left').length); - } - if (scene === 0) { - $this.resetSlide($slide.find('.lslide').length); - } - } - } - }; - refresh.calSlide(); - }, - resetSlide: function (s) { - var $this = this; - $slide.find('.lSAction a').addClass('disabled'); - setTimeout(function () { - scene = s; - $slide.css('transition-duration', '0ms'); - slideValue = $this.slideValue(); - $this.active($children, false); - plugin.move($el, slideValue); - setTimeout(function () { - $slide.css('transition-duration', settings.speed + 'ms'); - $slide.find('.lSAction a').removeClass('disabled'); - }, 50); - }, settings.speed + 100); - }, - slideValue: function () { - var _sV = 0; - if (settings.autoWidth === false) { - _sV = scene * ((slideWidth + settings.slideMargin) * settings.slideMove); - } else { - _sV = 0; - for (var i = 0; i < scene; i++) { - _sV += (parseInt($children.eq(i).width()) + settings.slideMargin); - } - } - return _sV; - }, - slideThumb: function () { - var position; - switch (settings.currentPagerPosition) { - case 'left': - position = 0; - break; - case 'middle': - position = (elSize / 2) - (thumbWidth / 2); - break; - case 'right': - position = elSize - thumbWidth; - } - var sc = scene - $el.find('.clone.left').length; - var $pager = $slide.parent().find('.lSPager'); - if (settings.mode === 'slide' && settings.loop === true) { - if (sc >= $pager.children().length) { - sc = 0; - } else if (sc < 0) { - sc = $pager.children().length; - } - } - var thumbSlide = sc * ((thumbWidth + settings.thumbMargin)) - (position); - if ((thumbSlide + elSize) > pagerWidth) { - thumbSlide = pagerWidth - elSize - settings.thumbMargin; - } - if (thumbSlide < 0) { - thumbSlide = 0; - } - this.move($pager, thumbSlide); - }, - auto: function () { - if (settings.auto) { - clearInterval(interval); - interval = setInterval(function () { - $el.goToNextSlide(); - }, settings.pause); - } - }, - pauseOnHover: function(){ - var $this = this; - if (settings.auto && settings.pauseOnHover) { - $slide.on('mouseenter', function(){ - $(this).addClass('ls-hover'); - $el.pause(); - settings.auto = true; - }); - $slide.on('mouseleave',function(){ - $(this).removeClass('ls-hover'); - if (!$slide.find('.lightSlider').hasClass('lsGrabbing')) { - $this.auto(); - } - }); - } - }, - touchMove: function (endCoords, startCoords) { - $slide.css('transition-duration', '0ms'); - if (settings.mode === 'slide') { - var distance = endCoords - startCoords; - var swipeVal = slideValue - distance; - if ((swipeVal) >= w - elSize - settings.slideMargin) { - if (settings.freeMove === false) { - swipeVal = w - elSize - settings.slideMargin; - } else { - var swipeValT = w - elSize - settings.slideMargin; - swipeVal = swipeValT + ((swipeVal - swipeValT) / 5); - - } - } else if (swipeVal < 0) { - if (settings.freeMove === false) { - swipeVal = 0; - } else { - swipeVal = swipeVal / 5; - } - } - this.move($el, swipeVal); - } - }, - - touchEnd: function (distance) { - $slide.css('transition-duration', settings.speed + 'ms'); - if (settings.mode === 'slide') { - var mxVal = false; - var _next = true; - slideValue = slideValue - distance; - if ((slideValue) > w - elSize - settings.slideMargin) { - slideValue = w - elSize - settings.slideMargin; - if (settings.autoWidth === false) { - mxVal = true; - } - } else if (slideValue < 0) { - slideValue = 0; - } - var gC = function (next) { - var ad = 0; - if (!mxVal) { - if (next) { - ad = 1; - } - } - if (!settings.autoWidth) { - var num = slideValue / ((slideWidth + settings.slideMargin) * settings.slideMove); - scene = parseInt(num) + ad; - if (slideValue >= (w - elSize - settings.slideMargin)) { - if (num % 1 !== 0) { - scene++; - } - } - } else { - var tW = 0; - for (var i = 0; i < $children.length; i++) { - tW += (parseInt($children.eq(i).width()) + settings.slideMargin); - scene = i + ad; - if (tW >= slideValue) { - break; - } - } - } - }; - if (distance >= settings.swipeThreshold) { - gC(false); - _next = false; - } else if (distance <= -settings.swipeThreshold) { - gC(true); - _next = false; - } - $el.mode(_next); - this.slideThumb(); - } else { - if (distance >= settings.swipeThreshold) { - $el.goToPrevSlide(); - } else if (distance <= -settings.swipeThreshold) { - $el.goToNextSlide(); - } - } - }, - - - - enableDrag: function () { - var $this = this; - if (!isTouch) { - var startCoords = 0, - endCoords = 0, - isDraging = false; - $slide.find('.lightSlider').addClass('lsGrab'); - $slide.on('mousedown', function (e) { - if (w < elSize) { - if (w !== 0) { - return false; - } - } - if ($(e.target).attr('class') !== ('lSPrev') && $(e.target).attr('class') !== ('lSNext')) { - startCoords = (settings.vertical === true) ? e.pageY : e.pageX; - isDraging = true; - if (e.preventDefault) { - e.preventDefault(); - } else { - e.returnValue = false; - } - // ** Fix for webkit cursor issue https://code.google.com/p/chromium/issues/detail?id=26723 - $slide.scrollLeft += 1; - $slide.scrollLeft -= 1; - // * - $slide.find('.lightSlider').removeClass('lsGrab').addClass('lsGrabbing'); - clearInterval(interval); - } - }); - $(window).on('mousemove', function (e) { - if (isDraging) { - endCoords = (settings.vertical === true) ? e.pageY : e.pageX; - $this.touchMove(endCoords, startCoords); - } - }); - $(window).on('mouseup', function (e) { - if (isDraging) { - $slide.find('.lightSlider').removeClass('lsGrabbing').addClass('lsGrab'); - isDraging = false; - endCoords = (settings.vertical === true) ? e.pageY : e.pageX; - var distance = endCoords - startCoords; - if (Math.abs(distance) >= settings.swipeThreshold) { - $(window).on('click.ls', function (e) { - if (e.preventDefault) { - e.preventDefault(); - } else { - e.returnValue = false; - } - e.stopImmediatePropagation(); - e.stopPropagation(); - $(window).off('click.ls'); - }); - } - - $this.touchEnd(distance); - - } - }); - } - }, - - - - - enableTouch: function () { - var $this = this; - if (isTouch) { - var startCoords = {}, - endCoords = {}; - $slide.on('touchstart', function (e) { - endCoords = e.originalEvent.targetTouches[0]; - startCoords.pageX = e.originalEvent.targetTouches[0].pageX; - startCoords.pageY = e.originalEvent.targetTouches[0].pageY; - clearInterval(interval); - }); - $slide.on('touchmove', function (e) { - if (w < elSize) { - if (w !== 0) { - return false; - } - } - var orig = e.originalEvent; - endCoords = orig.targetTouches[0]; - var xMovement = Math.abs(endCoords.pageX - startCoords.pageX); - var yMovement = Math.abs(endCoords.pageY - startCoords.pageY); - if (settings.vertical === true) { - if ((yMovement * 3) > xMovement) { - e.preventDefault(); - } - $this.touchMove(endCoords.pageY, startCoords.pageY); - } else { - if ((xMovement * 3) > yMovement) { - e.preventDefault(); - } - $this.touchMove(endCoords.pageX, startCoords.pageX); - } - - }); - $slide.on('touchend', function () { - if (w < elSize) { - if (w !== 0) { - return false; - } - } - var distance; - if (settings.vertical === true) { - distance = endCoords.pageY - startCoords.pageY; - } else { - distance = endCoords.pageX - startCoords.pageX; - } - $this.touchEnd(distance); - }); - } - }, - build: function () { - var $this = this; - $this.initialStyle(); - if (this.doCss()) { - - if (settings.enableTouch === true) { - $this.enableTouch(); - } - if (settings.enableDrag === true) { - $this.enableDrag(); - } - } - - $(window).on('focus', function(){ - $this.auto(); - }); - - $(window).on('blur', function(){ - clearInterval(interval); - }); - - $this.pager(); - $this.pauseOnHover(); - $this.controls(); - $this.keyPress(); - } - }; - plugin.build(); - refresh.init = function () { - refresh.chbreakpoint(); - if (settings.vertical === true) { - if (settings.item > 1) { - elSize = settings.verticalHeight; - } else { - elSize = $children.outerHeight(); - } - $slide.css('height', elSize + 'px'); - } else { - elSize = $slide.outerWidth(); - } - if (settings.loop === true && settings.mode === 'slide') { - refresh.clone(); - } - refresh.calL(); - if (settings.mode === 'slide') { - $el.removeClass('lSSlide'); - } - if (settings.mode === 'slide') { - refresh.calSW(); - refresh.sSW(); - } - setTimeout(function () { - if (settings.mode === 'slide') { - $el.addClass('lSSlide'); - } - }, 1000); - if (settings.pager) { - refresh.createPager(); - } - if (settings.adaptiveHeight === true && settings.vertical === false) { - $el.css('height', $children.eq(scene).outerHeight(true)); - } - if (settings.adaptiveHeight === false) { - if (settings.mode === 'slide') { - if (settings.vertical === false) { - plugin.setHeight($el, false); - }else{ - plugin.auto(); - } - } else { - plugin.setHeight($el, true); - } - } - if (settings.gallery === true) { - plugin.slideThumb(); - } - if (settings.mode === 'slide') { - plugin.slide(); - } - if (settings.autoWidth === false) { - if ($children.length <= settings.item) { - $slide.find('.lSAction').hide(); - } else { - $slide.find('.lSAction').show(); - } - } else { - if ((refresh.calWidth(false) < elSize) && (w !== 0)) { - $slide.find('.lSAction').hide(); - } else { - $slide.find('.lSAction').show(); - } - } - }; - $el.goToPrevSlide = function () { - if (scene > 0) { - settings.onBeforePrevSlide.call(this, $el, scene); - scene--; - $el.mode(false); - if (settings.gallery === true) { - plugin.slideThumb(); - } - } else { - if (settings.loop === true) { - settings.onBeforePrevSlide.call(this, $el, scene); - if (settings.mode === 'fade') { - var l = (length - 1); - scene = parseInt(l / settings.slideMove); - } - $el.mode(false); - if (settings.gallery === true) { - plugin.slideThumb(); - } - } else if (settings.slideEndAnimation === true) { - $el.addClass('leftEnd'); - setTimeout(function () { - $el.removeClass('leftEnd'); - }, 400); - } - } - }; - $el.goToNextSlide = function () { - var nextI = true; - if (settings.mode === 'slide') { - var _slideValue = plugin.slideValue(); - nextI = _slideValue < w - elSize - settings.slideMargin; - } - if (((scene * settings.slideMove) < length - settings.slideMove) && nextI) { - settings.onBeforeNextSlide.call(this, $el, scene); - scene++; - $el.mode(false); - if (settings.gallery === true) { - plugin.slideThumb(); - } - } else { - if (settings.loop === true) { - settings.onBeforeNextSlide.call(this, $el, scene); - scene = 0; - $el.mode(false); - if (settings.gallery === true) { - plugin.slideThumb(); - } - } else if (settings.slideEndAnimation === true) { - $el.addClass('rightEnd'); - setTimeout(function () { - $el.removeClass('rightEnd'); - }, 400); - } - } - }; - $el.mode = function (_touch) { - if (settings.adaptiveHeight === true && settings.vertical === false) { - $el.css('height', $children.eq(scene).outerHeight(true)); - } - if (on === false) { - if (settings.mode === 'slide') { - if (plugin.doCss()) { - $el.addClass('lSSlide'); - if (settings.speed !== '') { - $slide.css('transition-duration', settings.speed + 'ms'); - } - if (settings.cssEasing !== '') { - $slide.css('transition-timing-function', settings.cssEasing); - } - } - } else { - if (plugin.doCss()) { - if (settings.speed !== '') { - $el.css('transition-duration', settings.speed + 'ms'); - } - if (settings.cssEasing !== '') { - $el.css('transition-timing-function', settings.cssEasing); - } - } - } - } - if (!_touch) { - settings.onBeforeSlide.call(this, $el, scene); - } - if (settings.mode === 'slide') { - plugin.slide(); - } else { - plugin.fade(); - } - if (!$slide.hasClass('ls-hover')) { - plugin.auto(); - } - setTimeout(function () { - if (!_touch) { - settings.onAfterSlide.call(this, $el, scene); - } - }, settings.speed); - on = true; - }; - $el.play = function () { - $el.goToNextSlide(); - settings.auto = true; - plugin.auto(); - }; - $el.pause = function () { - settings.auto = false; - clearInterval(interval); - }; - $el.refresh = function () { - refresh.init(); - }; - $el.getCurrentSlideCount = function () { - var sc = scene; - if (settings.loop) { - var ln = $slide.find('.lslide').length, - cl = $el.find('.clone.left').length; - if (scene <= cl - 1) { - sc = ln + (scene - cl); - } else if (scene >= (ln + cl)) { - sc = scene - ln - cl; - } else { - sc = scene - cl; - } - } - return sc + 1; - }; - $el.getTotalSlideCount = function () { - return $slide.find('.lslide').length; - }; - $el.goToSlide = function (s) { - if (settings.loop) { - scene = (s + $el.find('.clone.left').length - 1); - } else { - scene = s; - } - $el.mode(false); - if (settings.gallery === true) { - plugin.slideThumb(); - } - }; - $el.destroy = function () { - if ($el.lightSlider) { - $el.goToPrevSlide = function(){}; - $el.goToNextSlide = function(){}; - $el.mode = function(){}; - $el.play = function(){}; - $el.pause = function(){}; - $el.refresh = function(){}; - $el.getCurrentSlideCount = function(){}; - $el.getTotalSlideCount = function(){}; - $el.goToSlide = function(){}; - $el.lightSlider = null; - refresh = { - init : function(){} - }; - $el.parent().parent().find('.lSAction, .lSPager').remove(); - $el.removeClass('lightSlider lSFade lSSlide lsGrab lsGrabbing leftEnd right').removeAttr('style').unwrap().unwrap(); - $el.children().removeAttr('style'); - $children.removeClass('lslide active'); - $el.find('.clone').remove(); - $children = null; - interval = null; - on = false; - scene = 0; - } - - }; - setTimeout(function () { - settings.onSliderLoad.call(this, $el); - }, 10); - $(window).on('resize orientationchange', function (e) { - setTimeout(function () { - if (e.preventDefault) { - e.preventDefault(); - } else { - e.returnValue = false; - } - refresh.init(); - }, 200); - }); - return this; - }; -}(jQuery)); \ No newline at end of file diff --git a/resources/assets/js/scriptResultPage.js b/resources/assets/js/scriptResultPage.js index 80259672b05d4cf65e90437f386388f872635e73..a9065587aee7c17ad560aac174b5a5057e358135 100644 --- a/resources/assets/js/scriptResultPage.js +++ b/resources/assets/js/scriptResultPage.js @@ -77,7 +77,6 @@ function getDocumentReadyForUse (fokus, custom = false) { theme(); fokiChanger(); pluginInfo(); - productWidget(); $('iframe:not(.resized)').iFrameResize(); $('iframe').addClass('resized'); addListeners(); @@ -270,99 +269,6 @@ function fokiChanger () { }); })(jQuery); -function productWidget () { - var isMobile = false; // initiate as false - // device detection - if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|ipad|iris|kindle|Android|Silk|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i.test(navigator.userAgent) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(navigator.userAgent.substr(0, 4))) isMobile = true; - if (isMobile) { - $('.lightSlider').lightSlider({ - item: 5, - loop: false, - slideMove: 2, - easing: 'cubic-bezier(0.25, 0, 0.25, 1)', - speed: 600, - pager: false, - prevHtml: 'Previous', - nextHtml: 'Next', - responsive: [{ - breakpoint: 1400, - settings: { - item: 4, - slideMove: 2 - } - }, { - breakpoint: 1200, - settings: { - item: 3, - slideMove: 2 - } - }, { - breakpoint: 980, - settings: { - item: 4, - slideMove: 2 - } - }, { - breakpoint: 720, - settings: { - item: 3, - slideMove: 1 - } - }, { - breakpoint: 520, - settings: { - item: 2, - slideMove: 1 - } - } ] - }); - } else { - $('.lightSlider').lightSlider({ - item: 5, - loop: false, - slideMove: 2, - easing: 'cubic-bezier(0.25, 0, 0.25, 1)', - speed: 600, - pager: false, - enableTouch: false, - enableDrag: false, - prevHtml: 'Previous', - nextHtml: 'Next', - responsive: [{ - breakpoint: 1400, - settings: { - item: 4, - slideMove: 2 - } - }, { - breakpoint: 1200, - settings: { - item: 3, - slideMove: 2 - } - }, { - breakpoint: 980, - settings: { - item: 4, - slideMove: 2 - } - }, { - breakpoint: 720, - settings: { - item: 3, - slideMove: 1 - } - }, { - breakpoint: 520, - settings: { - item: 2, - slideMove: 1 - } - } ] - }); - } - $('.lightSliderContainer').removeClass('hidden'); -} /** * Loads the content for a given fokus 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/assets/less/metager/beitritt.less b/resources/assets/less/metager/beitritt.less index c82ffb54ab3588e10b1c2d80cf705da787258dc5..1b9f4d503cb68aef4c67db66c3de541706ba4d89 100644 --- a/resources/assets/less/metager/beitritt.less +++ b/resources/assets/less/metager/beitritt.less @@ -1,83 +1,118 @@ /* Style für die Druckversion des Beitrittsformulars */ -@media print { - header { - display: none !important; - } - footer { - display: none !important; - } - h1 { - margin-top: 0 !important; - padding-top: 0 !important; - } - hr { - display: none !important; - } - input[type=text], - input[type=email] { - margin: 0px !important; - padding: 0px !important; - height: initial !important; - border: 0; - } - /* Skalierung für Firefox, absolut für die anderen Browser */ - input[type=radio] { - transform: scale(0.5); - -moz-transform: scale(0.5); - -ms-transform: scale(0.5); - -webkit-transform: scale(0.5); - -o-transform: scale(0.5); - width: 20px !important; - height: 20px !important; - margin-top: 0px !important; - padding-top: 0px !important; - } - input::-webkit-input-placeholder { - /* WebKit browsers */ - color: transparent !important; - } - input:-moz-placeholder { - /* Mozilla Firefox 4 to 18 */ - color: transparent !important; - } - input::-moz-placeholder { - /* Mozilla Firefox 19+ */ - color: transparent !important; - } - input:-ms-input-placeholder { - /* Internet Explorer 10+ */ - color: transparent !important; - } - .container { - width: auto !important; - margin: 0px; - padding: 0px; - } - .wrapper { - padding-top: 0 !important; - } - * { - font-size: 12px!important; - } - .beitritt-form-group { - margin: 0px !important; - padding: 0px !important; - margin-bottom: 0px !important; - } - .sign { - margin-top: 10px; - } - .donation-amount-input { - padding-top: 5px; - } - .pagebreak { - page-break-before: always; - } - #spendenaufruf { - display: none !important; - } - .beitritt-formular-info * { - font-size: 7pt !important; +#donation-form { + .beitritt-inputs { + display: flex; + flex-wrap: wrap; + >div { + width: 50%; + padding: 10px; + } + @media print { + padding: 0px; + flex-direction: column; + flex-wrap: nowrap; + } + } + label { + font-weight: normal; + } + .signature { + border-top: 1px dashed black; + width: 50%; + margin-top: 50px; + } + @media print { + * { + font-size: 14px !important; + } + header { + display: none !important; + } + footer { + display: none !important; + } + h1 { + margin-top: 0 !important; + padding-top: 0 !important; + font-size: 18px !important; + } + hr { + display: none !important; + } + label { + text-decoration: underline; + } + .help-block { + text-decoration: none; + } + input[type=text], + input[type=email] { + margin: 0px !important; + padding: 0px !important; + height: initial !important; + border: 0; + } + /* Passt die Größe der Radio-Buttons an + * Skalierung für Firefox, absolut für die anderen Browser + */ + input[type=radio] { + transform: scale(0.5); + width: 20px !important; + height: 20px !important; + margin-top: 0px !important; + padding-top: 0px !important; + } + /* Blendet die Placeholder aus */ + input::-webkit-input-placeholder { + /* WebKit browsers */ + color: transparent !important; + } + input:-moz-placeholder { + /* Mozilla Firefox 4 to 18 */ + color: transparent !important; + } + input::-moz-placeholder { + /* Mozilla Firefox 19+ */ + color: transparent !important; + } + input:-ms-input-placeholder { + /* Internet Explorer 10+ */ + color: transparent !important; + } + .container { + width: auto !important; + margin: 0px; + padding: 0px; + } + .wrapper { + padding-top: 0 !important; + } + * { + font-size: 12px!important; + } + .beitritt-form-group { + margin: 0px !important; + padding: 0px !important; + margin-bottom: 0px !important; + } + .sign { + margin-top: 10px; + } + .donation-amount-input { + padding-top: 5px; + } + .pagebreak { + page-break-before: always; + } + #spendenaufruf { + display: none !important; + } + .beitritt-formular-info { + margin-top: 50px; + * { + font-size: 7pt !important; + } + } } } \ No newline at end of file diff --git a/resources/assets/less/metager/foki.less b/resources/assets/less/metager/foki.less index 292e8f6630270bcb61025b794d033f84257a4aeb..f280ae9e9423135e5b43c561b436705f75549345 100644 --- a/resources/assets/less/metager/foki.less +++ b/resources/assets/less/metager/foki.less @@ -1,32 +1,36 @@ /* Rund ums Fokus Modal */ #show-create-focus:checked { - & + #create-focus-modal { + &+#create-focus-modal { + display: -webkit-box; + display: -ms-flexbox; display: flex; - } + } } #create-focus-modal { display: none; position: fixed; - justify-content: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; min-height: 100%; - background: linear-gradient(rgba(0,0,0,.7),rgba(0,0,0,.7)); + width: 100%; + background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .7)), to(rgba(0, 0, 0, .7))); + background: linear-gradient(rgba(0, 0, 0, .7), rgba(0, 0, 0, .7)); z-index: 150; - #foki-modal-dialog { background-color: white; - max-width: 70%; + max-width: 700px; margin: 30px auto; - height: 900px; + height: 90vh; overflow-y: auto; - #foki-modal-content { #foki-modal-header { padding: 15px; position: relative; border-bottom: 1px solid #e5e5e5; - #close-create-focus{ + #close-create-focus { position: absolute; right: 15px; &::after { @@ -35,39 +39,35 @@ } } } - .focus-dropdown-toggle { display: none; - &:not(:checked) { - & ~ .focus-dropdown-label ~ .row { + &~.focus-dropdown-label~.row { max-height: 0px; overflow: hidden; } } &:checked { - & ~ .focus-dropdown-label::after { + &~.focus-dropdown-label::after { content: "🡡"; } } } - .focus-dropdown-label { &::after { font-size: 16px; content: "🡣"; margin-left: 3px; } - - & ~ .row { - -webkit-transition: max-height 0.4s ease; /* Chrome 1-25, Safari 3.2+ */ - -moz-transition: max-height 0.4s ease; /* Firefox 4-15 */ - -o-transition: max-height 0.4s ease; /* Opera 10.50–12.00 */ + &~.row { + -webkit-transition: max-height 0.4s ease; + /* Chrome 1-25, Safari 3.2+ */ + /* Firefox 4-15 */ + /* Opera 10.50–12.00 */ transition: max-height 0.4s ease; max-height: 400px; } } } } - } \ No newline at end of file diff --git a/resources/assets/less/metager/general.less b/resources/assets/less/metager/general.less index ca5c862c3adabbb8b41a4d311a1f9efa1e11c954..7109f1b05ce22b5e6f2e24de9ae04cc6845c43dc 100644 --- a/resources/assets/less/metager/general.less +++ b/resources/assets/less/metager/general.less @@ -212,11 +212,14 @@ summary { font-weight: bold; } -@media print { - .noprint { +.noprint { + @media print { display: none!important; } } +.newpage { + page-break-after: always; +} nav { h1 { @@ -289,6 +292,13 @@ button { opacity: 0; transition: opacity 0.5s ease; } + + &.hide-tooltip-on-resultpage:after { /* Auf kleinen Bildschirmen wird der Tooltip nicht angezeigt */ + @media (max-width: 700px) { + display: none; + } + } + &.delayed:after { transition-delay: 0.5s; } diff --git a/resources/assets/less/metager/result-page.less b/resources/assets/less/metager/result-page.less index 820fe0bdc0148959f2f6d810330d936f235c1939..bc1ad6a089aec3dab84c166908a533ae4a26d2f0 100644 --- a/resources/assets/less/metager/result-page.less +++ b/resources/assets/less/metager/result-page.less @@ -388,6 +388,9 @@ p.mg-logo { #additions-container { padding-left: 50px; width: @quicktip-width; + #search-settings { + display: none; + } } } diff --git a/resources/assets/less/metager/result.less b/resources/assets/less/metager/result.less index e44b61876ec69284db84f451b72e26eb340161ea..47c8634042af9da9fd3074347bb154cb89f0262b 100644 --- a/resources/assets/less/metager/result.less +++ b/resources/assets/less/metager/result.less @@ -9,22 +9,31 @@ padding: 15px; width: 100%; .result-header { - .result-title { - margin: 0px; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - font-size: @result-font-large; - a { - &, - &:active, - &:hover, - &:focus, - &:visited { - color: black; - text-decoration: none; + .result-headline { + display: flex; + justify-content: space-between; + .result-title { + margin: 0px; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + font-size: @result-font-large; + a { + &, + &:active, + &:hover, + &:focus, + &:visited { + color: black; + text-decoration: none; + } } } + .result-hoster { + margin-left: 20px; + color: #808080; + white-space: nowrap; + } } .result-link { display: block; @@ -32,6 +41,7 @@ text-overflow: ellipsis; white-space: nowrap; font-size: @result-font-small; + width: auto; &, &:active, &:hover, @@ -140,7 +150,7 @@ & a:focus, & a:visited { font-size: @result-font-small; - color: #555; + color: #808080; } } &>.remover { diff --git a/resources/assets/less/metager/searchbar.less b/resources/assets/less/metager/searchbar.less index 7df13968b9904cd30bff17812de22ce44c0b6a97..78fe580dea97a7a75a1dbf254f12a7225671fca9 100644 --- a/resources/assets/less/metager/searchbar.less +++ b/resources/assets/less/metager/searchbar.less @@ -1,138 +1,27 @@ /* Suchleiste */ .searchbar { + display: -webkit-box; + display: -ms-flexbox; display: flex; - align-items: stretch; - justify-content: center; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; font-size: 16px; background-color: transparent; color: #333; &>* { background-color: white; } - .search-focus-selector { - border-radius: 5px 0px 0px 5px; - display: flex; - align-items: center; - position: relative; - @media(max-width: @screen-xs-max) { - display: none; - } - &>button { - border: none; - border-right: 1px solid rgb(170, 170, 170); - background-color: white; - margin: 5px; - } - .search-settings:only-child { - padding: 5px; - border-right: solid 1px #ccc; - } - select { - width: 100%; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - background-color: transparent; - padding: 0px 35px 0px 5px; - font-family: FontAwesome, sans-serif; - border: none; - &>option { - font-family: FontAwesome, sans-serif; - } - } - &:after { - content: "\f078"; - font: 15px "FontAwesome", sans-serif; - line-height: 30px; - background-color: transparent; - right: 8px; - top: 2px; - padding: 2px 2px 2px 5px; - position: absolute; - pointer-events: none; - } - } - .search-option-frame { - display: flex; - position: absolute; - background-color: white; - top: 50px; - padding: 10px; - border: 1px solid rgb(175, 175, 175); - border-radius: 4px; - .searchbar-options-arrow { - width: 0; - height: 0; - top: -5px; - position: absolute; - border-left: 5px solid transparent; - border-right: 5px solid transparent; - border-bottom: 5px solid rgb(175, 175, 175); - margin-left: 3%; - } - #settings-btn { - width: 100%; - display: flex; - justify-content: space-between; - align-items: baseline; - padding: 0px; - i.fa { - padding: 0px 8px; - } - } - } - .search-button-container { - display: flex; - margin-top: 3%; - @media (max-width: @screen-xs-max) { - flex-direction: column; - } - >* { - display: flex; - justify-content: space-between; - align-items: center; - &:hover { - background-color: #e6e6e6; - } - } - } - .search-add-focus { - position: relative; - button { - background-color: white; - border: none; - padding: 0px 8px; - font-size: 16px; - &:hover { - background-color: #e6e6e6; - } - } - } - .search-edit-focus { - position: relative; - button { - background-color: transparent; - border: none; - padding: 0px 8px; - font-size: 16px; - &:hover { - background-color: #e6e6e6; - } - } - } - .search-settings { - position: relative; - a.btn { - border: none; - padding: 0px 8px; - display: block; - align-items: center; - font-size: 16px; - } - } .search-input-submit { - flex-grow: 1; + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + display: -webkit-box; + display: -ms-flexbox; display: flex; max-width: 600px; @media (max-width: @screen-xs-max) { @@ -140,16 +29,18 @@ } } .search-input { - flex-grow: 1; + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; input { border: none; border-bottom: none; height: 40px; - box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; &:focus { outline-color: rgb(255, 128, 0); -webkit-box-shadow: 0px 0px 2px 2px rgba(255, 128, 0, 1); - -moz-box-shadow: 0px 0px 2px 2px rgba(255, 128, 0, 1); box-shadow: 0px 0px 2px 2px rgba(255, 128, 0, 1); border-color: rgba(255, 128, 0, 1); } @@ -172,22 +63,10 @@ display: none; } @media (max-width: @screen-xs-max) { - flex-direction: column-reverse; - } -} - -label:hover+.searchbar-tooltip { - display: inline-block; - top: 30px; - left: -10px; - @media (max-width: 799px) { - display: none; - } -} - -.search-option-descriptor { - @media (min-width: @screen-sm-min) { - display: none; + -webkit-box-orient: vertical; + -webkit-box-direction: reverse; + -ms-flex-direction: column-reverse; + flex-direction: column-reverse; } } @@ -251,41 +130,19 @@ label:hover+.searchbar-tooltip { } } -.searchbar-tooltip { - display: none; - position: absolute; - &>.searchbar-tooltip-arrow { - position: absolute; - top: -4px; - left: 20px; - width: 0; - height: 0; - border-left: 5px solid transparent; - border-right: 5px solid transparent; - border-bottom: 5px solid #ff8000; - } - &>.searchbar-tooltip-content { - position: relative; - &>p { - display: inline-block; - background: #ff8000; - border-radius: .25em; - font-size: 16px; - color: white; - padding: 5px 10px; - white-space: nowrap; - } - } -} - @resultpage-leftbox-max-width: @result-width; @resultpage-leftbox-min-dist-left-right: 8px; @resultpage-leftbox-min-dist-top-bottom: 8px; @resultpage-leftbox-big-screen-margin-left: 50px; header { padding-top: @resultpage-leftbox-min-dist-top-bottom; + display: -webkit-box; + display: -ms-flexbox; display: flex; - flex-direction: column; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; position: fixed; z-index: 100; // Makes the header larger, so it correctly covers the non scrolling parts below width: @resultpage-leftbox-max-width + @resultpage-leftbox-big-screen-margin-left + 10; @@ -297,7 +154,9 @@ header { margin: 0px; padding: @resultpage-leftbox-min-dist-top-bottom @resultpage-leftbox-min-dist-left-right 0px @resultpage-leftbox-min-dist-left-right; -webkit-box-pack: center; - align-items: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; } #research-bar { width: 100%; @@ -306,10 +165,17 @@ header { background-color: white; border: 1px solid #ccc; border-bottom: 2px solid rgb(255, 128, 0); + display: -webkit-box; + display: -ms-flexbox; display: flex; - align-items: center; - justify-content: center; - box-shadow: 0px 1px 1.5px 0px rgba(0, 0, 0, 0.12), 1px 0px 1px 0px rgba(0, 0, 0, 0.24); + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + -webkit-box-shadow: 0px 1px 1.5px 0px rgba(0, 0, 0, 0.12), 1px 0px 1px 0px rgba(0, 0, 0, 0.24); + box-shadow: 0px 1px 1.5px 0px rgba(0, 0, 0, 0.12), 1px 0px 1px 0px rgba(0, 0, 0, 0.24); @media (max-width: 799px) { margin: 0px @resultpage-leftbox-min-dist-left-right; } @@ -323,41 +189,54 @@ header:nth-child(1) { } #foki { + display: -webkit-box; + display: -ms-flexbox; display: flex; - justify-content: left; + -webkit-box-pack: left; + -ms-flex-pack: left; + justify-content: left; margin-left: @resultpage-leftbox-big-screen-margin-left; padding-top: 8px; width: @resultpage-leftbox-max-width; @media (max-width: 799px) { width: 100%; margin: 0px; + display: -webkit-box; + display: -ms-flexbox; display: flex; - justify-content: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; padding: @resultpage-leftbox-min-dist-top-bottom @resultpage-leftbox-min-dist-left-right 0px @resultpage-leftbox-min-dist-left-right; } #foki-box { + display: -webkit-box; + display: -ms-flexbox; display: flex; width: 100%; max-width: @resultpage-leftbox-max-width; - background-color: white; - border: 1px solid #ccc; - box-shadow: 0px 1px 1.5px 0px rgba(0, 0, 0, 0.12), 1px 0px 1px 0px rgba(0, 0, 0, 0.24); - overflow-x: auto; + background-color: white; + border: 1px solid #ccc; + -webkit-box-shadow: 0px 1px 1.5px 0px rgba(0, 0, 0, 0.12), 1px 0px 1px 0px rgba(0, 0, 0, 0.24); + box-shadow: 0px 1px 1.5px 0px rgba(0, 0, 0, 0.12), 1px 0px 1px 0px rgba(0, 0, 0, 0.24); + overflow-x: visible; padding: 10px; - overflow-x: auto; - &>div { - padding: 0px 10px; - &>a { - color: black; + @media (max-width: 700px) { + overflow-x: auto; } + &>div { + padding: 0px 10px; + &>a { + color: black; + } &.active>a { border-bottom: 1px solid rgb(255, 128, 0); color: rgb(255, 128, 0); + } } - } .edit-focus { - margin-left: 7px; - } + margin-left: 7px; + } /* Scrollbar Style */ &::-webkit-scrollbar { height: 0px; @@ -382,16 +261,24 @@ header:nth-child(1) { width: 20px; height: 40px; top: 1px; + pointer-events: none; } &-left { + background: -webkit-gradient(linear, left top, right top, from(@scrollfade-color), color-stop(fade(@scrollfade-color, 80%)), to(fade(@scrollfade-color, 0%))); background: linear-gradient(to right, @scrollfade-color, fade(@scrollfade-color, 80%), fade(@scrollfade-color, 0%)); left: 1px; } &-right { + background: -webkit-gradient(linear, right top, left top, from(@scrollfade-color), color-stop(fade(@scrollfade-color, 80%)), to(fade(@scrollfade-color, 0%))); background: linear-gradient(to left, @scrollfade-color, fade(@scrollfade-color, 80%), fade(@scrollfade-color, 0%)); right: 1px; } } + + .search-option-frame { + position: relative; + } + } #research-bar-placeholder { diff --git a/resources/assets/less/metager/sidebar.less b/resources/assets/less/metager/sidebar.less index b26ed9ddf7ce33ddcd723b1ec05f7330dd73e8d4..163817c812cab74561fbb2f09cb154cffd04b248 100644 --- a/resources/assets/less/metager/sidebar.less +++ b/resources/assets/less/metager/sidebar.less @@ -160,6 +160,7 @@ label#openSidebar { &:hover { color: rgb(255, 128, 0); } + .noprint; } @media (max-width: @screen-xs-max) { diff --git a/resources/assets/less/metager/specific.less b/resources/assets/less/metager/specific.less index b14bda2545d7f55cce36974524a2c7bbcd2894ff..4a460e07a9fc94dc9254d4d2c7d2dcbeb6465b19 100644 --- a/resources/assets/less/metager/specific.less +++ b/resources/assets/less/metager/specific.less @@ -93,7 +93,7 @@ textarea#message { font-size: 20px; } -.bitcoins { +.donation-others { text-align: center; padding: 30px; } @@ -124,12 +124,13 @@ a.content.hidden-xs { color: @a-content-hidden-xs-color; } -a.navbar-brand { +.navbar-brand { line-height: 100%!important; padding: 0; position: absolute; z-index: 5; left: 10px; + .noprint; } .dotlist li { @@ -218,12 +219,6 @@ main { font-weight: bold; } -.signature { - border-top: 1px dashed black; - width: 50%; - margin-top: 16px; -} - .fake-result { *:hover { overflow: visible !important; diff --git a/resources/lang/de/beitritt.php b/resources/lang/de/beitritt.php index d3d4acae7b206bb8bd759af56f98eadd28903090..4ff2ac392205845bd11b77a96abbb1f020b409e4 100644 --- a/resources/lang/de/beitritt.php +++ b/resources/lang/de/beitritt.php @@ -1,7 +1,7 @@ 'SUMA-EV Beitrittserklärung', + 'heading.1' => 'SUMA-EV Aufnahmeantrag', 'beitritt.1' => 'Hiermit erkläre ich,', 'placeholder.1' => 'Name, Vorname', 'beitritt.2' => 'für die Firma:', @@ -21,7 +21,7 @@ return [ 'beitritt.12' => 'Ja', 'beitritt.13' => 'Nein', 'beitritt.14' => 'Ort, Datum:', - 'abbuchung.1' => 'Unterschrift nach Ausdrucken des Formulars', + 'unterschrift' => 'Unterschrift nach Ausdrucken des Formulars', 'abbuchung.2' => 'Abbuchungsermächtigung', 'abbuchung.3' => 'Hiermit ermächtige ich den "SUMA-EV - Verein für freien Wissenszugang" den o.g. Mitgliedsbeitrag von meinem Konto abzubuchen.', 'abbuchung.4' => 'Name des Kontoinhabers:', @@ -30,10 +30,10 @@ return [ 'abbuchung.7' => 'BIC (oder BLZ):', 'abbuchung.8' => 'Ort, Datum:', 'anweisung.1' => 'Bitte drucken Sie das Formular nach Ausfüllen aus und unterschreiben an beiden ......... Linien; dann können Sie es', - 'anweisung.2' => 'faxen an 0511 34 00 10 23 (und schicken uns eine kurze EMail dazu, dass Sie das Beitrittsformular gefaxt haben, denn Faxgeräte sind manchmal inkompatibel) oder', + 'anweisung.2' => 'faxen an 0511 34 00 10 23 (und schicken uns eine kurze E-Mail dazu, dass Sie das Beitrittsformular gefaxt haben, denn Faxgeräte sind manchmal inkompatibel) oder', 'anweisung.3' => 'per Post senden an: SUMA-EV, Röselerstr. 3, 30159 Hannover oder', 'anweisung.4' => 'einscannen und an office@suma-ev.de mailen.', - 'anweisung.5' => 'Beim Versenden per Post oder Fax informieren Sie uns bitte kurz per email an office@suma-ev.de', + 'anweisung.5' => 'Beim Versenden per Post oder Fax informieren Sie uns bitte kurz per E-Mail an office@suma-ev.de', 'anweisung.6' => 'Mitgliedsbeiträge an den SUMA-EV sind steuerlich absetzbar, da der Verein vom Finanzamt Hannover Nord als gemeinnützig anerkannt ist. Für die Absetzbarkeit beim Finanzamt genügt bei Mitgliedsbeiträgen oder Spenden bis 200€ normalerweise eine Kopie des Kontoauszugs (die übrigen Posten dürfen geschwärzt sein). Auf Wunsch können wir Ihnen auch eine Spendenbescheinigung ausstellen.', 'anweisung.7' => 'Drucken', ]; diff --git a/resources/lang/de/index.php b/resources/lang/de/index.php index 19200632c5009f2649ae5a8ce11d2838624555b8..6c892e77917805e2e24971bd2c8b2226f624e94c 100644 --- a/resources/lang/de/index.php +++ b/resources/lang/de/index.php @@ -37,8 +37,8 @@ return [ 'sponsors.seo' => 'Suchmaschinenoptimierung', 'about.title' => 'Über uns', - 'about.1.1' => 'Datenschutz & Privatsphäre sind bei uns einfach & selbstverständlich.', - 'about.2.1' => 'Wir arbeiten nicht gewinnorientiert, wir sind ein gemeinnütziger Verein.', + 'about.1.1' => 'Datenschutz & Privatsphäre: Bei uns einfach & selbstverständlich.', + 'about.2.1' => 'Wir arbeiten nicht gewinnorientiert, wir sind ein gemeinnütziger Verein: Werden Sie Mitglied!', 'about.3.1' => '', 'placeholder' => 'MetaGer: Sicher suchen & finden, Privatsphäre schützen', @@ -50,6 +50,7 @@ return [ 'plugin.head.5' => 'MetaGer zum Microsoft Edge hinzufügen', 'plugin.head.6' => 'MetaGer zum Safari hinzufügen', 'plugin.head.7' => 'MetaGer zum Vivaldi hinzufügen', + 'plugin.head.8' => 'MetaGer zum Firefox Klar hinzufügen', 'plugin.head.info' => '(aktuelle Sucheinstellungen werden übernommen)', 'plugin.firefox.1' => 'Klicken Sie in Ihrem Browser oben rechts im Suchfeld auf die Lupe mit dem kleinen "+" und dann auf "MetaGer hinzufügen" (siehe Bild)', @@ -58,6 +59,11 @@ return [ 'plugin.firefox.4' => 'Klicken Sie oben rechts im Browser auf die drei horizontalen Striche (Menü) und öffnen Sie die "Einstellungen"', 'plugin.firefox.5' => 'Tragen Sie im Feld "Startseite" "https://metager.de" ein.', + 'plugin.firefox-klar.1' => 'Öffnen Sie die Einstellungen Ihres Browsers über das Zahnrad (unter Android ) rechts neben der Suchleiste', + 'plugin.firefox-klar.2' => 'Klicken Sie unter dem Menüpunkt "Suche" auf "Suchmaschine". Aktuell wird die voreingestellte Suchmaschine angezeigt (siehe Bild)', + 'plugin.firefox-klar.3' => 'Klicken Sie auf "Weitere Suchmaschine hinzufügen" und füllen Sie die Felder wie im Bild aus.', + 'plugin.firefox-klar.4' => 'Achten Sie hierbei darauf, dass sich keine Leerzeichen am Ende des Suchstrings "einschleichen", da Firefox Klar die Speicherung der Einstellung sonst verweigert.', + 'plugin.chrome.1' => 'Klicken Sie in Ihrem Chrome oben rechts auf und im folgenden Menü auf "Einstellungen", um die Einstellungen Ihres Chromes zu öffnen.', 'plugin.chrome.2' => 'Im Bereich "Suchen" klicken Sie auf Suchmaschinen verwalten...', 'plugin.chrome.3' => 'In der nun angezeigten Liste, finden Sie den Eintrag "MetaGer". Fahren Sie mit der Maus über den Eintrag und klicken auf "Als Standard festlegen"', diff --git a/resources/lang/de/staticPages.php b/resources/lang/de/staticPages.php index 9a13cb74eec7641eb4a4aa951e2f9c3cc95f367f..5481aac34f29e73a915685c7792a4c4bcef6de27 100644 --- a/resources/lang/de/staticPages.php +++ b/resources/lang/de/staticPages.php @@ -24,7 +24,7 @@ return [ 'nav20' => 'Hilfe', 'nav21' => 'FAQ', 'nav22' => 'Zitatsuche', - 'nav23' => 'Beitrittsformular SUMA-EV', + 'nav23' => 'Aufnahmeantrag SUMA-EV', 'nav24' => 'MetaGer Quellcode', 'nav25' => 'MetaGer App', 'navigationToggle' => 'Navigation anzeigen', diff --git a/resources/lang/en/index.php b/resources/lang/en/index.php index d47044b70e7f4b8d10d1d5b55e4db7ab8f88358d..d3e24504ebc0ade87d130290206864fe0c03aae7 100644 --- a/resources/lang/en/index.php +++ b/resources/lang/en/index.php @@ -8,28 +8,36 @@ return [ "foki.produkte" => "Shopping", "foki.angepasst" => "Customized", "foki.maps" => "maps.metager.de", + "design" => "select personal theme", + "conveyor" => "Purchase at affiliate shops", "partnertitle" => "Support MetaGer without any costs to you", "mapstitle" => "MetaGer Maps Service", + "plugin" => "Add MetaGer-Plugin", "plugintitle" => "add MetaGer to your browser", + "focus-creator.head" => "Customize search", "focus-creator.description" => "Arrange a personal search", "focus-creator.name-placeholder" => "Label of search focus", "focus-creator.save" => "Save search focus", "focus-creator.delete" => "Delete search focus", "focus-creator.focusname" => "Focus:", + "sponsors.head.1" => "Further Information", "sponsors.head.2" => "Protect Yourself", "sponsors.woxikon" => "Use MetaGer against Snoopers:", "sponsors.seo" => "Click results by \"open anonymously\"", "sponsors.gutscheine" => "and you are fully protected.", + "about.title" => "About Us", "about.1.1" => "We provide privacy & data protection.", "about.2.1" => "We are a non profit NGO. Our source code is open:", "about.3.1" => "Everyone might check our data protection & privacy features.", + "placeholder" => "MetaGer: Privacy Protected Search & Find", + "plugin.head.1" => "Add MetaGer to your Firefox", "plugin.head.2" => "Add MetaGer to your Chrome", "plugin.head.3" => "Add MetaGer to your Opera", @@ -37,12 +45,21 @@ return [ "plugin.head.5" => "Add MetaGer to your Microsoft Edge", "plugin.head.6" => "Add MetaGer to your Safari", "plugin.head.7" => "Add Metager to your Vivaldi", + "plugin.head.8" => "Add MetaGer to your Firefox Focus", "plugin.head.info" => "(selected search preferences will be used)", + "plugin.firefox.1" => "Click on the magnifying glass with the small green \"+\" and then on \"Add MetaGer..\" (picture 1)", "plugin.firefox.2" => "Now right click on the new MetaGer Logo in the List and select \"Make MetaGer the default search engine\" (picture2)", "plugin.firefox.3" => "Use MetaGer as start page in :browser", "plugin.firefox.4" => "Click top right in your browser on the three small horizontal lines (menu) and open \"Preferences\"", "plugin.firefox.5" => "Type in field \"Home Page\" => \"https://metager.de/en/\"", + + 'plugin.firefox-klar.1' => 'Click on the cog icon next to the searchbar to open your browser settings (click on when using an Android device)', + 'plugin.firefox-klar.2' => 'Select \'Searchengine\' under the \'Search\' menu item (see picture below).', + 'plugin.firefox-klar.3' => 'Click on \'Add another search engine\' and fill in the textfields as seen in the picture below.', + 'plugin.firefox-klar.4' => 'Be careful not to add whitespaces at the end of the searchstring, otherwise Firefox Focus won\'t let you save your changes.', + + "plugin.chrome.1" => "Click in your Chrome browser on and in the next menu on \"Preferences\" to open the settings of your Chrome browser", "plugin.chrome.2" => "Click in field \"Search\" on manage search engines", "plugin.chrome.3" => "Now you will find an entry \"MetaGer\". Move your mouse over that entry and click on \"Standard\",", @@ -51,6 +68,7 @@ return [ "plugin.chrome.6" => "In the field \"Start\" choose \"Open specific Page/s\" and then click on \"Choose Page/s\"", "plugin.chrome.7" => "Type in https://metager.de/en/\" as URL at \"Add new page\"", "plugin.chrome.8" => "Hint: Every Webpage in this field will be opened when you start your browser. You can delete entries by moving the mouse on it and click \"x\"", + "plugin.opera.1" => "Click on hier to open MetaGer in a new TAB", "plugin.opera.2" => "In that news TAB click with the right mouse button within the search field in the middle of the page", "plugin.opera.3" => "Choose \"create search engine\" in the menu", @@ -61,6 +79,7 @@ return [ "plugin.opera.8" => "In the field \"Start\" choose \"Open specific Page\\/s\" and then click on \"Choose Page\\/s\"", "plugin.opera.9" => "Type in https://metager.de/en/\" as URL at \"Add new page\"", "plugin.opera.10" => "Click on OK", + "plugin.IE.1" => "Click here to add MetaGer as search engine", "plugin.IE.4" => "Click top right in your browser on \"Extras\"", "plugin.IE.5" => "Choose the menu \"manage Add-Ons\"", @@ -70,6 +89,7 @@ return [ "plugin.IE.9" => "Click at top right in your browser on and open \"Internet Options\"", "plugin.IE.10" => "If MetaGer should be your only startpage mark the existing text within the text field, and replace it by \"https://metager.de/en/\"", "plugin.IE.11" => "Click on OK", + "plugin.edge.1" => "Click in your browser top right on Extras (", "plugin.edge.2" => ") and choose \"Preferences\"", "plugin.edge.3" => "Scroll down and click on \"Show adavanced Preferences\"", @@ -81,12 +101,15 @@ return [ "plugin.edge.9" => "Choose \"User defined\" within drop down menu", "plugin.edge.10" => "Type \"https://metager.de/en/\" in field \"Webaddress\" and click on \"+\"", "plugin.edge.11" => "Delete all entries which should not be opened at start (for example \"about:start\") by click on \"x\"", + "plugin.safari.1" => "Install the Safari-PlugIn OpenSearchforSafari.", "plugin.safari.2" => "Open MetaGer and add MetaGer by the OpenSearch-button within the Safari menu", "plugin.safari.3" => "Delete (if you want) other search engines by clicking on \"X\"", "plugin.safari.4" => "Now you might search with MetaGer via the OpenSearch-button (magnifying glass symbol)", + "plugin.faq.1" => "See also:", "plugin.faq.2" => "Metager FAQ - Plugin", + "plugin.vivaldi.1" => "Click the red logo \"Vivaldi\" at the top left of your web browser. Then select \"Tools / Preferences\"", "plugin.vivaldi.2" => "Within the new menu choose \"search\"", "plugin.vivaldi.3" => "Select \"Add new search\"", diff --git a/resources/lang/es/result.php b/resources/lang/es/result.php index 35490ecf55c0b53bf6f63e6fd1ccfd754dd9d070..8e67954d0f7724a0f9b1ace67748ddc6e10694c8 100644 --- a/resources/lang/es/result.php +++ b/resources/lang/es/result.php @@ -1,10 +1,12 @@ "Nueva búsqueda en este dominio", - "options.2" => "ocultar :host", - "options.3" => "ocultar *.:domain", - "options.4" => "Tienda asociada", - "options.5" => "abrir anónimo", - "proxytext" => "Abrirá el link anonimizado.", + "options.headline" => "Opciónes", + "options.savetab" => "Grabar resultado", + "options.1" => "Nueva búsqueda en este dominio", + "options.2" => "ocultar :host", + "options.3" => "ocultar *.:domain", + "options.4" => "Tienda asociada", + "options.5" => "abrir anónimo", + "proxytext" => "Abrirá el link anonimizado." ]; diff --git a/resources/views/index.blade.php b/resources/views/index.blade.php index eafc2bada0ec3a49703e9325c7c2338d58140cb3..07350606a49a31de71db92105ec53752f78f6475 100644 --- a/resources/views/index.blade.php +++ b/resources/views/index.blade.php @@ -11,6 +11,7 @@ @include('parts.searchbar', ['class' => 'startpage-searchbar']) + @endsection @section('optionalContent') diff --git a/resources/views/kontakt/kontakt.blade.php b/resources/views/kontakt/kontakt.blade.php index 59c96e3bb9bedf64ae2517e197f4cf399119b6ec..9ed0fe595fbe1b63ed93cebd4f735d0379e3c2bd 100644 --- a/resources/views/kontakt/kontakt.blade.php +++ b/resources/views/kontakt/kontakt.blade.php @@ -12,7 +12,7 @@ @endforeach @endif -
    + {{ csrf_field() }}
    diff --git a/resources/views/layouts/ad.blade.php b/resources/views/layouts/ad.blade.php index b5f906dbb0a70ef270ca57e562e1a60e416a05e5..09476d1adfe406b1dc6e527f4621b205d88a200e 100644 --- a/resources/views/layouts/ad.blade.php +++ b/resources/views/layouts/ad.blade.php @@ -1,13 +1,15 @@ @if(isset($ad) && !$apiAuthorized)
    - Werbung von {!! $ad->gefVon !!}
    -

    - - {{ $ad->titel }} - -

    + {{ $ad->anzeigeLink }} diff --git a/resources/views/layouts/products.blade.php b/resources/views/layouts/products.blade.php deleted file mode 100644 index 78635355dea494818e31b27255f27421dbad4235..0000000000000000000000000000000000000000 --- a/resources/views/layouts/products.blade.php +++ /dev/null @@ -1,20 +0,0 @@ -
    -

    - @lang('results.produktanzeigen') -

    - -
    \ No newline at end of file diff --git a/resources/views/layouts/researchandtabs.blade.php b/resources/views/layouts/researchandtabs.blade.php index 5d674dafbe492feb59bb7b0255adb1337ee676bf..a354bbebd8b353f5a7ba5838b5c5f24b9f40060a 100644 --- a/resources/views/layouts/researchandtabs.blade.php +++ b/resources/views/layouts/researchandtabs.blade.php @@ -1,13 +1,3 @@ -@if( strpos(rtrim(Request::header('REFERER'), '/'), LaravelLocalization::getLocalizedURL(LaravelLocalization::getCurrentLocale(), "/") ) === 0 && ( $browser === 'Firefox' || $browser === 'Mozilla' || $browser === 'Chrome' || $browser === 'IE' || $browser === 'Edge') ) - -@endif