1 /* cmd_global_bind.c - NeonServ v5.5
2 * Copyright (C) 2011-2012 Philipp Kreil (pk910)
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 #include "cmd_global.h"
21 * argv[0] command name
22 * argv[1] command function
23 * argv[2-*] parameters (optional)
26 CMD_BIND(global_cmd_bind) {
29 if(client->botid == 0)
30 printf_mysql_query("SELECT `function` FROM `bot_binds` WHERE `botclass` = '%d' AND `botid` = '%d' AND `command` = '%s'", client->botid, client->clientid, escape_string(argv[0]));
32 printf_mysql_query("SELECT `function` FROM `bot_binds` WHERE `botclass` = '%d' AND `command` = '%s'", client->botid, escape_string(argv[0]));
34 if ((row = mysql_fetch_row(res)) != NULL) {
35 reply(textclient, user, "NS_BIND_ALREADY", argv[0], row[0]);
40 params = merge_argv(argv, 2, argc);
43 struct cmd_function *function = find_cmd_function(client->botid, argv[1]);
45 reply(textclient, user, "NS_BIND_UNKNOWN", argv[1]);
48 bind_botwise_cmd_to_function(client->botid, client->clientid, argv[0], function);
49 printf_mysql_query("INSERT INTO `bot_binds` (`botclass`, `botid`, `command`, `function`, `parameters`) VALUES ('%d', '%d', '%s', '%s', '%s')", client->botid, (client->botid == 0 ? client->clientid : 0), escape_string(argv[0]), escape_string(argv[1]), params);
51 bind_botwise_set_parameters(client->botid, client->clientid, argv[0], params);
52 reply(textclient, user, "NS_BIND_DONE", argv[0], function->name);