Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CMD:areport(playerid)
- {
- STRING_GLOBAL[0] = EOS;
- format(STRING_GLOBAL, sizeof STRING_GLOBAL, "SELECT * FROM `a_reports` WHERE `owner` = '%s'", g_player[playerid][NAME]);
- mysql_tquery(mysql, STRING_GLOBAL);
- STRING_GLOBAL[0] = EOS;
- new rows, admin_name[24], reason[128], answer[128], report_id;
- cache_get_row_count(rows);
- STRING_GLOBAL = "{32a44b}1. {ffffff}Создать новую жалобу на администратора\n \n";
- for(new i = 0; i != rows; i ++)
- {
- cache_get_value_name(i, "admin", admin_name);
- cache_get_value_name(i, "reason", reason);
- cache_get_value_name(i, "answer", answer);
- cache_get_value_name_int(i, "id", report_id);
- dialog_listitem_values[playerid][i] = report_id;
- format(STRING_GLOBAL, sizeof STRING_GLOBAL, "%s{32a44b}%d. {ffffff}%s\t\t{94f490}%s\n", STRING_GLOBAL, i + 2, admin_name, reason);
- }
- ShowPlayerDialog(playerid, SEND_ADMIN_REPORT, DIALOG_STYLE_LIST, "{32a44b}Жалобы на администрацию", STRING_GLOBAL, "Далее", "Закрыть");
- }
- CMD:ans_report(playerid)
- {
- if(GetPlayerAdminEx(playerid) < 4) return 1;
- mysql_tquery(mysql, "SELECT * FROM `a_reports`");
- STRING_GLOBAL[0] = EOS;
- new rows, admin_name[24], reason[128], owner[24];
- cache_get_row_count(rows);
- STRING_GLOBAL = "";
- for(new i = 0; i != rows; i ++)
- {
- cache_get_value_name(i, "owner", owner);
- cache_get_value_name(i, "admin", admin_name);
- cache_get_value_name(i, "reason", reason);
- format(STRING_GLOBAL, sizeof STRING_GLOBAL, "%s{32a44b}%d. {ffffff}Жалоба от игрока {94f490}%s {ffffff}на администратора {94f490}%s\n", STRING_GLOBAL, i + 1, owner, admin_name);
- }
- ShowPlayerDialog(playerid, ADMIN_REPORTS, DIALOG_STYLE_LIST, "{32a44b}Жалобы на администрацию", STRING_GLOBAL, "Далее", "Закрыть");
- return 1;
- }
- CMD:test_report(playerid)
- {
- ShowPlayerDialog
- (
- playerid, DIALOG_SEND_REPORT, DIALOG_STYLE_INPUT,
- "{32a44b}Сообщение администрации",
- "{ffffff}Для того, чтобы {94f490}отправить {ffffff}администрации свое сообщение,\n"\
- "{94f490}введите {ffffff}его текст в окно ниже и нажмите '{94f490}Далее{ffffff}'\n\n"\
- "\tПримечание:\n"\
- "\tТекст сообщения должен содержать от {94f490}6-ти {ffffff}до {94f490}144 символов{ffffff}.\n"\
- "\tТекст должен быть {94f490}внятно и {ffffff}коротко составлен.\n"\
- "\tТекст сообщения не должен содержать {94f490}ненормативную лексику{ffffff}.\n\n"\
- "После отправки сообщения, Вам {94f490}ответит {ffffff}один из агентов поддержки и\n"\
- "попытается максимально помочь Вам. В случае, если ответ на Ваше сообщение\n"\
- "является {94f490}неудовлетворительным{ffffff}, Вы сможете оставить жалобу прямо из игры: {94f490}/areport",
- "Далее", "Закрыть"
- );
- return 1;
- }
- CMD:test_ans(playerid)
- {
- if(GetPlayerAdminEx(playerid) < 1) return 1;
- STRING_GLOBAL[0] = EOS;
- STRING_GLOBAL = "";
- for(new i = 0; i != sizeof g_report; i ++)
- {
- if(g_report[i][REPORT_PLAYER_ID] == -1) continue;
- dialog_listitem_values[playerid][i] = g_report[i][REPORT_ID];
- format
- (
- STRING_GLOBAL, sizeof STRING_GLOBAL,
- "%s{32a44b}%d.\t{ffffff}%s [%d]\t\t{94f490}%d минут\n",
- STRING_GLOBAL,
- i + 1,
- GetPlayerNameEx(g_report[i][REPORT_PLAYER_ID]),
- g_report[i][REPORT_PLAYER_ID],
- g_report[i][REPORT_TIME]
- );
- }
- ShowPlayerDialog(playerid, DIALOG_REPORT_INFO, DIALOG_STYLE_LIST, "{32a44b}Список сообщений", STRING_GLOBAL, "Далее", "Закрыть");
- return 1;
- }
- case DIALOG_ANSWER_REPORT:
- {
- if(!response) return 1;
- if(strlen(inputtext) < 2 || strlen(inputtext) > 144)
- return SendClientMessage(playerid, 0xf49090FF, "Ответ на сообщение игрока должен содержать от 2-х до 144-х символов.");
- STRING_GLOBAL[0] = EOS;
- format(STRING_GLOBAL, sizeof STRING_GLOBAL, "Администратор %s[%d] для %s[%d]: %s", g_player[playerid][NAME], playerid, GetPlayerNameEx(g_report[report_id_admin[playerid]][REPORT_PLAYER_ID]), g_report[report_id_admin[playerid]][REPORT_PLAYER_ID], inputtext);
- SendClientMessage(g_report[report_id_admin[playerid]][REPORT_PLAYER_ID], 0xFF9945FF, STRING_GLOBAL);
- SendMessageToAdmins(STRING_GLOBAL, 0xFF9945FF);
- g_report[report_id_admin[playerid]][REPORT_PLAYER_ID] =
- g_report[report_id_admin[playerid]][REPORT_ID] = -1;
- g_report[report_id_admin[playerid]][REPORT_TEXT] = EOS;
- g_report[report_id_admin[playerid]][REPORT_TIME] = 0;
- for(new i = 0; i != sizeof g_report; i ++)
- {
- if(g_report[i][REPORT_PLAYER_ID] == -1) continue;
- g_report[i][REPORT_ID] --;
- }
- }
- case DIALOG_REPORT_INFO:
- {
- if(!response) return 1;
- STRING_GLOBAL[0] = EOS;
- report_id_admin[playerid] = dialog_listitem_values[playerid][listitem];
- format
- (
- STRING_GLOBAL, sizeof STRING_GLOBAL,
- "{ffffff}Сообщение от игрока: {94f490}%s [%d]\n"\
- "{ffffff}Текст сообщения: {94f490}%s\n\n"\
- "{ffffff}Для ответа на сообщения, введите текст ответа в окно ниже и нажмите '{94f490}Далее{ffffff}'",
- GetPlayerNameEx(g_report[report_id_admin[playerid]][REPORT_PLAYER_ID]),
- g_report[report_id_admin[playerid]][REPORT_PLAYER_ID],
- g_report[report_id_admin[playerid]][REPORT_TEXT]
- );
- ShowPlayerDialog(playerid, DIALOG_ANSWER_REPORT, DIALOG_STYLE_INPUT, "{32a44b}Сообщение от игрока", STRING_GLOBAL, "Далее", "Закрыть");
- }
- case DIALOG_SEND_REPORT:
- {
- if(!response) return 1;
- if(strlen(inputtext) < 6 || strlen(inputtext) > 144)
- {
- ShowPlayerDialog
- (
- playerid, DIALOG_SEND_REPORT, DIALOG_STYLE_INPUT,
- "{32a44b}Сообщение администрации",
- "{ffffff}Для того, чтобы {94f490}отправить {ffffff}администрации свое сообщение,\n"\
- "{94f490}введите {ffffff}его текст в окно ниже и нажмите 'Далее'\n\n"\
- "\tПримечание:\n"\
- "\tТекст сообщения должен содержать от {94f490}6-ти {ffffff}до {94f490}144 символов{ffffff}.\n"\
- "\tТекст должен быть {94f490}внятно и {ffffff}коротко составлен.\n"\
- "\tТекст сообщения не должен содержать {94f490}ненормативную лексику{ffffff}.\n\n"\
- "После отправки сообщения, Вам {94f490}ответит {ffffff}один из агентов поддержки и\n"\
- "попытается максимально помочь Вам. В случае, если ответ на Ваше сообщение\n"\
- "является {94f490}неудовлетворительным{ffffff}, Вы сможете оставить жалобу прямо из игры: {94f490}/areport\n\n"\
- "{f49090}Вы допустили ошибку в тексте Вашего сообщения, пожалуйста, повторите попытку.",
- "Далее", "Закрыть"
- );
- return 1;
- }
- for(new i = 0; i != sizeof g_report; i ++)
- {
- if(g_report[i][REPORT_PLAYER_ID] != -1) continue;
- g_report[i][REPORT_PLAYER_ID] = playerid;
- format(g_report[i][REPORT_TEXT], 144, "%s", inputtext);
- g_report[i][REPORT_ID] = i;
- break;
- }
- STRING_GLOBAL[0] = EOS;
- format(STRING_GLOBAL, sizeof STRING_GLOBAL, "Оповещение: {ffffff}Игрок {94f490}%s [%d] {ffffff}отправил сообщение содержащие текст: {94f490}%s", g_player[playerid][NAME], playerid, inputtext);
- SendMessageToAdmins(STRING_GLOBAL, 0x32a44bFF);
- SendClientMessage(playerid, 0x32a44bFF, "Подсказка: {ffffff}Вы успешно {94f490}отправили сообщение {ffffff}агентам поддержки. Ожидайте ответа.");
- }
- case SEND_ADMIN_REPORT:
- {
- if(!response || listitem == 1) return 1;
- if(listitem == 0)
- {
- ShowPlayerDialog
- (
- playerid, SEND_ADMIN_NICKNAME, DIALOG_STYLE_INPUT,
- "{32a44b}Жалоба на администратора",
- "{ffffff}Мы ценим своих игроков и максимально стараемся помочь Вам и\n"\
- "уберечь от {94f490}некомпетентной {ffffff}администрации. Поэтому Вы можете {94f490}оставить жалобу\n"\
- "{ffffff}на нарушения со стороны администрации прямо в игре не заходя на форум.\n\n"\
- "{cecece}Введите никнейм администратора в окно ниже:",
- "Далее", "Закрыть"
- );
- }
- STRING_GLOBAL[0] = EOS;
- format(STRING_GLOBAL, sizeof STRING_GLOBAL, "SELECT * FROM `a_reports` WHERE `id` = '%d' LIMIT 1", dialog_listitem_values[playerid][listitem]);
- mysql_tquery(mysql, STRING_GLOBAL);
- new rows, owner[24], admin_name[24], reason[128], report_date[30], answer[128];
- cache_get_row_count(rows);
- cache_get_value_name(0, "owner", owner);
- cache_get_value_name(0, "admin", admin_name);
- cache_get_value_name(0, "date", report_date);
- cache_get_value_name(0, "reason", reason);
- cache_get_value_name(0, "answer", answer);
- if(strlen(answer) < 2) return 1;
- format
- (
- STRING_GLOBAL, sizeof STRING_GLOBAL,
- "{ffffff}Жалоба от игрока: {94f490}%s\n"\
- "{ffffff}Жалоба на администратора: {94f490}%s\n"\
- "{ffffff}Дата и время: {94f490}%s\n"\
- "{ffffff}Причина жалобы: {94f490}%s\n\n"\
- "{ffffff}Текст ответа: {94f490}%s",
- owner,
- admin_name,
- report_date,
- reason,
- answer
- );
- ShowPlayerDialog
- (
- playerid, INVALID_DIALOG_ID, DIALOG_STYLE_MSGBOX,
- "{32a44b}Жалоба на администратора",
- STRING_GLOBAL,
- "Закрыть", ""
- );
- STRING_GLOBAL[0] = EOS;
- format(STRING_GLOBAL, sizeof STRING_GLOBAL, "DELETE FROM `a_reports` WHERE `id` = '%d' LIMIT 1", dialog_listitem_values[playerid][listitem]);
- mysql_tquery(mysql, STRING_GLOBAL);
- }
- case SEND_ADMIN_NICKNAME:
- {
- if(!response) return 1;
- format(admin_report_nickname[playerid], 24, "%s", inputtext);
- ShowPlayerDialog
- (
- playerid, SEND_ADMIN_REASON, DIALOG_STYLE_INPUT,
- "{32a44b}Жалоба на администратора",
- "{ffffff}Введите {94f490}причину {ffffff}подачи жалобы на администратора в окно ниже.\n\n"\
- "Просьба изложить Вашу мысль максимально {94f490}кратко {ffffff}и {94f490}внятно{ffffff},\n"\
- "в случае, если жалоба будет некорректно составлена, мы автоматически {f49090}отклоним ее{ffffff}.",
- "Далее", "Закрыть"
- );
- }
- case SEND_ADMIN_REASON:
- {
- if(!response) return 1;
- new hourss, minn, secc;
- gettime(hourss, minn, secc);
- STRING_GLOBAL[0] = EOS;
- format(STRING_GLOBAL, sizeof STRING_GLOBAL, "INSERT INTO `a_reports` (`owner`, `admin`, `reason`, `date`, `answer`) VALUES ('%s', '%s', '%s', 'NOW()', '0')", GetPlayerNameEx(playerid), admin_report_nickname[playerid], inputtext);
- mysql_tquery(mysql, STRING_GLOBAL);
- SendClientMessage(playerid, 0x32a44bFF, "Подсказка: {ffffff}Вы успешно отправили жалобу на администратора. Для проверки статуса жалобы, используйте: {94f490}/areport");
- admin_report_nickname[playerid][0] = EOS;
- }
- case ADMIN_REPORTS:
- {
- if(!response) return 1;
- SetPVarInt(playerid, "admin_report_id", dialog_listitem_values[playerid][listitem]);
- STRING_GLOBAL[0] = EOS;
- format(STRING_GLOBAL, sizeof STRING_GLOBAL, "SELECT * FROM `a_reports` WHERE `id` = '%d', `answer` = '0' LIMIT 1", dialog_listitem_values[playerid][listitem]);
- mysql_tquery(mysql, STRING_GLOBAL);
- new rows, owner[24], admin_name[24], reason[128], report_date[30];
- cache_get_row_count(rows);
- cache_get_value_name(0, "owner", owner);
- cache_get_value_name(0, "admin", admin_name);
- cache_get_value_name(0, "date", report_date);
- cache_get_value_name(0, "reason", reason);
- format
- (
- STRING_GLOBAL, sizeof STRING_GLOBAL,
- "{ffffff}Жалоба от игрока: {94f490}%s\n"\
- "{ffffff}Жалоба на администратора: {94f490}%s\n"\
- "{ffffff}Дата и время: {94f490}%s\n"\
- "{ffffff}Причина жалобы: {94f490}%s\n\n"\
- "{ffffff}Введите ответ на данную жалобу в окно ниже и нажмите '{94f490}Далее{ffffff}' для ответа.",
- owner,
- admin_name,
- report_date,
- reason
- );
- ShowPlayerDialog
- (
- playerid, SEND_ADMIN_REPORT_ANSWER, DIALOG_STYLE_INPUT,
- "{32a44b}Жалоба на администратора",
- STRING_GLOBAL,
- "Далее", "Закрыть"
- );
- }
- case SEND_ADMIN_REPORT_ANSWER:
- {
- if(!response) return 1;
- if(strlen(inputtext) > 128 || strlen(inputtext) < 2)
- return SendClientMessage(playerid, 0xf49090FF, "Неверно введены значения для ответа. Ответ должен содержать от 2-х до 128-ми символов.");
- STRING_GLOBAL[0] = EOS;
- format(STRING_GLOBAL, sizeof STRING_GLOBAL, "UPDATE `a_reports` SET `answer` = '%s' WHERE `id` = '%d'", inputtext, GetPVarInt(playerid, "admin_report_id"));
- mysql_tquery(mysql, STRING_GLOBAL);
- DeletePVar(playerid, "admin_report_id");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement