mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-25 14:00:18 +01:00
516 internal links (#20428)
Convert all (appropriate) links to use the required `byond://` for 516 Added a grep to detect incompatible ones
This commit is contained in:
@@ -175,9 +175,9 @@
|
||||
output += "<td align='center'>[details["source"]]</td>"
|
||||
output += "<td align='center'>[details["ckey"]]</td>"
|
||||
output += "<td align='center'>[details["date"]]</td>"
|
||||
output += "<td align='center'><a href='?_src_=holder;dbbanmirroract=[details["id"]];mirrorstatus=[details["inactive"]]'>[details["inactive"] ? "Reactivate" : "Deactivate"]</a>"
|
||||
output += "<td align='center'><a href='byond://?_src_=holder;dbbanmirroract=[details["id"]];mirrorstatus=[details["inactive"]]'>[details["inactive"] ? "Reactivate" : "Deactivate"]</a>"
|
||||
if (details["extra"])
|
||||
output += " | <a href='?_src_=holder;dbbanmirroract=[details["id"]];mirrorckeys=1'>View Ckeys</a>"
|
||||
output += " | <a href='byond://?_src_=holder;dbbanmirroract=[details["id"]];mirrorckeys=1'>View Ckeys</a>"
|
||||
output += "</td></tr>"
|
||||
|
||||
output += "<tr bgcolor='[bg]'>"
|
||||
@@ -209,7 +209,7 @@
|
||||
to_chat(user, SPAN_NOTICE("No attached ckeys were found."))
|
||||
return
|
||||
|
||||
var/output = "<a href='?_src_=holder;dbbanmirrors=[query.item[2]];'>Back</a><br><br>"
|
||||
var/output = "<a href='byond://?_src_=holder;dbbanmirrors=[query.item[2]];'>Back</a><br><br>"
|
||||
try
|
||||
var/list/ckeys = json_decode(query.item[1])
|
||||
|
||||
@@ -222,7 +222,7 @@
|
||||
to_chat(user, SPAN_NOTICE("Maligned data found. Please alert the system administrator."))
|
||||
return
|
||||
|
||||
output += "<br><br><a href='?_src_=holder;dbbanmirrors=[query.item[2]];'>Back</a>"
|
||||
output += "<br><br><a href='byond://?_src_=holder;dbbanmirrors=[query.item[2]];'>Back</a>"
|
||||
user << browse(output, "window=banmirrors")
|
||||
|
||||
/proc/toggle_mirror_status(mob/user, mirror_id, inactive = FALSE)
|
||||
|
||||
@@ -449,7 +449,7 @@
|
||||
var/mirror_count = 0
|
||||
var/mirror_data = "<br>"
|
||||
while (mirror_query.NextRow())
|
||||
mirror_data += "Active mirror for #[mirror_query.item[1]] (<a href='?src=[REF(src)];dbsearchckey=[mirror_query.item[2]];'>View Ban</a>)<br>"
|
||||
mirror_data += "Active mirror for #[mirror_query.item[1]] (<a href='byond://?src=[REF(src)];dbsearchckey=[mirror_query.item[2]];'>View Ban</a>)<br>"
|
||||
mirror_count++
|
||||
|
||||
if (mirror_count)
|
||||
|
||||
@@ -185,7 +185,7 @@ var/savefile/Banlist
|
||||
if(!expiry) expiry = "Removal Pending"
|
||||
else expiry = "Permaban"
|
||||
|
||||
dat += "<tr><td><A href='?src=[ref];unbanf=[key][id]'>(U)</A><A href='?src=[ref];unbane=[key][id]'>(E)</A> Key: <B>[key]</B></td><td>ComputerID: <B>[id]</B></td><td>IP: <B>[ip]</B></td><td> [expiry]</td><td>(By: [by])</td><td>(Reason: [reason])</td></tr>"
|
||||
dat += "<tr><td><A href='byond://?src=[ref];unbanf=[key][id]'>(U)</A><A href='byond://?src=[ref];unbane=[key][id]'>(E)</A> Key: <B>[key]</B></td><td>ComputerID: <B>[id]</B></td><td>IP: <B>[ip]</B></td><td> [expiry]</td><td>(By: [by])</td><td>(Reason: [reason])</td></tr>"
|
||||
|
||||
dat += "</table>"
|
||||
dat = "<HR><B>Bans:</B> <FONT COLOR=blue>(U) = Unban , (E) = Edit Ban</FONT> - <FONT COLOR=green>([count] Bans)</FONT><HR><table border=1 rules=all frame=void cellspacing=0 cellpadding=3 >[dat]"
|
||||
|
||||
+150
-150
@@ -52,51 +52,51 @@ var/global/enabled_spooking = 0
|
||||
body += "<body>Options panel for <b>[M]</b>"
|
||||
if(M.client)
|
||||
body += " played by <b>[M.client]</b> "
|
||||
body += "\[<A href='?src=[REF(src)];editrights=show'>[M.client.holder ? M.client.holder.rank : "Player"]</A>\]"
|
||||
body += "\[<A href='byond://?src=[REF(src)];editrights=show'>[M.client.holder ? M.client.holder.rank : "Player"]</A>\]"
|
||||
|
||||
if(istype(M, /mob/abstract/new_player))
|
||||
body += " <B>Hasn't Entered Game</B> "
|
||||
else
|
||||
body += " \[<A href='?src=[REF(src)];revive=[REF(M)]'>Heal</A>\] "
|
||||
body += " \[<A href='byond://?src=[REF(src)];revive=[REF(M)]'>Heal</A>\] "
|
||||
|
||||
body += {"
|
||||
<br><br>\[
|
||||
<a href='?_src_=vars;Vars=[REF(M)]'>VV</a> -
|
||||
<a href='?src=[REF(src)];traitor=[REF(M)]'>TP</a> -
|
||||
<a href='?src=[REF(usr)];priv_msg=[REF(M)]'>PM</a> -
|
||||
<a href='?src=[REF(src)];subtlemessage=[REF(M)]'>SM</a> -
|
||||
<a href='byond://?_src_=vars;Vars=[REF(M)]'>VV</a> -
|
||||
<a href='byond://?src=[REF(src)];traitor=[REF(M)]'>TP</a> -
|
||||
<a href='byond://?src=[REF(usr)];priv_msg=[REF(M)]'>PM</a> -
|
||||
<a href='byond://?src=[REF(src)];subtlemessage=[REF(M)]'>SM</a> -
|
||||
[admin_jump_link(M, src)]\] <br>
|
||||
<b>Mob type</b> = [M.type]<br><br>
|
||||
<A href='?src=[REF(src)];boot2=[REF(M)]'>Kick</A> |
|
||||
<A href='?_src_=holder;warn=[M.ckey]'>Warn</A> |
|
||||
<a href='?src=[REF(src)];warnsearchckey=[M.ckey]'>Warnings</a> |
|
||||
<A href='?src=[REF(src)];newban=[REF(M)]'>Ban</A> |
|
||||
<A href='?src=[REF(src)];jobban_panel=[REF(M)]'>Jobban</A> |
|
||||
<A href='?src=[REF(src)];notes=show;mob=[REF(M)]'>Notes</A>
|
||||
<A href='byond://?src=[REF(src)];boot2=[REF(M)]'>Kick</A> |
|
||||
<A href='byond://?_src_=holder;warn=[M.ckey]'>Warn</A> |
|
||||
<a href='byond://?src=[REF(src)];warnsearchckey=[M.ckey]'>Warnings</a> |
|
||||
<A href='byond://?src=[REF(src)];newban=[REF(M)]'>Ban</A> |
|
||||
<A href='byond://?src=[REF(src)];jobban_panel=[REF(M)]'>Jobban</A> |
|
||||
<A href='byond://?src=[REF(src)];notes=show;mob=[REF(M)]'>Notes</A>
|
||||
"}
|
||||
|
||||
if(M.client)
|
||||
body += "| <a href='?src=[REF(src)];admin_wind_player=[REF(M)]'>Wind</a> | "
|
||||
body += "\ <A HREF='?src=[REF(src)];sendbacktolobby=[REF(M)]]'>Send back to Lobby</A>"
|
||||
body += "| <a href='byond://?src=[REF(src)];admin_wind_player=[REF(M)]'>Wind</a> | "
|
||||
body += "\ <A href='byond://?src=[REF(src)];sendbacktolobby=[REF(M)]]'>Send back to Lobby</A>"
|
||||
var/muted = M.client.prefs.muted
|
||||
body += {"<br><b>Mute: </b>
|
||||
\[<A href='?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_IC]'><font color='[(muted & MUTE_IC)?"red":"blue"]'>IC</font></a> |
|
||||
<A href='?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_OOC]'><font color='[(muted & MUTE_OOC)?"red":"blue"]'>OOC</font></a> |
|
||||
<A href='?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_PRAY]'><font color='[(muted & MUTE_PRAY)?"red":"blue"]'>PRAY</font></a> |
|
||||
<A href='?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_ADMINHELP]'><font color='[(muted & MUTE_ADMINHELP)?"red":"blue"]'>ADMINHELP</font></a> |
|
||||
<A href='?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_DEADCHAT]'><font color='[(muted & MUTE_DEADCHAT)?"red":"blue"]'>DEADCHAT</font></a> |
|
||||
<A href='?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_AOOC]'><font color='[(muted & MUTE_AOOC) ? "red" : "blue"]'>AOOC</font></a>\]
|
||||
(<A href='?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_ALL]'><font color='[(muted & MUTE_ALL)?"red":"blue"]'>toggle all</font></a>)
|
||||
\[<A href='byond://?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_IC]'><font color='[(muted & MUTE_IC)?"red":"blue"]'>IC</font></a> |
|
||||
<A href='byond://?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_OOC]'><font color='[(muted & MUTE_OOC)?"red":"blue"]'>OOC</font></a> |
|
||||
<A href='byond://?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_PRAY]'><font color='[(muted & MUTE_PRAY)?"red":"blue"]'>PRAY</font></a> |
|
||||
<A href='byond://?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_ADMINHELP]'><font color='[(muted & MUTE_ADMINHELP)?"red":"blue"]'>ADMINHELP</font></a> |
|
||||
<A href='byond://?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_DEADCHAT]'><font color='[(muted & MUTE_DEADCHAT)?"red":"blue"]'>DEADCHAT</font></a> |
|
||||
<A href='byond://?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_AOOC]'><font color='[(muted & MUTE_AOOC) ? "red" : "blue"]'>AOOC</font></a>\]
|
||||
(<A href='byond://?src=[REF(src)];mute=[REF(M)];mute_type=[MUTE_ALL]'><font color='[(muted & MUTE_ALL)?"red":"blue"]'>toggle all</font></a>)
|
||||
"}
|
||||
|
||||
body += {"<br><br>
|
||||
<A href='?src=[REF(src)];jumpto=[REF(M)]'><b>Jump to</b></A> |
|
||||
<A href='?src=[REF(src)];getmob=[REF(M)]'>Get</A> |
|
||||
<A href='?src=[REF(src)];sendmob=[REF(M)]'>Send To</A>
|
||||
<A href='byond://?src=[REF(src)];jumpto=[REF(M)]'><b>Jump to</b></A> |
|
||||
<A href='byond://?src=[REF(src)];getmob=[REF(M)]'>Get</A> |
|
||||
<A href='byond://?src=[REF(src)];sendmob=[REF(M)]'>Send To</A>
|
||||
<br><br>
|
||||
[check_rights(R_ADMIN|R_MOD,0) ? "<A href='?src=[REF(src)];traitor=[REF(M)]'>Traitor panel</A> | " : "" ]
|
||||
<A href='?src=[REF(src)];narrateto=[REF(M)]'>Narrate to</A> |
|
||||
<A href='?src=[REF(src)];subtlemessage=[REF(M)]'>Subtle message</A>
|
||||
[check_rights(R_ADMIN|R_MOD,0) ? "<A href='byond://?src=[REF(src)];traitor=[REF(M)]'>Traitor panel</A> | " : "" ]
|
||||
<A href='byond://?src=[REF(src)];narrateto=[REF(M)]'>Narrate to</A> |
|
||||
<A href='byond://?src=[REF(src)];subtlemessage=[REF(M)]'>Subtle message</A>
|
||||
"}
|
||||
|
||||
body += "<br><br>"
|
||||
@@ -104,7 +104,7 @@ var/global/enabled_spooking = 0
|
||||
if(isliving(M))
|
||||
var/mob/living/psyker = M
|
||||
if(psyker.psi)
|
||||
body += "<a href='?src=[REF(src)];remove_psionics=[REF(psyker.psi)]'>Remove psionics.</a><br/><br/>"
|
||||
body += "<a href='byond://?src=[REF(src)];remove_psionics=[REF(psyker.psi)]'>Remove psionics.</a><br/><br/>"
|
||||
body += "<table width = '100%'>"
|
||||
for(var/psi_rank in list(PSI_RANK_SENSITIVE, PSI_RANK_HARMONIOUS, PSI_RANK_APEX, PSI_RANK_LIMITLESS))
|
||||
var/owner_rank = psyker.psi ? psyker.psi.get_rank() : 0
|
||||
@@ -112,9 +112,9 @@ var/global/enabled_spooking = 0
|
||||
if(psi_rank == owner_rank)
|
||||
psi_title = "<b>[psi_title]</b>"
|
||||
if(psi_rank != PSI_RANK_LIMITLESS)
|
||||
body += "<tr><a href='?src=[REF(psyker.mind)];set_psi_rank=[psi_rank]'>[psi_title]</a></tr>"
|
||||
body += "<tr><a href='byond://?src=[REF(psyker.mind)];set_psi_rank=[psi_rank]'>[psi_title]</a></tr>"
|
||||
else
|
||||
body += "<tr><a href='?src=[REF(psyker.mind)];set_psi_rank_limitless=1'><font color='red'>[psi_title]</font></a></tr>"
|
||||
body += "<tr><a href='byond://?src=[REF(psyker.mind)];set_psi_rank_limitless=1'><font color='red'>[psi_title]</font></a></tr>"
|
||||
body += "</table>"
|
||||
|
||||
if (M.client)
|
||||
@@ -127,28 +127,28 @@ var/global/enabled_spooking = 0
|
||||
if(issmall(M))
|
||||
body += "<B>Monkeyized</B> | "
|
||||
else
|
||||
body += "<A href='?src=[REF(src)];monkeyone=[REF(M)]'>Monkeyize</A> | "
|
||||
body += "<A href='byond://?src=[REF(src)];monkeyone=[REF(M)]'>Monkeyize</A> | "
|
||||
|
||||
//Corgi
|
||||
if(iscorgi(M))
|
||||
body += "<B>Corgized</B> | "
|
||||
else
|
||||
body += "<A href='?src=[REF(src)];corgione=[REF(M)]'>Corgize</A> | "
|
||||
body += "<A href='byond://?src=[REF(src)];corgione=[REF(M)]'>Corgize</A> | "
|
||||
|
||||
//AI / Cyborg
|
||||
if(isAI(M))
|
||||
body += "<B>Is an AI</B> "
|
||||
else if(ishuman(M))
|
||||
body += {"<A href='?src=[REF(src)];makeai=[REF(M)]'>Make AI</A> |
|
||||
<A href='?src=[REF(src)];makerobot=[REF(M)]'>Make Robot</A> |
|
||||
<A href='?src=[REF(src)];makeslime=[REF(M)]'>Make slime</A>
|
||||
body += {"<A href='byond://?src=[REF(src)];makeai=[REF(M)]'>Make AI</A> |
|
||||
<A href='byond://?src=[REF(src)];makerobot=[REF(M)]'>Make Robot</A> |
|
||||
<A href='byond://?src=[REF(src)];makeslime=[REF(M)]'>Make slime</A>
|
||||
"}
|
||||
|
||||
//Simple Animals
|
||||
if(isanimal(M))
|
||||
body += "<A href='?src=[REF(src)];makeanimal=[REF(M)]'>Re-Animalize</A> | "
|
||||
body += "<A href='byond://?src=[REF(src)];makeanimal=[REF(M)]'>Re-Animalize</A> | "
|
||||
else
|
||||
body += "<A href='?src=[REF(src)];makeanimal=[REF(M)]'>Animalize</A> | "
|
||||
body += "<A href='byond://?src=[REF(src)];makeanimal=[REF(M)]'>Animalize</A> | "
|
||||
|
||||
// DNA2 - Admin Hax
|
||||
if(M.dna && iscarbon(M))
|
||||
@@ -163,7 +163,7 @@ var/global/enabled_spooking = 0
|
||||
if(bname)
|
||||
var/bstate=M.dna.GetSEState(block)
|
||||
var/bcolor="[(bstate)?"#006600":"#ff0000"]"
|
||||
body += "<A href='?src=[REF(src)];togmutate=[REF(M)];block=[block]' style='color:[bcolor];'>[bname]</A><sub>[block]</sub>"
|
||||
body += "<A href='byond://?src=[REF(src)];togmutate=[REF(M)];block=[block]' style='color:[bcolor];'>[bname]</A><sub>[block]</sub>"
|
||||
else
|
||||
body += "[block]"
|
||||
body+="</td>"
|
||||
@@ -171,36 +171,36 @@ var/global/enabled_spooking = 0
|
||||
|
||||
body += {"<br><br>
|
||||
<b>Rudimentary transformation:</b><font size=2><br>These transformations only create a new mob type and copy stuff over. They do not take into account MMIs and similar mob-specific things. The buttons in 'Transformations' are preferred, when possible.</font><br>
|
||||
<A href='?src=[REF(src)];simplemake=observer;mob=[REF(M)]'>Observer</A> |
|
||||
\[ Crew: <A href='?src=[REF(src)];simplemake=human;mob=[REF(M)]'>Choose Species</A>\] | \[
|
||||
<A href='?src=[REF(src)];simplemake=nymph;mob=[REF(M)]'>Nymph</A>\] |
|
||||
\[ slime: <A href='?src=[REF(src)];simplemake=slime;mob=[REF(M)]'>Baby</A>\]|
|
||||
<A href='?src=[REF(src)];simplemake=ai;mob=[REF(M)]'>AI</A> |
|
||||
<A href='?src=[REF(src)];simplemake=robot;mob=[REF(M)]'>Cyborg</A> |
|
||||
<A href='?src=[REF(src)];simplemake=cat;mob=[REF(M)]'>Cat</A> |
|
||||
<A href='?src=[REF(src)];simplemake=runtime;mob=[REF(M)]'>Runtime</A> |
|
||||
<A href='?src=[REF(src)];simplemake=corgi;mob=[REF(M)]'>Corgi</A> |
|
||||
<A href='?src=[REF(src)];simplemake=ian;mob=[REF(M)]'>Ian</A> |
|
||||
<A href='?src=[REF(src)];simplemake=crab;mob=[REF(M)]'>Crab</A> |
|
||||
<A href='?src=[REF(src)];simplemake=coffee;mob=[REF(M)]'>Coffee</A> |
|
||||
\[ Construct: <A href='?src=[REF(src)];simplemake=constructarmored;mob=[REF(M)]'>Armored</A> ,
|
||||
<A href='?src=[REF(src)];simplemake=constructbuilder;mob=[REF(M)]'>Builder</A> ,
|
||||
<A href='?src=[REF(src)];simplemake=constructwraith;mob=[REF(M)]'>Wraith</A> \]
|
||||
<A href='?src=[REF(src)];simplemake=shade;mob=[REF(M)]'>Shade</A>
|
||||
<A href='?src=[REF(src)];simplemake=meme;mob=[REF(M)]'>Meme</A>
|
||||
<A href='byond://?src=[REF(src)];simplemake=observer;mob=[REF(M)]'>Observer</A> |
|
||||
\[ Crew: <A href='byond://?src=[REF(src)];simplemake=human;mob=[REF(M)]'>Choose Species</A>\] | \[
|
||||
<A href='byond://?src=[REF(src)];simplemake=nymph;mob=[REF(M)]'>Nymph</A>\] |
|
||||
\[ slime: <A href='byond://?src=[REF(src)];simplemake=slime;mob=[REF(M)]'>Baby</A>\]|
|
||||
<A href='byond://?src=[REF(src)];simplemake=ai;mob=[REF(M)]'>AI</A> |
|
||||
<A href='byond://?src=[REF(src)];simplemake=robot;mob=[REF(M)]'>Cyborg</A> |
|
||||
<A href='byond://?src=[REF(src)];simplemake=cat;mob=[REF(M)]'>Cat</A> |
|
||||
<A href='byond://?src=[REF(src)];simplemake=runtime;mob=[REF(M)]'>Runtime</A> |
|
||||
<A href='byond://?src=[REF(src)];simplemake=corgi;mob=[REF(M)]'>Corgi</A> |
|
||||
<A href='byond://?src=[REF(src)];simplemake=ian;mob=[REF(M)]'>Ian</A> |
|
||||
<A href='byond://?src=[REF(src)];simplemake=crab;mob=[REF(M)]'>Crab</A> |
|
||||
<A href='byond://?src=[REF(src)];simplemake=coffee;mob=[REF(M)]'>Coffee</A> |
|
||||
\[ Construct: <A href='byond://?src=[REF(src)];simplemake=constructarmored;mob=[REF(M)]'>Armored</A> ,
|
||||
<A href='byond://?src=[REF(src)];simplemake=constructbuilder;mob=[REF(M)]'>Builder</A> ,
|
||||
<A href='byond://?src=[REF(src)];simplemake=constructwraith;mob=[REF(M)]'>Wraith</A> \]
|
||||
<A href='byond://?src=[REF(src)];simplemake=shade;mob=[REF(M)]'>Shade</A>
|
||||
<A href='byond://?src=[REF(src)];simplemake=meme;mob=[REF(M)]'>Meme</A>
|
||||
<br>
|
||||
"}
|
||||
body += {"<br><br>
|
||||
<b>Other actions:</b>
|
||||
<br>
|
||||
<A href='?src=[REF(src)];forcespeech=[REF(M)]'>Forcesay</A>
|
||||
<A href='byond://?src=[REF(src)];forcespeech=[REF(M)]'>Forcesay</A>
|
||||
"}
|
||||
if (M.client)
|
||||
body += {" |
|
||||
<A href='?src=[REF(src)];tdome1=[REF(M)]'>Thunderdome 1</A> |
|
||||
<A href='?src=[REF(src)];tdome2=[REF(M)]'>Thunderdome 2</A> |
|
||||
<A href='?src=[REF(src)];tdomeadmin=[REF(M)]'>Thunderdome Admin</A> |
|
||||
<A href='?src=[REF(src)];tdomeobserve=[REF(M)]'>Thunderdome Observer</A> |
|
||||
<A href='byond://?src=[REF(src)];tdome1=[REF(M)]'>Thunderdome 1</A> |
|
||||
<A href='byond://?src=[REF(src)];tdome2=[REF(M)]'>Thunderdome 2</A> |
|
||||
<A href='byond://?src=[REF(src)];tdomeadmin=[REF(M)]'>Thunderdome Admin</A> |
|
||||
<A href='byond://?src=[REF(src)];tdomeobserve=[REF(M)]'>Thunderdome Observer</A> |
|
||||
"}
|
||||
// language toggles
|
||||
body += "<br><br><b>Languages:</b><br>"
|
||||
@@ -211,9 +211,9 @@ var/global/enabled_spooking = 0
|
||||
if(!f) body += " | "
|
||||
else f = 0
|
||||
if(L in M.languages)
|
||||
body += "<a href='?src=[REF(src)];toglang=[REF(M)];lang=[html_encode(k)]' style='color:#006600'>[k]</a>"
|
||||
body += "<a href='byond://?src=[REF(src)];toglang=[REF(M)];lang=[html_encode(k)]' style='color:#006600'>[k]</a>"
|
||||
else
|
||||
body += "<a href='?src=[REF(src)];toglang=[REF(M)];lang=[html_encode(k)]' style='color:#ff0000'>[k]</a>"
|
||||
body += "<a href='byond://?src=[REF(src)];toglang=[REF(M)];lang=[html_encode(k)]' style='color:#ff0000'>[k]</a>"
|
||||
|
||||
body += {"<br>
|
||||
</body></html>
|
||||
@@ -269,7 +269,7 @@ var/global/enabled_spooking = 0
|
||||
upper_bound = min(upper_bound, note_keys.len)
|
||||
for(var/index = lower_bound, index <= upper_bound, index++)
|
||||
var/t = note_keys[index]
|
||||
dat += "<tr><td><a href='?src=[REF(src)];notes=show;ckey=[t]'>[t]</a></td></tr>"
|
||||
dat += "<tr><td><a href='byond://?src=[REF(src)];notes=show;ckey=[t]'>[t]</a></td></tr>"
|
||||
|
||||
dat += "</table><br>"
|
||||
|
||||
@@ -277,7 +277,7 @@ var/global/enabled_spooking = 0
|
||||
for(var/index = 1, index <= number_pages, index++)
|
||||
if(index == page)
|
||||
dat += "<b>"
|
||||
dat += "<a href='?src=[REF(src)];notes=list;index=[index]'>[index]</a> "
|
||||
dat += "<a href='byond://?src=[REF(src)];notes=list;index=[index]'>[index]</a> "
|
||||
if(index == page)
|
||||
dat += "</b>"
|
||||
|
||||
@@ -330,12 +330,12 @@ var/global/enabled_spooking = 0
|
||||
update_file = 1
|
||||
dat += "<font color=#008800>[I.content]</font> <i>by [I.author] ([I.rank])</i> on <i><font color=blue>[I.timestamp]</i></font> "
|
||||
if(I.author == usr.key || I.author == "Adminbot")
|
||||
dat += "<A href='?src=[REF(src)];remove_player_info=[key];remove_index=[i]'>Remove</A>"
|
||||
dat += "<A href='byond://?src=[REF(src)];remove_player_info=[key];remove_index=[i]'>Remove</A>"
|
||||
dat += "<br><br>"
|
||||
if(update_file) info << infos
|
||||
|
||||
dat += "<br>"
|
||||
dat += "<A href='?src=[REF(src)];add_player_info=[key]'>Add Comment</A><br>"
|
||||
dat += "<A href='byond://?src=[REF(src)];add_player_info=[key]'>Add Comment</A><br>"
|
||||
|
||||
dat += "</body></html>"
|
||||
show_browser(usr, dat, "window=adminplayerinfo;size=480x480")
|
||||
@@ -365,12 +365,12 @@ var/global/enabled_spooking = 0
|
||||
<BR>Note that this panel allows full freedom over the news network, there are no constrictions except the few basic ones. Don't break things!
|
||||
"}
|
||||
if(SSnews.wanted_issue)
|
||||
dat+= "<HR><A href='?src=[REF(src)];ac_view_wanted=1'>Read Wanted Issue</A>"
|
||||
dat+= "<HR><A href='byond://?src=[REF(src)];ac_view_wanted=1'>Read Wanted Issue</A>"
|
||||
|
||||
dat+= {"<HR><BR><A href='?src=[REF(src)];ac_create_channel=1'>Create Feed Channel</A>
|
||||
<BR><A href='?src=[REF(src)];ac_view=1'>View Feed Channels</A>
|
||||
<BR><A href='?src=[REF(src)];ac_create_feed_story=1'>Submit new Feed story</A>
|
||||
<BR><BR><A href='?src=[REF(usr)];mach_close=newscaster_main'>Exit</A>
|
||||
dat+= {"<HR><BR><A href='byond://?src=[REF(src)];ac_create_channel=1'>Create Feed Channel</A>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_view=1'>View Feed Channels</A>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_create_feed_story=1'>Submit new Feed story</A>
|
||||
<BR><BR><A href='byond://?src=[REF(usr)];mach_close=newscaster_main'>Exit</A>
|
||||
"}
|
||||
|
||||
var/wanted_already = 0
|
||||
@@ -378,10 +378,10 @@ var/global/enabled_spooking = 0
|
||||
wanted_already = 1
|
||||
|
||||
dat+={"<HR><B>Feed Security functions:</B><BR>
|
||||
<BR><A href='?src=[REF(src)];ac_menu_wanted=1'>[(wanted_already) ? ("Manage") : ("Publish")] \"Wanted\" Issue</A>
|
||||
<BR><A href='?src=[REF(src)];ac_menu_censor_story=1'>Censor Feed Stories</A>
|
||||
<BR><A href='?src=[REF(src)];ac_menu_censor_channel=1'>Mark Feed Channel with [SSatlas.current_map.company_name] D-Notice (disables and locks the channel.</A>
|
||||
<BR><HR><A href='?src=[REF(src)];ac_set_signature=1'>The newscaster recognises you as:<BR> <FONT COLOR='green'>[src.admincaster_signature]</FONT></A>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_menu_wanted=1'>[(wanted_already) ? ("Manage") : ("Publish")] \"Wanted\" Issue</A>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_menu_censor_story=1'>Censor Feed Stories</A>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_menu_censor_channel=1'>Mark Feed Channel with [SSatlas.current_map.company_name] D-Notice (disables and locks the channel.</A>
|
||||
<BR><HR><A href='byond://?src=[REF(src)];ac_set_signature=1'>The newscaster recognises you as:<BR> <FONT COLOR='green'>[src.admincaster_signature]</FONT></A>
|
||||
"}
|
||||
if(1)
|
||||
dat+= "Feed Channels<HR>"
|
||||
@@ -391,38 +391,38 @@ var/global/enabled_spooking = 0
|
||||
for(var/channel in SSnews.network_channels)
|
||||
var/datum/feed_channel/FC = SSnews.GetFeedChannel(channel)
|
||||
if(FC.is_admin_channel)
|
||||
dat+="<B><FONT style='BACKGROUND-COLOR: LightGreen'><A href='?src=[REF(src)];ac_show_channel=[REF(FC)]'>[FC.channel_name]</A></FONT></B><BR>"
|
||||
dat+="<B><FONT style='BACKGROUND-COLOR: LightGreen'><A href='byond://?src=[REF(src)];ac_show_channel=[REF(FC)]'>[FC.channel_name]</A></FONT></B><BR>"
|
||||
else
|
||||
dat+="<B><A href='?src=[REF(src)];ac_show_channel=[REF(FC)]'>[FC.channel_name]</A> [(FC.censored) ? (SPAN_WARNING("***")) : null]<BR></B>"
|
||||
dat+={"<BR><HR><A href='?src=[REF(src)];ac_refresh=1'>Refresh</A>
|
||||
<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Back</A>
|
||||
dat+="<B><A href='byond://?src=[REF(src)];ac_show_channel=[REF(FC)]'>[FC.channel_name]</A> [(FC.censored) ? (SPAN_WARNING("***")) : null]<BR></B>"
|
||||
dat+={"<BR><HR><A href='byond://?src=[REF(src)];ac_refresh=1'>Refresh</A>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Back</A>
|
||||
"}
|
||||
|
||||
if(2)
|
||||
dat+={"
|
||||
Creating new Feed Channel...
|
||||
<HR><B><A href='?src=[REF(src)];ac_set_channel_name=1'>Channel Name</A>:</B> [src.admincaster_feed_channel.channel_name]<BR>
|
||||
<B><A href='?src=[REF(src)];ac_set_signature=1'>Channel Author</A>:</B> <FONT COLOR='green'>[src.admincaster_signature]</FONT><BR>
|
||||
<B><A href='?src=[REF(src)];ac_set_channel_lock=1'>Will Accept Public Feeds</A>:</B> [(src.admincaster_feed_channel.locked) ? ("NO") : ("YES")]<BR><BR>
|
||||
<BR><A href='?src=[REF(src)];ac_submit_new_channel=1'>Submit</A><BR><BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Cancel</A><BR>
|
||||
<HR><B><A href='byond://?src=[REF(src)];ac_set_channel_name=1'>Channel Name</A>:</B> [src.admincaster_feed_channel.channel_name]<BR>
|
||||
<B><A href='byond://?src=[REF(src)];ac_set_signature=1'>Channel Author</A>:</B> <FONT COLOR='green'>[src.admincaster_signature]</FONT><BR>
|
||||
<B><A href='byond://?src=[REF(src)];ac_set_channel_lock=1'>Will Accept Public Feeds</A>:</B> [(src.admincaster_feed_channel.locked) ? ("NO") : ("YES")]<BR><BR>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_submit_new_channel=1'>Submit</A><BR><BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Cancel</A><BR>
|
||||
"}
|
||||
if(3)
|
||||
dat+={"
|
||||
Creating new Feed Message...
|
||||
<HR><B><A href='?src=[REF(src)];ac_set_channel_receiving=1'>Receiving Channel</A>:</B> [src.admincaster_feed_channel.channel_name]<BR>" //MARK
|
||||
<HR><B><A href='byond://?src=[REF(src)];ac_set_channel_receiving=1'>Receiving Channel</A>:</B> [src.admincaster_feed_channel.channel_name]<BR>" //MARK
|
||||
<B>Message Author:</B> <FONT COLOR='green'>[src.admincaster_signature]</FONT><BR>
|
||||
<B><A href='?src=[REF(src)];ac_set_new_message=1'>Message Body</A>:</B> [src.admincaster_feed_message.body] <BR>
|
||||
<BR><A href='?src=[REF(src)];ac_submit_new_message=1'>Submit</A><BR><BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Cancel</A><BR>
|
||||
<B><A href='byond://?src=[REF(src)];ac_set_new_message=1'>Message Body</A>:</B> [src.admincaster_feed_message.body] <BR>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_submit_new_message=1'>Submit</A><BR><BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Cancel</A><BR>
|
||||
"}
|
||||
if(4)
|
||||
dat+={"
|
||||
Feed story successfully submitted to [src.admincaster_feed_channel.channel_name].<BR><BR>
|
||||
<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>
|
||||
"}
|
||||
if(5)
|
||||
dat+={"
|
||||
Feed Channel [src.admincaster_feed_channel.channel_name] created successfully.<BR><BR>
|
||||
<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>
|
||||
"}
|
||||
if(6)
|
||||
dat+="<B><FONT COLOR='maroon'>ERROR: Could not submit Feed story to Network.</B></FONT><HR><BR>"
|
||||
@@ -430,7 +430,7 @@ var/global/enabled_spooking = 0
|
||||
dat+="<FONT COLOR='maroon'>Invalid receiving channel name.</FONT><BR>"
|
||||
if(src.admincaster_feed_message.body == "" || src.admincaster_feed_message.body == "\[REDACTED\]")
|
||||
dat+="<FONT COLOR='maroon'>Invalid message body.</FONT><BR>"
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_setScreen=[3]'>Return</A><BR>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_setScreen=[3]'>Return</A><BR>"
|
||||
if(7)
|
||||
dat+="<B><FONT COLOR='maroon'>ERROR: Could not submit Feed Channel to Network.</B></FONT><HR><BR>"
|
||||
if(src.admincaster_feed_channel.channel_name =="" || src.admincaster_feed_channel.channel_name == "\[REDACTED\]")
|
||||
@@ -443,7 +443,7 @@ var/global/enabled_spooking = 0
|
||||
break
|
||||
if(check)
|
||||
dat+="<FONT COLOR='maroon'>Channel name already in use.</FONT><BR>"
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_setScreen=[2]'>Return</A><BR>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_setScreen=[2]'>Return</A><BR>"
|
||||
if(9)
|
||||
dat+="<B>[src.admincaster_feed_channel.channel_name]: </B><FONT SIZE=1>\[created by: <FONT COLOR='maroon'>[src.admincaster_feed_channel.author]</FONT>\]</FONT><HR>"
|
||||
if(src.admincaster_feed_channel.censored)
|
||||
@@ -458,15 +458,15 @@ var/global/enabled_spooking = 0
|
||||
var/i = 0
|
||||
for(var/datum/feed_message/MESSAGE in src.admincaster_feed_channel.messages)
|
||||
i++
|
||||
dat+="<BLOCKQUOTE style=\"padding:4px;border-left:4px #797979 solid\">[MESSAGE.body] <FONT SIZE=1>\[Likes: <A href='?src=[REF(src)];ac_setlikes=1;'><FONT COLOR='DarkGreen'>[MESSAGE.likes]</FONT></A> Dislikes: <A href='?src=[REF(src)];ac_setdislikes=1;'><FONT COLOR='maroon'>[MESSAGE.dislikes]</FONT></A>\]</FONT><BR>"
|
||||
dat+="<BLOCKQUOTE style=\"padding:4px;border-left:4px #797979 solid\">[MESSAGE.body] <FONT SIZE=1>\[Likes: <A href='byond://?src=[REF(src)];ac_setlikes=1;'><FONT COLOR='DarkGreen'>[MESSAGE.likes]</FONT></A> Dislikes: <A href='byond://?src=[REF(src)];ac_setdislikes=1;'><FONT COLOR='maroon'>[MESSAGE.dislikes]</FONT></A>\]</FONT><BR>"
|
||||
if(MESSAGE.img)
|
||||
send_rsc(usr, MESSAGE.img, "tmp_photo[i].png")
|
||||
dat+="<img src='tmp_photo[i].png' width = '180'><BR><BR>"
|
||||
dat+="<FONT SIZE=1><A href='?src=[REF(src)];ac_view_comments=1;ac_story=[REF(MESSAGE)]'>View Comments</A> <A href='?src=[REF(src)];ac_add_comment=1;ac_story=[REF(MESSAGE)]'>Add Comment</A> <A href='?src=[REF(src)];ac_like=1;ac_story=[REF(MESSAGE)]'>Like Story</A> <A href='?src=[REF(src)];ac_dislike=1;ac_story=[REF(MESSAGE)]'>Dislike Story</A></FONT><BR>"
|
||||
dat+="<FONT SIZE=1><A href='byond://?src=[REF(src)];ac_view_comments=1;ac_story=[REF(MESSAGE)]'>View Comments</A> <A href='byond://?src=[REF(src)];ac_add_comment=1;ac_story=[REF(MESSAGE)]'>Add Comment</A> <A href='byond://?src=[REF(src)];ac_like=1;ac_story=[REF(MESSAGE)]'>Like Story</A> <A href='byond://?src=[REF(src)];ac_dislike=1;ac_story=[REF(MESSAGE)]'>Dislike Story</A></FONT><BR>"
|
||||
dat+="<FONT SIZE=1>\[Story by <FONT COLOR='maroon'>[MESSAGE.author] - [MESSAGE.time_stamp]</FONT>\]</FONT></BLOCKQUOTE><BR>"
|
||||
dat+={"
|
||||
<BR><HR><A href='?src=[REF(src)];ac_refresh=1'>Refresh</A>
|
||||
<BR><A href='?src=[REF(src)];ac_setScreen=[1]'>Back</A>
|
||||
<BR><HR><A href='byond://?src=[REF(src)];ac_refresh=1'>Refresh</A>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_setScreen=[1]'>Back</A>
|
||||
"}
|
||||
if(10)
|
||||
dat+={"
|
||||
@@ -480,8 +480,8 @@ var/global/enabled_spooking = 0
|
||||
else
|
||||
for(var/channel in SSnews.network_channels)
|
||||
var/datum/feed_channel/FC = SSnews.GetFeedChannel(channel)
|
||||
dat+="<A href='?src=[REF(src)];ac_pick_censor_channel=[REF(FC)]'>[FC.channel_name]</A> [(FC.censored) ? (SPAN_WARNING("***")) : null]<BR>"
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Cancel</A>"
|
||||
dat+="<A href='byond://?src=[REF(src)];ac_pick_censor_channel=[REF(FC)]'>[FC.channel_name]</A> [(FC.censored) ? (SPAN_WARNING("***")) : null]<BR>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Cancel</A>"
|
||||
if(11)
|
||||
dat+={"
|
||||
<B>[SSatlas.current_map.company_name] D-Notice Handler</B><HR>
|
||||
@@ -494,13 +494,13 @@ var/global/enabled_spooking = 0
|
||||
else
|
||||
for(var/channel in SSnews.network_channels)
|
||||
var/datum/feed_channel/FC = SSnews.GetFeedChannel(channel)
|
||||
dat+="<A href='?src=[REF(src)];ac_pick_d_notice=[REF(FC)]'>[FC.channel_name]</A> [(FC.censored) ? (SPAN_WARNING("***")) : null]<BR>"
|
||||
dat+="<A href='byond://?src=[REF(src)];ac_pick_d_notice=[REF(FC)]'>[FC.channel_name]</A> [(FC.censored) ? (SPAN_WARNING("***")) : null]<BR>"
|
||||
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Back</A>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Back</A>"
|
||||
if(12)
|
||||
dat+={"
|
||||
<B>[src.admincaster_feed_channel.channel_name]: </B><FONT SIZE=1>\[ created by: <FONT COLOR='maroon'>[src.admincaster_feed_channel.author]</FONT> \]</FONT><BR>
|
||||
<FONT SIZE=2><A href='?src=[REF(src)];ac_censor_channel_author=[REF(src.admincaster_feed_channel)]'>[(src.admincaster_feed_channel.author=="\[REDACTED\]") ? ("Undo Author censorship") : ("Censor channel Author")]</A></FONT><HR>
|
||||
<FONT SIZE=2><A href='byond://?src=[REF(src)];ac_censor_channel_author=[REF(src.admincaster_feed_channel)]'>[(src.admincaster_feed_channel.author=="\[REDACTED\]") ? ("Undo Author censorship") : ("Censor channel Author")]</A></FONT><HR>
|
||||
"}
|
||||
if( isemptylist(src.admincaster_feed_channel.messages) )
|
||||
dat+="<I>No feed messages found in channel...</I><BR>"
|
||||
@@ -508,13 +508,13 @@ var/global/enabled_spooking = 0
|
||||
for(var/datum/feed_message/MESSAGE in src.admincaster_feed_channel.messages)
|
||||
dat+={"
|
||||
-[MESSAGE.body] <BR><FONT SIZE=1>\[Story by <FONT COLOR='maroon'>[MESSAGE.author]</FONT>\]</FONT><BR>
|
||||
<FONT SIZE=2><A href='?src=[REF(src)];ac_censor_channel_story_body=[REF(MESSAGE)]'>[(MESSAGE.body == "\[REDACTED\]") ? ("Undo story censorship") : ("Censor story")]</A> - <A href='?src=[REF(src)];ac_censor_channel_story_author=[REF(MESSAGE)]'>[(MESSAGE.author == "\[REDACTED\]") ? ("Undo Author Censorship") : ("Censor message Author")]</A></FONT><BR>
|
||||
<FONT SIZE=2><A href='byond://?src=[REF(src)];ac_censor_channel_story_body=[REF(MESSAGE)]'>[(MESSAGE.body == "\[REDACTED\]") ? ("Undo story censorship") : ("Censor story")]</A> - <A href='byond://?src=[REF(src)];ac_censor_channel_story_author=[REF(MESSAGE)]'>[(MESSAGE.author == "\[REDACTED\]") ? ("Undo Author Censorship") : ("Censor message Author")]</A></FONT><BR>
|
||||
"}
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_setScreen=[10]'>Back</A>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_setScreen=[10]'>Back</A>"
|
||||
if(13)
|
||||
dat+={"
|
||||
<B>[src.admincaster_feed_channel.channel_name]: </B><FONT SIZE=1>\[ created by: <FONT COLOR='maroon'>[src.admincaster_feed_channel.author]</FONT> \]</FONT><BR>
|
||||
Channel messages listed below. If you deem them dangerous to the [station_name(TRUE)], you can <A href='?src=[REF(src)];ac_toggle_d_notice=[REF(src.admincaster_feed_channel)]'>Bestow a D-Notice upon the channel</A>.<HR>
|
||||
Channel messages listed below. If you deem them dangerous to the [station_name(TRUE)], you can <A href='byond://?src=[REF(src)];ac_toggle_d_notice=[REF(src.admincaster_feed_channel)]'>Bestow a D-Notice upon the channel</A>.<HR>
|
||||
"}
|
||||
if(src.admincaster_feed_channel.censored)
|
||||
dat+={"
|
||||
@@ -528,7 +528,7 @@ var/global/enabled_spooking = 0
|
||||
for(var/datum/feed_message/MESSAGE in src.admincaster_feed_channel.messages)
|
||||
dat+="-[MESSAGE.body] <BR><FONT SIZE=1>\[Story by <FONT COLOR='maroon'>[MESSAGE.author]</FONT>\]</FONT><BR>"
|
||||
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_setScreen=[11]'>Back</A>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_setScreen=[11]'>Back</A>"
|
||||
if(14)
|
||||
dat+="<B>Wanted Issue Handler:</B>"
|
||||
var/wanted_already = 0
|
||||
@@ -540,21 +540,21 @@ var/global/enabled_spooking = 0
|
||||
dat+="<FONT SIZE=2><BR><I>A wanted issue is already in Feed Circulation. You can edit or cancel it below.</FONT></I>"
|
||||
dat+={"
|
||||
<HR>
|
||||
<A href='?src=[REF(src)];ac_set_wanted_name=1'>Criminal Name</A>: [src.admincaster_feed_message.author] <BR>
|
||||
<A href='?src=[REF(src)];ac_set_wanted_desc=1'>Description</A>: [src.admincaster_feed_message.body] <BR>
|
||||
<A href='byond://?src=[REF(src)];ac_set_wanted_name=1'>Criminal Name</A>: [src.admincaster_feed_message.author] <BR>
|
||||
<A href='byond://?src=[REF(src)];ac_set_wanted_desc=1'>Description</A>: [src.admincaster_feed_message.body] <BR>
|
||||
"}
|
||||
if(wanted_already)
|
||||
dat+="<B>Wanted Issue created by:</B><FONT COLOR='green'> [SSnews.wanted_issue.backup_author]</FONT><BR>"
|
||||
else
|
||||
dat+="<B>Wanted Issue will be created under prosecutor:</B><FONT COLOR='green'> [src.admincaster_signature]</FONT><BR>"
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_submit_wanted=[end_param]'>[(wanted_already) ? ("Edit Issue") : ("Submit")]</A>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_submit_wanted=[end_param]'>[(wanted_already) ? ("Edit Issue") : ("Submit")]</A>"
|
||||
if(wanted_already)
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_cancel_wanted=1'>Take down Issue</A>"
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Cancel</A>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_cancel_wanted=1'>Take down Issue</A>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Cancel</A>"
|
||||
if(15)
|
||||
dat+={"
|
||||
<FONT COLOR='green'>Wanted issue for [src.admincaster_feed_message.author] is now in Network Circulation.</FONT><BR><BR>
|
||||
<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>
|
||||
"}
|
||||
if(16)
|
||||
dat+="<B><FONT COLOR='maroon'>ERROR: Wanted Issue rejected by Network.</B></FONT><HR><BR>"
|
||||
@@ -562,11 +562,11 @@ var/global/enabled_spooking = 0
|
||||
dat+="<FONT COLOR='maroon'>Invalid name for person wanted.</FONT><BR>"
|
||||
if(src.admincaster_feed_message.body == "" || src.admincaster_feed_message.body == "\[REDACTED\]")
|
||||
dat+="<FONT COLOR='maroon'>Invalid description.</FONT><BR>"
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>"
|
||||
if(17)
|
||||
dat+={"
|
||||
<B>Wanted Issue successfully deleted from Circulation</B><BR>
|
||||
<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>
|
||||
"}
|
||||
if(18)
|
||||
dat+={"
|
||||
@@ -580,11 +580,11 @@ var/global/enabled_spooking = 0
|
||||
dat+="<BR><img src='tmp_photow.png' width = '180'>"
|
||||
else
|
||||
dat+="None"
|
||||
dat+="<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Back</A><BR>"
|
||||
dat+="<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Back</A><BR>"
|
||||
if(19)
|
||||
dat+={"
|
||||
<FONT COLOR='green'>Wanted issue for [src.admincaster_feed_message.author] successfully edited.</FONT><BR><BR>
|
||||
<BR><A href='?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>
|
||||
<BR><A href='byond://?src=[REF(src)];ac_setScreen=[0]'>Return</A><BR>
|
||||
"}
|
||||
if(20) //comments but with more censorship!
|
||||
dat+="<B>Comments:</B></BR>"
|
||||
@@ -592,8 +592,8 @@ var/global/enabled_spooking = 0
|
||||
dat+="No comments on this story yet!</BR>"
|
||||
else
|
||||
for(var/datum/feed_comment/COMMENT in src.admincaster_viewing_message.comments)
|
||||
dat+="<BLOCKQUOTE style=\"padding:2px 4px;border-left:4px #797979 solid;\"><B>\[[world.time]\] [COMMENT.author]:</B>[COMMENT.message]<BR><A href='?src=[REF(src)];ac_censorcomment=1;ac_comment=[REF(COMMENT)]>Censor Comment</A></BLOCKQUOTE>"
|
||||
dat+="<A href='?src=[REF(src)];ac_setScreen=[9]'>Return</A>"
|
||||
dat+="<BLOCKQUOTE style=\"padding:2px 4px;border-left:4px #797979 solid;\"><B>\[[world.time]\] [COMMENT.author]:</B>[COMMENT.message]<BR><A href='byond://?src=[REF(src)];ac_censorcomment=1;ac_comment=[REF(COMMENT)]>Censor Comment</A></BLOCKQUOTE>"
|
||||
dat+="<A href='byond://?src=[REF(src)];ac_setScreen=[9]'>Return</A>"
|
||||
else
|
||||
dat+="Please report this on GitHub, along with what you did to make this appear."
|
||||
|
||||
@@ -609,13 +609,13 @@ var/global/enabled_spooking = 0
|
||||
|
||||
// RIP whoever uses this panel. It's going to be amazingly painful!
|
||||
var/dat = "<B>Job Bans!</B><HR>"
|
||||
dat += "<a href='?src=[REF(src)];jobban_search=1'>Search via ckey</a><br>"
|
||||
dat += "<a href='byond://?src=[REF(src)];jobban_search=1'>Search via ckey</a><br>"
|
||||
dat += "<table>"
|
||||
for (var/ckey in GLOB.jobban_keylist)
|
||||
for (var/job in GLOB.jobban_keylist[ckey])
|
||||
var/list/ban = GLOB.jobban_keylist[ckey][job]
|
||||
if (!jobban_isexpired(ban, null, job, ckey))
|
||||
dat += "<tr><td>[ckey] - [ban[2]] - (<a href='?src=[REF(src)];jobban_tgt=[ckey];jobban_job=[job];'>unban</a>)</td></tr>"
|
||||
dat += "<tr><td>[ckey] - [ban[2]] - (<a href='byond://?src=[REF(src)];jobban_tgt=[ckey];jobban_job=[job];'>unban</a>)</td></tr>"
|
||||
|
||||
dat += "</table>"
|
||||
usr << browse(dat, "window=ban;size=400x400")
|
||||
@@ -625,19 +625,19 @@ var/global/enabled_spooking = 0
|
||||
|
||||
var/dat = {"
|
||||
<center><B>Game Panel</B></center><hr>\n
|
||||
<A href='?src=[REF(src)];c_mode=1'>Change Game Mode</A><br>
|
||||
<A href='byond://?src=[REF(src)];c_mode=1'>Change Game Mode</A><br>
|
||||
"}
|
||||
if(GLOB.master_mode == ROUNDTYPE_STR_SECRET || GLOB.master_mode == ROUNDTYPE_STR_MIXED_SECRET)
|
||||
dat += "<A href='?src=[REF(src)];f_secret=1'>(Force Secret Mode)</A><br>"
|
||||
dat += "<A href='byond://?src=[REF(src)];f_secret=1'>(Force Secret Mode)</A><br>"
|
||||
|
||||
dat += {"
|
||||
<BR>
|
||||
<A href='?src=[REF(src)];create_object=1'>Create Object</A><br>
|
||||
<A href='?src=[REF(src)];create_turf=1'>Create Turf</A><br>
|
||||
<A href='?src=[REF(src)];create_mob=1'>Create Mob</A><br>
|
||||
<br><A href='?src=[REF(src)];vsc=airflow'>Edit Airflow Settings</A><br>
|
||||
<A href='?src=[REF(src)];vsc=phoron'>Edit Phoron Settings</A><br>
|
||||
<A href='?src=[REF(src)];vsc=default'>Choose a default ZAS setting</A><br>
|
||||
<A href='byond://?src=[REF(src)];create_object=1'>Create Object</A><br>
|
||||
<A href='byond://?src=[REF(src)];create_turf=1'>Create Turf</A><br>
|
||||
<A href='byond://?src=[REF(src)];create_mob=1'>Create Mob</A><br>
|
||||
<br><A href='byond://?src=[REF(src)];vsc=airflow'>Edit Airflow Settings</A><br>
|
||||
<A href='byond://?src=[REF(src)];vsc=phoron'>Edit Phoron Settings</A><br>
|
||||
<A href='byond://?src=[REF(src)];vsc=default'>Choose a default ZAS setting</A><br>
|
||||
"}
|
||||
|
||||
usr << browse(dat, "window=admin2;size=210x280")
|
||||
@@ -656,7 +656,7 @@ var/global/enabled_spooking = 0
|
||||
for(var/datum/admin_secret_item/item in category.items)
|
||||
if(!item.can_view(usr))
|
||||
continue
|
||||
dat += "<A href='?src=[REF(src)];admin_secrets=[REF(item)]'>[item.name()]</A><BR>"
|
||||
dat += "<A href='byond://?src=[REF(src)];admin_secrets=[REF(item)]'>[item.name()]</A><BR>"
|
||||
dat += "<BR>"
|
||||
usr << browse(dat, "window=secrets")
|
||||
return
|
||||
@@ -1078,66 +1078,66 @@ var/global/enabled_spooking = 0
|
||||
alert("Not before roundstart!", "Alert")
|
||||
return
|
||||
|
||||
var/out = "<font size=3><b>Current mode: [SSticker.mode.name] (<a href='?src=[REF(SSticker.mode)];debug_antag=self'>[SSticker.mode.config_tag]</a>)</b></font><br/>"
|
||||
var/out = "<font size=3><b>Current mode: [SSticker.mode.name] (<a href='byond://?src=[REF(SSticker.mode)];debug_antag=self'>[SSticker.mode.config_tag]</a>)</b></font><br/>"
|
||||
out += "<hr>"
|
||||
|
||||
if(SSticker.mode.ert_disabled)
|
||||
out += "<b>Emergency Response Teams:</b> <a href='?src=[REF(SSticker.mode)];toggle=ert'>disabled</a>"
|
||||
out += "<b>Emergency Response Teams:</b> <a href='byond://?src=[REF(SSticker.mode)];toggle=ert'>disabled</a>"
|
||||
else
|
||||
out += "<b>Emergency Response Teams:</b> <a href='?src=[REF(SSticker.mode)];toggle=ert'>enabled</a>"
|
||||
out += "<b>Emergency Response Teams:</b> <a href='byond://?src=[REF(SSticker.mode)];toggle=ert'>enabled</a>"
|
||||
out += "<br/>"
|
||||
|
||||
if(SSticker.mode.deny_respawn)
|
||||
out += "<b>Respawning:</b> <a href='?src=[REF(SSticker.mode)];toggle=respawn'>disallowed</a>"
|
||||
out += "<b>Respawning:</b> <a href='byond://?src=[REF(SSticker.mode)];toggle=respawn'>disallowed</a>"
|
||||
else
|
||||
out += "<b>Respawning:</b> <a href='?src=[REF(SSticker.mode)];toggle=respawn'>allowed</a>"
|
||||
out += "<b>Respawning:</b> <a href='byond://?src=[REF(SSticker.mode)];toggle=respawn'>allowed</a>"
|
||||
out += "<br/>"
|
||||
|
||||
out += "<b>Shuttle delay multiplier:</b> <a href='?src=[REF(SSticker.mode)];set=shuttle_delay'>[SSticker.mode.shuttle_delay]</a><br/>"
|
||||
out += "<b>Shuttle delay multiplier:</b> <a href='byond://?src=[REF(SSticker.mode)];set=shuttle_delay'>[SSticker.mode.shuttle_delay]</a><br/>"
|
||||
|
||||
if(SSticker.mode.auto_recall_shuttle)
|
||||
out += "<b>Shuttle auto-recall:</b> <a href='?src=[REF(SSticker.mode)];toggle=shuttle_recall'>enabled</a>"
|
||||
out += "<b>Shuttle auto-recall:</b> <a href='byond://?src=[REF(SSticker.mode)];toggle=shuttle_recall'>enabled</a>"
|
||||
else
|
||||
out += "<b>Shuttle auto-recall:</b> <a href='?src=[REF(SSticker.mode)];toggle=shuttle_recall'>disabled</a>"
|
||||
out += "<b>Shuttle auto-recall:</b> <a href='byond://?src=[REF(SSticker.mode)];toggle=shuttle_recall'>disabled</a>"
|
||||
out += "<br/><br/>"
|
||||
|
||||
if(SSticker.mode.event_delay_mod_moderate)
|
||||
out += "<b>Moderate event time modifier:</b> <a href='?src=[REF(SSticker.mode)];set=event_modifier_moderate'>[SSticker.mode.event_delay_mod_moderate]</a><br/>"
|
||||
out += "<b>Moderate event time modifier:</b> <a href='byond://?src=[REF(SSticker.mode)];set=event_modifier_moderate'>[SSticker.mode.event_delay_mod_moderate]</a><br/>"
|
||||
else
|
||||
out += "<b>Moderate event time modifier:</b> <a href='?src=[REF(SSticker.mode)];set=event_modifier_moderate'>unset</a><br/>"
|
||||
out += "<b>Moderate event time modifier:</b> <a href='byond://?src=[REF(SSticker.mode)];set=event_modifier_moderate'>unset</a><br/>"
|
||||
|
||||
if(SSticker.mode.event_delay_mod_major)
|
||||
out += "<b>Major event time modifier:</b> <a href='?src=[REF(SSticker.mode)];set=event_modifier_severe'>[SSticker.mode.event_delay_mod_major]</a><br/>"
|
||||
out += "<b>Major event time modifier:</b> <a href='byond://?src=[REF(SSticker.mode)];set=event_modifier_severe'>[SSticker.mode.event_delay_mod_major]</a><br/>"
|
||||
else
|
||||
out += "<b>Major event time modifier:</b> <a href='?src=[REF(SSticker.mode)];set=event_modifier_severe'>unset</a><br/>"
|
||||
out += "<b>Major event time modifier:</b> <a href='byond://?src=[REF(SSticker.mode)];set=event_modifier_severe'>unset</a><br/>"
|
||||
|
||||
out += "<hr>"
|
||||
|
||||
if(LAZYLEN(SSticker.mode.antag_tags))
|
||||
out += "<b>Core antag templates:</b></br>"
|
||||
for(var/antag_tag in SSticker.mode.antag_tags)
|
||||
out += "<a href='?src=[REF(SSticker.mode)];debug_antag=[antag_tag]'>[antag_tag]</a>.</br>"
|
||||
out += "<a href='byond://?src=[REF(SSticker.mode)];debug_antag=[antag_tag]'>[antag_tag]</a>.</br>"
|
||||
|
||||
if(SSticker.mode.round_autoantag)
|
||||
out += "<b>Autotraitor <a href='?src=[REF(SSticker.mode)];toggle=autotraitor'>enabled</a></b>."
|
||||
out += "<b>Autotraitor <a href='byond://?src=[REF(SSticker.mode)];toggle=autotraitor'>enabled</a></b>."
|
||||
if(SSticker.mode.antag_scaling_coeff > 0)
|
||||
out += " (scaling with <a href='?src=[REF(SSticker.mode)];set=antag_scaling'>[SSticker.mode.antag_scaling_coeff]</a>)"
|
||||
out += " (scaling with <a href='byond://?src=[REF(SSticker.mode)];set=antag_scaling'>[SSticker.mode.antag_scaling_coeff]</a>)"
|
||||
else
|
||||
out += " (not currently scaling, <a href='?src=[REF(SSticker.mode)];set=antag_scaling'>set a coefficient</a>)"
|
||||
out += " (not currently scaling, <a href='byond://?src=[REF(SSticker.mode)];set=antag_scaling'>set a coefficient</a>)"
|
||||
out += "<br/>"
|
||||
else
|
||||
out += "<b>Autotraitor <a href='?src=[REF(SSticker.mode)];toggle=autotraitor'>disabled</a></b>.<br/>"
|
||||
out += "<b>Autotraitor <a href='byond://?src=[REF(SSticker.mode)];toggle=autotraitor'>disabled</a></b>.<br/>"
|
||||
|
||||
out += "<b>All antag ids:</b>"
|
||||
if(LAZYLEN(SSticker.mode.antag_templates))
|
||||
for(var/datum/antagonist/antag in SSticker.mode.antag_templates)
|
||||
antag.update_current_antag_max()
|
||||
out += " <a href='?src=[REF(SSticker.mode)];debug_antag=[antag.id]'>[antag.id]</a>"
|
||||
out += " <a href='byond://?src=[REF(SSticker.mode)];debug_antag=[antag.id]'>[antag.id]</a>"
|
||||
out += " ([antag.get_antag_count()]/[antag.cur_max]) "
|
||||
out += " <a href='?src=[REF(SSticker.mode)];remove_antag_type=[antag.id]'>\[-\]</a><br/>"
|
||||
out += " <a href='byond://?src=[REF(SSticker.mode)];remove_antag_type=[antag.id]'>\[-\]</a><br/>"
|
||||
else
|
||||
out += " None."
|
||||
out += " <a href='?src=[REF(SSticker.mode)];add_antag_type=1'>\[+\]</a><br/>"
|
||||
out += " <a href='byond://?src=[REF(SSticker.mode)];add_antag_type=1'>\[+\]</a><br/>"
|
||||
|
||||
usr << browse(out, "window=edit_mode[src]")
|
||||
feedback_add_details("admin_verb","SGM")
|
||||
@@ -1221,19 +1221,19 @@ var/global/enabled_spooking = 0
|
||||
return "<b>[key_name(C, link, name, highlight_special, ticket)]</b>"
|
||||
|
||||
if(1) //Private Messages
|
||||
return "<b>[key_name(C, link, name, highlight_special, ticket)](<A HREF='?_src_=holder;adminmoreinfo=[REF(M)]'>?</A>)</b>"
|
||||
return "<b>[key_name(C, link, name, highlight_special, ticket)](<A href='byond://?_src_=holder;adminmoreinfo=[REF(M)]'>?</A>)</b>"
|
||||
|
||||
if(2) //Admins
|
||||
var/ref_mob = "[REF(M)]"
|
||||
return "<b>[key_name(C, link, name, highlight_special, ticket)](<A HREF='?_src_=holder;adminmoreinfo=[ref_mob]'>?</A>) (<A HREF='?_src_=holder;adminplayeropts=[ref_mob]'>PP</A>) (<A HREF='?_src_=vars;Vars=[ref_mob]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=[ref_mob]'>SM</A>) ([admin_jump_link(M)]) (<A HREF='?_src_=holder;check_antagonist=1'>CA</A>)</b>"
|
||||
return "<b>[key_name(C, link, name, highlight_special, ticket)](<A href='byond://?_src_=holder;adminmoreinfo=[ref_mob]'>?</A>) (<A href='byond://?_src_=holder;adminplayeropts=[ref_mob]'>PP</A>) (<A href='byond://?_src_=vars;Vars=[ref_mob]'>VV</A>) (<A href='byond://?_src_=holder;subtlemessage=[ref_mob]'>SM</A>) ([admin_jump_link(M)]) (<A href='byond://?_src_=holder;check_antagonist=1'>CA</A>)</b>"
|
||||
|
||||
if(3) //Devs
|
||||
var/ref_mob = "[REF(M)]"
|
||||
return "<b>[key_name(C, link, name, highlight_special, ticket)](<A HREF='?_src_=vars;Vars=[ref_mob]'>VV</A>)([admin_jump_link(M)])</b>"
|
||||
return "<b>[key_name(C, link, name, highlight_special, ticket)](<A href='byond://?_src_=vars;Vars=[ref_mob]'>VV</A>)([admin_jump_link(M)])</b>"
|
||||
|
||||
if(4) //Mentors
|
||||
var/ref_mob = "[REF(M)]"
|
||||
return "<b>[key_name(C, link, name, highlight_special, ticket)] (<A HREF='?_src_=holder;adminmoreinfo=[REF(M)]'>?</A>) (<A HREF='?_src_=holder;adminplayeropts=[ref_mob]'>PP</A>) (<A HREF='?_src_=vars;Vars=[ref_mob]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=[ref_mob]'>SM</A>) ([admin_jump_link(M)])</b>"
|
||||
return "<b>[key_name(C, link, name, highlight_special, ticket)] (<A href='byond://?_src_=holder;adminmoreinfo=[REF(M)]'>?</A>) (<A href='byond://?_src_=holder;adminplayeropts=[ref_mob]'>PP</A>) (<A href='byond://?_src_=vars;Vars=[ref_mob]'>VV</A>) (<A href='byond://?_src_=holder;subtlemessage=[ref_mob]'>SM</A>) ([admin_jump_link(M)])</b>"
|
||||
|
||||
//
|
||||
//ALL DONE
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
/proc/log_and_message_admins(var/message as text, var/mob/user = usr, var/turf/location)
|
||||
var/turf/T = location ? location : (user ? get_turf(user) : null)
|
||||
if(T)
|
||||
message = message + " (<a HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[T.x];Y=[T.y];Z=[T.z]'>JMP</a>)"
|
||||
message = message + " (<a href='byond://?_src_=holder;adminplayerobservecoodjump=1;X=[T.x];Y=[T.y];Z=[T.z]'>JMP</a>)"
|
||||
|
||||
log_admin(user ? "[key_name(user)] [message]" : "EVENT [message]")
|
||||
message_admins(user ? "[key_name_admin(user)] [message]" : "EVENT [message]")
|
||||
@@ -25,10 +25,10 @@
|
||||
var/jmp_link = ""
|
||||
if(victim)
|
||||
victim.attack_log +="\[[time_stamp()]\] <font color='orange'>[key_name(attacker)] - [victim_message]</font>"
|
||||
jmp_link = " (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[victim.x];Y=[victim.y];Z=[victim.z]'>JMP</a>)"
|
||||
jmp_link = " (<A href='byond://?_src_=holder;adminplayerobservecoodjump=1;X=[victim.x];Y=[victim.y];Z=[victim.z]'>JMP</a>)"
|
||||
if(attacker)
|
||||
attacker.attack_log += "\[[time_stamp()]\] <span class='warning'>[key_name(victim)] - [attacker_message]</span>"
|
||||
jmp_link = " (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[attacker.x];Y=[attacker.y];Z=[attacker.z]'>JMP</a>)"
|
||||
jmp_link = " (<A href='byond://?_src_=holder;adminplayerobservecoodjump=1;X=[attacker.x];Y=[attacker.y];Z=[attacker.z]'>JMP</a>)"
|
||||
|
||||
msg_admin_attack("[attacker ? key_name_admin(attacker) : ""] [admin_message] [victim ? key_name_admin(victim) : ""] (INTENT: [attacker? uppertext(attacker.a_intent) : "N/A"])[jmp_link]",ckey=key_name(attacker),ckey_target=key_name(victim))
|
||||
|
||||
|
||||
@@ -1368,7 +1368,7 @@ GLOBAL_LIST_INIT(admin_verbs_cciaa, list(
|
||||
prefix = "(R)"
|
||||
admin_stuff += "/([source.key])"
|
||||
if(target != source.client)
|
||||
admin_stuff += "(<A HREF='?src=[REF(target.holder)];adminplayerobservejump=[REF(mob)]'>JMP</A>)"
|
||||
admin_stuff += "(<A href='byond://?src=[REF(target.holder)];adminplayerobservejump=[REF(mob)]'>JMP</A>)"
|
||||
if(target.mob in messagemobs)
|
||||
prefix = ""
|
||||
if((target.mob in messagemobs) || display_remote)
|
||||
|
||||
@@ -322,7 +322,7 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
//Regular jobs
|
||||
//Command
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr align='center' bgcolor='114dc1'><th colspan='[length(command_positions)]'><a href='?src=[REF(src)];jobban_job=commanddept;jobban_tgt=[ckey]'>Command Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr align='center' bgcolor='114dc1'><th colspan='[length(command_positions)]'><a href='byond://?src=[REF(src)];jobban_job=commanddept;jobban_tgt=[ckey]'>Command Positions</a></th></tr><tr align='center'>"
|
||||
for (var/jobPos in command_positions)
|
||||
if (!jobPos)
|
||||
continue
|
||||
@@ -331,10 +331,10 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
continue
|
||||
|
||||
if (jobban_isbanned(ckey, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if (counter >= 6) //So things dont get squiiiiished!
|
||||
@@ -344,7 +344,7 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
|
||||
//Command Support
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr align='center' bgcolor='114dc1'><th colspan='[length(command_support_positions)]'><a href='?src=[REF(src)];jobban_job=commandsupportdept;jobban_tgt=[ckey]'>Command Support Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr align='center' bgcolor='114dc1'><th colspan='[length(command_support_positions)]'><a href='byond://?src=[REF(src)];jobban_job=commandsupportdept;jobban_tgt=[ckey]'>Command Support Positions</a></th></tr><tr align='center'>"
|
||||
for (var/jobPos in command_support_positions)
|
||||
if (!jobPos)
|
||||
continue
|
||||
@@ -353,10 +353,10 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
continue
|
||||
|
||||
if (jobban_isbanned(ckey, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if (counter >= 6) //So things dont get squiiiiished!
|
||||
@@ -367,7 +367,7 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
//Security
|
||||
counter = 0
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr bgcolor='991818'><th colspan='[length(security_positions)]'><a href='?src=[REF(src)];jobban_job=securitydept;jobban_tgt=[ckey]'>Security Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr bgcolor='991818'><th colspan='[length(security_positions)]'><a href='byond://?src=[REF(src)];jobban_job=securitydept;jobban_tgt=[ckey]'>Security Positions</a></th></tr><tr align='center'>"
|
||||
for (var/jobPos in security_positions)
|
||||
if (!jobPos)
|
||||
continue
|
||||
@@ -376,10 +376,10 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
continue
|
||||
|
||||
if (jobban_isbanned(ckey, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if (counter >= 5) //So things dont get squiiiiished!
|
||||
@@ -390,7 +390,7 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
//Engineering
|
||||
counter = 0
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr bgcolor='c67519'><th colspan='[length(engineering_positions)]'><a href='?src=[REF(src)];jobban_job=engineeringdept;jobban_tgt=[ckey]'>Engineering Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr bgcolor='c67519'><th colspan='[length(engineering_positions)]'><a href='byond://?src=[REF(src)];jobban_job=engineeringdept;jobban_tgt=[ckey]'>Engineering Positions</a></th></tr><tr align='center'>"
|
||||
for (var/jobPos in engineering_positions)
|
||||
if (!jobPos)
|
||||
continue
|
||||
@@ -399,10 +399,10 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
continue
|
||||
|
||||
if (jobban_isbanned(ckey, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if (counter >= 5) //So things dont get squiiiiished!
|
||||
@@ -413,7 +413,7 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
//Medical
|
||||
counter = 0
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr bgcolor='15903a'><th colspan='[length(medical_positions)]'><a href='?src=[REF(src)];jobban_job=medicaldept;jobban_tgt=[ckey]'>Medical Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr bgcolor='15903a'><th colspan='[length(medical_positions)]'><a href='byond://?src=[REF(src)];jobban_job=medicaldept;jobban_tgt=[ckey]'>Medical Positions</a></th></tr><tr align='center'>"
|
||||
for (var/jobPos in medical_positions)
|
||||
if (!jobPos)
|
||||
continue
|
||||
@@ -422,10 +422,10 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
continue
|
||||
|
||||
if (jobban_isbanned(ckey, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if (counter >= 5) //So things dont get squiiiiished!
|
||||
@@ -436,7 +436,7 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
//Science
|
||||
counter = 0
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr bgcolor='a44799'><th colspan='[length(science_positions)]'><a href='?src=[REF(src)];jobban_job=sciencedept;jobban_tgt=[ckey]'>Science Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr bgcolor='a44799'><th colspan='[length(science_positions)]'><a href='byond://?src=[REF(src)];jobban_job=sciencedept;jobban_tgt=[ckey]'>Science Positions</a></th></tr><tr align='center'>"
|
||||
for (var/jobPos in science_positions)
|
||||
if (!jobPos)
|
||||
continue
|
||||
@@ -445,10 +445,10 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
continue
|
||||
|
||||
if (jobban_isbanned(ckey, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if (counter >= 5) //So things dont get squiiiiished!
|
||||
@@ -459,7 +459,7 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
//Cargo
|
||||
counter = 0
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr bgcolor='593616'><th colspan='[length(cargo_positions)]'><a href='?src=[REF(src)];jobban_job=cargodept;jobban_tgt=[ckey]'>Cargo Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr bgcolor='593616'><th colspan='[length(cargo_positions)]'><a href='byond://?src=[REF(src)];jobban_job=cargodept;jobban_tgt=[ckey]'>Cargo Positions</a></th></tr><tr align='center'>"
|
||||
for (var/jobPos in cargo_positions)
|
||||
if (!jobPos)
|
||||
continue
|
||||
@@ -468,10 +468,10 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
continue
|
||||
|
||||
if (jobban_isbanned(ckey, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if (counter >= 5)
|
||||
@@ -481,7 +481,7 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
//Service
|
||||
counter = 0
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr bgcolor='90524b'><th colspan='[length(service_positions)]'><a href='?src=[REF(src)];jobban_job=servicedept;jobban_tgt=[ckey]'>Service Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr bgcolor='90524b'><th colspan='[length(service_positions)]'><a href='byond://?src=[REF(src)];jobban_job=servicedept;jobban_tgt=[ckey]'>Service Positions</a></th></tr><tr align='center'>"
|
||||
for (var/jobPos in service_positions)
|
||||
if (!jobPos)
|
||||
continue
|
||||
@@ -490,10 +490,10 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
continue
|
||||
|
||||
if (jobban_isbanned(ckey, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if (counter >= 5) //So things dont get squiiiiished!
|
||||
@@ -504,7 +504,7 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
//Civilian
|
||||
counter = 0
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr bgcolor='999999'><th colspan='[length(civilian_positions)]'><a href='?src=[REF(src)];jobban_job=civiliandept;jobban_tgt=[ckey]'>Civilian Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr bgcolor='999999'><th colspan='[length(civilian_positions)]'><a href='byond://?src=[REF(src)];jobban_job=civiliandept;jobban_tgt=[ckey]'>Civilian Positions</a></th></tr><tr align='center'>"
|
||||
for (var/jobPos in civilian_positions)
|
||||
if (!jobPos)
|
||||
continue
|
||||
@@ -513,10 +513,10 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
continue
|
||||
|
||||
if (jobban_isbanned(ckey, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if (counter >= 5) //So things dont get squiiiiished!
|
||||
@@ -526,7 +526,7 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
//Non-Human (Green)
|
||||
counter = 0
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr bgcolor='ccffcc'><th colspan='[length(nonhuman_positions)+1]'><a href='?src=[REF(src)];jobban_job=nonhumandept;jobban_tgt=[ckey]'>Non-human Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr bgcolor='ccffcc'><th colspan='[length(nonhuman_positions)+1]'><a href='byond://?src=[REF(src)];jobban_job=nonhumandept;jobban_tgt=[ckey]'>Non-human Positions</a></th></tr><tr align='center'>"
|
||||
for (var/jobPos in nonhuman_positions)
|
||||
if (!jobPos)
|
||||
continue
|
||||
@@ -535,10 +535,10 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
continue
|
||||
|
||||
if (jobban_isbanned(ckey, job.title))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'><font color=red>[replacetext(job.title, " ", " ")]</font></a></td>"
|
||||
counter++
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[job.title];jobban_tgt=[ckey]'>[replacetext(job.title, " ", " ")]</a></td>"
|
||||
counter++
|
||||
|
||||
if (counter >= 5) //So things dont get squiiiiished!
|
||||
@@ -549,28 +549,28 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
//pAI isn't technically a job, but it goes in here.
|
||||
|
||||
if (jobban_isbanned(ckey, "pAI"))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=pAI;jobban_tgt=[ckey]'><font color=red>pAI</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=pAI;jobban_tgt=[ckey]'><font color=red>pAI</font></a></td>"
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=pAI;jobban_tgt=[ckey]'>pAI</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=pAI;jobban_tgt=[ckey]'>pAI</a></td>"
|
||||
if (jobban_isbanned(ckey, "AntagHUD"))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=AntagHUD;jobban_tgt=[ckey]'><font color=red>AntagHUD</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=AntagHUD;jobban_tgt=[ckey]'><font color=red>AntagHUD</font></a></td>"
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=AntagHUD;jobban_tgt=[ckey]'>AntagHUD</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=AntagHUD;jobban_tgt=[ckey]'>AntagHUD</a></td>"
|
||||
jobs += "</tr></table>"
|
||||
|
||||
//Antagonist (Orange)
|
||||
counter = 0
|
||||
var/isbanned_dept = jobban_isbanned(ckey, "Antagonist")
|
||||
jobs += "<table cellpadding='1' cellspacing='0' width='100%'>"
|
||||
jobs += "<tr bgcolor='ffeeaa'><th colspan='10'><a href='?src=[REF(src)];jobban_job=Antagonist;jobban_tgt=[ckey]'>Antagonist Positions</a></th></tr><tr align='center'>"
|
||||
jobs += "<tr bgcolor='ffeeaa'><th colspan='10'><a href='byond://?src=[REF(src)];jobban_job=Antagonist;jobban_tgt=[ckey]'>Antagonist Positions</a></th></tr><tr align='center'>"
|
||||
for (var/antag_type in GLOB.all_antag_types)
|
||||
var/datum/antagonist/antag = GLOB.all_antag_types[antag_type]
|
||||
if (!antag || !antag.bantype)
|
||||
continue
|
||||
if (isbanned_dept || jobban_isbanned(ckey, antag.bantype))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[antag.bantype];jobban_tgt=[ckey]'><font color=red>[replacetext("[antag.role_text]", " ", " ")]</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[antag.bantype];jobban_tgt=[ckey]'><font color=red>[replacetext("[antag.role_text]", " ", " ")]</font></a></td>"
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=[antag.bantype];jobban_tgt=[ckey]'>[replacetext("[antag.role_text]", " ", " ")]</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=[antag.bantype];jobban_tgt=[ckey]'>[replacetext("[antag.role_text]", " ", " ")]</a></td>"
|
||||
|
||||
counter++
|
||||
|
||||
@@ -584,9 +584,9 @@ GLOBAL_PROTECT(jobban_keylist)
|
||||
jobs += "<tr bgcolor='ccccff'><th colspan='1'>Other Races</th></tr><tr align='center'>"
|
||||
|
||||
if (jobban_isbanned(ckey, "Dionaea"))
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=Dionaea;jobban_tgt=[ckey]'><font color=red>Dionaea</font></a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=Dionaea;jobban_tgt=[ckey]'><font color=red>Dionaea</font></a></td>"
|
||||
else
|
||||
jobs += "<td width='20%'><a href='?src=[REF(src)];jobban_job=Dionaea;jobban_tgt=[ckey]'>Dionaea</a></td>"
|
||||
jobs += "<td width='20%'><a href='byond://?src=[REF(src)];jobban_job=Dionaea;jobban_tgt=[ckey]'>Dionaea</a></td>"
|
||||
jobs += "</tr></table>"
|
||||
body = "<body>[jobs]</body>"
|
||||
dat = "<tt>[header][body]</tt>"
|
||||
|
||||
@@ -12,19 +12,19 @@ datum/admins/proc/notes_gethtml(var/ckey)
|
||||
var/savefile/notesfile = new(NOTESFILE)
|
||||
if(!notesfile) return SPAN_WARNING("Error: Cannot access [NOTESFILE]")
|
||||
if(ckey)
|
||||
. = "<b>Notes for <a href='?src=[REF(src)];notes=show'>[ckey]</a>:</b> <a href='?src=[REF(src)];notes=add;ckey=[ckey]'>\[+\]</a> <a href='?src=[REF(src)];notes=remove;ckey=[ckey]'>\[-\]</a><br>"
|
||||
. = "<b>Notes for <a href='byond://?src=[REF(src)];notes=show'>[ckey]</a>:</b> <a href='byond://?src=[REF(src)];notes=add;ckey=[ckey]'>\[+\]</a> <a href='byond://?src=[REF(src)];notes=remove;ckey=[ckey]'>\[-\]</a><br>"
|
||||
notesfile.cd = "/[ckey]"
|
||||
var/index = 1
|
||||
while( !notesfile.eof )
|
||||
var/note
|
||||
notesfile >> note
|
||||
. += "[note] <a href='?src=[REF(src)];notes=remove;ckey=[ckey];from=[index]'>\[-\]</a><br>"
|
||||
. += "[note] <a href='byond://?src=[REF(src)];notes=remove;ckey=[ckey];from=[index]'>\[-\]</a><br>"
|
||||
index++
|
||||
else
|
||||
. = "<b>All Notes:</b> <a href='?src=[REF(src)];notes=add'>\[+\]</a> <a href='?src=[REF(src)];notes=remove'>\[-\]</a><br>"
|
||||
. = "<b>All Notes:</b> <a href='byond://?src=[REF(src)];notes=add'>\[+\]</a> <a href='byond://?src=[REF(src)];notes=remove'>\[-\]</a><br>"
|
||||
notesfile.cd = "/"
|
||||
for(var/dir in notesfile.dir)
|
||||
. += "<a href='?src=[REF(src)];notes=show;ckey=[dir]'>[dir]</a><br>"
|
||||
. += "<a href='byond://?src=[REF(src)];notes=show;ckey=[dir]'>[dir]</a><br>"
|
||||
return
|
||||
|
||||
//handles removing entries from the buffer, or removing the entire directory if no start_index is given
|
||||
|
||||
@@ -117,7 +117,7 @@
|
||||
if (player_ckey)
|
||||
var/list/query_details = list("player_ckey" = player_ckey)
|
||||
|
||||
dat += "<tr><td align='center' colspan='4' bgcolor='white'><b><a href='?src=[REF(src)];add_player_info=[player_ckey]'>Add Note</a></b></td></tr>"
|
||||
dat += "<tr><td align='center' colspan='4' bgcolor='white'><b><a href='byond://?src=[REF(src)];add_player_info=[player_ckey]'>Add Note</a></b></td></tr>"
|
||||
|
||||
var/DBQuery/init_query = GLOB.dbcon.NewQuery("SELECT ip, computerid FROM ss13_player WHERE ckey = :player_ckey:")
|
||||
init_query.Execute(query_details)
|
||||
|
||||
@@ -30,4 +30,4 @@
|
||||
if(!destination) return
|
||||
|
||||
S.attempt_move(destination)
|
||||
log_and_message_admins("moved the [shuttle_tag] shuttle to [destination] (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[destination.x];Y=[destination.y];Z=[destination.z]'>JMP</a>)", user)
|
||||
log_and_message_admins("moved the [shuttle_tag] shuttle to [destination] (<A href='byond://?_src_=holder;adminplayerobservecoodjump=1;X=[destination.x];Y=[destination.y];Z=[destination.z]'>JMP</a>)", user)
|
||||
|
||||
@@ -323,15 +323,15 @@
|
||||
return
|
||||
var/timeout
|
||||
if (establish_db_connection(GLOB.dbcon))
|
||||
timeout = "<a href='?_src_=holder;stickyban=[(ban["timeout"] ? "untimeout" : "timeout")]&ckey=[ckey]'>\[[(ban["timeout"] ? "untimeout" : "timeout" )]\]</a>"
|
||||
timeout = "<a href='byond://?_src_=holder;stickyban=[(ban["timeout"] ? "untimeout" : "timeout")]&ckey=[ckey]'>\[[(ban["timeout"] ? "untimeout" : "timeout" )]\]</a>"
|
||||
else
|
||||
timeout = "<a href='?_src_=holder;stickyban=revert&ckey=[ckey]'>\[revert\]</a>"
|
||||
timeout = "<a href='byond://?_src_=holder;stickyban=revert&ckey=[ckey]'>\[revert\]</a>"
|
||||
. = list({"
|
||||
<a href='?_src_=holder;stickyban=remove&ckey=[ckey]'>\[-\]</a>
|
||||
<a href='byond://?_src_=holder;stickyban=remove&ckey=[ckey]'>\[-\]</a>
|
||||
[timeout]
|
||||
<b>[ckey]</b>
|
||||
<br />"
|
||||
[ban["message"]] <b><a href='?_src_=holder;stickyban=edit&ckey=[ckey]'>\[Edit\]</a></b><br />
|
||||
[ban["message"]] <b><a href='byond://?_src_=holder;stickyban=edit&ckey=[ckey]'>\[Edit\]</a></b><br />
|
||||
"})
|
||||
if (ban["admin"])
|
||||
. += "[ban["admin"]]<br />"
|
||||
@@ -341,12 +341,12 @@
|
||||
for (var/key in ban["keys"])
|
||||
if (ckey(key) == ckey)
|
||||
continue
|
||||
. += "<li><a href='?_src_=holder;stickyban=remove_alt&ckey=[ckey]&alt=[ckey(key)]'>\[-\]</a>[key]<a href='?_src_=holder;stickyban=exempt&ckey=[ckey]&alt=[ckey(key)]'>\[E\]</a></li>"
|
||||
. += "<li><a href='byond://?_src_=holder;stickyban=remove_alt&ckey=[ckey]&alt=[ckey(key)]'>\[-\]</a>[key]<a href='byond://?_src_=holder;stickyban=exempt&ckey=[ckey]&alt=[ckey(key)]'>\[E\]</a></li>"
|
||||
|
||||
for (var/key in ban["whitelist"])
|
||||
if (ckey(key) == ckey)
|
||||
continue
|
||||
. += "<li><a href='?_src_=holder;stickyban=remove_alt&ckey=[ckey]&alt=[ckey(key)]'>\[-\]</a>[key]<a href='?_src_=holder;stickyban=unexempt&ckey=[ckey]&alt=[ckey(key)]'>\[UE\]</a></li>"
|
||||
. += "<li><a href='byond://?_src_=holder;stickyban=remove_alt&ckey=[ckey]&alt=[ckey(key)]'>\[-\]</a>[key]<a href='byond://?_src_=holder;stickyban=unexempt&ckey=[ckey]&alt=[ckey(key)]'>\[UE\]</a></li>"
|
||||
|
||||
. += "</ol>\n"
|
||||
|
||||
@@ -365,7 +365,7 @@
|
||||
<title>Sticky Bans</title>
|
||||
</head>
|
||||
<body>
|
||||
<h2>All Sticky Bans:</h2> <a href='?_src_=holder;stickyban=add'>\[+\]</a><br>
|
||||
<h2>All Sticky Bans:</h2> <a href='byond://?_src_=holder;stickyban=add'>\[+\]</a><br>
|
||||
[banhtml.Join("")]
|
||||
</body>
|
||||
"}
|
||||
|
||||
@@ -245,7 +245,7 @@ GLOBAL_LIST_EMPTY(ticket_panels)
|
||||
var/ref_mob = ""
|
||||
if(owner_client)
|
||||
ref_mob = "[REF(owner_client.mob)]"
|
||||
ticket_dat += " - <A HREF='?_src_=holder;adminmoreinfo=[ref_mob]'>?</A> - <A HREF='?_src_=holder;adminplayeropts=[ref_mob]'>PP</A> - <A HREF='?_src_=vars;Vars=[ref_mob]'>VV</A> - <A HREF='?_src_=holder;subtlemessage=[ref_mob]'>SM</A>[owner_client ? "- [admin_jump_link(owner_client.mob, src)]" : ""]"
|
||||
ticket_dat += " - <A href='byond://?_src_=holder;adminmoreinfo=[ref_mob]'>?</A> - <A href='byond://?_src_=holder;adminplayeropts=[ref_mob]'>PP</A> - <A href='byond://?_src_=vars;Vars=[ref_mob]'>VV</A> - <A href='byond://?_src_=holder;subtlemessage=[ref_mob]'>SM</A>[owner_client ? "- [admin_jump_link(owner_client.mob, src)]" : ""]"
|
||||
if(open_ticket && open_ticket == ticket)
|
||||
ticket_dat += "</i>"
|
||||
ticket_dat += "</li>"
|
||||
|
||||
+10
-10
@@ -412,9 +412,9 @@
|
||||
return alert(usr, "The game has already started.", null, null, null, null)
|
||||
var/dat = {"<B>What mode do you wish to play?</B><HR>"}
|
||||
for(var/mode in GLOB.config.modes)
|
||||
dat += {"<A href='?src=[REF(src)];c_mode2=[mode]'>[GLOB.config.mode_names[mode]]</A><br>"}
|
||||
dat += {"<A href='?src=[REF(src)];c_mode2=secret'>Secret</A><br>"}
|
||||
dat += {"<A href='?src=[REF(src)];c_mode2=random'>Random</A><br>"}
|
||||
dat += {"<A href='byond://?src=[REF(src)];c_mode2=[mode]'>[GLOB.config.mode_names[mode]]</A><br>"}
|
||||
dat += {"<A href='byond://?src=[REF(src)];c_mode2=secret'>Secret</A><br>"}
|
||||
dat += {"<A href='byond://?src=[REF(src)];c_mode2=random'>Random</A><br>"}
|
||||
dat += {"Now: [GLOB.master_mode]"}
|
||||
usr << browse(dat, "window=c_mode")
|
||||
|
||||
@@ -428,8 +428,8 @@
|
||||
return alert(usr, "The game mode has to be secret!", null, null, null, null)
|
||||
var/dat = {"<B>What game mode do you want to force secret to be? Use this if you want to change the game mode, but want the players to believe it's secret. This will only work if the current game mode is secret.</B><HR>"}
|
||||
for(var/mode in GLOB.config.modes)
|
||||
dat += {"<A href='?src=[REF(src)];f_secret2=[mode]'>[GLOB.config.mode_names[mode]]</A><br>"}
|
||||
dat += {"<A href='?src=[REF(src)];f_secret2=secret'>Random (default)</A><br>"}
|
||||
dat += {"<A href='byond://?src=[REF(src)];f_secret2=[mode]'>[GLOB.config.mode_names[mode]]</A><br>"}
|
||||
dat += {"<A href='byond://?src=[REF(src)];f_secret2=secret'>Random (default)</A><br>"}
|
||||
dat += {"Now: [GLOB.secret_force_mode]"}
|
||||
usr << browse(dat, "window=f_secret")
|
||||
|
||||
@@ -831,7 +831,7 @@
|
||||
dat += "Location: [location_description]<br>"
|
||||
if(special_role_description)
|
||||
dat += "Special Role Desc: [special_role_description]<br>"
|
||||
dat += "(<a href='?src=[REF(usr)];priv_msg=[REF(M)]'>PM</a>) (<A HREF='?src=[REF(src)];adminplayeropts=[REF(M)]'>PP</A>) (<A HREF='?_src_=vars;Vars=[REF(M)]'>VV</A>) (<A HREF='?src=[REF(src)];subtlemessage=[REF(M)]'>SM</A>) ([admin_jump_link(M, src)]) (<A HREF='?src=[REF(src)];secretsadmin=check_antagonist'>CA</A>)"
|
||||
dat += "(<a href='byond://?src=[REF(usr)];priv_msg=[REF(M)]'>PM</a>) (<A href='byond://?src=[REF(src)];adminplayeropts=[REF(M)]'>PP</A>) (<A href='byond://?_src_=vars;Vars=[REF(M)]'>VV</A>) (<A href='byond://?src=[REF(src)];subtlemessage=[REF(M)]'>SM</A>) ([admin_jump_link(M, src)]) (<A href='byond://?src=[REF(src)];secretsadmin=check_antagonist'>CA</A>)"
|
||||
|
||||
var/datum/browser/extrainfo_win = new(usr, "extrainfo", "Extra Info (M.name)", 450, 500)
|
||||
extrainfo_win.set_content(dat)
|
||||
@@ -979,7 +979,7 @@
|
||||
|
||||
for (var/page = 1, page <= B.pages.len, page++)
|
||||
var/obj/pageobj = B.pages[page]
|
||||
data += "<A href='?src=[REF(src)];AdminFaxViewPage=[page];paper_bundle=[REF(B)]'>Page [page] - [pageobj.name]</A><BR>"
|
||||
data += "<A href='byond://?src=[REF(src)];AdminFaxViewPage=[page];paper_bundle=[REF(B)]'>Page [page] - [pageobj.name]</A><BR>"
|
||||
|
||||
usr << browse(data, "window=[B.name]")
|
||||
else
|
||||
@@ -1589,11 +1589,11 @@
|
||||
|
||||
/mob/extra_admin_link(var/source)
|
||||
if(client && eyeobj)
|
||||
return "|<A HREF='?[source];adminplayerobservejump=[REF(eyeobj)]'>EYE</A>"
|
||||
return "|<A href='byond://?[source];adminplayerobservejump=[REF(eyeobj)]'>EYE</A>"
|
||||
|
||||
/mob/abstract/ghost/observer/extra_admin_link(var/source)
|
||||
if(mind && mind.current)
|
||||
return "|<A HREF='?[source];adminplayerobservejump=[REF(mind.current)]'>BDY</A>"
|
||||
return "|<A href='byond://?[source];adminplayerobservejump=[REF(mind.current)]'>BDY</A>"
|
||||
|
||||
/proc/admin_jump_link(var/atom/target, var/source)
|
||||
if(!target) return
|
||||
@@ -1603,7 +1603,7 @@
|
||||
else
|
||||
source = "_src_=holder"
|
||||
|
||||
. = "<A HREF='?[source];adminplayerobservejump=[REF(target)]'>JMP</A>"
|
||||
. = "<A href='byond://?[source];adminplayerobservejump=[REF(target)]'>JMP</A>"
|
||||
. += target.extra_admin_link(source)
|
||||
|
||||
/proc/spawn_humanoid_species_admin(var/mob/user, var/mob/M, var/delmob)
|
||||
|
||||
@@ -717,18 +717,18 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/sdql2_vv_all, new(null
|
||||
|
||||
/datum/sdql2_query/proc/SDQL_print(object, list/text_list, print_nulls = TRUE)
|
||||
if(isdatum(object))
|
||||
text_list += "<A HREF='?_src_=vars;Vars=[REF(object)]'>[REF(object)]</A> : [object]"
|
||||
text_list += "<A href='byond://?_src_=vars;Vars=[REF(object)]'>[REF(object)]</A> : [object]"
|
||||
if(istype(object, /atom))
|
||||
var/atom/A = object
|
||||
var/turf/T = A.loc
|
||||
var/area/a
|
||||
if(istype(T))
|
||||
text_list += " <font color='gray'>at</font> [T] <a href='?_src_=holder;adminplayerobservecoodjump=1;X=[T.x];Y=[T.y];Z=[T.z]'>(JMP)</a>"
|
||||
text_list += " <font color='gray'>at</font> [T] <a href='byond://?_src_=holder;adminplayerobservecoodjump=1;X=[T.x];Y=[T.y];Z=[T.z]'>(JMP)</a>"
|
||||
a = T.loc
|
||||
else
|
||||
var/turf/final = get_turf(T) //Recursive, hopefully?
|
||||
if(istype(final))
|
||||
text_list += " <font color='gray'>at</font> [final] <a href='?_src_=holder;adminplayerobservecoodjump=1;X=[final.x];Y=[final.y];Z=[final.z]'>(JMP)</a>"
|
||||
text_list += " <font color='gray'>at</font> [final] <a href='byond://?_src_=holder;adminplayerobservecoodjump=1;X=[final.x];Y=[final.y];Z=[final.z]'>(JMP)</a>"
|
||||
a = final.loc
|
||||
else
|
||||
text_list += " <font color='gray'>at</font> nonexistent location"
|
||||
|
||||
@@ -13,27 +13,27 @@
|
||||
data += "<b>If you do not know what these do, you shouldn't be touching them!</b><hr>"
|
||||
|
||||
data += "<h2>Hub Visibility Setting:</h2><br>"
|
||||
data += "Currently [world.visibility ? "<font color='green'>VISIBLE</font>" : SPAN_WARNING("HIDDEN")]. <a href='?_src_=holder;access_control=hub'>Toggle</a><br><hr>"
|
||||
data += "Currently [world.visibility ? "<font color='green'>VISIBLE</font>" : SPAN_WARNING("HIDDEN")]. <a href='byond://?_src_=holder;access_control=hub'>Toggle</a><br><hr>"
|
||||
|
||||
data += "<h2>IP Intel Settings:</h2><br><ul>"
|
||||
data += "<li>Current warning level: [GLOB.config.ipintel_rating_bad ? "[GLOB.config.ipintel_rating_bad]" : SPAN_WARNING("DISABLED")]. <a href='?_src_=holder;access_control=intel_bad'>Edit</a></li>"
|
||||
data += "<li>Current kick level: [GLOB.config.ipintel_rating_kick ? "[GLOB.config.ipintel_rating_kick]" : SPAN_WARNING("DISABLED")]. <a href='?_src_=holder;access_control=intel_kick'>Edit</a></li>"
|
||||
data += "<li>Current warning level: [GLOB.config.ipintel_rating_bad ? "[GLOB.config.ipintel_rating_bad]" : SPAN_WARNING("DISABLED")]. <a href='byond://?_src_=holder;access_control=intel_bad'>Edit</a></li>"
|
||||
data += "<li>Current kick level: [GLOB.config.ipintel_rating_kick ? "[GLOB.config.ipintel_rating_kick]" : SPAN_WARNING("DISABLED")]. <a href='byond://?_src_=holder;access_control=intel_kick'>Edit</a></li>"
|
||||
data += "</ul><hr>"
|
||||
|
||||
data += "<h2>Player Age Settings:</h2><br><ul>"
|
||||
data += "<li>New players: [GLOB.config.access_deny_new_players ? SPAN_WARNING("DENIED") : "<font color='green'>ALLOWED</font>"]. <a href='?_src_=holder;access_control=new_players;'>Toggle</a></li>"
|
||||
data += "<li>Account age restriction: [GLOB.config.access_deny_new_accounts == -1 ? SPAN_WARNING("DISABLED") : "[GLOB.config.access_deny_new_accounts] DAYS"]. <a href='?_src_=holder;access_control=new_accounts;'>Edit</a></li>"
|
||||
data += "<li>New players: [GLOB.config.access_deny_new_players ? SPAN_WARNING("DENIED") : "<font color='green'>ALLOWED</font>"]. <a href='byond://?_src_=holder;access_control=new_players;'>Toggle</a></li>"
|
||||
data += "<li>Account age restriction: [GLOB.config.access_deny_new_accounts == -1 ? SPAN_WARNING("DISABLED") : "[GLOB.config.access_deny_new_accounts] DAYS"]. <a href='byond://?_src_=holder;access_control=new_accounts;'>Edit</a></li>"
|
||||
data += "</ul><hr>"
|
||||
|
||||
data += "<h2>VM Detection Settings:</h2><br><ul>"
|
||||
data += "<li>VM identifier count to warn on: [GLOB.config.access_warn_vms ? "[GLOB.config.access_warn_vms]" : SPAN_WARNING("DISABLED")]. <a href='?_src_=holder;access_control=vm_warn;'>Edit</a></li>"
|
||||
data += "<li>VM identifier count to kick on: [GLOB.config.access_deny_vms ? "[GLOB.config.access_deny_vms]" : SPAN_WARNING("DISABLED")]. <a href='?_src_=holder;access_control=vm_kick;'>Edit</a></li>"
|
||||
data += "<li>VM identifier count to warn on: [GLOB.config.access_warn_vms ? "[GLOB.config.access_warn_vms]" : SPAN_WARNING("DISABLED")]. <a href='byond://?_src_=holder;access_control=vm_warn;'>Edit</a></li>"
|
||||
data += "<li>VM identifier count to kick on: [GLOB.config.access_deny_vms ? "[GLOB.config.access_deny_vms]" : SPAN_WARNING("DISABLED")]. <a href='byond://?_src_=holder;access_control=vm_kick;'>Edit</a></li>"
|
||||
data += "</ul>"
|
||||
|
||||
data += "<h2>Guest join settings:</h2><br><ul>"
|
||||
data += "<li>Guests [(GLOB.config.guests_allowed || GLOB.config.external_auth) ? "<font color='green'>CAN</font>" : SPAN_WARNING("CAN NOT")] join.</li>"
|
||||
data += "<li>Guests [GLOB.config.guests_allowed ? "<font color='green'>CAN</font>" : SPAN_WARNING("CAN NOT")] play. <a href='?_src_=holder;access_control=guest;'>Toggle</a></li>"
|
||||
data += "<li>External authetification: [GLOB.config.external_auth ? "<font color='green'>ENABLED</font>" : SPAN_WARNING("DISABLED")]. <a href='?_src_=holder;access_control=external_auth;'>Toggle</a></li>"
|
||||
data += "<li>Guests [GLOB.config.guests_allowed ? "<font color='green'>CAN</font>" : SPAN_WARNING("CAN NOT")] play. <a href='byond://?_src_=holder;access_control=guest;'>Toggle</a></li>"
|
||||
data += "<li>External authetification: [GLOB.config.external_auth ? "<font color='green'>ENABLED</font>" : SPAN_WARNING("DISABLED")]. <a href='byond://?_src_=holder;access_control=external_auth;'>Toggle</a></li>"
|
||||
data += "</ul>"
|
||||
|
||||
config_window.set_user(src.mob)
|
||||
|
||||
@@ -41,7 +41,7 @@ GLOBAL_LIST_INIT(adminhelp_ignored_words, list("unknown","the","a","an","of","mo
|
||||
if(!(word in GLOB.adminhelp_ignored_words))
|
||||
if(word == "ai" && !ai_found)
|
||||
ai_found = 1
|
||||
msg += "<b>[original_word] <A HREF='?_src_=holder;adminchecklaws=[REF(mob)]'>(CL)</A></b> "
|
||||
msg += "<b>[original_word] <A href='byond://?_src_=holder;adminchecklaws=[REF(mob)]'>(CL)</A></b> "
|
||||
continue
|
||||
else
|
||||
var/mob/found = ckeys[word]
|
||||
@@ -52,10 +52,10 @@ GLOBAL_LIST_INIT(adminhelp_ignored_words, list("unknown","the","a","an","of","mo
|
||||
if(found)
|
||||
if(!(found in mobs_found))
|
||||
mobs_found += found
|
||||
msg += "<b>[original_word] <A HREF='?_src_=holder;adminmoreinfo=[REF(found)]'>(?)</A>"
|
||||
msg += "<b>[original_word] <A href='byond://?_src_=holder;adminmoreinfo=[REF(found)]'>(?)</A>"
|
||||
if(!ai_found && isAI(found))
|
||||
ai_found = 1
|
||||
msg += " <A HREF='?_src_=holder;adminchecklaws=[REF(mob)]'>(CL)</A>"
|
||||
msg += " <A href='byond://?_src_=holder;adminchecklaws=[REF(mob)]'>(CL)</A>"
|
||||
msg += "</b> "
|
||||
continue
|
||||
msg += "[original_word] "
|
||||
@@ -111,7 +111,7 @@ GLOBAL_LIST_INIT(adminhelp_ignored_words, list("unknown","the","a","an","of","mo
|
||||
//Options bar: mob, details ( admin = 2, undibbsed admin = 3, mentor = 4, character name (0 = just ckey, 1 = ckey and character name), link? (0 no don't make it a link, 1 do so),
|
||||
// highlight special roles (0 = everyone has same looking name, 1 = antags / special roles get a golden name)
|
||||
|
||||
msg = SPAN_NOTICE("<b>[create_text_tag("HELP")][get_options_bar(mob, 2, 1, 1, 1, ticket)] (<a href='?_src_=holder;take_ticket=[REF(ticket)]'>[(ticket.status == TICKET_OPEN) ? "TAKE" : "JOIN"]</a>) (<a href='?src=[REF(usr)];close_ticket=[REF(ticket)]'>CLOSE</a>):</b> [msg]")
|
||||
msg = SPAN_NOTICE("<b>[create_text_tag("HELP")][get_options_bar(mob, 2, 1, 1, 1, ticket)] (<a href='byond://?_src_=holder;take_ticket=[REF(ticket)]'>[(ticket.status == TICKET_OPEN) ? "TAKE" : "JOIN"]</a>) (<a href='byond://?src=[REF(usr)];close_ticket=[REF(ticket)]'>CLOSE</a>):</b> [msg]")
|
||||
|
||||
var/admin_number_present = 0
|
||||
var/admin_number_afk = 0
|
||||
|
||||
@@ -128,7 +128,7 @@
|
||||
|
||||
var/sender_message = "<span class='pm'><span class='out'>" + create_text_tag("PM <-", src) + " to <span class='name'>[get_options_bar(C, holder ? 1 : 0, holder ? 1 : 0, 1)]</span>"
|
||||
if(holder)
|
||||
sender_message += " (<a href='?_src_=holder;take_ticket=[REF(ticket)]'>[(ticket.status == TICKET_OPEN) ? "TAKE" : "JOIN"]</a>) (<a href='?src=[REF(usr)];close_ticket=[REF(ticket)]'>CLOSE</a>)"
|
||||
sender_message += " (<a href='byond://?_src_=holder;take_ticket=[REF(ticket)]'>[(ticket.status == TICKET_OPEN) ? "TAKE" : "JOIN"]</a>) (<a href='byond://?src=[REF(usr)];close_ticket=[REF(ticket)]'>CLOSE</a>)"
|
||||
sender_message += ": <span class='message linkify'>[generate_ahelp_key_words(mob, msg)]</span>"
|
||||
else
|
||||
sender_message += ": <span class='message linkify'>[msg]</span>"
|
||||
@@ -137,7 +137,7 @@
|
||||
|
||||
var/receiver_message = "<span class='pm'><span class='in'>" + create_text_tag("PM ->", C) + " <b>\[[receive_pm_type] PM\]</b> <span class='name'>[get_options_bar(src, C.holder ? 1 : 0, C.holder ? 1 : 0, 1)]</span>"
|
||||
if(C.holder)
|
||||
receiver_message += " (<a href='?_src_=holder;take_ticket=[REF(ticket)]'>[(ticket.status == TICKET_OPEN) ? "TAKE" : "JOIN"]</a>) (<a href='?src=[REF(usr)];close_ticket=[REF(ticket)]'>CLOSE</a>)"
|
||||
receiver_message += " (<a href='byond://?_src_=holder;take_ticket=[REF(ticket)]'>[(ticket.status == TICKET_OPEN) ? "TAKE" : "JOIN"]</a>) (<a href='byond://?src=[REF(usr)];close_ticket=[REF(ticket)]'>CLOSE</a>)"
|
||||
receiver_message += ": <span class='message linkify'>[generate_ahelp_key_words(C.mob, msg)]</span>"
|
||||
else
|
||||
receiver_message += ": <span class='message linkify'>[msg]</span>"
|
||||
@@ -160,7 +160,7 @@
|
||||
if(X == C || X == src)
|
||||
continue
|
||||
if(X.key != key && X.key != C.key && (X.holder.rights & (R_ADMIN|R_MOD)))
|
||||
to_chat(X, "<span class='pm'><span class='other'>" + create_text_tag("PM <->", X) + " <span class='name'>[key_name(src, X, 0, ticket)]</span> to <span class='name'>[key_name(C, X, 0, ticket)]</span> (<a href='?_src_=holder;take_ticket=[REF(ticket)]'>[(ticket.status == TICKET_OPEN) ? "TAKE" : "JOIN"]</a>) (<a href='?src=[REF(usr)];close_ticket=[REF(ticket)]'>CLOSE</a>): <span class='message linkify'>[msg]</span></span></span>")
|
||||
to_chat(X, "<span class='pm'><span class='other'>" + create_text_tag("PM <->", X) + " <span class='name'>[key_name(src, X, 0, ticket)]</span> to <span class='name'>[key_name(C, X, 0, ticket)]</span> (<a href='byond://?_src_=holder;take_ticket=[REF(ticket)]'>[(ticket.status == TICKET_OPEN) ? "TAKE" : "JOIN"]</a>) (<a href='byond://?src=[REF(usr)];close_ticket=[REF(ticket)]'>CLOSE</a>): <span class='message linkify'>[msg]</span></span></span>")
|
||||
|
||||
/client/proc/cmd_admin_discord_pm(sender)
|
||||
if(prefs.muted & MUTE_ADMINHELP)
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
for(var/s in GLOB.staff)
|
||||
var/client/C = s
|
||||
if ((R_ADMIN|R_MOD) & C.holder.rights)
|
||||
to_chat(C, "<span class='mod_channel'>" + create_text_tag("MOD", C) + " <span class='name'>[sender_name]</span>(<A HREF='?src=[REF(C.holder)];adminplayerobservejump=[REF(mob)]'>JMP</A>): <span class='message linkify'>[msg]</span></span>")
|
||||
to_chat(C, "<span class='mod_channel'>" + create_text_tag("MOD", C) + " <span class='name'>[sender_name]</span>(<A href='byond://?src=[REF(C.holder)];adminplayerobservejump=[REF(mob)]'>JMP</A>): <span class='message linkify'>[msg]</span></span>")
|
||||
|
||||
feedback_add_details("admin_verb","MS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
for(var/mob/M in GLOB.mob_list)
|
||||
if (check_rights(R_ADMIN|R_MOD|R_CCIAA, 0, M) && M.client.aooc_mute_holder_check() == FALSE)
|
||||
to_chat(M, "<span class='aooc'>" + create_text_tag("A-OOC", M.client) + " <EM>[get_options_bar(src, 0, 1, 1)](<A HREF='?_src_=holder;adminplayerobservejump=[REF(src.mob)]'>JMP</A>):</EM> <span class='message linkify'>[msg]</span></span>")
|
||||
to_chat(M, "<span class='aooc'>" + create_text_tag("A-OOC", M.client) + " <EM>[get_options_bar(src, 0, 1, 1)](<A href='byond://?_src_=holder;adminplayerobservejump=[REF(src.mob)]'>JMP</A>):</EM> <span class='message linkify'>[msg]</span></span>")
|
||||
else if (M.mind && M.mind.special_role && M.client && player_is_antag(M.mind))
|
||||
to_chat(M, "<span class='aooc'>" + create_text_tag("A-OOC", M.client) + " <EM>[display_name]:</EM> <span class='message linkify'>[msg]</span></span>")
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
return
|
||||
|
||||
var/image/cross = image('icons/obj/library.dmi',"bible")
|
||||
msg = SPAN_NOTICE("[icon2html(cross, src)] <b><font color=purple>PRAY: </font>[key_name(src, 1)] (<A HREF='?_src_=holder;adminmoreinfo=[REF(src)]'>?</A>) (<A HREF='?_src_=holder;adminplayeropts=[REF(src)]'>PP</A>) (<A HREF='?_src_=vars;Vars=[REF(src)]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=[REF(src)]'>SM</A>) ([admin_jump_link(src, src)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;adminspawncookie=[REF(src)]'>SC</a>):</b> [msg]")
|
||||
msg = SPAN_NOTICE("[icon2html(cross, src)] <b><font color=purple>PRAY: </font>[key_name(src, 1)] (<A href='byond://?_src_=holder;adminmoreinfo=[REF(src)]'>?</A>) (<A href='byond://?_src_=holder;adminplayeropts=[REF(src)]'>PP</A>) (<A href='byond://?_src_=vars;Vars=[REF(src)]'>VV</A>) (<A href='byond://?_src_=holder;subtlemessage=[REF(src)]'>SM</A>) ([admin_jump_link(src, src)]) (<A href='byond://?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A href='byond://?_src_=holder;adminspawncookie=[REF(src)]'>SC</a>):</b> [msg]")
|
||||
|
||||
for(var/s in GLOB.staff)
|
||||
var/client/C = s
|
||||
@@ -26,8 +26,8 @@
|
||||
log_admin("PRAYER: [key_name(src)]: [msg]")
|
||||
|
||||
/proc/Centcomm_announce(var/msg, var/mob/Sender, var/iamessage)
|
||||
var/msg_cciaa = SPAN_NOTICE("<b><font color=orange>[uppertext(SSatlas.current_map.boss_short)][iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;CentcommReply=[REF(Sender)]'>RPLY</A>):</b> [msg]")
|
||||
var/msg_admin = SPAN_NOTICE("<b><font color=orange>[uppertext(SSatlas.current_map.boss_short)][iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=[REF(Sender)]'>PP</A>) (<A HREF='?_src_=vars;Vars=[REF(Sender)]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=[REF(Sender)]'>SM</A>) ([admin_jump_link(Sender)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=[REF(Sender)]'>BSA</A>) (<A HREF='?_src_=holder;CentcommReply=[REF(Sender)]'>RPLY</A>):</b> [msg]")
|
||||
var/msg_cciaa = SPAN_NOTICE("<b><font color=orange>[uppertext(SSatlas.current_map.boss_short)][iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] (<A href='byond://?_src_=holder;CentcommReply=[REF(Sender)]'>RPLY</A>):</b> [msg]")
|
||||
var/msg_admin = SPAN_NOTICE("<b><font color=orange>[uppertext(SSatlas.current_map.boss_short)][iamessage ? " IA" : ""]:</font>[key_name(Sender, 1)] (<A href='byond://?_src_=holder;adminplayeropts=[REF(Sender)]'>PP</A>) (<A href='byond://?_src_=vars;Vars=[REF(Sender)]'>VV</A>) (<A href='byond://?_src_=holder;subtlemessage=[REF(Sender)]'>SM</A>) ([admin_jump_link(Sender)]) (<A href='byond://?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A href='byond://?_src_=holder;BlueSpaceArtillery=[REF(Sender)]'>BSA</A>) (<A href='byond://?_src_=holder;CentcommReply=[REF(Sender)]'>RPLY</A>):</b> [msg]")
|
||||
|
||||
var/cciaa_present = 0
|
||||
var/cciaa_afk = 0
|
||||
@@ -56,7 +56,7 @@
|
||||
SSdiscord.post_webhook_event(WEBHOOK_CCIAA_EMERGENCY_MESSAGE, list("message"=msg, "sender"="[Sender]", "cciaa_present"=cciaa_present, "cciaa_afk"=cciaa_afk))
|
||||
|
||||
/proc/Syndicate_announce(var/msg, var/mob/Sender)
|
||||
msg = SPAN_NOTICE("<b><font color=crimson>ILLEGAL:</font>[key_name(Sender, 1)] (<A HREF='?_src_=holder;adminplayeropts=[REF(Sender)]'>PP</A>) (<A HREF='?_src_=vars;Vars=[REF(Sender)]'>VV</A>) (<A HREF='?_src_=holder;subtlemessage=[REF(Sender)]'>SM</A>) ([admin_jump_link(Sender)]) (<A HREF='?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A HREF='?_src_=holder;BlueSpaceArtillery=[REF(Sender)]'>BSA</A>) (<A HREF='?_src_=holder;SyndicateReply=[REF(Sender)]'>RPLY</A>):</b> [msg]")
|
||||
msg = SPAN_NOTICE("<b><font color=crimson>ILLEGAL:</font>[key_name(Sender, 1)] (<A href='byond://?_src_=holder;adminplayeropts=[REF(Sender)]'>PP</A>) (<A href='byond://?_src_=vars;Vars=[REF(Sender)]'>VV</A>) (<A href='byond://?_src_=holder;subtlemessage=[REF(Sender)]'>SM</A>) ([admin_jump_link(Sender)]) (<A href='byond://?_src_=holder;secretsadmin=check_antagonist'>CA</A>) (<A href='byond://?_src_=holder;BlueSpaceArtillery=[REF(Sender)]'>BSA</A>) (<A href='byond://?_src_=holder;SyndicateReply=[REF(Sender)]'>RPLY</A>):</b> [msg]")
|
||||
for(var/s in GLOB.staff)
|
||||
var/client/C = s
|
||||
if(R_ADMIN & C.holder.rights)
|
||||
|
||||
@@ -266,7 +266,7 @@
|
||||
|
||||
var/list/data = list("unread" = "", "expired" = "")
|
||||
if (count)
|
||||
data["unread"] = "You have <b>[count] unread warning\s!</b> Click <a href='?JSlink=warnings;notification=:src_ref'>here</a> to review and acknowledge them!"
|
||||
data["unread"] = "You have <b>[count] unread warning\s!</b> Click <a href='byond://?JSlink=warnings;notification=:src_ref'>here</a> to review and acknowledge them!"
|
||||
if (count_expire)
|
||||
data["expired"] = "[count_expire] of your warnings have expired."
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
/atom/vv_get_header()
|
||||
. = ..()
|
||||
. += {"
|
||||
<a href='?_src_=vars;datumedit=[REF(src)];varnameedit=name'><b>[src]</b></a>
|
||||
<a href='byond://?_src_=vars;datumedit=[REF(src)];varnameedit=name'><b>[src]</b></a>
|
||||
<br><font size='1'>
|
||||
<a href='?_src_=vars;rotatedatum=[REF(src)];rotatedir=left'><<</a>
|
||||
<a href='?_src_=vars;datumedit=[REF(src)];varnameedit=dir'>[dir2text(dir)]</a>
|
||||
<a href='?_src_=vars;rotatedatum=[REF(src)];rotatedir=right'>>></a>
|
||||
<a href='byond://?_src_=vars;rotatedatum=[REF(src)];rotatedir=left'><<</a>
|
||||
<a href='byond://?_src_=vars;datumedit=[REF(src)];varnameedit=dir'>[dir2text(dir)]</a>
|
||||
<a href='byond://?_src_=vars;rotatedatum=[REF(src)];rotatedir=right'>>></a>
|
||||
</font>
|
||||
"}
|
||||
|
||||
@@ -13,14 +13,14 @@
|
||||
. = ..()
|
||||
. += {"
|
||||
<br><font size='1'>
|
||||
<br><a href='?_src_=vars;datumedit=[REF(src)];varnameedit=ckey'>[ckey ? ckey : "No ckey"]</a> / <a href='?_src_=vars;datumedit=[REF(src)];varnameedit=real_name'>[real_name ? real_name : "No real name"]</a>
|
||||
<br><a href='byond://?_src_=vars;datumedit=[REF(src)];varnameedit=ckey'>[ckey ? ckey : "No ckey"]</a> / <a href='byond://?_src_=vars;datumedit=[REF(src)];varnameedit=real_name'>[real_name ? real_name : "No real name"]</a>
|
||||
<br>
|
||||
BRUTE:<a href='?_src_=vars;mobToDamage=[REF(src)];adjustDamage=brute'>[getBruteLoss()]</a>
|
||||
FIRE:<a href='?_src_=vars;mobToDamage=[REF(src)];adjustDamage=fire'>[getFireLoss()]</a>
|
||||
TOXIN:<a href='?_src_=vars;mobToDamage=[REF(src)];adjustDamage=toxin'>[getToxLoss()]</a>
|
||||
OXY:<a href='?_src_=vars;mobToDamage=[REF(src)];adjustDamage=oxygen'>[getOxyLoss()]</a>
|
||||
CLONE:<a href='?_src_=vars;mobToDamage=[REF(src)];adjustDamage=clone'>[getCloneLoss()]</a>
|
||||
BRAIN:<a href='?_src_=vars;mobToDamage=[REF(src)];adjustDamage=brain'>[getBrainLoss()]</a>
|
||||
BRUTE:<a href='byond://?_src_=vars;mobToDamage=[REF(src)];adjustDamage=brute'>[getBruteLoss()]</a>
|
||||
FIRE:<a href='byond://?_src_=vars;mobToDamage=[REF(src)];adjustDamage=fire'>[getFireLoss()]</a>
|
||||
TOXIN:<a href='byond://?_src_=vars;mobToDamage=[REF(src)];adjustDamage=toxin'>[getToxLoss()]</a>
|
||||
OXY:<a href='byond://?_src_=vars;mobToDamage=[REF(src)];adjustDamage=oxygen'>[getOxyLoss()]</a>
|
||||
CLONE:<a href='byond://?_src_=vars;mobToDamage=[REF(src)];adjustDamage=clone'>[getCloneLoss()]</a>
|
||||
BRAIN:<a href='byond://?_src_=vars;mobToDamage=[REF(src)];adjustDamage=brain'>[getBrainLoss()]</a>
|
||||
</font>
|
||||
"}
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
</td>
|
||||
<td width='50%'>
|
||||
<div align='center'>
|
||||
<a id='refresh' data-initial-href='?_src_=vars;datumrefresh=[REF(thing)];search=' href='?_src_=vars;datumrefresh=[REF(thing)];search=[search]'>Refresh</a>
|
||||
<a id='refresh' data-initial-href='byond://?_src_=vars;datumrefresh=[REF(thing)];search=' href='byond://?_src_=vars;datumrefresh=[REF(thing)];search=[search]'>Refresh</a>
|
||||
<form>
|
||||
<select name='file'
|
||||
size='1'
|
||||
@@ -148,12 +148,12 @@
|
||||
else if(istype(value, /datum))
|
||||
var/datum/DA = value
|
||||
if("[DA]" == "[DA.type]" || !"[DA]")
|
||||
vtext = "<a href='?_src_=vars;Vars=[REF(DA)]'>[REF(DA)]</a> - [DA.type]"
|
||||
vtext = "<a href='byond://?_src_=vars;Vars=[REF(DA)]'>[REF(DA)]</a> - [DA.type]"
|
||||
else
|
||||
vtext = "<a href='?_src_=vars;Vars=[REF(DA)]'>[REF(DA)]</a> - [DA] ([DA.type])"
|
||||
vtext = "<a href='byond://?_src_=vars;Vars=[REF(DA)]'>[REF(DA)]</a> - [DA] ([DA.type])"
|
||||
else if(istype(value, /client))
|
||||
var/client/C = value
|
||||
vtext = "<a href='?_src_=vars;Vars=[REF(C)]'>[REF(C)]</a> - [C] ([C.type])"
|
||||
vtext = "<a href='byond://?_src_=vars;Vars=[REF(C)]'>[REF(C)]</a> - [C] ([C.type])"
|
||||
else if(islist(value))
|
||||
var/list/L = value
|
||||
vtext = "/list ([length(L)])"
|
||||
@@ -185,7 +185,7 @@
|
||||
extra += "</ul>"
|
||||
|
||||
else if(length(L) >= 100)
|
||||
vtext = "([length(L)]): <ul><li><a href='?_src_=vars;datumview=[REF(L)];varnameview=[varname];original_datum=[REF(D)]'>List too large to display, click to view.</a></ul>"
|
||||
vtext = "([length(L)]): <ul><li><a href='byond://?_src_=vars;datumview=[REF(L)];varnameview=[varname];original_datum=[REF(D)]'>List too large to display, click to view.</a></ul>"
|
||||
|
||||
else
|
||||
vtext = "[value]"
|
||||
@@ -198,9 +198,9 @@
|
||||
if(D)
|
||||
//These are the VV_HK_BASIC_* defines
|
||||
ecm = {"
|
||||
(<a href='?_src_=vars;datumedit=[REF(D)];varnameedit=[varname]'>E</a>)
|
||||
(<a href='?_src_=vars;datumchange=[REF(D)];varnamechange=[varname]'>C</a>)
|
||||
(<a href='?_src_=vars;datummass=[REF(D)];varnamemass=[varname]'>M</a>)
|
||||
(<a href='byond://?_src_=vars;datumedit=[REF(D)];varnameedit=[varname]'>E</a>)
|
||||
(<a href='byond://?_src_=vars;datumchange=[REF(D)];varnamechange=[varname]'>C</a>)
|
||||
(<a href='byond://?_src_=vars;datummass=[REF(D)];varnamemass=[varname]'>M</a>)
|
||||
"}
|
||||
|
||||
var/valuestr = make_view_variables_value(D, value, varname)
|
||||
|
||||
Reference in New Issue
Block a user