Spoiler
register_clcmd("say /banct", "ADD2MySQL", ADMIN_IMMUNITY);
public DodajGracza(id)
{
if(!is_user_connected(id) || !(get_user_flags(id) & ADMIN_BAN))
{
return PLUGIN_HANDLED;
}
new sid_gracza[33];
read_argv(1, sid_gracza, 32);
Steam = sid_gracza;
if(SqlConnected)
{
new Data[1]
Data[0] = id
new qCommand[512]
format(qCommand, sizeof qCommand-1, "SELECT * FROM `amx_jailbansct` WHERE `authid` = '%s'", Steam)
SQL_ThreadQuery(SQL_TUPLE, "ChecKomenda", qCommand, Data, 1)
}
else
{
connect_sql();
client_print(id, print_console, "Ponow dodawanie STEAM ID.");
}
return PLUGIN_HANDLED;
}
public connect_sql()
{
if(SqlConnected) return PLUGIN_CONTINUE;
SQL_TUPLE = SQL_MakeDbTuple("host", "userbazy", "haslo", "nazwabazy");
new sZapytanie[351];
format(sZapytanie, 350, "CREATE TABLE IF NOT EXISTS `amx_jailbansct` (`id` int( 11 ) NOT NULL AUTO_INCREMENT, `authid` varchar(100) NOT NULL, `date` varchar(100) NOT NULL, `admin_sid` varchar(100) NOT NULL, `admin_name` varchar(100) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY (`authid`))");
SQL_ThreadQuery(SQL_TUPLE, "connect_sql_handle", sZapytanie);
return PLUGIN_CONTINUE;
}
public connect_sql_handle(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{
SqlConnected = 1;
if(Errcode)
{
SqlConnected = 0;
server_print("Error on Table query: %s",Error);
}
if(FailState == TQUERY_CONNECT_FAILED)
{
server_print("Could not connect to SQL database.");
SqlConnected = 0;
}
else if(FailState == TQUERY_QUERY_FAILED)
{
server_print("Table Query failed.");
SqlConnected = 0;
}
return PLUGIN_CONTINUE;
}
public ADD2MySQL(id)
{
if(!is_user_connected(id) || !(get_user_flags(id) & ADMIN_IMMUNITY))
{
return PLUGIN_HANDLED;
}
new key[128], info[8], name[64], team[6];
new menu = menu_create("Wybierz gracza:", "menu_click");
for(new i = 1; i < 33; i++)
{
if(is_user_connected(i) && !blokada[i])
{
if(get_user_team(i) == 1)
{
team = "TT";
}
else if(get_user_team(i) == 2)
{
team = "CT";
}
else
{
team = "SPECT";
}
get_user_name(i, name, 63);
formatex(info, 7, "%d", i);
formatex(key, 127, "\w%s\y\R[%s]", name, team);
menu_additem(menu, key, info);
}
}
menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu);
return PLUGIN_HANDLED;
}
public menu_click(id, menu, item)
{
new access, info[8], name[63], callback;
menu_item_getinfo(menu, item, access, info, 7, name, 63, callback);
new kogo = str_to_num(info);
if(item != MENU_EXIT && item != MENU_BACK && item != MENU_MORE)
{
if(is_user_connected(kogo) && !blokada[kogo])
{
new admin_name[33], admin_sid[33], sid[33], name[33];
get_user_name(id, admin_name, 32);
get_user_name(kogo, name, 32);
get_user_authid(id, admin_sid, 32);
get_user_authid(kogo, sid, 32);
log_amx("ADMIN %s <%s> zbanowal w CT <%s>", admin_name , admin_sid , sid);
if(SqlConnected)
{
new date[33];
get_time("%H:%M:%S %d-%m-%Y", date, 19);
new sZapytanie[512];
format(sZapytanie, 511, "INSERT INTO `amx_jailbansct` (`authid`, `date`, `admin_sid`, `admin_name` ) VALUES ('%s', '%s', '%s', '%s')", sid, date, admin_sid, admin_name);
SQL_ThreadQuery(SQL_TUPLE, "ADD_handle", sZapytanie);
blokada[kogo] = true;
ColorChat(id, GREEN, "^x01 Gracz ^x03%s^x01 zostal pomyslnie zbanowany. ", name);
}
else connect_sql();
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public ADD_handle(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{
if(Errcode)
server_print("Error on CreateClass query: %s",Error);
if(FailState == TQUERY_CONNECT_FAILED)
server_print("Could not connect to SQL database.");
else if(FailState == TQUERY_QUERY_FAILED)
server_print("CreateClass Query failed.");
return PLUGIN_CONTINUE;
}
public client_connect(id)
{
if(SqlConnected)
{
new Data[1]
Data[0] = id
new qCommand[512], sid[32]
get_user_authid(id, sid, charsmax(sid))
format(qCommand, sizeof qCommand-1, "SELECT * FROM `amx_jailbansct` WHERE `authid` = '%s'", sid)
SQL_ThreadQuery(SQL_TUPLE, "CheckHandler", qCommand, Data, 1)
}
else connect_sql();
}
public CheckHandler(FailState, Handle:Query, Error[], Errorcode, Data[], DataSize)
{
new id = Data[0]
if(Errorcode)
{
log_amx("Blad w zapytaniu: %s [CheckData]", Error)
return PLUGIN_CONTINUE;
}
if(FailState == TQUERY_CONNECT_FAILED)
{
log_amx("Nie mozna podlaczyc sie do bazy danych.")
return PLUGIN_CONTINUE;
}
else if(FailState == TQUERY_QUERY_FAILED)
{
log_amx("Zapytanie anulowane [CheckData]")
return PLUGIN_CONTINUE;
}
if(!SQL_MoreResults(Query))
{
blokada[id] = false;
}
else
{
blokada[id] = true;
}
return PLUGIN_CONTINUE
}
public ChecKomenda(FailState, Handle:Query, Error[], Errorcode, Data[], DataSize)
{
new id = Data[0]
if(Errorcode)
{
log_amx("Blad w zapytaniu: %s [CheckData]", Error)
return PLUGIN_CONTINUE;
}
if(FailState == TQUERY_CONNECT_FAILED)
{
log_amx("Nie mozna podlaczyc sie do bazy danych.")
return PLUGIN_CONTINUE;
}
else if(FailState == TQUERY_QUERY_FAILED)
{
log_amx("Zapytanie anulowane [CheckData]")
return PLUGIN_CONTINUE;
}
if(!SQL_MoreResults(Query))
{
new admin_name[33], admin_sid[33];
get_user_name(id, admin_name, 32);
get_user_authid(id, admin_sid, 32);
log_amx("ADMIN %s <%s> zbanowal w CT <%s>", admin_name , admin_sid , Steam);
if(SqlConnected)
{
new date[33];
get_time("%H:%M:%S %d-%m-%Y", date, 19);
new sZapytanie[512];
format(sZapytanie, 511, "INSERT INTO `amx_jailbansct` (`authid`, `date`, `admin_sid`, `admin_name` ) VALUES ('%s', '%s', '%s', '%s')", Steam, date, admin_sid, admin_name);
SQL_ThreadQuery(SQL_TUPLE, "ADD_handle", sZapytanie);
client_print(id, print_console, "%s dodane!", Steam);
}
else connect_sql();
}
else
{
client_print(id, print_console, "Juz istnieje taki wpis w bazie!(%s)", Steam);
return PLUGIN_HANDLED;
}
return PLUGIN_CONTINUE
}
register_clcmd("say /banct", "ADD2MySQL", ADMIN_IMMUNITY);
public DodajGracza(id)
{
if(!is_user_connected(id) || !(get_user_flags(id) & ADMIN_BAN))
{
return PLUGIN_HANDLED;
}
new sid_gracza[33];
read_argv(1, sid_gracza, 32);
Steam = sid_gracza;
if(SqlConnected)
{
new Data[1]
Data[0] = id
new qCommand[512]
format(qCommand, sizeof qCommand-1, "SELECT * FROM `amx_jailbansct` WHERE `authid` = '%s'", Steam)
SQL_ThreadQuery(SQL_TUPLE, "ChecKomenda", qCommand, Data, 1)
}
else
{
connect_sql();
client_print(id, print_console, "Ponow dodawanie STEAM ID.");
}
return PLUGIN_HANDLED;
}
public connect_sql()
{
if(SqlConnected) return PLUGIN_CONTINUE;
SQL_TUPLE = SQL_MakeDbTuple("host", "userbazy", "haslo", "nazwabazy");
new sZapytanie[351];
format(sZapytanie, 350, "CREATE TABLE IF NOT EXISTS `amx_jailbansct` (`id` int( 11 ) NOT NULL AUTO_INCREMENT, `authid` varchar(100) NOT NULL, `date` varchar(100) NOT NULL, `admin_sid` varchar(100) NOT NULL, `admin_name` varchar(100) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY (`authid`))");
SQL_ThreadQuery(SQL_TUPLE, "connect_sql_handle", sZapytanie);
return PLUGIN_CONTINUE;
}
public connect_sql_handle(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{
SqlConnected = 1;
if(Errcode)
{
SqlConnected = 0;
server_print("Error on Table query: %s",Error);
}
if(FailState == TQUERY_CONNECT_FAILED)
{
server_print("Could not connect to SQL database.");
SqlConnected = 0;
}
else if(FailState == TQUERY_QUERY_FAILED)
{
server_print("Table Query failed.");
SqlConnected = 0;
}
return PLUGIN_CONTINUE;
}
public ADD2MySQL(id)
{
if(!is_user_connected(id) || !(get_user_flags(id) & ADMIN_IMMUNITY))
{
return PLUGIN_HANDLED;
}
new key[128], info[8], name[64], team[6];
new menu = menu_create("Wybierz gracza:", "menu_click");
for(new i = 1; i < 33; i++)
{
if(is_user_connected(i) && !blokada[i])
{
if(get_user_team(i) == 1)
{
team = "TT";
}
else if(get_user_team(i) == 2)
{
team = "CT";
}
else
{
team = "SPECT";
}
get_user_name(i, name, 63);
formatex(info, 7, "%d", i);
formatex(key, 127, "\w%s\y\R[%s]", name, team);
menu_additem(menu, key, info);
}
}
menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu);
return PLUGIN_HANDLED;
}
public menu_click(id, menu, item)
{
new access, info[8], name[63], callback;
menu_item_getinfo(menu, item, access, info, 7, name, 63, callback);
new kogo = str_to_num(info);
if(item != MENU_EXIT && item != MENU_BACK && item != MENU_MORE)
{
if(is_user_connected(kogo) && !blokada[kogo])
{
new admin_name[33], admin_sid[33], sid[33], name[33];
get_user_name(id, admin_name, 32);
get_user_name(kogo, name, 32);
get_user_authid(id, admin_sid, 32);
get_user_authid(kogo, sid, 32);
log_amx("ADMIN %s <%s> zbanowal w CT <%s>", admin_name , admin_sid , sid);
if(SqlConnected)
{
new date[33];
get_time("%H:%M:%S %d-%m-%Y", date, 19);
new sZapytanie[512];
format(sZapytanie, 511, "INSERT INTO `amx_jailbansct` (`authid`, `date`, `admin_sid`, `admin_name` ) VALUES ('%s', '%s', '%s', '%s')", sid, date, admin_sid, admin_name);
SQL_ThreadQuery(SQL_TUPLE, "ADD_handle", sZapytanie);
blokada[kogo] = true;
ColorChat(id, GREEN, "^x01 Gracz ^x03%s^x01 zostal pomyslnie zbanowany. ", name);
}
else connect_sql();
}
}
menu_destroy(menu);
return PLUGIN_HANDLED;
}
public ADD_handle(FailState, Handle:Query, Error[], Errcode, Data[], DataSize)
{
if(Errcode)
server_print("Error on CreateClass query: %s",Error);
if(FailState == TQUERY_CONNECT_FAILED)
server_print("Could not connect to SQL database.");
else if(FailState == TQUERY_QUERY_FAILED)
server_print("CreateClass Query failed.");
return PLUGIN_CONTINUE;
}
public client_connect(id)
{
if(SqlConnected)
{
new Data[1]
Data[0] = id
new qCommand[512], sid[32]
get_user_authid(id, sid, charsmax(sid))
format(qCommand, sizeof qCommand-1, "SELECT * FROM `amx_jailbansct` WHERE `authid` = '%s'", sid)
SQL_ThreadQuery(SQL_TUPLE, "CheckHandler", qCommand, Data, 1)
}
else connect_sql();
}
public CheckHandler(FailState, Handle:Query, Error[], Errorcode, Data[], DataSize)
{
new id = Data[0]
if(Errorcode)
{
log_amx("Blad w zapytaniu: %s [CheckData]", Error)
return PLUGIN_CONTINUE;
}
if(FailState == TQUERY_CONNECT_FAILED)
{
log_amx("Nie mozna podlaczyc sie do bazy danych.")
return PLUGIN_CONTINUE;
}
else if(FailState == TQUERY_QUERY_FAILED)
{
log_amx("Zapytanie anulowane [CheckData]")
return PLUGIN_CONTINUE;
}
if(!SQL_MoreResults(Query))
{
blokada[id] = false;
}
else
{
blokada[id] = true;
}
return PLUGIN_CONTINUE
}
public ChecKomenda(FailState, Handle:Query, Error[], Errorcode, Data[], DataSize)
{
new id = Data[0]
if(Errorcode)
{
log_amx("Blad w zapytaniu: %s [CheckData]", Error)
return PLUGIN_CONTINUE;
}
if(FailState == TQUERY_CONNECT_FAILED)
{
log_amx("Nie mozna podlaczyc sie do bazy danych.")
return PLUGIN_CONTINUE;
}
else if(FailState == TQUERY_QUERY_FAILED)
{
log_amx("Zapytanie anulowane [CheckData]")
return PLUGIN_CONTINUE;
}
if(!SQL_MoreResults(Query))
{
new admin_name[33], admin_sid[33];
get_user_name(id, admin_name, 32);
get_user_authid(id, admin_sid, 32);
log_amx("ADMIN %s <%s> zbanowal w CT <%s>", admin_name , admin_sid , Steam);
if(SqlConnected)
{
new date[33];
get_time("%H:%M:%S %d-%m-%Y", date, 19);
new sZapytanie[512];
format(sZapytanie, 511, "INSERT INTO `amx_jailbansct` (`authid`, `date`, `admin_sid`, `admin_name` ) VALUES ('%s', '%s', '%s', '%s')", Steam, date, admin_sid, admin_name);
SQL_ThreadQuery(SQL_TUPLE, "ADD_handle", sZapytanie);
client_print(id, print_console, "%s dodane!", Steam);
}
else connect_sql();
}
else
{
client_print(id, print_console, "Juz istnieje taki wpis w bazie!(%s)", Steam);
return PLUGIN_HANDLED;
}
return PLUGIN_CONTINUE
}
Użytkownik Andrzejek edytował ten post 06.02.2013 16:49