From 447107bef6deba85385fc5683d1804a9774519a1 Mon Sep 17 00:00:00 2001 From: Matteo Gheza Date: Fri, 7 Jan 2022 00:38:43 +0100 Subject: [PATCH] Other Telegram bot fixes --- backend/cronRouter.php | 2 +- backend/telegramBotRouter.php | 9 +++++---- backend/utils.php | 5 +++-- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/backend/cronRouter.php b/backend/cronRouter.php index a6ebde6..c05d6fc 100644 --- a/backend/cronRouter.php +++ b/backend/cronRouter.php @@ -166,7 +166,7 @@ function job_send_notification_if_manual_mode() { foreach ($profiles as $profile) { $notified_users[] = $profiles["id"]; $stato = $profile["available"] ? "disponibile" : "non disponibile"; - sendTelegramNotificationToUser("⚠️ Attenzione! La tua disponibilità non segue la programmazione oraria.\nAttualmente sei {$stato}.\nScrivi \"/programma\" se vuoi ripristinare la programmazione.", $profile["id"]); + sendTelegramNotificationToUser("⚠️ Attenzione! La tua disponibilità non segue la programmazione oraria.\nAttualmente sei {$stato}.\nScrivi \"/programma\" se vuoi ripristinare la programmazione.", $profile["id"]); } $output = $notified_users; $output_status = "ok"; diff --git a/backend/telegramBotRouter.php b/backend/telegramBotRouter.php index 3ee25cb..7261a96 100644 --- a/backend/telegramBotRouter.php +++ b/backend/telegramBotRouter.php @@ -196,7 +196,8 @@ function telegramBotRouter() { global $Bot, $availability; requireBotLogin($message); if(count(explode(" ", $message->text)) > 3) return; - $availability->change_manual_mode(0); + $userId = getUserIdByMessage($message); + $availability->change_manual_mode(0, $userId); $Bot->sendMessage($message->from->id, "Programmazione oraria abilitata.\nPer disabilitarla (e tornare in modalità manuale), cambiare la disponbilità usando i comandi \"/attiva\" e \"/disattiva\""); }); @@ -205,11 +206,11 @@ function telegramBotRouter() { requireBotLogin($message); if(count(explode(" ", $message->text)) > 2) return; $available_users_count = $db->selectValue("SELECT COUNT(id) FROM `".DB_PREFIX."_profiles` WHERE `available` = 1 AND `hidden` = 0"); - if($available_users_count === 5) { + if($available_users_count >= 5) { $message->reply("✅ Distaccamento operativo con squadra completa"); - } else if($available_users_count === 2) { + } else if($available_users_count >= 2) { $message->reply("🧯 Distaccamento operativo per supporto"); - } else if($available_users_count === 1) { + } else if($available_users_count >= 0) { $message->reply("⚠️ Distaccamento non operativo"); } }); diff --git a/backend/utils.php b/backend/utils.php index 6d318e5..2ad5b1a 100644 --- a/backend/utils.php +++ b/backend/utils.php @@ -261,15 +261,16 @@ class Availability { $this->users = $users; } - public function change_manual_mode($manual_mode) { + public function change_manual_mode($manual_mode, $user_id = null) { global $db, $users; + if(is_null($user_id)) $user_id = $users->auth->getUserId(); $db->update( DB_PREFIX."_profiles", [ "manual_mode" => $manual_mode ], [ - "id" => $users->auth->getUserId() + "id" => $user_id ] ); }