public function input_message($chat_id, $from, $from_id, $message_text) { global $bot_info, $db, $db_rs, $systems, $rs; // Из за того что у нас группа, надо ловить сообщения именно боту; //$message_text = str_replace('@'.$bot_info['username'], '', $message_text); // Отлавливаем команд с префиксом; $temp_command = explode(' ', $message_text); $command = strtolower($temp_command[0]); // Проверяем отдел пользователя; $sender_department = get_user_department($systems->user_telegram($from_id, '')); // ОБщаяя обработка команд; switch ($command) { /* * Первое знакомство или запрос помощи; * */ case '/start': case '/help': // Проверяем, знаем ли мы этого пользователя; if ($systems->user_telegram($from_id) == false) { // Если мы не знаем такого пользователя. Гооворим ему как зарегистрироваться; $this->send_message($chat_id, "😥 Уважаемый " . $from . ". Вы пока не зарегистрированный пользователь.\nДля того что бы зарегистрироваться, вам нужно зайти в раздел Telegram в Системе Remontoff.\nИ следовать указанным там инструкциям. Удачи вам!"); } else { // Имя пользователя; $user_full_name = get_user_full_name($systems->user_telegram($from_id)); // Формируем доступные команды; if ($sender_department == '2' || $sender_department == '12') { $command_list = "Вы руководитель и вам доступные следующие команды:\r\n/code - Прислать код для авторизации в системе.\r\n/money - Прислать текущее наличие ДС в кассах.\r\n/plan - Прислать результат выполнения плана на месяц."; } else { $command_list = "Вы обычный пользователь и вам доступные следующие команды:\r\n/code - Прислать код для авторизации в системе."; } // Если такой польователь уже есть; $this->send_message($chat_id, "🙋 Привет " . $user_full_name . "!\r\n 💁" . $command_list); } return true; break; /* * Регистрация; * */ /* * Регистрация; * */ case '/reg': // Если сообщение содержить команду на регистрацию; // Забираем из нее код; $code = $temp_command[1]; // Ищем этот код в базе; $user_id = $systems->get_telegram_reg($code); if ($user_id != false) { // Сохраняем новый telegram id в базе; $systems->save_telegram_id($user_id, $from_id); $this->send_message($chat_id, "🙌 Поздравляем! Вы успешно привязали свою учетную запись к Telegram. Теперь я буду присылать вам важные уведомления. Список доступных команд /help"); return true; } else { // Такой код не найден; $this->send_message($chat_id, "🙅 Введенный вами код для регистрации не найден. Повторите попытку ввода команды. Или попробуйте сгенерировать новый код в разделе Telegram в Системе Remontoff."); return true; } break; /* * Запрос кода авторизации; * */ /* * Запрос кода авторизации; * */ case '/code': // Нам надо имя пользователя; $user_id = $systems->user_telegram($from_id); $sql = "SELECT `user_name` FROM `users_apps` WHERE `id` = '" . $user_id . "';"; $user_name = $db_rs->one($sql); $systems->auth_history($user_name, '', '', '', 'get_code'); $this->gen_user_auth_key($chat_id); return true; break; /* * Деньги с кассах; * */ /* * Деньги с кассах; * */ case '/money': if ($sender_department != '2' && $sender_department != '12') { $this->send_message($chat_id, "🙅 Данная команда для вас запрещена!"); return true; } $result_message = ''; $sql = "SELECT `code`, `name`FROM `office` WHERE `kassa_list` = '1';"; $office = $db->all($sql); $kassa_sum_full = 0; foreach ($office as $temp_array) { // Получаем данные об остатках в кассах; // Остаток на конец операционного дня; $sql = "SELECT `id` FROM `kassa` WHERE `office` = '" . $temp_array['code'] . "';"; $all_cash = $db_rs->all($sql); $kassa_cash_today = 0; foreach ($all_cash as $kassa) { $kassa_cash_today += calc_today_cash($kassa['id'], date('Y-m-d')); } $kassa_cash_yesterday = 0; foreach ($all_cash as $kassa) { $kassa_cash_yesterday += calc_yesterday_cash($kassa['id'], date('Y-m-d')); } $kassa_sum = $kassa_cash_today + $kassa_cash_yesterday; $kassa_sum_full += $kassa_sum; $result_message .= get_office_name($temp_array['code']) . ': ' . get_money_format($kassa_sum) . ' р.' . "\n"; } $result_message .= 'Итого: ' . get_money_format($kassa_sum_full) . 'р.'; $this->send_message($chat_id, $result_message); return true; break; /* * План и выполнение; * */ /* * План и выполнение; * */ case '/plan': if ($sender_department == '2' || $sender_department == '12') { $this->send_message($chat_id, "🕑 Мне необходимо немного времени для расчета плана..."); // Собиарем информаци о планах и факты выполнения; $this->send_message($chat_id, $this->get_money_plan_and_fact()); return true; } else { $this->send_message($chat_id, "🙅 Данная команда для вас запрещена!"); return true; } break; /* * неизвестная команда; * */ /* * неизвестная команда; * */ default: $this->send_message($chat_id, "⚠ Неизвестная комманда."); return true; break; } }
<select name="user"> <option value=""><?php echo get_text('Choose_a') . ' ' . strtolower(get_text('User_as_participant')); ?> </option> <?php foreach ($departments as $department) { ?> <optgroup label="<?php echo $department['Name']; ?> "> <?php foreach ($users as $user) { $user_department = get_user_department($user['ID']); if ($user_department == $department['ID']) { $selected = isset($_POST['user']) && !empty($_POST['user']) && $user['Username'] == $_POST['user']; if (!$selected) { if (isset($_POST['poll']) && !empty($_POST['poll'])) { $poll = $_POST['poll']; $reviewee_id = get_poll_reviewee($poll); $selected = $user['ID'] == $reviewee_id; } } ?> <option value="<?php echo $user['Username']; ?> " <?php
</form> <?php } else { if (isset($_POST['save'])) { $id = $_POST['user_id']; $firstname = $_POST['firstname']; $lastname = $_POST['lastname']; $department = $_POST['department']; $email = $_POST['email']; save_user($id, $firstname, $lastname, $email, $department); } } } foreach ($users as $user) { $email = get_user_email_by_id($user['ID']); $department = get_department_name(get_user_department($user['ID'])); ?> <form action="<?php echo $_SERVER['PHP_SELF']; ?> " method="post" class="users"> <table> <tbdoy> <tr> <td><?php echo $user['ID']; ?> </td> <td><?php echo $user['Firstname']; ?>