mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-26 06:29:23 +01:00
Converts ALL typepaths to lowercase (#51642)
* Case of lower * More changes * Ruins the nice 420 diff, brainfart when doing the second batch of conversions * More changes * Next batch. I think * Converts even more paths * Restarts bots * Capital Free Zone * Come on travis, do something * Renames areas * Bots, please stop dying * Updates CONTRIBUTING.md and updates a few paths I missed. * APC recgarftzfvas /obj/item/computer_hardware/recharger/apc to /obj/item/computer_hardware/recharger/apc_recharger
This commit is contained in:
@@ -717,7 +717,7 @@
|
||||
var/obj/structure/closet/supplypod/centcompod/pod = new()
|
||||
var/atom/A = new chosen(pod)
|
||||
A.flags_1 |= ADMIN_SPAWNED_1
|
||||
new /obj/effect/DPtarget(T, pod)
|
||||
new /obj/effect/dp_target(T, pod)
|
||||
|
||||
log_admin("[key_name(usr)] pod-spawned [chosen] at [AREACOORD(usr)]")
|
||||
SSblackbox.record_feedback("tally", "admin_verb", 1, "Podspawn Atom") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
@@ -148,7 +148,7 @@ GLOBAL_PROTECT(protected_ranks)
|
||||
if(!no_update)
|
||||
sync_ranks_with_db()
|
||||
else
|
||||
var/datum/DBQuery/query_load_admin_ranks = SSdbcore.NewQuery("SELECT `rank`, flags, exclude_flags, can_edit_flags FROM [format_table_name("admin_ranks")]")
|
||||
var/datum/db_query/query_load_admin_ranks = SSdbcore.NewQuery("SELECT `rank`, flags, exclude_flags, can_edit_flags FROM [format_table_name("admin_ranks")]")
|
||||
if(!query_load_admin_ranks.Execute())
|
||||
message_admins("Error loading admin ranks from database. Loading from backup.")
|
||||
log_sql("Error loading admin ranks from database. Loading from backup.")
|
||||
@@ -227,7 +227,7 @@ GLOBAL_PROTECT(protected_ranks)
|
||||
while(admins_regex.Find(admins_text))
|
||||
new /datum/admins(rank_names[admins_regex.group[2]], ckey(admins_regex.group[1]), FALSE, TRUE)
|
||||
if(!CONFIG_GET(flag/admin_legacy_system) || dbfail)
|
||||
var/datum/DBQuery/query_load_admins = SSdbcore.NewQuery("SELECT ckey, `rank` FROM [format_table_name("admin")] ORDER BY `rank`")
|
||||
var/datum/db_query/query_load_admins = SSdbcore.NewQuery("SELECT ckey, `rank` FROM [format_table_name("admin")] ORDER BY `rank`")
|
||||
if(!query_load_admins.Execute())
|
||||
message_admins("Error loading admins from database. Loading from backup.")
|
||||
log_sql("Error loading admins from database. Loading from backup.")
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
|
||||
if(SSdbcore.Connect())
|
||||
var/rating_bad = CONFIG_GET(number/ipintel_rating_bad)
|
||||
var/datum/DBQuery/query_get_ip_intel = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_get_ip_intel = SSdbcore.NewQuery({"
|
||||
SELECT date, intel, TIMESTAMPDIFF(MINUTE,date,NOW())
|
||||
FROM [format_table_name("ipintel")]
|
||||
WHERE
|
||||
@@ -67,7 +67,7 @@
|
||||
if (updatecache && res.intel >= 0)
|
||||
SSipintel.cache[ip] = res
|
||||
if(SSdbcore.Connect())
|
||||
var/datum/DBQuery/query_add_ip_intel = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_add_ip_intel = SSdbcore.NewQuery(
|
||||
"INSERT INTO [format_table_name("ipintel")] (ip, intel) VALUES (INET_ATON(:ip), :intel) ON DUPLICATE KEY UPDATE intel = VALUES(intel), date = NOW()",
|
||||
list("ip" = ip, "intel" = res.intel)
|
||||
)
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
var/logssperpage = 20
|
||||
var/pagecount = 0
|
||||
page = text2num(page)
|
||||
var/datum/DBQuery/query_count_admin_logs = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_count_admin_logs = SSdbcore.NewQuery(
|
||||
"SELECT COUNT(id) FROM [format_table_name("admin_log")] WHERE (:target IS NULL OR adminckey = :target) AND (:operation IS NULL OR operation = :operation)",
|
||||
list("target" = target, "operation" = operation)
|
||||
)
|
||||
@@ -36,7 +36,7 @@
|
||||
logcount -= logssperpage
|
||||
pagecount++
|
||||
output += "|"
|
||||
var/datum/DBQuery/query_search_admin_logs = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_search_admin_logs = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
datetime,
|
||||
round_id,
|
||||
@@ -64,7 +64,7 @@
|
||||
qdel(query_search_admin_logs)
|
||||
if(action == 2)
|
||||
output += "<h3>Admin ckeys with invalid ranks</h3>"
|
||||
var/datum/DBQuery/query_check_admin_errors = SSdbcore.NewQuery("SELECT IFNULL((SELECT byond_key FROM [format_table_name("player")] WHERE [format_table_name("player")].ckey = [format_table_name("admin")].ckey), ckey), [format_table_name("admin")].`rank` FROM [format_table_name("admin")] LEFT JOIN [format_table_name("admin_ranks")] ON [format_table_name("admin_ranks")].`rank` = [format_table_name("admin")].`rank` WHERE [format_table_name("admin_ranks")].`rank` IS NULL")
|
||||
var/datum/db_query/query_check_admin_errors = SSdbcore.NewQuery("SELECT IFNULL((SELECT byond_key FROM [format_table_name("player")] WHERE [format_table_name("player")].ckey = [format_table_name("admin")].ckey), ckey), [format_table_name("admin")].`rank` FROM [format_table_name("admin")] LEFT JOIN [format_table_name("admin_ranks")] ON [format_table_name("admin_ranks")].`rank` = [format_table_name("admin")].`rank` WHERE [format_table_name("admin_ranks")].`rank` IS NULL")
|
||||
if(!query_check_admin_errors.warn_execute())
|
||||
qdel(query_check_admin_errors)
|
||||
return
|
||||
@@ -75,7 +75,7 @@
|
||||
output += "<hr style='background:#000000; border:0; height:1px'>"
|
||||
qdel(query_check_admin_errors)
|
||||
output += "<h3>Unused ranks</h3>"
|
||||
var/datum/DBQuery/query_check_unused_rank = SSdbcore.NewQuery("SELECT [format_table_name("admin_ranks")].`rank`, flags, exclude_flags, can_edit_flags FROM [format_table_name("admin_ranks")] LEFT JOIN [format_table_name("admin")] ON [format_table_name("admin")].`rank` = [format_table_name("admin_ranks")].`rank` WHERE [format_table_name("admin")].`rank` IS NULL")
|
||||
var/datum/db_query/query_check_unused_rank = SSdbcore.NewQuery("SELECT [format_table_name("admin_ranks")].`rank`, flags, exclude_flags, can_edit_flags FROM [format_table_name("admin_ranks")] LEFT JOIN [format_table_name("admin")] ON [format_table_name("admin")].`rank` = [format_table_name("admin_ranks")].`rank` WHERE [format_table_name("admin")].`rank` IS NULL")
|
||||
if(!query_check_unused_rank.warn_execute())
|
||||
qdel(query_check_unused_rank)
|
||||
return
|
||||
@@ -217,7 +217,7 @@
|
||||
return FALSE
|
||||
if(use_db)
|
||||
//if an admin exists without a datum they won't be caught by the above
|
||||
var/datum/DBQuery/query_admin_in_db = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_admin_in_db = SSdbcore.NewQuery(
|
||||
"SELECT 1 FROM [format_table_name("admin")] WHERE ckey = :ckey",
|
||||
list("ckey" = .)
|
||||
)
|
||||
@@ -229,7 +229,7 @@
|
||||
to_chat(usr, "<span class='danger'>[admin_key] already listed in admin database. Check the Management tab if they don't appear in the list of admins.</span>", confidential = TRUE)
|
||||
return FALSE
|
||||
qdel(query_admin_in_db)
|
||||
var/datum/DBQuery/query_add_admin = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_add_admin = SSdbcore.NewQuery(
|
||||
"INSERT INTO [format_table_name("admin")] (ckey, `rank`) VALUES (:ckey, 'NEW ADMIN')",
|
||||
list("ckey" = .)
|
||||
)
|
||||
@@ -237,7 +237,7 @@
|
||||
qdel(query_add_admin)
|
||||
return FALSE
|
||||
qdel(query_add_admin)
|
||||
var/datum/DBQuery/query_add_admin_log = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_add_admin_log = SSdbcore.NewQuery({"
|
||||
INSERT INTO [format_table_name("admin_log")] (datetime, round_id, adminckey, adminip, operation, target, log)
|
||||
VALUES (:time, :round_id, :adminckey, INET_ATON(:adminip), 'add admin', :target, CONCAT('New admin added: ', :target))
|
||||
"}, list("time" = SQLtime(), "round_id" = "[GLOB.round_id]", "adminckey" = usr.ckey, "adminip" = usr.client.address, "target" = .))
|
||||
@@ -255,7 +255,7 @@
|
||||
var/m1 = "[key_name_admin(usr)] removed [admin_key] from the admins list [use_db ? "permanently" : "temporarily"]"
|
||||
var/m2 = "[key_name(usr)] removed [admin_key] from the admins list [use_db ? "permanently" : "temporarily"]"
|
||||
if(use_db)
|
||||
var/datum/DBQuery/query_add_rank = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_add_rank = SSdbcore.NewQuery(
|
||||
"DELETE FROM [format_table_name("admin")] WHERE ckey = :ckey",
|
||||
list("ckey" = admin_ckey)
|
||||
)
|
||||
@@ -263,7 +263,7 @@
|
||||
qdel(query_add_rank)
|
||||
return
|
||||
qdel(query_add_rank)
|
||||
var/datum/DBQuery/query_add_rank_log = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_add_rank_log = SSdbcore.NewQuery({"
|
||||
INSERT INTO [format_table_name("admin_log")] (datetime, round_id, adminckey, adminip, operation, target, log)
|
||||
VALUES (:time, :round_id, :adminckey, INET_ATON(:adminip), 'remove admin', :admin_ckey, CONCAT('Admin removed: ', :admin_ckey))
|
||||
"}, list("time" = SQLtime(), "round_id" = "[GLOB.round_id]", "adminckey" = usr.ckey, "adminip" = usr.client.address, "admin_ckey" = admin_ckey))
|
||||
@@ -322,7 +322,7 @@
|
||||
if(use_db)
|
||||
//if a player was tempminned before having a permanent change made to their rank they won't yet be in the db
|
||||
var/old_rank
|
||||
var/datum/DBQuery/query_admin_in_db = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_admin_in_db = SSdbcore.NewQuery(
|
||||
"SELECT `rank` FROM [format_table_name("admin")] WHERE ckey = :admin_ckey",
|
||||
list("admin_ckey" = admin_ckey)
|
||||
)
|
||||
@@ -336,7 +336,7 @@
|
||||
old_rank = query_admin_in_db.item[1]
|
||||
qdel(query_admin_in_db)
|
||||
//similarly if a temp rank is created it won't be in the db if someone is permanently changed to it
|
||||
var/datum/DBQuery/query_rank_in_db = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_rank_in_db = SSdbcore.NewQuery(
|
||||
"SELECT 1 FROM [format_table_name("admin_ranks")] WHERE `rank` = :new_rank",
|
||||
list("new_rank" = new_rank)
|
||||
)
|
||||
@@ -345,7 +345,7 @@
|
||||
return
|
||||
if(!query_rank_in_db.NextRow())
|
||||
QDEL_NULL(query_rank_in_db)
|
||||
var/datum/DBQuery/query_add_rank = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_add_rank = SSdbcore.NewQuery({"
|
||||
INSERT INTO [format_table_name("admin_ranks")] (`rank`, flags, exclude_flags, can_edit_flags)
|
||||
VALUES (:new_rank, '0', '0', '0')
|
||||
"}, list("new_rank" = new_rank))
|
||||
@@ -353,7 +353,7 @@
|
||||
qdel(query_add_rank)
|
||||
return
|
||||
qdel(query_add_rank)
|
||||
var/datum/DBQuery/query_add_rank_log = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_add_rank_log = SSdbcore.NewQuery({"
|
||||
INSERT INTO [format_table_name("admin_log")] (datetime, round_id, adminckey, adminip, operation, target, log)
|
||||
VALUES (:time, :round_id, :adminckey, INET_ATON(:adminip), 'add rank', :new_rank, CONCAT('New rank added: ', :new_rank))
|
||||
"}, list("time" = SQLtime(), "round_id" = "[GLOB.round_id]", "adminckey" = usr.ckey, "adminip" = usr.client.address, "new_rank" = new_rank))
|
||||
@@ -362,7 +362,7 @@
|
||||
return
|
||||
qdel(query_add_rank_log)
|
||||
qdel(query_rank_in_db)
|
||||
var/datum/DBQuery/query_change_rank = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_change_rank = SSdbcore.NewQuery(
|
||||
"UPDATE [format_table_name("admin")] SET `rank` = :new_rank WHERE ckey = :admin_ckey",
|
||||
list("new_rank" = new_rank, "admin_ckey" = admin_ckey)
|
||||
)
|
||||
@@ -370,7 +370,7 @@
|
||||
qdel(query_change_rank)
|
||||
return
|
||||
qdel(query_change_rank)
|
||||
var/datum/DBQuery/query_change_rank_log = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_change_rank_log = SSdbcore.NewQuery({"
|
||||
INSERT INTO [format_table_name("admin_log")] (datetime, round_id, adminckey, adminip, operation, target, log)
|
||||
VALUES (:time, :round_id, :adminckey, INET_ATON(:adminip), 'change admin rank', :target, CONCAT('Rank of ', :target, ' changed from ', :old_rank, ' to ', :new_rank))
|
||||
"}, list("time" = SQLtime(), "round_id" = "[GLOB.round_id]", "adminckey" = usr.ckey, "adminip" = usr.client.address, "target" = admin_ckey, "old_rank" = old_rank, "new_rank" = new_rank))
|
||||
@@ -405,7 +405,7 @@
|
||||
var/old_flags
|
||||
var/old_exclude_flags
|
||||
var/old_can_edit_flags
|
||||
var/datum/DBQuery/query_get_rank_flags = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_get_rank_flags = SSdbcore.NewQuery(
|
||||
"SELECT flags, exclude_flags, can_edit_flags FROM [format_table_name("admin_ranks")] WHERE `rank` = :rank_name",
|
||||
list("rank_name" = rank_name)
|
||||
)
|
||||
@@ -417,7 +417,7 @@
|
||||
old_exclude_flags = text2num(query_get_rank_flags.item[2])
|
||||
old_can_edit_flags = text2num(query_get_rank_flags.item[3])
|
||||
qdel(query_get_rank_flags)
|
||||
var/datum/DBQuery/query_change_rank_flags = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_change_rank_flags = SSdbcore.NewQuery(
|
||||
"UPDATE [format_table_name("admin_ranks")] SET flags = :new_flags, exclude_flags = :new_exclude_flags, can_edit_flags = :new_can_edit_flags WHERE `rank` = :rank_name",
|
||||
list("new_flags" = new_flags, "new_exclude_flags" = new_exclude_flags, "new_can_edit_flags" = new_can_edit_flags, "rank_name" = rank_name)
|
||||
)
|
||||
@@ -426,7 +426,7 @@
|
||||
return
|
||||
qdel(query_change_rank_flags)
|
||||
var/log_message = "Permissions of [rank_name] changed from[rights2text(old_flags," ")][rights2text(old_exclude_flags," ", "-")][rights2text(old_can_edit_flags," ", "*")] to[rights2text(new_flags," ")][rights2text(new_exclude_flags," ", "-")][rights2text(new_can_edit_flags," ", "*")]"
|
||||
var/datum/DBQuery/query_change_rank_flags_log = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_change_rank_flags_log = SSdbcore.NewQuery({"
|
||||
INSERT INTO [format_table_name("admin_log")] (datetime, round_id, adminckey, adminip, operation, target, log)
|
||||
VALUES (:time, :round_id, :adminckey, INET_ATON(:adminip), 'change rank flags', :rank_name, :log)
|
||||
"}, list("time" = SQLtime(), "round_id" = "[GLOB.round_id]", "adminckey" = usr.ckey, "adminip" = usr.client.address, "rank_name" = rank_name, "log" = log_message))
|
||||
@@ -480,7 +480,7 @@
|
||||
if(CONFIG_GET(flag/load_legacy_ranks_only))
|
||||
to_chat(usr, "<span class='admin prefix'>Rank deletion not permitted while database rank loading is disabled.</span>", confidential = TRUE)
|
||||
return
|
||||
var/datum/DBQuery/query_admins_with_rank = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_admins_with_rank = SSdbcore.NewQuery(
|
||||
"SELECT 1 FROM [format_table_name("admin")] WHERE `rank` = :admin_rank",
|
||||
list("admin_rank" = admin_rank)
|
||||
)
|
||||
@@ -495,7 +495,7 @@
|
||||
if(alert("Are you sure you want to remove [admin_rank]?","Confirm Removal","Do it","Cancel") == "Do it")
|
||||
var/m1 = "[key_name_admin(usr)] removed rank [admin_rank] permanently"
|
||||
var/m2 = "[key_name(usr)] removed rank [admin_rank] permanently"
|
||||
var/datum/DBQuery/query_add_rank = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_add_rank = SSdbcore.NewQuery(
|
||||
"DELETE FROM [format_table_name("admin_ranks")] WHERE `rank` = :admin_rank",
|
||||
list("admin_rank" = admin_rank)
|
||||
)
|
||||
@@ -503,7 +503,7 @@
|
||||
qdel(query_add_rank)
|
||||
return
|
||||
qdel(query_add_rank)
|
||||
var/datum/DBQuery/query_add_rank_log = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_add_rank_log = SSdbcore.NewQuery({"
|
||||
INSERT INTO [format_table_name("admin_log")] (datetime, round_id, adminckey, adminip, operation, target, log)
|
||||
VALUES (:time, :round_id, :adminckey, INET_ATON(:adminip), 'remove rank', :admin_rank, CONCAT('Rank removed: ', :admin_rank))
|
||||
"}, list("time" = SQLtime(), "round_id" = "[GLOB.round_id]", "adminckey" = usr.ckey, "adminip" = usr.client.address, "admin_rank" = admin_rank))
|
||||
@@ -518,7 +518,7 @@
|
||||
var/sqlrank = "Player"
|
||||
if (D)
|
||||
sqlrank = D.rank.name
|
||||
var/datum/DBQuery/query_sync_lastadminrank = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_sync_lastadminrank = SSdbcore.NewQuery(
|
||||
"UPDATE [format_table_name("player")] SET lastadminrank = :rank WHERE ckey = :ckey",
|
||||
list("rank" = sqlrank, "ckey" = admin_ckey)
|
||||
)
|
||||
|
||||
@@ -356,7 +356,7 @@
|
||||
if(!SSdbcore.Connect())
|
||||
to_chat(usr, "<span class='danger'>Failed to establish database connection.</span>", confidential = TRUE)
|
||||
return
|
||||
var/datum/DBQuery/query_delete_poll = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_delete_poll = SSdbcore.NewQuery(
|
||||
"CALL set_poll_deleted(:poll_id)",
|
||||
list("poll_id" = poll_id)
|
||||
)
|
||||
@@ -399,7 +399,7 @@
|
||||
|
||||
var/kn = key_name(usr)
|
||||
var/kna = key_name_admin(usr)
|
||||
var/datum/DBQuery/query_save_poll = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_save_poll = SSdbcore.NewQuery({"
|
||||
INSERT INTO [format_table_name("poll_question")] (id, polltype, created_datetime, starttime, endtime, question, subtitle, adminonly, multiplechoiceoptions, createdby_ckey, createdby_ip, dontshow, allow_revoting)
|
||||
VALUES (:poll_id, :poll_type, NOW(), COALESCE(:start_datetime, NOW()), [end_datetime_sql], :question, :subtitle, :admin_only, :options_allowed, :admin_ckey, INET_ATON(:admin_ip), :dont_show, :allow_revoting)
|
||||
ON DUPLICATE KEY UPDATE starttime = :start_datetime, endtime = [end_datetime_sql], question = :question, subtitle = :subtitle, adminonly = :admin_only, multiplechoiceoptions = :options_allowed, dontshow = :dont_show, allow_revoting = :allow_revoting
|
||||
@@ -414,7 +414,7 @@
|
||||
if (!poll_id)
|
||||
poll_id = query_save_poll.last_insert_id
|
||||
qdel(query_save_poll)
|
||||
var/datum/DBQuery/query_get_poll_id_start_endtime = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_get_poll_id_start_endtime = SSdbcore.NewQuery(
|
||||
"SELECT starttime, endtime, IF(starttime > NOW(), 1, 0) FROM [format_table_name("poll_question")] WHERE id = :poll_id",
|
||||
list("poll_id" = poll_id)
|
||||
)
|
||||
@@ -465,7 +465,7 @@
|
||||
var/table = "poll_vote"
|
||||
if(poll_type == POLLTYPE_TEXT)
|
||||
table = "poll_textreply"
|
||||
var/datum/DBQuery/query_clear_poll_votes = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_clear_poll_votes = SSdbcore.NewQuery(
|
||||
"UPDATE [format_table_name(table)] SET deleted = 1 WHERE pollid = :poll_id",
|
||||
list("poll_id" = poll_id)
|
||||
)
|
||||
@@ -656,7 +656,7 @@
|
||||
for (var/k in values)
|
||||
update_data += "[k] = VALUES([k])"
|
||||
|
||||
var/datum/DBQuery/query_update_poll_option = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_update_poll_option = SSdbcore.NewQuery(
|
||||
"INSERT INTO [format_table_name("poll_option")] ([jointext(values, ",")]) VALUES (:[jointext(values, ",:")]) ON DUPLICATE KEY UPDATE [jointext(update_data, ", ")]",
|
||||
values
|
||||
)
|
||||
@@ -679,7 +679,7 @@
|
||||
if(!SSdbcore.Connect())
|
||||
to_chat(usr, "<span class='danger'>Failed to establish database connection.</span>", confidential = TRUE)
|
||||
return
|
||||
var/datum/DBQuery/query_delete_poll_option = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_delete_poll_option = SSdbcore.NewQuery(
|
||||
"UPDATE [format_table_name("poll_option")] AS o INNER JOIN [format_table_name("poll_vote")] AS v ON o.id = v.optionid SET o.deleted = 1, v.deleted = 1 WHERE o.id = :option_id",
|
||||
list("option_id" = option_id)
|
||||
)
|
||||
@@ -697,7 +697,7 @@
|
||||
if(!SSdbcore.Connect())
|
||||
to_chat(usr, "<span class='danger'>Failed to establish database connection.</span>", confidential = TRUE)
|
||||
return
|
||||
var/datum/DBQuery/query_load_polls = SSdbcore.NewQuery("SELECT id, polltype, starttime, endtime, question, subtitle, adminonly, multiplechoiceoptions, dontshow, allow_revoting, IF(polltype='TEXT',(SELECT COUNT(ckey) FROM [format_table_name("poll_textreply")] AS t WHERE t.pollid = q.id AND deleted = 0), (SELECT COUNT(DISTINCT ckey) FROM [format_table_name("poll_vote")] AS v WHERE v.pollid = q.id AND deleted = 0)), IFNULL((SELECT byond_key FROM [format_table_name("player")] AS p WHERE p.ckey = q.createdby_ckey), createdby_ckey), IF(starttime > NOW(), 1, 0) FROM [format_table_name("poll_question")] AS q WHERE NOW() < endtime AND deleted = 0")
|
||||
var/datum/db_query/query_load_polls = SSdbcore.NewQuery("SELECT id, polltype, starttime, endtime, question, subtitle, adminonly, multiplechoiceoptions, dontshow, allow_revoting, IF(polltype='TEXT',(SELECT COUNT(ckey) FROM [format_table_name("poll_textreply")] AS t WHERE t.pollid = q.id AND deleted = 0), (SELECT COUNT(DISTINCT ckey) FROM [format_table_name("poll_vote")] AS v WHERE v.pollid = q.id AND deleted = 0)), IFNULL((SELECT byond_key FROM [format_table_name("player")] AS p WHERE p.ckey = q.createdby_ckey), createdby_ckey), IF(starttime > NOW(), 1, 0) FROM [format_table_name("poll_question")] AS q WHERE NOW() < endtime AND deleted = 0")
|
||||
if(!query_load_polls.Execute())
|
||||
qdel(query_load_polls)
|
||||
return
|
||||
@@ -707,7 +707,7 @@
|
||||
poll_ids += query_load_polls.item[1]
|
||||
qdel(query_load_polls)
|
||||
if(length(poll_ids))
|
||||
var/datum/DBQuery/query_load_poll_options = SSdbcore.NewQuery("SELECT id, text, minval, maxval, descmin, descmid, descmax, default_percentage_calc, pollid FROM [format_table_name("poll_option")] WHERE pollid IN ([jointext(poll_ids, ",")])")
|
||||
var/datum/db_query/query_load_poll_options = SSdbcore.NewQuery("SELECT id, text, minval, maxval, descmin, descmid, descmax, default_percentage_calc, pollid FROM [format_table_name("poll_option")] WHERE pollid IN ([jointext(poll_ids, ",")])")
|
||||
if(!query_load_poll_options.Execute())
|
||||
qdel(query_load_poll_options)
|
||||
return
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
else
|
||||
values["role"] = roles
|
||||
sql_roles = ":role"
|
||||
var/datum/DBQuery/query_check_ban = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_check_ban = SSdbcore.NewQuery({"
|
||||
SELECT 1
|
||||
FROM [format_table_name("ban")]
|
||||
WHERE
|
||||
@@ -54,7 +54,7 @@
|
||||
/proc/is_banned_from_with_details(player_ckey, player_ip, player_cid, role)
|
||||
if(!player_ckey && !player_ip && !player_cid)
|
||||
return
|
||||
var/datum/DBQuery/query_check_ban = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_check_ban = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
id,
|
||||
bantime,
|
||||
@@ -90,7 +90,7 @@
|
||||
var/is_admin = FALSE
|
||||
if(GLOB.admin_datums[C.ckey] || GLOB.deadmins[C.ckey])
|
||||
is_admin = TRUE
|
||||
var/datum/DBQuery/query_build_ban_cache = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_build_ban_cache = SSdbcore.NewQuery(
|
||||
"SELECT role, applies_to_admins FROM [format_table_name("ban")] WHERE ckey = :ckey AND unbanned_datetime IS NULL AND (expiration_time IS NULL OR expiration_time > NOW())",
|
||||
list("ckey" = C.ckey)
|
||||
)
|
||||
@@ -216,7 +216,7 @@
|
||||
//there's not always a client to use the bancache of so to avoid many individual queries from using is_banned_form we'll build a cache to use here
|
||||
var/banned_from = list()
|
||||
if(player_key)
|
||||
var/datum/DBQuery/query_get_banned_roles = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_get_banned_roles = SSdbcore.NewQuery({"
|
||||
SELECT role
|
||||
FROM [format_table_name("ban")]
|
||||
WHERE
|
||||
@@ -433,7 +433,7 @@
|
||||
return
|
||||
var/player_ckey = ckey(player_key)
|
||||
if(player_ckey)
|
||||
var/datum/DBQuery/query_create_ban_get_player = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_create_ban_get_player = SSdbcore.NewQuery({"
|
||||
SELECT byond_key, INET_NTOA(ip), computerid FROM [format_table_name("player")] WHERE ckey = :player_ckey
|
||||
"}, list("player_ckey" = player_ckey))
|
||||
if(!query_create_ban_get_player.warn_execute())
|
||||
@@ -458,7 +458,7 @@
|
||||
qdel(query_create_ban_get_player)
|
||||
var/admin_ckey = usr.client.ckey
|
||||
if(applies_to_admins)
|
||||
var/datum/DBQuery/query_check_adminban_count = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_check_adminban_count = SSdbcore.NewQuery({"
|
||||
SELECT COUNT(DISTINCT bantime)
|
||||
FROM [format_table_name("ban")]
|
||||
WHERE
|
||||
@@ -582,7 +582,7 @@
|
||||
var/bancount = 0
|
||||
var/bansperpage = 10
|
||||
page = text2num(page)
|
||||
var/datum/DBQuery/query_unban_count_bans = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_unban_count_bans = SSdbcore.NewQuery({"
|
||||
SELECT COUNT(id)
|
||||
FROM [format_table_name("ban")]
|
||||
WHERE
|
||||
@@ -611,7 +611,7 @@
|
||||
bancount -= bansperpage
|
||||
pagecount++
|
||||
output += pagelist.Join(" | ")
|
||||
var/datum/DBQuery/query_unban_search_bans = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_unban_search_bans = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
id,
|
||||
bantime,
|
||||
@@ -712,7 +712,7 @@
|
||||
return
|
||||
var/kn = key_name(usr)
|
||||
var/kna = key_name_admin(usr)
|
||||
var/datum/DBQuery/query_unban = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_unban = SSdbcore.NewQuery({"
|
||||
UPDATE [format_table_name("ban")] SET
|
||||
unbanned_datetime = NOW(),
|
||||
unbanned_ckey = :admin_ckey,
|
||||
@@ -746,7 +746,7 @@
|
||||
var/player_ckey = ckey(player_key)
|
||||
var/bantime
|
||||
if(player_ckey)
|
||||
var/datum/DBQuery/query_edit_ban_get_player = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_edit_ban_get_player = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
byond_key,
|
||||
(SELECT bantime FROM [format_table_name("ban")] WHERE id = :ban_id),
|
||||
@@ -777,7 +777,7 @@
|
||||
return
|
||||
qdel(query_edit_ban_get_player)
|
||||
if(applies_to_admins && (applies_to_admins != old_applies))
|
||||
var/datum/DBQuery/query_check_adminban_count = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_check_adminban_count = SSdbcore.NewQuery({"
|
||||
SELECT COUNT(DISTINCT bantime)
|
||||
FROM [format_table_name("ban")]
|
||||
WHERE a_ckey = :admin_ckey
|
||||
@@ -835,7 +835,7 @@
|
||||
where = "id = :ban_id"
|
||||
arguments["ban_id"] = ban_id
|
||||
|
||||
var/datum/DBQuery/query_edit_ban = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_edit_ban = SSdbcore.NewQuery({"
|
||||
UPDATE [format_table_name("ban")]
|
||||
SET
|
||||
expiration_time = IF(:duration IS NULL, NULL, bantime + INTERVAL :duration [interval])
|
||||
@@ -875,7 +875,7 @@
|
||||
if(!SSdbcore.Connect())
|
||||
to_chat(usr, "<span class='danger'>Failed to establish database connection.</span>", confidential = TRUE)
|
||||
return
|
||||
var/datum/DBQuery/query_get_ban_edits = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_get_ban_edits = SSdbcore.NewQuery({"
|
||||
SELECT edits FROM [format_table_name("ban")] WHERE id = :ban_id
|
||||
"}, list("ban_id" = ban_id))
|
||||
if(!query_get_ban_edits.warn_execute())
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
if(!new_key)
|
||||
return
|
||||
var/new_ckey = ckey(new_key)
|
||||
var/datum/DBQuery/query_find_ckey = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_find_ckey = SSdbcore.NewQuery(
|
||||
"SELECT ckey FROM [format_table_name("player")] WHERE ckey = :ckey",
|
||||
list("ckey" = new_ckey)
|
||||
)
|
||||
@@ -57,7 +57,7 @@
|
||||
var/expire_time = input("Set expiry time for [type] as format YYYY-MM-DD HH:MM:SS. All times in server time. HH:MM:SS is optional and 24-hour. Must be later than current time for obvious reasons.", "Set expiry time", SQLtime()) as null|text
|
||||
if(!expire_time)
|
||||
return
|
||||
var/datum/DBQuery/query_validate_expire_time = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_validate_expire_time = SSdbcore.NewQuery(
|
||||
"SELECT IF(STR_TO_DATE(:expire_time,'%Y-%c-%d %T') > NOW(), STR_TO_DATE(:expire_time,'%Y-%c-%d %T'), 0)",
|
||||
list("expire_time" = expire_time)
|
||||
)
|
||||
@@ -76,7 +76,7 @@
|
||||
note_severity = input("Set the severity of the note.", "Severity", null, null) as null|anything in list("High", "Medium", "Minor", "None")
|
||||
if(!note_severity)
|
||||
return
|
||||
var/datum/DBQuery/query_create_message = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_create_message = SSdbcore.NewQuery({"
|
||||
INSERT INTO [format_table_name("messages")] (type, targetckey, adminckey, text, timestamp, server, server_ip, server_port, round_id, secret, expire_timestamp, severity)
|
||||
VALUES (:type, :target_ckey, :admin_ckey, :text, :timestamp, :server, INET_ATON(:internet_address), :port, :round_id, :secret, :expiry, :note_severity)
|
||||
"}, list(
|
||||
@@ -122,7 +122,7 @@
|
||||
var/user_key_name = key_name(usr)
|
||||
var/user_name_admin = key_name_admin(usr)
|
||||
var/deleted_by_ckey = usr.ckey
|
||||
var/datum/DBQuery/query_find_del_message = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_find_del_message = SSdbcore.NewQuery(
|
||||
"SELECT type, IFNULL((SELECT byond_key FROM [format_table_name("player")] WHERE ckey = targetckey), targetckey), text FROM [format_table_name("messages")] WHERE id = :id AND deleted = 0",
|
||||
list("id" = message_id)
|
||||
)
|
||||
@@ -134,7 +134,7 @@
|
||||
target_key = query_find_del_message.item[2]
|
||||
text = query_find_del_message.item[3]
|
||||
qdel(query_find_del_message)
|
||||
var/datum/DBQuery/query_del_message = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_del_message = SSdbcore.NewQuery(
|
||||
"UPDATE [format_table_name("messages")] SET deleted = 1, deleted_ckey = :deleted_ckey WHERE id = :id",
|
||||
list("deleted_ckey" = deleted_by_ckey, "id" = message_id)
|
||||
)
|
||||
@@ -163,7 +163,7 @@
|
||||
var/editor_key = usr.key
|
||||
var/kn = key_name(usr)
|
||||
var/kna = key_name_admin(usr)
|
||||
var/datum/DBQuery/query_find_edit_message = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_find_edit_message = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
type,
|
||||
IFNULL((SELECT byond_key FROM [format_table_name("player")] WHERE ckey = targetckey), targetckey),
|
||||
@@ -185,7 +185,7 @@
|
||||
qdel(query_find_edit_message)
|
||||
return
|
||||
var/edit_text = "Edited by [editor_key] on [SQLtime()] from<br>[old_text]<br>to<br>[new_text]<hr>"
|
||||
var/datum/DBQuery/query_edit_message = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_edit_message = SSdbcore.NewQuery({"
|
||||
UPDATE [format_table_name("messages")]
|
||||
SET text = :text, lasteditor = :lasteditor, edits = CONCAT(IFNULL(edits,''),:edit_text)
|
||||
WHERE id = :id AND deleted = 0
|
||||
@@ -213,7 +213,7 @@
|
||||
var/editor_key = usr.key
|
||||
var/kn = key_name(usr)
|
||||
var/kna = key_name_admin(usr)
|
||||
var/datum/DBQuery/query_find_edit_expiry_message = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_find_edit_expiry_message = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
type,
|
||||
IFNULL((SELECT byond_key FROM [format_table_name("player")] WHERE ckey = targetckey), targetckey),
|
||||
@@ -238,7 +238,7 @@
|
||||
if(expire_time == "-1")
|
||||
new_expiry = "non-expiring"
|
||||
else
|
||||
var/datum/DBQuery/query_validate_expire_time_edit = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_validate_expire_time_edit = SSdbcore.NewQuery({"
|
||||
SELECT IF(STR_TO_DATE(:expire_time,'%Y-%c-%d %T') > NOW(), STR_TO_DATE(:expire_time,'%Y-%c-%d %T'), 0)
|
||||
"}, list("expire_time" = expire_time))
|
||||
if(!query_validate_expire_time_edit.warn_execute())
|
||||
@@ -255,7 +255,7 @@
|
||||
new_expiry = query_validate_expire_time_edit.item[1]
|
||||
qdel(query_validate_expire_time_edit)
|
||||
var/edit_text = "Expiration time edited by [editor_key] on [SQLtime()] from [old_expiry] to [new_expiry]<hr>"
|
||||
var/datum/DBQuery/query_edit_message_expiry = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_edit_message_expiry = SSdbcore.NewQuery({"
|
||||
UPDATE [format_table_name("messages")]
|
||||
SET expire_timestamp = :expire_time, lasteditor = :lasteditor, edits = CONCAT(IFNULL(edits,''),:edit_text)
|
||||
WHERE id = :id AND deleted = 0
|
||||
@@ -282,7 +282,7 @@
|
||||
return
|
||||
var/kn = key_name(usr)
|
||||
var/kna = key_name_admin(usr)
|
||||
var/datum/DBQuery/query_find_edit_note_severity = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_find_edit_note_severity = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
type,
|
||||
IFNULL((SELECT byond_key FROM [format_table_name("player")] WHERE ckey = targetckey), targetckey),
|
||||
@@ -309,7 +309,7 @@
|
||||
return
|
||||
new_severity = new_severity
|
||||
var/edit_text = "Note severity edited by [editor_key] on [SQLtime()] from [old_severity] to [new_severity]<hr>"
|
||||
var/datum/DBQuery/query_edit_note_severity = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_edit_note_severity = SSdbcore.NewQuery({"
|
||||
UPDATE [format_table_name("messages")]
|
||||
SET severity = :severity, lasteditor = :lasteditor, edits = CONCAT(IFNULL(edits,''),:edit_text)
|
||||
WHERE id = :id AND deleted = 0
|
||||
@@ -335,7 +335,7 @@
|
||||
var/editor_key = usr.key
|
||||
var/kn = key_name(usr)
|
||||
var/kna = key_name_admin(usr)
|
||||
var/datum/DBQuery/query_find_message_secret = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_find_message_secret = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
type,
|
||||
IFNULL((SELECT byond_key FROM [format_table_name("player")] WHERE ckey = targetckey), targetckey),
|
||||
@@ -353,7 +353,7 @@
|
||||
var/admin_key = query_find_message_secret.item[3]
|
||||
var/secret = text2num(query_find_message_secret.item[4])
|
||||
var/edit_text = "Made [secret ? "not secret" : "secret"] by [editor_key] on [SQLtime()]<hr>"
|
||||
var/datum/DBQuery/query_message_secret = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_message_secret = SSdbcore.NewQuery({"
|
||||
UPDATE [format_table_name("messages")]
|
||||
SET secret = NOT secret, lasteditor = :lasteditor, edits = CONCAT(IFNULL(edits,''),:edit_text)
|
||||
WHERE id = :id
|
||||
@@ -397,7 +397,7 @@
|
||||
else
|
||||
output += "<a href='?_src_=holder;[HrefToken()];showwatchfilter=1'>Filter offline clients</a></center>"
|
||||
output += ruler
|
||||
var/datum/DBQuery/query_get_type_messages = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_get_type_messages = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
id,
|
||||
IFNULL((SELECT byond_key FROM [format_table_name("player")] WHERE ckey = targetckey), targetckey),
|
||||
@@ -444,7 +444,7 @@
|
||||
qdel(query_get_type_messages)
|
||||
if(target_ckey)
|
||||
var/target_key
|
||||
var/datum/DBQuery/query_get_messages = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_get_messages = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
type,
|
||||
secret,
|
||||
@@ -538,7 +538,7 @@
|
||||
notedata += data
|
||||
qdel(query_get_messages)
|
||||
if(!target_key)
|
||||
var/datum/DBQuery/query_get_message_key = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_get_message_key = SSdbcore.NewQuery({"
|
||||
SELECT byond_key FROM [format_table_name("player")] WHERE ckey = :ckey
|
||||
"}, list("ckey" = target_ckey))
|
||||
if(!query_get_message_key.warn_execute())
|
||||
@@ -584,7 +584,7 @@
|
||||
search = "^\[^\[:alpha:\]\]"
|
||||
else
|
||||
search = "^[index]"
|
||||
var/datum/DBQuery/query_list_messages = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_list_messages = SSdbcore.NewQuery({"
|
||||
SELECT DISTINCT
|
||||
targetckey,
|
||||
(SELECT byond_key FROM [format_table_name("player")] WHERE ckey = targetckey)
|
||||
@@ -623,7 +623,7 @@
|
||||
if(!type)
|
||||
return
|
||||
var/output
|
||||
var/datum/DBQuery/query_get_message_output = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_get_message_output = SSdbcore.NewQuery({"
|
||||
SELECT
|
||||
id,
|
||||
IFNULL((SELECT byond_key FROM [format_table_name("player")] WHERE ckey = adminckey), adminckey),
|
||||
@@ -649,7 +649,7 @@
|
||||
if("message")
|
||||
output += "<font color='red' size='3'><b>Admin message left by <span class='prefix'>[admin_key]</span> on [timestamp]</b></font>"
|
||||
output += "<br><font color='red'>[text]</font><br>"
|
||||
var/datum/DBQuery/query_message_read = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_message_read = SSdbcore.NewQuery(
|
||||
"UPDATE [format_table_name("messages")] SET type = 'message sent' WHERE id = :id",
|
||||
list("id" = message_id)
|
||||
)
|
||||
@@ -692,7 +692,7 @@
|
||||
var/timestamp = note.group[1]
|
||||
notetext = note.group[2]
|
||||
var/admin_ckey = note.group[3]
|
||||
var/datum/DBQuery/query_convert_time = SSdbcore.NewQuery("SELECT ADDTIME(STR_TO_DATE(:timestamp,'%d-%b-%Y'), '0')", list("timestamp" = timestamp))
|
||||
var/datum/db_query/query_convert_time = SSdbcore.NewQuery("SELECT ADDTIME(STR_TO_DATE(:timestamp,'%d-%b-%Y'), '0')", list("timestamp" = timestamp))
|
||||
if(!query_convert_time.Execute())
|
||||
qdel(query_convert_time)
|
||||
return
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
ban["message"] = "[reason]"
|
||||
|
||||
if(SSdbcore.Connect())
|
||||
var/datum/DBQuery/query_create_stickyban = SSdbcore.NewQuery({"
|
||||
var/datum/db_query/query_create_stickyban = SSdbcore.NewQuery({"
|
||||
INSERT INTO [format_table_name("stickyban")] (ckey, reason, banning_admin)
|
||||
VALUES (:ckey, :message, :banning_admin)
|
||||
"}, list("ckey" = ckey, "message" = ban["message"], "banning_admin" = usr.ckey))
|
||||
@@ -119,7 +119,7 @@
|
||||
SSstickyban.cache[ckey] = ban
|
||||
|
||||
if (SSdbcore.Connect())
|
||||
var/datum/DBQuery/query_remove_stickyban_alt = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_remove_stickyban_alt = SSdbcore.NewQuery(
|
||||
"DELETE FROM [format_table_name("stickyban_matched_ckey")] WHERE stickyban = :ckey AND matched_ckey = :alt",
|
||||
list("ckey" = ckey, "alt" = alt)
|
||||
)
|
||||
@@ -153,7 +153,7 @@
|
||||
SSstickyban.cache[ckey] = ban
|
||||
|
||||
if (SSdbcore.Connect())
|
||||
var/datum/DBQuery/query_edit_stickyban = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_edit_stickyban = SSdbcore.NewQuery(
|
||||
"UPDATE [format_table_name("stickyban")] SET reason = :reason WHERE ckey = :ckey",
|
||||
list("reason" = reason, "ckey" = ckey)
|
||||
)
|
||||
@@ -203,7 +203,7 @@
|
||||
SSstickyban.cache[ckey] = ban
|
||||
|
||||
if (SSdbcore.Connect())
|
||||
var/datum/DBQuery/query_exempt_stickyban_alt = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_exempt_stickyban_alt = SSdbcore.NewQuery(
|
||||
"UPDATE [format_table_name("stickyban_matched_ckey")] SET exempt = 1 WHERE stickyban = :ckey AND matched_ckey = :alt",
|
||||
list("ckey" = ckey, "alt" = alt)
|
||||
)
|
||||
@@ -253,7 +253,7 @@
|
||||
SSstickyban.cache[ckey] = ban
|
||||
|
||||
if (SSdbcore.Connect())
|
||||
var/datum/DBQuery/query_unexempt_stickyban_alt = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_unexempt_stickyban_alt = SSdbcore.NewQuery(
|
||||
"UPDATE [format_table_name("stickyban_matched_ckey")] SET exempt = 0 WHERE stickyban = :ckey AND matched_ckey = :alt",
|
||||
list("ckey" = ckey, "alt" = alt)
|
||||
)
|
||||
|
||||
@@ -390,21 +390,21 @@
|
||||
if("cat")
|
||||
M.change_mob_type( /mob/living/simple_animal/pet/cat , null, null, delmob )
|
||||
if("runtime")
|
||||
M.change_mob_type( /mob/living/simple_animal/pet/cat/Runtime , null, null, delmob )
|
||||
M.change_mob_type( /mob/living/simple_animal/pet/cat/runtime , null, null, delmob )
|
||||
if("corgi")
|
||||
M.change_mob_type( /mob/living/simple_animal/pet/dog/corgi , null, null, delmob )
|
||||
if("ian")
|
||||
M.change_mob_type( /mob/living/simple_animal/pet/dog/corgi/Ian , null, null, delmob )
|
||||
M.change_mob_type( /mob/living/simple_animal/pet/dog/corgi/ian , null, null, delmob )
|
||||
if("pug")
|
||||
M.change_mob_type( /mob/living/simple_animal/pet/dog/pug , null, null, delmob )
|
||||
if("crab")
|
||||
M.change_mob_type( /mob/living/simple_animal/crab , null, null, delmob )
|
||||
if("coffee")
|
||||
M.change_mob_type( /mob/living/simple_animal/crab/Coffee , null, null, delmob )
|
||||
M.change_mob_type( /mob/living/simple_animal/crab/coffee , null, null, delmob )
|
||||
if("parrot")
|
||||
M.change_mob_type( /mob/living/simple_animal/parrot , null, null, delmob )
|
||||
if("polyparrot")
|
||||
M.change_mob_type( /mob/living/simple_animal/parrot/Poly , null, null, delmob )
|
||||
M.change_mob_type( /mob/living/simple_animal/parrot/poly , null, null, delmob )
|
||||
if("constructjuggernaut")
|
||||
M.change_mob_type( /mob/living/simple_animal/hostile/construct/juggernaut , null, null, delmob )
|
||||
if("constructartificer")
|
||||
@@ -575,7 +575,7 @@
|
||||
else if(href_list["messageedits"])
|
||||
if(!check_rights(R_ADMIN))
|
||||
return
|
||||
var/datum/DBQuery/query_get_message_edits = SSdbcore.NewQuery(
|
||||
var/datum/db_query/query_get_message_edits = SSdbcore.NewQuery(
|
||||
"SELECT edits FROM [format_table_name("messages")] WHERE id = :message_id",
|
||||
list("message_id" = href_list["messageedits"])
|
||||
)
|
||||
@@ -1701,7 +1701,7 @@
|
||||
R.activate_module(I)
|
||||
|
||||
if(pod)
|
||||
new /obj/effect/DPtarget(target, pod)
|
||||
new /obj/effect/dp_target(target, pod)
|
||||
|
||||
if (number == 1)
|
||||
log_admin("[key_name(usr)] created a [english_list(paths)]")
|
||||
|
||||
@@ -230,11 +230,11 @@
|
||||
var/list/querys = SDQL_parse(query_list)
|
||||
if(!length(querys))
|
||||
return
|
||||
var/list/datum/SDQL2_query/running = list()
|
||||
var/list/datum/SDQL2_query/waiting_queue = list() //Sequential queries queue.
|
||||
var/list/datum/sdql2_query/running = list()
|
||||
var/list/datum/sdql2_query/waiting_queue = list() //Sequential queries queue.
|
||||
|
||||
for(var/list/query_tree in querys)
|
||||
var/datum/SDQL2_query/query = new /datum/SDQL2_query(query_tree)
|
||||
var/datum/sdql2_query/query = new /datum/sdql2_query(query_tree)
|
||||
if(QDELETED(query))
|
||||
continue
|
||||
if(usr)
|
||||
@@ -244,7 +244,7 @@
|
||||
sequential = TRUE
|
||||
|
||||
if(sequential) //Start first one
|
||||
var/datum/SDQL2_query/query = popleft(waiting_queue)
|
||||
var/datum/sdql2_query/query = popleft(waiting_queue)
|
||||
running += query
|
||||
var/msg = "Starting query #[query.id] - [query.get_query_text()]."
|
||||
if(usr)
|
||||
@@ -252,7 +252,7 @@
|
||||
log_admin(msg)
|
||||
query.ARun()
|
||||
else //Start all
|
||||
for(var/datum/SDQL2_query/query in waiting_queue)
|
||||
for(var/datum/sdql2_query/query in waiting_queue)
|
||||
running += query
|
||||
var/msg = "Starting query #[query.id] - [query.get_query_text()]."
|
||||
if(usr)
|
||||
@@ -269,7 +269,7 @@
|
||||
CHECK_TICK
|
||||
finished = TRUE
|
||||
for(var/i in running)
|
||||
var/datum/SDQL2_query/query = i
|
||||
var/datum/sdql2_query/query = i
|
||||
if(QDELETED(query))
|
||||
running -= query
|
||||
continue
|
||||
@@ -290,7 +290,7 @@
|
||||
QDEL_IN(query, 50)
|
||||
if(sequential && waiting_queue.len)
|
||||
finished = FALSE
|
||||
var/datum/SDQL2_query/next_query = popleft(waiting_queue)
|
||||
var/datum/sdql2_query/next_query = popleft(waiting_queue)
|
||||
running += next_query
|
||||
var/msg = "Starting query #[next_query.id] - [next_query.get_query_text()]."
|
||||
if(usr)
|
||||
@@ -309,9 +309,9 @@
|
||||
"<span class='admin'>SDQL combined querys took [DisplayTimeText(end_time_total)] to complete.</span>") + combined_refs
|
||||
|
||||
GLOBAL_LIST_INIT(sdql2_queries, GLOB.sdql2_queries || list())
|
||||
GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null, "VIEW VARIABLES (all)", null))
|
||||
GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/sdql2_vv_all, new(null, "VIEW VARIABLES (all)", null))
|
||||
|
||||
/datum/SDQL2_query
|
||||
/datum/sdql2_query
|
||||
var/list/query_tree
|
||||
var/state = SDQL2_STATE_IDLE
|
||||
var/options = SDQL2_OPTIONS_DEFAULT
|
||||
@@ -342,7 +342,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
var/obj/effect/statclick/SDQL2_delete/delete_click
|
||||
var/obj/effect/statclick/SDQL2_action/action_click
|
||||
|
||||
/datum/SDQL2_query/New(list/tree, SU = FALSE, admin_interact = TRUE, _options = SDQL2_OPTIONS_DEFAULT, finished_qdel = FALSE)
|
||||
/datum/sdql2_query/New(list/tree, SU = FALSE, admin_interact = TRUE, _options = SDQL2_OPTIONS_DEFAULT, finished_qdel = FALSE)
|
||||
if(IsAdminAdvancedProcCall() || !LAZYLEN(tree))
|
||||
qdel(src)
|
||||
return
|
||||
@@ -354,7 +354,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
id = id_assign++
|
||||
qdel_on_finish = finished_qdel
|
||||
|
||||
/datum/SDQL2_query/Destroy()
|
||||
/datum/sdql2_query/Destroy()
|
||||
state = SDQL2_STATE_HALTING
|
||||
query_tree = null
|
||||
obj_count_all = null
|
||||
@@ -365,7 +365,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
GLOB.sdql2_queries -= src
|
||||
return ..()
|
||||
|
||||
/datum/SDQL2_query/proc/get_query_text()
|
||||
/datum/sdql2_query/proc/get_query_text()
|
||||
var/list/out = list()
|
||||
recursive_list_print(out, query_tree)
|
||||
return out.Join()
|
||||
@@ -406,7 +406,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
|
||||
output += " \]"
|
||||
|
||||
/datum/SDQL2_query/proc/text_state()
|
||||
/datum/sdql2_query/proc/text_state()
|
||||
switch(state)
|
||||
if(SDQL2_STATE_ERROR)
|
||||
return "###ERROR"
|
||||
@@ -423,7 +423,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
if(SDQL2_STATE_HALTING)
|
||||
return "##HALTING"
|
||||
|
||||
/datum/SDQL2_query/proc/generate_stat()
|
||||
/datum/sdql2_query/proc/generate_stat()
|
||||
if(!allow_admin_interact)
|
||||
return
|
||||
if(!delete_click)
|
||||
@@ -436,16 +436,16 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
[islist(obj_count_finished)? length(obj_count_finished) : (isnull(obj_count_finished)? "0" : obj_count_finished)] - [get_query_text()]"))
|
||||
stat(" ", action_click.update("[SDQL2_IS_RUNNING? "HALT" : "RUN"]"))
|
||||
|
||||
/datum/SDQL2_query/proc/delete_click()
|
||||
/datum/sdql2_query/proc/delete_click()
|
||||
admin_del(usr)
|
||||
|
||||
/datum/SDQL2_query/proc/action_click()
|
||||
/datum/sdql2_query/proc/action_click()
|
||||
if(SDQL2_IS_RUNNING)
|
||||
admin_halt(usr)
|
||||
else
|
||||
admin_run(usr)
|
||||
|
||||
/datum/SDQL2_query/proc/admin_halt(user = usr)
|
||||
/datum/sdql2_query/proc/admin_halt(user = usr)
|
||||
if(!SDQL2_IS_RUNNING)
|
||||
return
|
||||
var/msg = "[key_name(user)] has halted query #[id]"
|
||||
@@ -453,7 +453,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
log_admin(msg)
|
||||
state = SDQL2_STATE_HALTING
|
||||
|
||||
/datum/SDQL2_query/proc/admin_run(mob/user = usr)
|
||||
/datum/sdql2_query/proc/admin_run(mob/user = usr)
|
||||
if(SDQL2_IS_RUNNING)
|
||||
return
|
||||
var/msg = "[key_name(user)] has (re)started query #[id]"
|
||||
@@ -462,13 +462,13 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
show_next_to_key = user.ckey
|
||||
ARun()
|
||||
|
||||
/datum/SDQL2_query/proc/admin_del(user = usr)
|
||||
/datum/sdql2_query/proc/admin_del(user = usr)
|
||||
var/msg = "[key_name(user)] has stopped + deleted query #[id]"
|
||||
message_admins(msg)
|
||||
log_admin(msg)
|
||||
qdel(src)
|
||||
|
||||
/datum/SDQL2_query/proc/set_option(name, value)
|
||||
/datum/sdql2_query/proc/set_option(name, value)
|
||||
switch(name)
|
||||
if("select")
|
||||
switch(value)
|
||||
@@ -491,10 +491,10 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
if("true")
|
||||
options |= SDQL2_OPTION_SEQUENTIAL
|
||||
|
||||
/datum/SDQL2_query/proc/ARun()
|
||||
/datum/sdql2_query/proc/ARun()
|
||||
INVOKE_ASYNC(src, .proc/Run)
|
||||
|
||||
/datum/SDQL2_query/proc/Run()
|
||||
/datum/sdql2_query/proc/Run()
|
||||
if(SDQL2_IS_RUNNING)
|
||||
return FALSE
|
||||
if(query_tree["options"])
|
||||
@@ -540,7 +540,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
if(qdel_on_finish)
|
||||
qdel(src)
|
||||
|
||||
/datum/SDQL2_query/proc/PreSearch()
|
||||
/datum/sdql2_query/proc/PreSearch()
|
||||
SDQL2_HALT_CHECK
|
||||
switch(query_tree[1])
|
||||
if("explain")
|
||||
@@ -553,7 +553,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
. = query_tree[query_tree[1]]
|
||||
state = SDQL2_STATE_SWITCHING
|
||||
|
||||
/datum/SDQL2_query/proc/Search(list/tree)
|
||||
/datum/sdql2_query/proc/Search(list/tree)
|
||||
SDQL2_HALT_CHECK
|
||||
var/type = tree[1]
|
||||
var/list/from = tree[2]
|
||||
@@ -594,7 +594,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
. = objs
|
||||
state = SDQL2_STATE_SWITCHING
|
||||
|
||||
/datum/SDQL2_query/proc/SDQL_from_objs(list/tree)
|
||||
/datum/sdql2_query/proc/SDQL_from_objs(list/tree)
|
||||
if(IsAdminAdvancedProcCall())
|
||||
if("world" in tree)
|
||||
var/text = "[key_name(usr)] attempted to grab world with a procedure call to a SDQL datum."
|
||||
@@ -605,7 +605,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
return world
|
||||
return SDQL_expression(world, tree)
|
||||
|
||||
/datum/SDQL2_query/proc/SDQL_get_all(type, location)
|
||||
/datum/sdql2_query/proc/SDQL_get_all(type, location)
|
||||
var/list/out = list()
|
||||
obj_count_all = out
|
||||
|
||||
@@ -676,7 +676,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
obj_count_all = out.len
|
||||
return out
|
||||
|
||||
/datum/SDQL2_query/proc/Execute(list/found)
|
||||
/datum/sdql2_query/proc/Execute(list/found)
|
||||
SDQL2_HALT_CHECK
|
||||
select_refs = list()
|
||||
select_text = list()
|
||||
@@ -722,7 +722,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
obj_count_finished = length(obj_count_finished)
|
||||
state = SDQL2_STATE_SWITCHING
|
||||
|
||||
/datum/SDQL2_query/proc/SDQL_print(object, list/text_list, print_nulls = TRUE)
|
||||
/datum/sdql2_query/proc/SDQL_print(object, list/text_list, print_nulls = TRUE)
|
||||
if(is_proper_datum(object))
|
||||
text_list += "<A HREF='?_src_=vars;[HrefToken(TRUE)];Vars=[REF(object)]'>[REF(object)]</A> : [object]"
|
||||
if(istype(object, /atom))
|
||||
@@ -764,19 +764,19 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
else
|
||||
text_list += "[object]<br>"
|
||||
|
||||
/datum/SDQL2_query/CanProcCall()
|
||||
/datum/sdql2_query/CanProcCall()
|
||||
if(!allow_admin_interact)
|
||||
return FALSE
|
||||
return ..()
|
||||
|
||||
/datum/SDQL2_query/vv_edit_var(var_name, var_value)
|
||||
/datum/sdql2_query/vv_edit_var(var_name, var_value)
|
||||
if(!allow_admin_interact)
|
||||
return FALSE
|
||||
if(var_name == NAMEOF(src, superuser) || var_name == NAMEOF(src, allow_admin_interact) || var_name == NAMEOF(src, query_tree))
|
||||
return FALSE
|
||||
return ..()
|
||||
|
||||
/datum/SDQL2_query/proc/SDQL_internal_vv(d, list/set_list)
|
||||
/datum/sdql2_query/proc/SDQL_internal_vv(d, list/set_list)
|
||||
for(var/list/sets in set_list)
|
||||
var/datum/temp = d
|
||||
var/i = 0
|
||||
@@ -796,7 +796,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
else
|
||||
break
|
||||
|
||||
/datum/SDQL2_query/proc/SDQL_function_blocking(datum/object, procname, list/arguments, source)
|
||||
/datum/sdql2_query/proc/SDQL_function_blocking(datum/object, procname, list/arguments, source)
|
||||
var/list/new_args = list()
|
||||
for(var/arg in arguments)
|
||||
new_args[++new_args.len] = SDQL_expression(source, arg)
|
||||
@@ -805,11 +805,11 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
return superuser? (call(procname)(new_args)) : (WrapAdminProcCall(GLOBAL_PROC, procname, new_args))
|
||||
return superuser? (call(object, procname)(new_args)) : (WrapAdminProcCall(object, procname, new_args))
|
||||
|
||||
/datum/SDQL2_query/proc/SDQL_function_async(datum/object, procname, list/arguments, source)
|
||||
/datum/sdql2_query/proc/SDQL_function_async(datum/object, procname, list/arguments, source)
|
||||
set waitfor = FALSE
|
||||
return SDQL_function_blocking(object, procname, arguments, source)
|
||||
|
||||
/datum/SDQL2_query/proc/SDQL_expression(datum/object, list/expression, start = 1)
|
||||
/datum/sdql2_query/proc/SDQL_expression(datum/object, list/expression, start = 1)
|
||||
var/result = 0
|
||||
var/val
|
||||
|
||||
@@ -866,7 +866,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
|
||||
return result
|
||||
|
||||
/datum/SDQL2_query/proc/SDQL_value(datum/object, list/expression, start = 1)
|
||||
/datum/sdql2_query/proc/SDQL_value(datum/object, list/expression, start = 1)
|
||||
var/i = start
|
||||
var/val = null
|
||||
|
||||
@@ -946,7 +946,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
return list("val" = val, "i" = i)
|
||||
|
||||
/proc/SDQL_parse(list/query_list)
|
||||
var/datum/SDQL_parser/parser = new()
|
||||
var/datum/sdql_parser/parser = new()
|
||||
var/list/querys = list()
|
||||
var/list/query_tree = list()
|
||||
var/pos = 1
|
||||
@@ -1006,7 +1006,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
to_chat(usr, "[spaces][whitespace][query_tree[item]]", confidential = TRUE)
|
||||
|
||||
//Staying as a world proc as this is called too often for changes to offset the potential IsAdminAdvancedProcCall checking overhead.
|
||||
/world/proc/SDQL_var(object, list/expression, start = 1, source, superuser, datum/SDQL2_query/query)
|
||||
/world/proc/SDQL_var(object, list/expression, start = 1, source, superuser, datum/sdql2_query/query)
|
||||
var/v
|
||||
var/static/list/exclude = list("usr", "src", "marked", "global", "MC", "FS", "CFG")
|
||||
var/long = start < expression.len
|
||||
@@ -1204,15 +1204,15 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
|
||||
return istype(thing, /datum) || istype(thing, /client)
|
||||
|
||||
/obj/effect/statclick/SDQL2_delete/Click()
|
||||
var/datum/SDQL2_query/Q = target
|
||||
var/datum/sdql2_query/Q = target
|
||||
Q.delete_click()
|
||||
|
||||
/obj/effect/statclick/SDQL2_action/Click()
|
||||
var/datum/SDQL2_query/Q = target
|
||||
var/datum/sdql2_query/Q = target
|
||||
Q.action_click()
|
||||
|
||||
/obj/effect/statclick/SDQL2_VV_all
|
||||
/obj/effect/statclick/sdql2_vv_all
|
||||
name = "VIEW VARIABLES"
|
||||
|
||||
/obj/effect/statclick/SDQL2_VV_all/Click()
|
||||
/obj/effect/statclick/sdql2_vv_all/Click()
|
||||
usr.client.debug_variables(GLOB.sdql2_queries)
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
//
|
||||
//////////
|
||||
|
||||
/datum/SDQL_parser
|
||||
/datum/sdql_parser
|
||||
var/query_type
|
||||
var/error = 0
|
||||
|
||||
@@ -58,15 +58,15 @@
|
||||
var/list/binary_operators = list("+", "-", "/", "*", "&", "|", "^", "%")
|
||||
var/list/comparators = list("=", "==", "!=", "<>", "<", "<=", ">", ">=")
|
||||
|
||||
/datum/SDQL_parser/New(query_list)
|
||||
/datum/sdql_parser/New(query_list)
|
||||
query = query_list
|
||||
|
||||
/datum/SDQL_parser/proc/parse_error(error_message)
|
||||
/datum/sdql_parser/proc/parse_error(error_message)
|
||||
error = 1
|
||||
to_chat(usr, "<span class='warning'>SQDL2 Parsing Error: [error_message]</span>", confidential = TRUE)
|
||||
return query.len + 1
|
||||
|
||||
/datum/SDQL_parser/proc/parse()
|
||||
/datum/sdql_parser/proc/parse()
|
||||
tree = list()
|
||||
query_options(1, tree)
|
||||
|
||||
@@ -75,24 +75,24 @@
|
||||
else
|
||||
return tree
|
||||
|
||||
/datum/SDQL_parser/proc/token(i)
|
||||
/datum/sdql_parser/proc/token(i)
|
||||
if(i <= query.len)
|
||||
return query[i]
|
||||
|
||||
else
|
||||
return null
|
||||
|
||||
/datum/SDQL_parser/proc/tokens(i, num)
|
||||
/datum/sdql_parser/proc/tokens(i, num)
|
||||
if(i + num <= query.len)
|
||||
return query.Copy(i, i + num)
|
||||
|
||||
else
|
||||
return null
|
||||
|
||||
/datum/SDQL_parser/proc/tokenl(i)
|
||||
/datum/sdql_parser/proc/tokenl(i)
|
||||
return lowertext(token(i))
|
||||
|
||||
/datum/SDQL_parser/proc/query_options(i, list/node)
|
||||
/datum/sdql_parser/proc/query_options(i, list/node)
|
||||
var/list/options = list()
|
||||
if(tokenl(i) == "using")
|
||||
i = option_assignments(i + 1, node, options)
|
||||
@@ -101,7 +101,7 @@
|
||||
node["options"] = options
|
||||
|
||||
//option_assignment: query_option '=' define
|
||||
/datum/SDQL_parser/proc/option_assignment(i, list/node, list/assignment_list = list())
|
||||
/datum/sdql_parser/proc/option_assignment(i, list/node, list/assignment_list = list())
|
||||
var/type = tokenl(i)
|
||||
if(!(type in SDQL2_VALID_OPTION_TYPES))
|
||||
parse_error("Invalid option type: [type]")
|
||||
@@ -114,7 +114,7 @@
|
||||
return (i + 3)
|
||||
|
||||
//option_assignments: option_assignment, [',' option_assignments]
|
||||
/datum/SDQL_parser/proc/option_assignments(i, list/node, list/store)
|
||||
/datum/sdql_parser/proc/option_assignments(i, list/node, list/store)
|
||||
i = option_assignment(i, node, store)
|
||||
|
||||
if(token(i) == ",")
|
||||
@@ -123,7 +123,7 @@
|
||||
return i
|
||||
|
||||
//query: select_query | delete_query | update_query
|
||||
/datum/SDQL_parser/proc/query(i, list/node)
|
||||
/datum/sdql_parser/proc/query(i, list/node)
|
||||
query_type = tokenl(i)
|
||||
|
||||
switch(query_type)
|
||||
@@ -146,7 +146,7 @@
|
||||
|
||||
|
||||
// select_query: 'SELECT' object_selectors
|
||||
/datum/SDQL_parser/proc/select_query(i, list/node)
|
||||
/datum/sdql_parser/proc/select_query(i, list/node)
|
||||
var/list/select = list()
|
||||
i = object_selectors(i + 1, select)
|
||||
|
||||
@@ -155,7 +155,7 @@
|
||||
|
||||
|
||||
//delete_query: 'DELETE' object_selectors
|
||||
/datum/SDQL_parser/proc/delete_query(i, list/node)
|
||||
/datum/sdql_parser/proc/delete_query(i, list/node)
|
||||
var/list/select = list()
|
||||
i = object_selectors(i + 1, select)
|
||||
|
||||
@@ -165,7 +165,7 @@
|
||||
|
||||
|
||||
//update_query: 'UPDATE' object_selectors 'SET' assignments
|
||||
/datum/SDQL_parser/proc/update_query(i, list/node)
|
||||
/datum/sdql_parser/proc/update_query(i, list/node)
|
||||
var/list/select = list()
|
||||
i = object_selectors(i + 1, select)
|
||||
|
||||
@@ -183,7 +183,7 @@
|
||||
|
||||
|
||||
//call_query: 'CALL' call_function ['ON' object_selectors]
|
||||
/datum/SDQL_parser/proc/call_query(i, list/node)
|
||||
/datum/sdql_parser/proc/call_query(i, list/node)
|
||||
var/list/func = list()
|
||||
i = variable(i + 1, func) // Yes technically does anything variable() matches but I don't care, if admins fuck up this badly then they shouldn't be allowed near SDQL.
|
||||
|
||||
@@ -200,7 +200,7 @@
|
||||
return i
|
||||
|
||||
// object_selectors: select_item [('FROM' | 'IN') from_item] [modifier_list]
|
||||
/datum/SDQL_parser/proc/object_selectors(i, list/node)
|
||||
/datum/sdql_parser/proc/object_selectors(i, list/node)
|
||||
i = select_item(i, node)
|
||||
|
||||
if (tokenl(i) == "from" || tokenl(i) == "in")
|
||||
@@ -216,7 +216,7 @@
|
||||
return i
|
||||
|
||||
// modifier_list: ('WHERE' bool_expression | 'MAP' expression) [modifier_list]
|
||||
/datum/SDQL_parser/proc/modifier_list(i, list/node)
|
||||
/datum/sdql_parser/proc/modifier_list(i, list/node)
|
||||
while (TRUE)
|
||||
if (tokenl(i) == "where")
|
||||
i++
|
||||
@@ -236,7 +236,7 @@
|
||||
return i
|
||||
|
||||
//select_list:select_item [',' select_list]
|
||||
/datum/SDQL_parser/proc/select_list(i, list/node)
|
||||
/datum/sdql_parser/proc/select_list(i, list/node)
|
||||
i = select_item(i, node)
|
||||
|
||||
if(token(i) == ",")
|
||||
@@ -245,7 +245,7 @@
|
||||
return i
|
||||
|
||||
//assignments: assignment, [',' assignments]
|
||||
/datum/SDQL_parser/proc/assignments(i, list/node)
|
||||
/datum/sdql_parser/proc/assignments(i, list/node)
|
||||
i = assignment(i, node)
|
||||
|
||||
if(token(i) == ",")
|
||||
@@ -255,7 +255,7 @@
|
||||
|
||||
|
||||
//select_item: '*' | select_function | object_type
|
||||
/datum/SDQL_parser/proc/select_item(i, list/node)
|
||||
/datum/sdql_parser/proc/select_item(i, list/node)
|
||||
if (token(i) == "*")
|
||||
node += "*"
|
||||
i++
|
||||
@@ -269,7 +269,7 @@
|
||||
return i
|
||||
|
||||
// Standardized method for handling the IN/FROM and WHERE options.
|
||||
/datum/SDQL_parser/proc/selectors(i, list/node)
|
||||
/datum/sdql_parser/proc/selectors(i, list/node)
|
||||
while (token(i))
|
||||
var/tok = tokenl(i)
|
||||
if (tok in list("from", "in"))
|
||||
@@ -295,7 +295,7 @@
|
||||
return i
|
||||
|
||||
//from_item: 'world' | expression
|
||||
/datum/SDQL_parser/proc/from_item(i, list/node)
|
||||
/datum/sdql_parser/proc/from_item(i, list/node)
|
||||
if(token(i) == "world")
|
||||
node += "world"
|
||||
i++
|
||||
@@ -307,7 +307,7 @@
|
||||
|
||||
|
||||
//bool_expression: expression [bool_operator bool_expression]
|
||||
/datum/SDQL_parser/proc/bool_expression(i, list/node)
|
||||
/datum/sdql_parser/proc/bool_expression(i, list/node)
|
||||
|
||||
var/list/bool = list()
|
||||
i = expression(i, bool)
|
||||
@@ -322,7 +322,7 @@
|
||||
|
||||
|
||||
//assignment: <variable name> '=' expression
|
||||
/datum/SDQL_parser/proc/assignment(i, list/node, list/assignment_list = list())
|
||||
/datum/sdql_parser/proc/assignment(i, list/node, list/assignment_list = list())
|
||||
assignment_list += token(i)
|
||||
|
||||
if(token(i + 1) == ".")
|
||||
@@ -341,7 +341,7 @@
|
||||
|
||||
|
||||
//variable: <variable name> | variable '.' variable | variable '[' <list index> ']' | '{' <ref as hex number> '}' | '(' expression ')' | call_function
|
||||
/datum/SDQL_parser/proc/variable(i, list/node)
|
||||
/datum/sdql_parser/proc/variable(i, list/node)
|
||||
var/list/L = list(token(i))
|
||||
node[++node.len] = L
|
||||
|
||||
@@ -389,7 +389,7 @@
|
||||
|
||||
|
||||
//object_type: <type path>
|
||||
/datum/SDQL_parser/proc/object_type(i, list/node)
|
||||
/datum/sdql_parser/proc/object_type(i, list/node)
|
||||
|
||||
if(token(i)[1] != "/")
|
||||
return parse_error("Expected type, but it didn't begin with /")
|
||||
@@ -404,7 +404,7 @@
|
||||
|
||||
|
||||
//comparator: '=' | '==' | '!=' | '<>' | '<' | '<=' | '>' | '>='
|
||||
/datum/SDQL_parser/proc/comparator(i, list/node)
|
||||
/datum/sdql_parser/proc/comparator(i, list/node)
|
||||
|
||||
if(token(i) in list("=", "==", "!=", "<>", "<", "<=", ">", ">="))
|
||||
node += token(i)
|
||||
@@ -416,7 +416,7 @@
|
||||
|
||||
|
||||
//bool_operator: 'AND' | '&&' | 'OR' | '||'
|
||||
/datum/SDQL_parser/proc/bool_operator(i, list/node)
|
||||
/datum/sdql_parser/proc/bool_operator(i, list/node)
|
||||
|
||||
if(tokenl(i) in list("and", "or", "&&", "||"))
|
||||
node += token(i)
|
||||
@@ -428,7 +428,7 @@
|
||||
|
||||
|
||||
//string: ''' <some text> ''' | '"' <some text > '"'
|
||||
/datum/SDQL_parser/proc/string(i, list/node)
|
||||
/datum/sdql_parser/proc/string(i, list/node)
|
||||
|
||||
if(token(i)[1] in list("'", "\""))
|
||||
node += token(i)
|
||||
@@ -439,7 +439,7 @@
|
||||
return i + 1
|
||||
|
||||
//array: '[' expression_list ']'
|
||||
/datum/SDQL_parser/proc/array(i, list/node)
|
||||
/datum/sdql_parser/proc/array(i, list/node)
|
||||
// Arrays get turned into this: list("[", list(exp_1a = exp_1b, ...), ...), "[" is to mark the next node as an array.
|
||||
if(token(i)[1] != "\[")
|
||||
parse_error("Expected an array but found '[token(i)]'")
|
||||
@@ -492,7 +492,7 @@
|
||||
return i + 1
|
||||
|
||||
//selectors_array: '@[' object_selectors ']'
|
||||
/datum/SDQL_parser/proc/selectors_array(i, list/node)
|
||||
/datum/sdql_parser/proc/selectors_array(i, list/node)
|
||||
if(token(i) == "@\[")
|
||||
node += token(i++)
|
||||
if(token(i) != "]")
|
||||
@@ -509,7 +509,7 @@
|
||||
return i + 1
|
||||
|
||||
//call_function: <function name> ['(' [arguments] ')']
|
||||
/datum/SDQL_parser/proc/call_function(i, list/node, list/arguments)
|
||||
/datum/sdql_parser/proc/call_function(i, list/node, list/arguments)
|
||||
if(length(tokenl(i)))
|
||||
var/procname = ""
|
||||
if(tokenl(i) == "global" && token(i + 1) == ".") // Global proc.
|
||||
@@ -539,7 +539,7 @@
|
||||
|
||||
|
||||
//expression: ( unary_expression | value ) [binary_operator expression]
|
||||
/datum/SDQL_parser/proc/expression(i, list/node)
|
||||
/datum/sdql_parser/proc/expression(i, list/node)
|
||||
|
||||
if(token(i) in unary_operators)
|
||||
i = unary_expression(i, node)
|
||||
@@ -564,7 +564,7 @@
|
||||
|
||||
|
||||
//unary_expression: unary_operator ( unary_expression | value )
|
||||
/datum/SDQL_parser/proc/unary_expression(i, list/node)
|
||||
/datum/sdql_parser/proc/unary_expression(i, list/node)
|
||||
|
||||
if(token(i) in unary_operators)
|
||||
var/list/unary_exp = list()
|
||||
@@ -588,7 +588,7 @@
|
||||
|
||||
|
||||
//binary_operator: comparator | '+' | '-' | '/' | '*' | '&' | '|' | '^' | '%'
|
||||
/datum/SDQL_parser/proc/binary_operator(i, list/node)
|
||||
/datum/sdql_parser/proc/binary_operator(i, list/node)
|
||||
|
||||
if(token(i) in (binary_operators + comparators))
|
||||
node += token(i)
|
||||
@@ -600,7 +600,7 @@
|
||||
|
||||
|
||||
//value: variable | string | number | 'null' | object_type | array | selectors_array
|
||||
/datum/SDQL_parser/proc/value(i, list/node)
|
||||
/datum/sdql_parser/proc/value(i, list/node)
|
||||
if(token(i) == "null")
|
||||
node += "null"
|
||||
i++
|
||||
|
||||
@@ -115,7 +115,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
|
||||
pai.real_name = pai.name
|
||||
pai.key = choice.key
|
||||
card.setPersonality(pai)
|
||||
for(var/datum/paiCandidate/candidate in SSpai.candidates)
|
||||
for(var/datum/pai_candidate/candidate in SSpai.candidates)
|
||||
if(candidate.key == choice.key)
|
||||
SSpai.candidates.Remove(candidate)
|
||||
SSblackbox.record_feedback("tally", "admin_verb", 1, "Make pAI") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
@@ -1116,7 +1116,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
alert("ERROR: Incorrect / improper path given.")
|
||||
return
|
||||
new delivery(pod)
|
||||
new /obj/effect/DPtarget(get_turf(target), pod)
|
||||
new /obj/effect/dp_target(get_turf(target), pod)
|
||||
if(ADMIN_PUNISHMENT_SUPPLYPOD)
|
||||
var/datum/centcom_podlauncher/plaunch = new(usr)
|
||||
if(!holder)
|
||||
|
||||
Reference in New Issue
Block a user