Starting to refactor purjolok WIP
[SonOfLokstallBot.git] / purjolok.php
index 185da44..4566cea 100644 (file)
@@ -19,20 +19,17 @@ getTelegram()->addCommand(
         protected $description = 'Search through the movie collection';
 
         public function handle($arguments) {
-            $results = array_map(
-                function($moviename) use ($arguments) {
-                    similar_text($arguments, substr($moviename, 0, -7) ?: '', $perc);
-                    return ['title' => $moviename, 'similarity' => $perc];
-            },
-                scandir('/mnt/media/Movies')
+            $top5 = ∘(unlines, aaray_column('title'), aaray_slice(0)(5), 'array_reverse', 'array_values', ssort(∘(∘f(field('similarity')), ⬄, field('similarity'))));
+            $movies = map(function($movie) use ($arguments) {
+                similar_text($arguments, substr($movie, 0, -7) ?: '', $perc);
+                return ['title' => $movie, 'similarity' => $perc];
+            })(scandir('/mnt/media/Movies'));
+
+            $this->replyWithMessage(
+                [
+                    'text' => "Here are the most similar movies titles I could find...\n\n" . $top5($movies)
+                ]
             );
-
-            uasort($results, function($a, $b) {
-                return $b['similarity'] <=> $a['similarity'];
-            });
-
-            $results = array_column(array_slice(array_values($results), 0, 5), 'title');
-            $this->replyWithMessage(['text' => "Here are the most similar movies titles I could find...\n\n" . implode("\n", $results)]);
         }
     }
 );