From c5890d037e6d560160c63cb6a1e594559f53befc Mon Sep 17 00:00:00 2001 From: Dominik Hebeler <dominik@suma-ev.de> Date: Tue, 11 Jun 2019 13:49:06 +0200 Subject: [PATCH] implemented stronger caching for possible spam --- app/Http/Controllers/MetaGerSearch.php | 18 +++++++++++++++++- config/spam.txt | 6 ++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 config/spam.txt diff --git a/app/Http/Controllers/MetaGerSearch.php b/app/Http/Controllers/MetaGerSearch.php index 46e04a658..be31c4736 100644 --- a/app/Http/Controllers/MetaGerSearch.php +++ b/app/Http/Controllers/MetaGerSearch.php @@ -16,6 +16,11 @@ class MetaGerSearch extends Controller { public function search(Request $request, MetaGer $metager) { + $spamEntries = []; + if (file_exists(config_path('spam.txt'))) { + $spamEntries = file(config_path('spam.txt')); + } + $focus = $request->input("focus", "web"); if ($focus === "maps") { @@ -35,6 +40,10 @@ class MetaGerSearch extends Controller # Nach Spezialsuchen überprüfen: $metager->checkSpecialSearches($request); + if (Cache::has('spam.' . $metager->getFokus() . "." . md5($metager->getQ()))) { + return response(Cache::get('spam.' . $metager->getFokus() . "." . md5($metager->getQ()))); + } + # Die Quicktips als Job erstellen $quicktips = $metager->createQuicktips(); @@ -66,7 +75,14 @@ class MetaGerSearch extends Controller $pipeline->execute(); # Die Ausgabe erstellen: - return $metager->createView($quicktipResults); + $resultpage = $metager->createView($quicktipResults); + foreach ($spamEntries as $index => $entry) { + $entry = trim($entry); + if (preg_match("/" . $entry . "/si", $metager->getEingabe())) { + Cache::put('spam.' . $metager->getFokus() . "." . md5($metager->getQ()), $resultpage->render(), 1440); + } + } + return $resultpage; } public function loadMore(Request $request) diff --git a/config/spam.txt b/config/spam.txt new file mode 100644 index 000000000..67e6cc857 --- /dev/null +++ b/config/spam.txt @@ -0,0 +1,6 @@ +^[\d]{3}chan +"155chan" +^hebe chan$ +^jailbait chan$ +^http[s]{0,1}:\/\/[\d]{3}chan\..{2} +^susimail\s+-site:[^\s]+\s-site: \ No newline at end of file -- GitLab