Report new simfiles in the digest
authorCameron Ball <cameron@moodle.com>
Thu, 30 May 2019 08:00:17 +0000 (16:00 +0800)
committerCameron Ball <cameron@moodle.com>
Thu, 30 May 2019 08:00:17 +0000 (16:00 +0800)
src/gnb.php
src/prankdigest.php

index cb76238..0463cdb 100644 (file)
@@ -186,7 +186,18 @@ getTelegram()->addCommand(
             $faveDiff = array_diff_assoc($faveMap, $oldFaveMap);
             $newFaves = zzipWith(∘(concat, flip(concat)(" in "), field(1), delemit('/'), ∘(flip(field))($songHashMap)))(array_keys($faveDiff))(array_values($faveDiff));
             $chatid = getTelegram()->getWebhookUpdates()->get('message')->get('chat')->get('id');
-            if ($pranks || $newFaves) {
+
+            $c = lines(trim(file_get_contents(glob(PATH_TO_GROOVENET . '/songs.*.txt')[0])));
+            $newSongHashMap = [];
+
+            foreach ($c as $v) {
+                $slash = explode('/', $v);
+                $newSongHashMap[explode(' ', $v)[0]] = $slash[4] . '/' . $slash[5];
+            }
+
+            $newFiles = array_diff($newSongHashMap, $songHashMap);
+
+            if ($pranks || $newFaves || $newFiles) {
                 getTelegram()->sendMessage(
                     [
                         'chat_id' => $chatid,
@@ -199,14 +210,17 @@ getTelegram()->addCommand(
                                 $pranks ? ['```'] : [],
                                 $newFaves ? ['Latest faves:', '```'] : [],
                                 $newFaves,
-                                $newFaves ? ['```'] : []
+                                $newFaves ? ['```'] : [],
+                                $newFiles ? ['Latest files:', '```'] : [],
+                                $newFiles,
+                                $newFiles ? ['```'] : []
                             )
                         )
                     ]
                 );
             }
 
-            if (!$pranks && !$newFaves) {
+            if (!$pranks && !$newFaves && !$newFiles) {
                 $this->replyWithMessage(['text' => 'Nothing to report. I guess nothing cool happened yesterday.']);
             }
         }
index d859b69..45546d4 100644 (file)
@@ -60,7 +60,17 @@ if ($pranks) {
 $faveDiff = array_diff_assoc($faveMap, $oldFaveMap);
 $newFaves = zzipWith(∘(concat, flip(concat)(" in "), field(1), delemit('/'), ∘(flip(field))($songHashMap)))(array_keys($faveDiff))(array_values($faveDiff));
 
-if ($pranks || $newFaves) {
+$c = lines(trim(file_get_contents(glob(PATH_TO_GROOVENET . '/songs.*.txt')[0])));
+$newSongHashMap = [];
+
+foreach ($c as $v) {
+    $slash = explode('/', $v);
+    $newSongHashMap[explode(' ', $v)[0]] = $slash[4] . '/' . $slash[5];
+}
+
+$newFiles = array_diff($newSongHashMap, $songHashMap);
+
+if ($pranks || $newFaves || $newFiles) {
     getTelegram()->sendMessage(
         [
             'chat_id' => CHAT_ID,
@@ -73,12 +83,16 @@ if ($pranks || $newFaves) {
                     $pranks ? ['```'] : [],
                     $newFaves ? ['Latest faves:', '```'] : [],
                     $newFaves,
-                    $newFaves ? ['```'] : []
+                    $newFaves ? ['```'] : [],
+                    $newFiles ? ['Latest files:', '```'] : [],
+                    $newFiles,
+                    $newFiles ? ['```'] : []
                 )
             )
         ]
     );
 }
 
+file_put_contents(__DIR__ . '/hashmap.txt', serialize($newSongHashMap));
 file_put_contents(__DIR__ . '/tesseract.txt', serialize($scoreTesseract));
 file_put_contents(__DIR__ . '/faves.txt', serialize($faveMap));