defines, helpers, globalvars

This commit is contained in:
Poojawa
2018-03-06 21:05:15 -06:00
parent 4d0b7133c8
commit fcc038c41a
7 changed files with 52 additions and 22 deletions
+25
View File
@@ -500,3 +500,28 @@
objective_parts += "<b>Objective #[count]</b>: [objective.explanation_text] <span class='redtext'>Fail.</span>"
count++
return objective_parts.Join("<br>")
/datum/controller/subsystem/ticker/proc/save_admin_data()
if(CONFIG_GET(flag/admin_legacy_system)) //we're already using legacy system so there's nothing to save
return
else if(load_admins()) //returns true if there was a database failure and the backup was loaded from
return
var/datum/DBQuery/query_admin_rank_update = SSdbcore.NewQuery("UPDATE [format_table_name("player")] p INNER JOIN [format_table_name("admin")] a ON p.ckey = a.ckey SET p.lastadminrank = a.rank")
query_admin_rank_update.Execute()
//json format backup file generation stored per server
var/json_file = file("data/admins_backup.json")
var/list/file_data = list("ranks" = list(), "admins" = list())
for(var/datum/admin_rank/R in GLOB.admin_ranks)
file_data["ranks"]["[R.name]"] = list()
file_data["ranks"]["[R.name]"]["include rights"] = R.include_rights
file_data["ranks"]["[R.name]"]["exclude rights"] = R.exclude_rights
file_data["ranks"]["[R.name]"]["can edit rights"] = R.can_edit_rights
for(var/i in GLOB.admin_datums+GLOB.deadmins)
var/datum/admins/A = GLOB.admin_datums[i]
if(!A)
A = GLOB.deadmins[i]
if (!A)
continue
file_data["admins"]["[i]"] = A.rank.name
fdel(json_file)
WRITE_FILE(json_file, json_encode(file_data))
+21 -19
View File
@@ -182,38 +182,40 @@
return ICON_OVERLAY
//Converts a rights bitfield into a string
/proc/rights2text(rights, seperator="", list/adds, list/subs)
/proc/rights2text(rights, seperator="", prefix = "+")
seperator += prefix
if(rights & R_BUILDMODE)
. += "[seperator]+BUILDMODE"
. += "[seperator]BUILDMODE"
if(rights & R_ADMIN)
. += "[seperator]+ADMIN"
. += "[seperator]ADMIN"
if(rights & R_BAN)
. += "[seperator]+BAN"
. += "[seperator]BAN"
if(rights & R_FUN)
. += "[seperator]+FUN"
. += "[seperator]FUN"
if(rights & R_SERVER)
. += "[seperator]+SERVER"
. += "[seperator]SERVER"
if(rights & R_DEBUG)
. += "[seperator]+DEBUG"
. += "[seperator]DEBUG"
if(rights & R_POSSESS)
. += "[seperator]+POSSESS"
. += "[seperator]POSSESS"
if(rights & R_PERMISSIONS)
. += "[seperator]+PERMISSIONS"
. += "[seperator]PERMISSIONS"
if(rights & R_STEALTH)
. += "[seperator]+STEALTH"
. += "[seperator]STEALTH"
if(rights & R_POLL)
. += "[seperator]+POLL"
. += "[seperator]POLL"
if(rights & R_VAREDIT)
. += "[seperator]+VAREDIT"
. += "[seperator]VAREDIT"
if(rights & R_SOUNDS)
. += "[seperator]+SOUND"
. += "[seperator]SOUND"
if(rights & R_SPAWN)
. += "[seperator]+SPAWN"
for(var/verbpath in adds)
. += "[seperator]+[verbpath]"
for(var/verbpath in subs)
. += "[seperator]-[verbpath]"
. += "[seperator]SPAWN"
if(rights & R_AUTOLOGIN)
. += "[seperator]AUTOLOGIN"
if(rights & R_DBRANKS)
. += "[seperator]DBRANKS"
if(!.)
. = "NONE"
return .
/proc/ui_style2icon(ui_style)