516 compatibility for simple HTML (#37508)

* 516 compat: HTML wrappers

* More HTML

* Legacy gult

* Forgot these

* forgot that thanks travis
This commit is contained in:
ShiftyRail
2025-05-05 21:51:24 +01:00
committed by GitHub
parent 6d94fe8d31
commit cdb769a7c7
127 changed files with 208 additions and 188 deletions

View File

@@ -0,0 +1,8 @@
// Wrappers needed for webview 2.0 / 516 compat.
#define HTML_SKELETON_INTERNAL(head, body, style) \
"<!DOCTYPE html><html><head><meta http-equiv='Content-Type' content='text/html; charset=UTF-8'><meta http-equiv='X-UA-Compatible' content='IE=edge'>[head]</head><body style=[style]>[body]</body></html>"
#define HTML_SKELETON_TITLE_STYLE(title, body, style) HTML_SKELETON_INTERNAL("<title>[title]</title>", body, style)
#define HTML_SKELETON_TITLE(title, body) HTML_SKELETON_INTERNAL("<title>[title]</title>", body, "")
#define HTML_SKELETON(body) HTML_SKELETON_INTERNAL("", body, "")

View File

@@ -99,7 +99,7 @@
</body>
"}
user << browse(dat, "window=atmo_conditional_valve")
user << browse(HTML_SKELETON(dat), "window=atmo_conditional_valve")
onclose(user, "atmo_conditional_valve")
return

View File

@@ -420,7 +420,7 @@ a { color: white; }
dat += {"<dt><b>[s.name]</b> = <i>[s.value]</i> <A href='?src=\ref[src];changevar=[id]'>\[Change\]</A></dt>
<dd>[s.desc]</i></dd>"}
dat += "</dl></body></html>"
user << browse(dat,"window=settings")
user << browse(HTML_SKELETON(dat),"window=settings")
/ZAS_Settings/Topic(href,href_list)
if("changevar" in href_list)

View File

@@ -228,7 +228,7 @@ List of hard deletions:"}
if(L.len == 1)
to_chat(usr, "No garbage collector deletions this round")
return
usr << browse(jointext(L,""),"window=harddellogs")
usr << browse(HTML_SKELETON(jointext(L, "")),"window=harddellogs")
/*
* NEVER USE THIS FOR /atom OTHER THAN /atom/movable

View File

@@ -346,7 +346,7 @@ function loadPage(list) {
html += "</html>"
usr << browse(html, "window=variables\ref[D];size=475x650")
usr << browse(HTML_SKELETON(html), "window=variables\ref[D];size=475x650")
/client/proc/debug_variable(name, value, list/searched, var/datum/DA = null)
var/html = ""
@@ -453,7 +453,7 @@ function loadPage(list) {
html += "<hr>"
html += debug_variable(null, L)
usr << browse(html, "window=listedit\ref[L];size=475x650")
usr << browse(HTML_SKELETON(html), "window=listedit\ref[L];size=475x650")
/client/proc/view_var_Topic(href, href_list, hsrc)
//This should all be moved over to datum/admins/Topic() or something ~Carn

View File

@@ -146,7 +146,7 @@ var/stacking_limit = 90
out += "<B>Remaining threat/threat_level:</B> [threat]/[threat_level]<br/>"
out += "<B>Remaining midround threat/threat_level:</B> [midround_threat]/[midround_threat_level]"
usr << browse(out, "window=threatlog;size=700x500")
usr << browse(HTML_SKELETON(out), "window=threatlog;size=700x500")
/datum/gamemode/dynamic/GetScoreboard()

View File

@@ -75,8 +75,11 @@ var/list/arcane_tomes = list()
/obj/item/weapon/tome/proc/tome_text()
var/page_data = null
var/dat = {"<title>arcane tome</title><body style="color:#FFFFFF" bgcolor="#110000">
var/title = "arcane tome"
var/body_style = {"
"color:#FFFFFF" bgcolor="#110000"
"}
var/dat = {"
<style>
label {display: inline-block; width: 50px;text-align: right;float: left;margin: 0 0 0 10px;}
ul {list-style-type: none;}
@@ -122,9 +125,9 @@ var/list/arcane_tomes = list()
else
dat += page_special()
dat += {"</div></div></div></body>"}
dat += {"</div></div></div>"}
return dat
return HTML_SKELETON_TITLE_STYLE(title, dat, body_style)
/obj/item/weapon/tome/proc/page_special()
var/dat = null

View File

@@ -294,7 +294,7 @@ var/runedec = 0 // Rune cap ?
[words[9]] is <a href='byond://?src=\ref[src];number=9;action=change'>[words[words[9]]]</A> <A href='byond://?src=\ref[src];number=9;action=clear'>Clear</A><BR>
[words[10]] is <a href='byond://?src=\ref[src];number=10;action=change'>[words[words[10]]]</A> <A href='byond://?src=\ref[src];number=10;action=clear'>Clear</A><BR>
"}
usr << browse("[notedat]", "window=notes")
usr << browse(HTML_SKELETON(notedat), "window=notes")
// call(/obj/item/weapon/tome_legacy/proc/edit_notes)()
else
usr << browse(null, "window=notes")

View File

@@ -143,7 +143,7 @@
<A href='?src=\ref[src];rune=soulstone'>Kal om neth</A> - Summons a soul stone<BR>
<A href='?src=\ref[src];rune=construct'>Da A'ig Osk</A> - Summons a construct shell for use with captured souls. It is too large to carry on your person.<BR>"}
//<A href='?src=\ref[src];rune=armor'>Sa tatha najin</A> - Allows you to summon armored robes and an unholy blade<BR> //Kept for reference
usr << browse(dat, "window=id_com;size=350x200")
usr << browse(HTML_SKELETON(dat), "window=id_com;size=350x200")
return

View File

@@ -333,7 +333,7 @@
</body></html>
"}
usr << browse(dat, "window=powers;size=900x480")
usr << browse(HTML_SKELETON(dat), "window=powers;size=900x480")

View File

@@ -13,5 +13,5 @@
output += {"Current Infomational Settings: <br>
BYOND version of server: [world.byond_version].[world.byond_build]<br>
Protect Authority Roles From Tratior: [config.protect_roles_from_antagonist]<br>"}
usr << browse(output,"window=revdata");
usr << browse(HTML_SKELETON(output),"window=revdata");
return

View File

@@ -224,7 +224,7 @@
//<a href='?src=\ref[src];obj_announce=1'>Announce objectives</a><br><br>"} TODO: make sure that works
usr << browse(out, "window=role_panel[src];size=700x500")
usr << browse(HTML_SKELETON(out), "window=role_panel[src];size=700x500")
/datum/mind/proc/role_purchase_log()
if(!ticker || !ticker.mode)
@@ -255,7 +255,7 @@
for(var/entry in W.potions_bought)
out += "[entry]<BR>"
usr << browse(out, "window=role_purchase_log[src];size=300x500")
usr << browse(HTML_SKELETON(out), "window=role_purchase_log[src];size=300x500")
/datum/mind/proc/get_faction_list()
var/list/all_factions = list()

View File

@@ -153,7 +153,7 @@ var/list/nuclear_bombs = list()
<A href='?src=\ref[src];type=4'>4</A>-<A href='?src=\ref[src];type=5'>5</A>-<A href='?src=\ref[src];type=6'>6</A><BR>\n
<A href='?src=\ref[src];type=7'>7</A>-<A href='?src=\ref[src];type=8'>8</A>-<A href='?src=\ref[src];type=9'>9</A><BR>\n
<A href='?src=\ref[src];type=R'>R</A>-<A href='?src=\ref[src];type=0'>0</A>-<A href='?src=\ref[src];type=E'>E</A><BR>\n</TT>"}
user << browse(dat, "window=nuclearbomb;size=300x400")
user << browse(HTML_SKELETON(dat), "window=nuclearbomb;size=300x400")
onclose(user, "nuclearbomb")
else if (src.deployable)
if(removal_stage < 5)

View File

@@ -105,7 +105,7 @@ var/global/list/banned_sandbox_types=list(
hsbpanel += "- <a href=\"?\ref[src];hsb=[T]\">[hrefs[T]]</a><br>"
if(hsboxspawn)
hsbpanel += "- <a href=\"?\ref[src];hsb=hsbobj\">Spawn Object</a><br><br>"
usr << browse(hsbpanel, "window=hsbpanel")
usr << browse(HTML_SKELETON(hsbpanel), "window=hsbpanel")
/datum/hSB/Topic(href, href_list)
if(!(src.owner == usr.ckey))

View File

@@ -210,7 +210,7 @@
dat += "</body>"
user << browse(dat, "window=spellbook;size=[book_window_size]")
user << browse(HTML_SKELETON(dat), "window=spellbook;size=[book_window_size]")
onclose(user, "spellbook")
/obj/item/weapon/spellbook/proc/build_description(var/mob/user, var/spell_path) //Building sounds more coderlike doesn't it

View File

@@ -283,7 +283,7 @@ log transactions
dat += "<span class='warning'>Unable to connect to accounts database, please retry and if the issue persists contact Nanotrasen IT support.</span>"
reconnect_database()
user << browse(dat,"window=atm;size=550x650")
user << browse(HTML_SKELETON(dat),"window=atm;size=550x650")
else
user << browse(null,"window=atm")

View File

@@ -106,7 +106,7 @@
Target gas temperature: <A href='?src=\ref[src];temp=-100'>-</A> <A href='?src=\ref[src];temp=-10'>-</A> <A href='?src=\ref[src];temp=-1'>-</A> [current_temperature] <A href='?src=\ref[src];temp=1'>+</A> <A href='?src=\ref[src];temp=10'>+</A> <A href='?src=\ref[src];temp=100'>+</A><BR>
"}
user << browse(dat, "window=freezer;size=400x500")
user << browse(HTML_SKELETON(dat), "window=freezer;size=400x500")
onclose(user, "freezer")
/obj/machinery/atmospherics/unary/cold_sink/freezer/Topic(href, href_list)
@@ -274,7 +274,7 @@
Target gas temperature: <A href='?src=\ref[src];temp=-100'>-</A> <A href='?src=\ref[src];temp=-10'>-</A> <A href='?src=\ref[src];temp=-1'>-</A> [current_temperature] <A href='?src=\ref[src];temp=1'>+</A> <A href='?src=\ref[src];temp=10'>+</A> <A href='?src=\ref[src];temp=100'>+</A><BR>
"}
user << browse(dat, "window=heater;size=400x500")
user << browse(HTML_SKELETON(dat), "window=heater;size=400x500")
onclose(user, "heater")
/obj/machinery/atmospherics/unary/heat_reservoir/heater/Topic(href, href_list)

View File

@@ -641,7 +641,7 @@
dat += "[(emagged) ? "<A href='?src=\ref[src];security=1'>Re-enable Security Features.</A><BR>" : ""]"
dat += "[(on) ? "<A href='?src=\ref[src];turnoff=1'>\[EMERGENCY STOP\]</A> <i>: cancels the current job.</i><BR>" : ""]"
dat += text("<BR><BR><A href='?src=\ref[];mach_close=\ref[src]'>Close</A>", user)
user << browse(dat, "window=\ref[src];size=400x500")
user << browse(HTML_SKELETON(dat), "window=\ref[src];size=400x500")
onclose(user, "\ref[src]")

View File

@@ -331,7 +331,7 @@
dat += "<HR><A href='?src=\ref[src];print=1'>Print</A><BR>"
dat += text("<BR><A href='?src=\ref[];mach_close=scanconsole'>Close</A>", user)
user << browse(dat, "window=scanconsole;size=430x600")
user << browse(HTML_SKELETON(dat), "window=scanconsole;size=430x600")
return

View File

@@ -1453,7 +1453,7 @@ FIRE ALARM
dat += "An emergency shelter is mounted within. <A href='?src=\ref[src];shelter=1'>Retrieve</A>"
else
dat += "The shelter has been removed. <A href='?src=\ref[src];shelter=1'>Insert</A>"
user << browse(dat, "window=firealarm")
user << browse(HTML_SKELETON(dat), "window=firealarm")
onclose(user, "firealarm")
/obj/machinery/firealarm/Topic(href, href_list)
@@ -1609,7 +1609,7 @@ var/global/list/firealarms = list() //shrug
var/second = time % 60
var/minute = (time - second) / 60
var/dat = text("<HTML><HEAD></HEAD><BODY><TT><B>Party Button</B> []\n<HR>\nTimer System: []<BR>\nTime Left: [][] <A href='?src=\ref[];tp=-30'>-</A> <A href='?src=\ref[];tp=-1'>-</A> <A href='?src=\ref[];tp=1'>+</A> <A href='?src=\ref[];tp=30'>+</A>\n</TT></BODY></HTML>", d1, d2, (minute ? text("[]:", minute) : null), second, src, src, src, src)
user << browse(dat, "window=partyalarm")
user << browse(HTML_SKELETON(dat), "window=partyalarm")
onclose(user, "partyalarm")
else
if (this_area.fire)
@@ -1623,7 +1623,7 @@ var/global/list/firealarms = list() //shrug
var/second = time % 60
var/minute = (time - second) / 60
var/dat = text("<HTML><HEAD></HEAD><BODY><TT><B>[]</B> []\n<HR>\nTimer System: []<BR>\nTime Left: [][] <A href='?src=\ref[];tp=-30'>-</A> <A href='?src=\ref[];tp=-1'>-</A> <A href='?src=\ref[];tp=1'>+</A> <A href='?src=\ref[];tp=30'>+</A>\n</TT></BODY></HTML>", stars("Party Button"), d1, d2, (minute ? text("[]:", minute) : null), second, src, src, src, src)
user << browse(dat, "window=partyalarm")
user << browse(HTML_SKELETON(dat), "window=partyalarm")
onclose(user, "partyalarm")
return

View File

@@ -131,7 +131,7 @@
if(..(user))
return
var/html=return_text()+"</body></html>"
user << browse(html,"window=gac")
user << browse(html,"window=gac") // Already well-formed HTML
user.set_machine(src)
onclose(user, "gac")

View File

@@ -614,7 +614,7 @@
dat += {"<FONT COLOR=red>Error: No growns inside.</FONT><BR>Please, put growns into reactor.<BR>
<A href='?src=\ref[src];action=menu'>Return to menu</A>"}
user << browse(dat, "window=biogenerator")
user << browse(HTML_SKELETON(dat), "window=biogenerator")
onclose(user, "biogenerator")
return

View File

@@ -77,7 +77,7 @@
<B>No Patient Detected</B><BR>
<BR>
<A HREF='?src=\ref[user];mach_close=op'>Close</A>"}
user << browse(dat, "window=op")
user << browse(HTML_SKELETON(dat), "window=op")
user.set_machine(src)
onclose(user, "op")

View File

@@ -67,7 +67,7 @@
user.set_machine(src)
user << browse(dat, "window=computer;size=400x500")
user << browse(HTML_SKELETON(dat), "window=computer;size=400x500")
onclose(user, "computer")
return

View File

@@ -56,14 +56,14 @@
playerone = user
var/dat = game.get_dat()
user << browse(dat, "window=arcade")
user << browse(HTML_SKELETON(dat), "window=arcade")
onclose(user, "arcade")
// Lets you be "player two" against a human
/obj/machinery/computer/arcade/attack_ai(mob/user)
playertwo = user
var/dat = game.get_p2_dat()
user << browse(dat, "window=arcade")
user << browse(HTML_SKELETON(dat), "window=arcade")
onclose(user, "arcade")
/obj/machinery/computer/arcade/emag_act(mob/user)

View File

@@ -305,7 +305,7 @@ var/list/message_monitors = list()
dat += "</body>"
message = defaultmsg
user << browse(dat, "window=message;size=700x700")
user << browse(HTML_SKELETON(dat), "window=message;size=700x700")
onclose(user, "message")
return

View File

@@ -170,7 +170,7 @@
dat += "<BR><A href='?src=\ref[src];add=1'>add another id_tag</A>"
dat += "<BR><BR><A href='?src=\ref[user];mach_close=computer'>Close</A></TT></BODY></HTML>"
user << browse(dat, "window=computer;size=400x500")
user << browse(HTML_SKELETON(dat), "window=computer;size=400x500")
add_fingerprint(usr)
onclose(user, "computer")
return

View File

@@ -54,7 +54,7 @@ var/prison_shuttle_timeleft = 0
[prison_shuttle_moving_to_station || prison_shuttle_moving_to_prison ? "\n*Shuttle already called*<BR>\n<BR>":prison_shuttle_at_station ? "\n<A href='?src=\ref[src];sendtodock=1'>Send to Dock</A><BR>\n<BR>":"\n<A href='?src=\ref[src];sendtostation=1'>Send to station</A><BR>\n<BR>"]
\n<A href='?src=\ref[user];mach_close=computer'>Close</A>"}
user << browse(dat, "window=computer;size=575x450")
user << browse(HTML_SKELETON(dat), "window=computer;size=575x450")
onclose(user, "computer")

View File

@@ -273,7 +273,7 @@ var/specops_shuttle_timeleft = 0
[specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom ? "\n*The Special Ops. shuttle is already leaving.*<BR>\n<BR>":specops_shuttle_at_station ? "\n<A href='?src=\ref[src];sendtodock=1'>Shuttle standing by...</A><BR>\n<BR>":"\n<A href='?src=\ref[src];sendtostation=1'>Depart to [station_name]</A><BR>\n<BR>"]
\n<A href='?src=\ref[user];mach_close=computer'>Close</A>"}
user << browse(dat, "window=computer;size=575x450")
user << browse(HTML_SKELETON(dat), "window=computer;size=575x450")
onclose(user, "computer")
return

View File

@@ -74,7 +74,7 @@
else
dat += "-- All Systems Nominal<BR>\n"
dat += "<BR>\n"
user << browse(dat, "window=alerts")
user << browse(HTML_SKELETON(dat), "window=alerts")
onclose(user, "alerts")

View File

@@ -209,7 +209,7 @@ var/syndicate_elite_shuttle_timeleft = 0
[syndicate_elite_shuttle_moving_to_station || syndicate_elite_shuttle_moving_to_mothership ? "\n*The Syndicate Elite shuttle is already leaving.*<BR>\n<BR>":syndicate_elite_shuttle_at_station ? "\n<A href='?src=\ref[src];sendtodock=1'>Shuttle Offline</A><BR>\n<BR>":"\n<A href='?src=\ref[src];sendtostation=1'>Depart to [station_name]</A><BR>\n<BR>"]
\n<A href='?src=\ref[user];mach_close=computer'>Close</A>"}
user << browse(dat, "window=computer;size=575x450")
user << browse(HTML_SKELETON(dat), "window=computer;size=575x450")
onclose(user, "computer")
return

View File

@@ -154,7 +154,7 @@
dat += {"<br/><br/><a href='?src=\ref[user];mach_close=computer'>Close</a>
</TT></BODY></HTML>"}
user << browse(dat, "window=computer;size=400x500")
user << browse(HTML_SKELETON(dat), "window=computer;size=400x500")
onclose(user, "computer")

View File

@@ -265,7 +265,7 @@
dat += {"<br>Speed: <a href='?src=\ref[src];operation=minusspeed'>-</a> [speed] <a href='?src=\ref[src];operation=plusspeed'>+</a><br>
Path: {<a href='?src=\ref[src];operation=setpath'>[path]</a>}<br>
Moving: <a href='?src=\ref[src];operation=togglemoving'>[moving ? "Enabled":"Disabled"]</a>"}
user << browse(dat, "window=magnet;size=400x500")
user << browse(HTML_SKELETON(dat), "window=magnet;size=400x500")
onclose(user, "magnet")
/obj/machinery/magnetic_controller/Topic(href, href_list)

View File

@@ -168,7 +168,7 @@
<br>DeMil Alerts: <A href='?src=\ref[src];action=senmode'>Turn [senset ? "Off" : "On"]</A></h4>
"}
user << browse(dat, "window=detector;size=575x300")
user << browse(HTML_SKELETON(dat), "window=detector;size=575x300")
onclose(user, "detector")
return

View File

@@ -559,7 +559,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
dat+="I'm sorry to break your immersion. This shit's bugged. Report this bug to Agouri, polyxenitopalidou@gmail.com"
M << browse(dat, "window=newscaster_main;size=400x600")
M << browse(HTML_SKELETON(dat), "window=newscaster_main;size=400x600")
onclose(M, "newscaster_main")
/obj/machinery/newscaster/Topic(href, href_list)

View File

@@ -244,14 +244,14 @@
dat+= text("<font color ='black'>A small dial with a \"ë\" symbol embroidded on it. It's pointing towards a gauge that reads []</font>.<BR> <font color='blue'><A href='?src=\ref[];toggleUV=1'> Turn towards []</A><BR>",(issuperUV ? "15nm" : "185nm"),src,(issuperUV ? "185nm" : "15nm") )
dat+= text("<font color ='black'>A thick old-style button, with 2 grimy LED lights next to it. The [] LED is on.</font><BR><font color ='blue'><A href='?src=\ref[];togglesafeties=1'>Press button</a></font>",(safetieson? "<font color='green'><B>GREEN</B></font>" : "<font color='red'><B>RED</B></font>"),src)
dat+= text("<HR><BR><A href='?src=\ref[];mach_close=suit_storage_unit'>Close panel</A>", user)
//user << browse(dat, "window=ssu_m_panel;size=400x500")
//user << browse(HTML_SKELETON(dat), "window=ssu_m_panel;size=400x500")
//onclose(user, "ssu_m_panel")
else if(isUV) //The thing is running its cauterisation cycle. You have to wait.
dat += {"<HEAD><TITLE>Suit storage unit</TITLE></HEAD>
<font color ='red'><B>Unit is cauterising contents with selected UV ray intensity. Please wait.</font></B><BR>"}
//dat+= "<font colr='black'><B>Cycle end in: [cycletimeleft()] seconds. </font></B>"
//user << browse(dat, "window=ssu_cycling_panel;size=400x500")
//user << browse(HTML_SKELETON(dat), "window=ssu_cycling_panel;size=400x500")
//onclose(user, "ssu_cycling_panel")
else
@@ -287,17 +287,17 @@
dat+= text("Unit status: []",(islocked? "<font color ='red'><B>**LOCKED**</B></font><BR>" : "<font color ='green'><B>**UNLOCKED**</B></font><BR>") )
dat+= text("<A href='?src=\ref[];start_UV=1'>Start Disinfection cycle</A><BR>",src)
dat += text("<BR><BR><A href='?src=\ref[];mach_close=suit_storage_unit'>Close control panel</A>", user)
//user << browse(dat, "window=Suit Storage Unit;size=400x500")
//user << browse(HTML_SKELETON(dat), "window=Suit Storage Unit;size=400x500")
//onclose(user, "Suit Storage Unit")
else //Ohhhh shit it's dirty or broken! Let's inform the guy.
dat += {"<HEAD><TITLE>Suit storage unit</TITLE></HEAD>
<font color='maroon'><B>Unit chamber is too contaminated to continue usage. Please call for a qualified individual to perform maintenance.</font></B><BR><BR>"}
dat+= text("<HR><A href='?src=\ref[];mach_close=suit_storage_unit'>Close control panel</A>", user)
//user << browse(dat, "window=suit_storage_unit;size=400x500")
//user << browse(HTML_SKELETON(dat), "window=suit_storage_unit;size=400x500")
//onclose(user, "suit_storage_unit")
user << browse(dat, "window=suit_storage_unit;size=400x500")
user << browse(HTML_SKELETON(dat), "window=suit_storage_unit;size=400x500")
onclose(user, "suit_storage_unit")
return

View File

@@ -45,7 +45,7 @@
dat += "<br><br><A href='?src=\ref[src];betraitor=1'>\"[pick("I want to switch teams.", "I want to work for you.", "Let me join you.", "I can be of use to you.", "You want me working for you, and here's why...", "Give me an objective.", "How's the 401k over at the Syndicate?")]\"</A><BR>"
dat += temptext
dat += "</body>"
user << browse(dat, "window=syndbeacon")
user << browse(HTML_SKELETON(dat), "window=syndbeacon")
onclose(user, "syndbeacon")
/obj/machinery/syndicate_beacon/Topic(href, href_list)

View File

@@ -142,7 +142,7 @@ var/list/static/list_of_animal_types = typesof(/mob/living/simple_animal)
user << browse(dat, "window=comm_monitor;size=575x400")
user << browse(HTML_SKELETON(dat), "window=comm_monitor;size=575x400")
onclose(user, "server_control")
temp = ""

View File

@@ -85,7 +85,7 @@
user << browse(dat, "window=comm_monitor;size=575x400")
user << browse(HTML_SKELETON(dat), "window=comm_monitor;size=575x400")
onclose(user, "server_control")
temp = ""

View File

@@ -135,7 +135,7 @@
return
user << browse(dat, "window=traffic_control;size=575x400")
user << browse(HTML_SKELETON(dat), "window=traffic_control;size=575x400")
onclose(user, "server_control")
temp = ""
@@ -188,7 +188,7 @@
return
if(href_list["print"])
usr << browse(print_logs(), "window=traffic_logs")
usr << browse(HTML_SKELETON(print_logs()), "window=traffic_logs")
return
if(!auth && !issilicon(usr) && !emagged)

View File

@@ -665,7 +665,7 @@
</body>
</html>"}
user << browse(dat, "window=turret")
user << browse(HTML_SKELETON(dat), "window=turret")
onclose(user, "turret")
return

View File

@@ -815,7 +815,7 @@ var/global/num_vending_terminals = 1
dat += {"<b>You have selected [currently_vending.product_name].<br>Please ensure your ID is in your ID holder or hand.</b><br>
<a href='byond://?src=\ref[src];buy=1'>Pay</a> |
<a href='byond://?src=\ref[src];cancel_buying=1'>Cancel</a>"}
user << browse(dat, "window=vending")
user << browse(HTML_SKELETON(dat), "window=vending")
onclose(user, "")
return
@@ -908,7 +908,7 @@ var/global/num_vending_terminals = 1
if(!account_first_linked)
dat += "<br><br><i>Note: Remember to slide your ID on this machine to link your account. Once this is done, sliding your ID will enable editing and loading.</i>"
user << browse(dat, "window=vending;size=400x[vertical]")
user << browse(HTML_SKELETON(dat), "window=vending;size=400x[vertical]")
onclose(user, "vending")
// returns the wire panel text

View File

@@ -197,7 +197,7 @@ these cannot rename rooms that are in by default BUT can rename rooms that are c
text += "<p><a href='?src=\ref[src];action=delete_area'>Erase this drawing</a></p>"
text += "</BODY></HTML>"
usr << browse(text, "window=blueprints")
usr << browse(text, "window=blueprints") // NB: no need for HTML_SKELETON as it already HTML'd
onclose(usr, "blueprints")
/obj/item/blueprints/proc/get_area_type(var/area/A)

View File

@@ -213,7 +213,7 @@ var/global/msg_id = 0
dat += "</body></html>"
dat = jointext(dat,"") //Optimize BYOND's shittiness by making "dat" actually a list of strings and join it all together afterwards! Yes, I'm serious, this is actually a big deal
user << browse(dat, "window=pda;size=400x444;border=1;can_resize=1;can_minimize=0")
user << browse(HTML_SKELETON(dat), "window=pda;size=400x444;border=1;can_resize=1;can_minimize=0")
onclose(user, "pda", src)
/obj/item/device/pda/Topic(href, href_list)

View File

@@ -559,7 +559,7 @@
usr << browse_rsc(img, "tmp_photo_[note].png")
dat += "<img src='tmp_photo_[note].png' width = '192' style='-ms-interpolation-mode:nearest-neighbor'><BR>"
dat += "</body></html>"
usr << browse(dat, "window=log;size=400x444;border=1;can_resize=1;can_close=1;can_minimize=0")
usr << browse(HTML_SKELETON(dat), "window=log;size=400x444;border=1;can_resize=1;can_close=1;can_minimize=0")
/mob/living/silicon/ai/proc/cmd_show_message_log()
if(usr.isDead())
@@ -578,7 +578,7 @@
usr << browse_rsc(img, "tmp_photo_[note].png")
dat += "<img src='tmp_photo_[note].png' width = '192' style='-ms-interpolation-mode:nearest-neighbor'><BR>"
dat += "</body></html>"
usr << browse(dat, "window=log;size=400x444;border=1;can_resize=1;can_close=1;can_minimize=0")
usr << browse(HTML_SKELETON(dat), "window=log;size=400x444;border=1;can_resize=1;can_close=1;can_minimize=0")
else
to_chat(usr, "You do not have a PDA. You should make an issue report about this.")

View File

@@ -77,7 +77,7 @@
dat += {"<a href='byond://?src=\ref[src];choice=Wireless'>[A.control_disabled ? "Enable" : "Disable"] Wireless Activity</a>"}
dat += "<br>"
dat += {"<a href='byond://?src=\ref[src];choice=Close'> Close</a>"}
user << browse(dat, "window=aicard")
user << browse(HTML_SKELETON(dat), "window=aicard")
onclose(user, "aicard")
return

View File

@@ -165,7 +165,7 @@
to_chat(user, "<span class='warning'>Insuffient data retrieved. Please ensure that subject has proper surgical incisions.</span>")
else
to_chat(user, "<span class='info'>Autopsy analysis of [M] concluded.</span>")
user << browse(dat, "window=borerscan;size=430x600")
user << browse(HTML_SKELETON(dat), "window=borerscan;size=430x600")
last_reading = dat
last_scantime = world.time
@@ -189,7 +189,7 @@
to_chat(user, "<span class='info'>Showing medical statistics of [M]...</span>")
var/dat
dat = format_occupant_data(get_occupant_data(M),1) //basic scan in unupgraded body analyzer
user << browse(dat, "window=borerscan;size=430x600")
user << browse(HTML_SKELETON(dat), "window=borerscan;size=430x600")
last_reading = dat
last_scantime = world.time
return

View File

@@ -76,7 +76,7 @@ var/list/megaphone_channels = list("DISABLE" = 0) + stationchannels
dat += "<a href='?src=\ref[src];setfreq=[megaphone_channels[index]]'>[index]</a>"
dat += "<BR>"
dat+={"</TT></body></html>"}
user << browse(dat, "window=megaphone")
user << browse(HTML_SKELETON(dat), "window=megaphone")
onclose(user, "megaphone")
/obj/item/device/megaphone/madscientist/Topic(href,href_list)

View File

@@ -59,7 +59,7 @@
dat += {"No personality is installed.<br>
<A href='byond://?src=\ref[src];request=1'>\[Request personal AI personality\]</a><br>
Each time this button is pressed, a request will be sent out to any available personalities. Check back often and alot time for personalities to respond. This process could take anywhere from 15 seconds to several minutes, depending on the available personalities' timeliness."}
user << browse(dat, "window=paicard")
user << browse(HTML_SKELETON(dat), "window=paicard")
onclose(user, "paicard")
/obj/item/device/paicard/attack_ghost(var/mob/dead/observer/O)

View File

@@ -109,7 +109,7 @@
for (var/ch_name in channels)
dat+=text_sec_channel(ch_name, channels[ch_name])
dat+={"[text_wires()]</TT></body></html>"}
user << browse(dat, "window=radio")
user << browse(HTML_SKELETON(dat), "window=radio")
onclose(user, "radio")
return

View File

@@ -167,6 +167,6 @@ Code:
<A href='byond://?src=\ref[src];code=1'>+</A>
<A href='byond://?src=\ref[src];code=5'>+</A><BR>
</TT>"}
user << browse(dat, "window=radio")
user << browse(HTML_SKELETON(dat), "window=radio")
onclose(user, "radio")
return

View File

@@ -107,7 +107,7 @@
for (var/ch_name in channels)
dat+=text_sec_channel(ch_name, channels[ch_name])
dat+={"[text_wires()]</TT></body></html>"}
user << browse(dat, "window=radio")
user << browse(HTML_SKELETON(dat), "window=radio")
onclose(user, "radio")
return
@@ -614,7 +614,7 @@
dat += "Channel: <A href='byond://?src=\ref[src];toggle_channel=1'>Responder</A> <b>Command</b>"
dat+={"</TT></body></html>"}
user << browse(dat, "window=radio")
user << browse(HTML_SKELETON(dat), "window=radio")
onclose(user, "radio")
/obj/item/device/radio/phone/Topic(href, href_list)
@@ -692,7 +692,7 @@
dat += "Speaker: [listening ? "<A href='byond://?src=\ref[src];listen=0'>Engaged</A>" : "<A href='byond://?src=\ref[src];listen=1'>Disengaged</A>"]<BR>"
dat+={"</TT></body></html>"}
user << browse(dat, "window=radio")
user << browse(HTML_SKELETON(dat), "window=radio")
onclose(user, "radio")
/obj/item/device/radio/phone/surveillance/Topic(href, href_list)

View File

@@ -94,7 +94,7 @@
<BR> <B> Valve attachment:</B> [attached_device ? "<A href='?src=\ref[src];device=1'>[attached_device]</A>" : "None"] [attached_device ? "<A href='?src=\ref[src];rem_device=1'>Remove</A>" : ""]
<BR> <B> Valve status: </B> [ valve_open ? "<A href='?src=\ref[src];open=1'>Closed</A> <B>Open</B>" : "<B>Closed</B> <A href='?src=\ref[src];open=1'>Open</A>"]"}
user << browse(dat, "window=trans_valve;size=600x300")
user << browse(HTML_SKELETON(dat), "window=trans_valve;size=600x300")
onclose(user, "trans_valve")
return

View File

@@ -47,7 +47,7 @@
if(src.occupant)
dat += "[src.ready ? "<A href='?src=\ref[src];implant=1'>Implant</A>" : "Recharging"]<BR>"
user.set_machine(src)
user << browse(dat, "window=implant")
user << browse(HTML_SKELETON(dat), "window=implant")
onclose(user, "implant")

View File

@@ -64,7 +64,7 @@
dat += "The implant casing is empty."
else
dat += "Please insert an implant casing!"
user << browse(dat, "window=implantpad")
user << browse(HTML_SKELETON(dat), "window=implantpad")
onclose(user, "implantpad")

View File

@@ -29,7 +29,7 @@
dat += "<B>Four uses, use them wisely:</B><BR>"
dat += "<A href='byond://?src=\ref[src];spell_teleport=1'>Teleport</A><BR>"
dat += "Kind regards,<br>Wizards Federation<br><br>P.S. Don't forget to bring your gear, you'll need it to cast most spells.<HR>"
user << browse(dat, "window=scroll")
user << browse(HTML_SKELETON(dat), "window=scroll")
onclose(user, "scroll")
return

View File

@@ -104,7 +104,7 @@
<A href='?src=\ref[src];type=4'>4</A>-<A href='?src=\ref[src];type=5'>5</A>-<A href='?src=\ref[src];type=6'>6</A><BR>\n
<A href='?src=\ref[src];type=7'>7</A>-<A href='?src=\ref[src];type=8'>8</A>-<A href='?src=\ref[src];type=9'>9</A><BR>\n
<A href='?src=\ref[src];type=R'>R</A>-<A href='?src=\ref[src];type=0'>0</A>-<A href='?src=\ref[src];type=E'>E</A><BR>\n</TT>"}
user << browse(dat, "window=caselock;size=300x280")
user << browse(HTML_SKELETON(dat), "window=caselock;size=300x280")
/obj/item/weapon/storage/secure/Topic(href, href_list)
..()

View File

@@ -42,7 +42,7 @@ Frequency:
<A href='byond://?src=\ref[src];freq=10'>+</A><BR>
<A href='?src=\ref[src];refresh=1'>Refresh</A>"}
user << browse(dat, "window=radio")
user << browse(HTML_SKELETON(dat), "window=radio")
onclose(user, "radio")
return

View File

@@ -614,7 +614,7 @@ a {
else
dat += "<p><b>MULTITOOL BUFFER:</b> <a href='?src=\ref[src];buffer=1'>\[Add Machine\]</a></p>"
dat += "</body></html>"
user << browse(dat, "window=mtcomputer")
user << browse(HTML_SKELETON(dat), "window=mtcomputer")
user.set_machine(src)
onclose(user, "mtcomputer")

View File

@@ -41,7 +41,7 @@ var/global/byond_hub_playercount = OPEN_TO_HUB_PLAYERCOUNT_DEFAULT
<i>\[station_name\], \[map_name\], \[roundtime\], \[playercount\] can all be used to substitute their respective values.</i>
"}
usr << browse(dat, "window=admin2;size=600x400")
usr << browse(HTML_SKELETON(dat), "window=admin2;size=600x400")
return
/world/proc/update_status()

View File

@@ -326,7 +326,7 @@ var/station_bonus = 0 //A bonus to station allowance that gets reset after wage
<td><a href='?src=\ref[src];choice=view_account_detail;account_index=[i]'>View in detail</a></td>
</tr>"}
dat += "</table>"
user << browse(dat,"window=account_db;size=700x650")
user << browse(HTML_SKELETON(dat),"window=account_db;size=700x650")
else
user << browse(null,"window=account_db")

View File

@@ -100,4 +100,4 @@
</tr>"}
dat += "</table>"
usr << browse(dat, "window=econ_panel")
usr << browse(HTML_SKELETON(dat), "window=econ_panel")

View File

@@ -82,7 +82,7 @@
<a href='?src=\ref[src];choice=change_code'>Change access code</a><br/>
<a href='?src=\ref[src];choice=change_id'>Change EFTPOS ID</a><br/>
Scan card to reset access code <a href='?src=\ref[src];choice=reset'>\[------\]</a>"}
user << browse(dat,"window=eftpos")
user << browse(HTML_SKELETON(dat),"window=eftpos")
else
user << browse(null,"window=eftpos")

View File

@@ -447,7 +447,7 @@ var/const/POS_HEADER = {"<html>
dat += SettingsScreen()
dat += "</body></html>"
user << browse(dat, "window=pos")
user << browse(HTML_SKELETON(dat), "window=pos")
onclose(user, "pos")
return

View File

@@ -539,4 +539,4 @@
output += "</table></div>"
qdel(select_query)
usr << browse(output,"window=lookupbans;size=900x500")
usr << browse(HTML_SKELETON(output),"window=lookupbans;size=900x500")

View File

@@ -217,7 +217,7 @@ var/savefile/Banlist
dat += {"</table>
<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]"}
usr << browse(dat, "window=unbanp;size=875x400")
usr << browse(HTML_SKELETON(dat), "window=unbanp;size=875x400")
//////////////////////////////////// DEBUG ////////////////////////////////////

View File

@@ -242,7 +242,7 @@ var/global/floorIsLava = 0
</body></html>
"}
usr << browse(body, "window=adminplayeropts-\ref[M];size=550x515")
usr << browse(HTML_SKELETON(body), "window=adminplayeropts-\ref[M];size=550x515")
feedback_add_details("admin_verb","SPP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
@@ -331,7 +331,7 @@ var/global/floorIsLava = 0
if(index == page)
dat += "</b>"
usr << browse(dat, "window=player_notes;size=400x400")
usr << browse(HTML_SKELETON(dat), "window=player_notes;size=400x400")
/datum/admins/proc/player_has_info(var/key as text)
@@ -407,7 +407,7 @@ var/global/floorIsLava = 0
<A href='?src=\ref[src];add_player_info=[key]'>Add Comment</A><br>
</body></html>"}
usr << browse(dat, "window=adminplayerinfo;size=480x480")
usr << browse(HTML_SKELETON(dat), "window=adminplayerinfo;size=480x480")
/datum/admins/proc/access_news_network() //MARKER
set category = "Fun"
@@ -650,7 +650,7 @@ var/global/floorIsLava = 0
// to_chat(world, "Channelname: [src.admincaster_feed_channel.channel_name] [src.admincaster_feed_channel.author]")
// to_chat(world, "Msg: [src.admincaster_feed_message.author] [src.admincaster_feed_message.body]")
usr << browse(dat, "window=admincaster_main;size=400x600")
usr << browse(HTML_SKELETON(dat), "window=admincaster_main;size=400x600")
onclose(usr, "admincaster_main")
@@ -666,7 +666,7 @@ var/global/floorIsLava = 0
r = copytext( r, 1, findtext(r,"##") )//removes the description
dat += text("<tr><td>[t] (<A href='?src=\ref[src];removejobban=[r]'>unban</A>)</td></tr>")
dat += "</table>"
usr << browse(dat, "window=ban;size=400x400")
usr << browse(HTML_SKELETON(dat), "window=ban;size=400x400")
/datum/admins/proc/Game()
if(!check_rights(0))
@@ -728,7 +728,7 @@ var/global/floorIsLava = 0
dat += "<A href ='?src=\ref[src];econ_panel=open'>Manage accounts database</A><br>"
dat += "<A href ='?src=\ref[src];religions=1&display=1'>Manage religions</A><br>"
usr << browse(dat, "window=admin2;size=280x370")
usr << browse(HTML_SKELETON(dat), "window=admin2;size=280x370")
return
/datum/admins/proc/dynamic_mode_options(mob/user)
@@ -764,7 +764,7 @@ var/global/floorIsLava = 0
Curve width: <A href='?src=\ref[src];f_dynamic_roundstart_width=1'>-> [dynamic_curve_width] <-</A><br>
"}
user << browse(dat, "window=dyn_mode_options;size=900x650")
user << browse(HTML_SKELETON(dat), "window=dyn_mode_options;size=900x650")
/datum/admins/proc/Secrets()
if(!check_rights(0))
@@ -947,7 +947,7 @@ var/global/floorIsLava = 0
"}
usr << browse(dat, "window=secrets")
usr << browse(HTML_SKELETON(dat), "window=secrets")
return
/datum/admins/var/datum/shuttle/selected_shuttle
@@ -986,7 +986,7 @@ var/global/floorIsLava = 0
<a href='?src=\ref[src];shuttle_add_docking_port=1'>Create a shuttle docking port</a><br>
<a href='?src=\ref[src];shuttle_mass_lockdown=1'>Lock down all shuttles</a><br>
"}
usr << browse(dat, "window=shuttlemagic")
usr << browse(HTML_SKELETON(dat), "window=shuttlemagic")
/////////////////////////////////////////////////////////////////////////////////////////////////admins2.dm merge
@@ -1624,7 +1624,7 @@ var/alien_ship_location = 1 // 0 = base , 1 = mine
dat += "<hr><br><center>ADVANCED: <a href='?_src_=vars;Vars=\ref[end_credits]'>Debug Credits Datum</A></center>"
usr << browse(dat, "window=creditspanel;size=600x800")
usr << browse(HTML_SKELETON(dat), "window=creditspanel;size=600x800")
/datum/admins/proc/PersistencePanel()
if(!check_rights(0))
@@ -1646,7 +1646,7 @@ var/alien_ship_location = 1 // 0 = base , 1 = mine
dat += "<b>[T.name]</b>: [T.tracking.len] entries - <A href='?src=\ref[src];persistencedatum=\ref[T];persistenceaction=qdelall'>(DELETE)</A><br>"
dat += "Max [T.max_per_turf] per turf. Lasts up to [T.max_age] rounds.<hr>"
usr << browse(dat, "window=persistencepanel;size=350x600")
usr << browse(HTML_SKELETON(dat), "window=persistencepanel;size=350x600")
/datum/admins/proc/ViewAllRods()
if(!check_rights(0))
@@ -1660,4 +1660,4 @@ var/alien_ship_location = 1 // 0 = base , 1 = mine
dat += "- <A href='?src=\ref[src];rod_to_untrack=\ref[rod]'>(UNTRACK)</A>"
dat += "<br/>"
usr << browse(dat, "window=rodswindow;size=350x300")
usr << browse(HTML_SKELETON(dat), "window=rodswindow;size=350x300")

View File

@@ -34,4 +34,4 @@
"<br/>"
"<a href='?src=\ref[src];change_zone_del=exec'>Delete it.</a>'"}
usr << browse(jointext(dat, ""), "window=mass_del_in_zone;size=490x310")
usr << browse(HTML_SKELETON(jointext(dat, "")), "window=mass_del_in_zone;size=490x310")

View File

@@ -182,4 +182,4 @@
</html>
"}
usr << browse(dat, "window=artifactspanel;size=840x450")
usr << browse(HTML_SKELETON(dat), "window=artifactspanel;size=840x450")

View File

@@ -53,4 +53,4 @@
</html>
"}
usr << browse(dat, "window=bodyarchivepanel;size=860x640")
usr << browse(HTML_SKELETON(dat), "window=bodyarchivepanel;size=860x640")

View File

@@ -44,4 +44,4 @@
dat += "<br/>"
dat += "</body></html>"
usr << browse(dat, "window=roundstatus;size=750x500")
usr << browse(HTML_SKELETON(dat), "window=roundstatus;size=750x500")

View File

@@ -33,4 +33,4 @@
</html>
"}
usr << browse(dat, "window=climatepanel;size=360x175")
usr << browse(HTML_SKELETON(dat), "window=climatepanel;size=360x175")

View File

@@ -65,5 +65,5 @@
</html>
"}
usr << browse(dat, "window=diseasespanel;size=705x450")
usr << browse(HTML_SKELETON(dat), "window=diseasespanel;size=705x450")

View File

@@ -66,4 +66,4 @@
dat += "Move All Pods : <a href='?src=\ref[src];move_escape_pod=all;move_destination=station'>station</a> - <a href='?src=\ref[src];move_escape_pod=all;move_destination=transit'>transit</a> - <a href='?src=\ref[src];move_escape_pod=all;move_destination=centcom'>centcom</a> - <a href='?src=\ref[src];move_escape_pod=all;move_destination=shuttle'>crash into shuttle</a><br>"
dat += "</body></html>"
usr << browse(dat, "window=emergencyshuttle;size=440x500")
usr << browse(HTML_SKELETON(dat), "window=emergencyshuttle;size=440x500")

View File

@@ -225,7 +225,7 @@ var/savefile/Banlistjob
dat += {"</table>
<HR><B>Bans:</B> <FONT COLOR=blue>(U) = Unban , </FONT> - <FONT COLOR=green>([count] Bans)</FONT><HR><table border=1 rules=all frame=void cellspacing=0 cellpadding=3 >[dat]"}
usr << browse(dat, "window=unbanp;size=875x400")
usr << browse(HTML_SKELETON(dat), "window=unbanp;size=875x400")
/*/datum/admins/proc/permjobban(ckey, computerid, reason, bannedby, temp, minutes, rank)
if(AddBanjob(ckey, computerid, reason, usr.ckey, 0, 0, job))

View File

@@ -52,7 +52,7 @@
</body>
</html>"}
usr << browse(output,"window=editrights;size=600x500")
usr << browse(HTML_SKELETON(output),"window=editrights;size=600x500")
/datum/admins/proc/log_admin_rank_modification(var/adm_ckey, var/new_rank)
if(config.admin_legacy_system)

View File

@@ -340,7 +340,7 @@
</body></html>
"}
usr << browse(dat, "window=players;size=600x480")
usr << browse(HTML_SKELETON(dat), "window=players;size=600x480")
//The old one
/datum/admins/proc/player_panel_old()
@@ -402,4 +402,4 @@
dat += "</table></body></html>"
usr << browse(dat, "window=players;size=640x480")
usr << browse(HTML_SKELETON(dat), "window=players;size=640x480")

View File

@@ -1402,7 +1402,7 @@
body = "<body>[jobs]</body>"
dat = "<tt>[header][body]</tt>"
usr << browse(dat, "window=jobban2;size=800x490")
usr << browse(HTML_SKELETON(dat), "window=jobban2;size=800x490")
return
//JOBBAN'S INNARDS
@@ -1710,7 +1710,7 @@
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 += {"Now: [master_mode]"}
usr << browse(dat, "window=c_mode")
usr << browse(HTML_SKELETON(dat), "window=c_mode")
else if(href_list["f_secret"])
if(!check_rights(R_ADMIN))
@@ -1725,7 +1725,7 @@
dat += {"<A href='?src=\ref[src];f_secret2=[mode]'>[config.mode_names[mode]]</A><br>"}
dat += {"<A href='?src=\ref[src];f_secret2=secret'>Random (default)</A><br>"}
dat += {"Now: [secret_force_mode]"}
usr << browse(dat, "window=f_secret")
usr << browse(HTML_SKELETON(dat), "window=f_secret")
else if(href_list["f_dynamic_roundstart"])
if(!check_rights(R_ADMIN))
@@ -2637,7 +2637,7 @@
foo += text("<A HREF='?src=\ref[];forcespeech=\ref[]'>Say</A> \]", src, M)
dat += text("N: [] R: [] (K: []) (IP: []) []<BR>", M.name, M.real_name, (M.client ? M.client : "No client"), M.lastKnownIP, foo)
usr << browse(dat, "window=players;size=900x480")
usr << browse(HTML_SKELETON(dat), "window=players;size=900x480")
*****************AFTER******************/
@@ -3081,7 +3081,14 @@
if(P.img)
usr << browse_rsc(P.img.img, "tmp_photo.png")
info_2 = "<img src='tmp_photo.png' width='192' style='-ms-interpolation-mode:nearest-neighbor' /><br>"
usr << browse("<HTML><HEAD><TITLE>Centcomm Fax Message</TITLE></HEAD><BODY>[info_2][P.info][P.stamps]</BODY></HTML>", "window=Centcomm Fax Message")
var/text = {"<!DOCTYPE html><HEAD>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>
<meta http-equiv='X-UA-Compatible' content='IE=edge'>
<TITLE>Centcomm Fax Message</TITLE></HEAD>
<BODY>[info_2][P.info][P.stamps]</BODY>
</HTML>
"}
usr << browse(text, "window=Centcomm Fax Message") // No need to HTML_SKELETON() this
else if(href_list["CentcommFaxReply"])
var/mob/living/carbon/human/H = locate(href_list["CentcommFaxReply"])
@@ -4424,12 +4431,12 @@ access_sec_doors,access_salvage_captain,access_cent_ert,access_syndicate,access_
var/dat = "<B>Bombing List<HR>"
for(var/l in bombers)
dat += text("[l]<BR>")
usr << browse(dat, "window=bombers")
usr << browse(HTML_SKELETON(dat), "window=bombers")
if("list_lawchanges")
var/dat = "<B>Showing last [length(lawchanges)] law changes.</B><HR>"
for(var/sig in lawchanges)
dat += "[sig]<BR>"
usr << browse(dat, "window=lawchanges;size=800x500")
usr << browse(HTML_SKELETON(dat), "window=lawchanges;size=800x500")
if("list_job_debug")
var/dat = "<B>Job Debug info.</B><HR>"
if(job_master)
@@ -4440,7 +4447,7 @@ access_sec_doors,access_salvage_captain,access_cent_ert,access_syndicate,access_
if(!job)
continue
dat += "job: [job.title], current_positions: [job.current_positions], total_positions: [job.get_total_positions()] <BR>"
usr << browse(dat, "window=jobdebug;size=600x500")
usr << browse(HTML_SKELETON(dat), "window=jobdebug;size=600x500")
if("showailaws")
output_ai_laws()
if("showgm")
@@ -4457,7 +4464,7 @@ access_sec_doors,access_salvage_captain,access_cent_ert,access_syndicate,access_
if(H.ckey)
dat += text("<tr><td>[]</td><td>[]</td></tr>", H.name, H.get_assignment())
dat += "</table>"
usr << browse(dat, "window=manifest;size=440x410")
usr << browse(HTML_SKELETON(dat), "window=manifest;size=440x410")
// if("check_antagonist")
// check_antagonists()
if("emergency_shuttle_panel")
@@ -4469,7 +4476,7 @@ access_sec_doors,access_salvage_captain,access_cent_ert,access_syndicate,access_
if(H.dna && H.ckey)
dat += "<tr><td>[H]</td><td>[H.dna.unique_enzymes]</td><td>[H.dna.b_type]</td></tr>"
dat += "</table>"
usr << browse(dat, "window=DNA;size=440x410")
usr << browse(HTML_SKELETON(dat), "window=DNA;size=440x410")
if("fingerprints")
var/dat = "<B>Showing Fingerprints.</B><HR>"
dat += "<table cellspacing=5><tr><th>Name</th><th>Fingerprints</th></tr>"
@@ -4482,14 +4489,14 @@ access_sec_doors,access_salvage_captain,access_cent_ert,access_syndicate,access_
else if(!H.dna)
dat += "<tr><td>[H]</td><td>H.dna = null</td></tr>"
dat += "</table>"
usr << browse(dat, "window=fingerprints;size=440x410")
usr << browse(HTML_SKELETON(dat), "window=fingerprints;size=440x410")
if("show_admin_log")
var/dat = "<B>Admin Log<HR></B>"
for(var/l in admin_log)
dat += "<li>[l]</li>"
if(!admin_log.len)
dat += "No-one has done anything this round!"
usr << browse(dat, "window=admin_log")
usr << browse(HTML_SKELETON(dat), "window=admin_log")
if (usr)
log_admin("[key_name(usr)] used secret [href_list["secretsadmin"]]")
@@ -5937,4 +5944,4 @@ access_sec_doors,access_salvage_captain,access_cent_ert,access_syndicate,access_
text +="</ul>"
text += "<A HREF='?src=\ref[src];religions=global_subtle_pm&rel=\ref[R]'>Subtle PM all believers</a> <br/>"
text += "<A HREF='?src=\ref[src];religions=new'>Bus in a new religion</a> <br/>"
usr << browse(jointext(text, ""), "window=admin2;size=300x370")
usr << browse(HTML_SKELETON(jointext(text, "")), "window=admin2;size=300x370")

View File

@@ -35,7 +35,7 @@
output += "<li>Unconnected [plumbing.name] located at [formatJumpTo(plumbing.loc)]</li>"
output += "</ul>"
usr << browse(output,"window=pipereport;size=1000x500")
usr << browse(HTML_SKELETON(output),"window=pipereport;size=1000x500")
/client/proc/powerdebug()
set category = "Mapping"
set name = "Check Power"
@@ -63,4 +63,4 @@
low_nets++
output += "</ul><br>[empty_nets] powernets without nodes detected, [low_nets] with less than 10 cables."
usr << browse(output,"window=pipereport;size=1000x500")
usr << browse(HTML_SKELETON(output),"window=pipereport;size=1000x500")

View File

@@ -24,7 +24,7 @@ var/inactive_keys = "None<br>"
else
dat += "<a href='?src=\ref[src];_src_=holder;populate_inactive_customitems=1'>Populate list (requires an active database connection)</a><br>"
usr << browse(dat, "window=inactive_customitems;size=600x480")
usr << browse(HTML_SKELETON(dat), "window=inactive_customitems;size=600x480")
/proc/populate_inactive_customitems_list(var/client/C)
//set background = 1

View File

@@ -66,7 +66,7 @@
else
output += "&nbsp;&nbsp;&nbsp;&nbsp;[device]<br>"
usr << browse(output,"window=radioreport")
usr << browse(HTML_SKELETON(output),"window=radioreport")
feedback_add_details("admin_verb","RR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/client/proc/reload_admins()

View File

@@ -82,7 +82,7 @@
output += "<li><font color='red'>Camera not connected to wall at \[[C1.x], [C1.y], [C1.z]\] ([C1.loc.loc]) Network: [C1.network]</color></li>"
output += "</ul>"
usr << browse(output,"window=airreport;size=1000x500")
usr << browse(HTML_SKELETON(output),"window=airreport;size=1000x500")
feedback_add_details("admin_verb","mCRP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/client/proc/intercom_view()
@@ -496,4 +496,4 @@ var/global/movement_disabled_exception //This is the client that calls the proc,
continue
output += "</ul><br>[bad_pipes] bad pipes detected."
usr << browse(output,"window=distrowastemixreport;size=1000x500")
usr << browse(HTML_SKELETON(output),"window=distrowastemixreport;size=1000x500")

View File

@@ -21,7 +21,7 @@
<a href='?src=\ref[src];makeAntag=8'>Make Aliens (Requires Ghosts)</a><br>
"}
usr << browse(dat, "window=oneclickantag;size=400x400")
usr << browse(HTML_SKELETON(dat), "window=oneclickantag;size=400x400")
return

View File

@@ -168,7 +168,7 @@
dat += {"<BR><A href='?src=\ref[src];scanning=1'>[scanning?"Armed":"Unarmed"]</A> (Movement sensor active when armed!)
<BR><BR><A href='?src=\ref[src];set_default_time=1'>After countdown, reset time to [(default_time - default_time%60)/60]:[(default_time % 60)]</A>
<BR><BR><A href='?src=\ref[src];toggle_mode=1'>Mode: [constant_pulse ? PROXMODE_CONSTANT : PROXMODE_ENTER]</A>"}
user << browse(dat, "window=prox")
user << browse(HTML_SKELETON(dat), "window=prox")
onclose(user, "prox")
return

View File

@@ -109,7 +109,7 @@
<A href='byond://?src=\ref[src];code=5'>+</A><BR>
[t1]
</TT>"}
user << browse(dat, "window=radio")
user << browse(HTML_SKELETON(dat), "window=radio")
onclose(user, "radio")
return

View File

@@ -93,7 +93,7 @@
var/dat = text("<TT><B>Timing Unit</B>\n[] []:[]\n<A href='?src=\ref[];tp=-30'>-</A> <A href='?src=\ref[];tp=-1'>-</A> <A href='?src=\ref[];tp=1'>+</A> <A href='?src=\ref[];tp=30'>+</A>\n</TT>", (timing ? text("<A href='?src=\ref[];time=1'>Timing</A>", src) : text("<A href='?src=\ref[];time=1'>Not Timing</A>", src)), minute, second, src, src, src, src)
dat += "<BR><BR><A href='?src=\ref[src];set_default_time=1'>After countdown, reset time to [(default_time - default_time%60)/60]:[(default_time % 60)]</A>"
dat += "<BR><BR><A href='?src=\ref[src];toggle_mode=1'>Mode: [repeat ? TIMEMODE_REPEAT : TIMEMODE_ONCE]</A>"
user << browse(dat, "window=timer")
user << browse(HTML_SKELETON(dat), "window=timer")
onclose(user, "timer")
return

View File

@@ -28,7 +28,7 @@
<B>Charge progress: [reload]/180:</B><BR>
<A href='byond://?src=\ref[src];fire=1'>Open Fire</A><BR>
Deployment of weapon authorized by <br>Nanotrasen Naval Command<br><br>Remember, friendly fire is grounds for termination of your contract and life.<HR>"}
user << browse(dat, "window=scroll")
user << browse(HTML_SKELETON(dat), "window=scroll")
onclose(user, "scroll")
return

View File

@@ -662,7 +662,7 @@ var/const/MAX_SAVE_SLOTS = 16
dat += {"<a href='?_src_=prefs;preference=reset_all'>Reset Setup</a>
</center></div></body></html>"}
//user << browse(dat, "window=preferences;size=560x580")
//user << browse(HTML_SKELETON(dat), "window=preferences;size=560x580")
var/datum/browser/popup = new(user, "preferences", "<div align='center'>Character Setup</div>", 680, 640)
popup.set_content(dat)
popup.open(0)
@@ -698,7 +698,7 @@ var/const/MAX_SAVE_SLOTS = 16
<a href=\"?_src_=prefs;task=reset;preference=disabilities\">\[Reset\]</a>
</center></tt>"}
user << browse(null, "window=preferences")
user << browse(HTML, "window=disabil;size=350x300")
user << browse(HTML_SKELETON(HTML), "window=disabil;size=350x300")
return
/datum/preferences/proc/SetRecords(mob/user)
@@ -731,7 +731,7 @@ var/const/MAX_SAVE_SLOTS = 16
<a href=\"byond://?src=\ref[user];preference=records;records=-1\">\[Done\]</a>
</center></tt>"}
user << browse(null, "window=preferences")
user << browse(HTML, "window=records;size=350x300")
user << browse(HTML_SKELETON(HTML), "window=records;size=350x300")
return

View File

@@ -90,7 +90,7 @@ var/list/tag_suits_list = list()
<br/>
<b><a href='?src=\ref[src]&edition_done=\ref[my_laser_tag_game]'>Done</a></b>
""}
user << browse(dat,"window=laser_tag_window2;size=250x250")
user << browse(HTML_SKELETON(dat),"window=laser_tag_window2;size=250x250")
/obj/item/clothing/suit/tag/Topic(href, href_list)
if(..())
@@ -100,7 +100,7 @@ var/list/tag_suits_list = list()
var/datum/laser_tag_game/game = locate(href_list["join_game"])
game.handle_new_player(player, usr)
my_laser_tag_game = game
usr << browse(get_window_text(usr),"window=laser_tag_window;size=500x250")
usr << browse(HTML_SKELETON(get_window_text(usr)),"window=laser_tag_window;size=500x250")
return
if (href_list["create_game"])
@@ -110,7 +110,7 @@ var/list/tag_suits_list = list()
game.name = "[get_first_word(usr.name)]'s game"
game.handle_new_player(player, usr)
refresh_edit_window(usr, game)
usr << browse(get_window_text(usr),"window=laser_tag_window;size=500x250")
usr << browse(HTML_SKELETON(get_window_text(usr)),"window=laser_tag_window;size=500x250")
return
// Game parametrisation
@@ -188,7 +188,7 @@ var/list/tag_suits_list = list()
if (href_list["leave_game"])
var/datum/laser_tag_game/game = locate(href_list["leave_game"])
game.kick_player(usr)
usr << browse(get_window_text(usr),"window=laser_tag_window;size=500x250")
usr << browse(HTML_SKELETON(get_window_text(usr)),"window=laser_tag_window;size=500x250")
return
if (href_list["clear_gamertag"])

View File

@@ -132,7 +132,7 @@ var/const/FINGERPRINT_COMPLETE = 6 //This is the output of the stringpercent(pri
<tt>[scan_data]</tt>"}
if(scan_data && !scan_process)
dat += "<br><a href='?src=\ref[src];operation=erase'>{Erase Data}</a>"
user << browse(dat,"window=scanner")
user << browse(HTML_SKELETON(dat),"window=scanner")
onclose(user,"scanner")

View File

@@ -213,7 +213,7 @@
dat = jointext(dat,"")
last_data = dat
dat += "<br>\[<a href='?src=\ref[src];print=1'>print report</a>\] \[<a href='?src=\ref[src];clear=1'>clear</a>\]"
user << browse(dat,"window=plant_analyzer_\ref[src];size=500x600")
user << browse(HTML_SKELETON(dat),"window=plant_analyzer_\ref[src];size=500x600")
return
/obj/item/device/analyzer/plant_analyzer/attack_self(mob/user as mob)

View File

@@ -533,7 +533,8 @@
var/http = file2text(_http["CONTENT"])
if(!http)
return*/
usr << browse("<TT><I>[PVB.title] by [PVB.author].</I></TT> <BR>" + "[PVB.content]", "window=[PVB.title];size=600x800")
var/book_text = "<TT><I>[PVB.title] by [PVB.author].</I></TT> <BR>[PVB.content]"
usr << browse(HTML_SKELETON(book_text), "window=[PVB.title];size=600x800")
if(href_list["delqueue"])
var/slot = text2num(href_list["delqueue"])

View File

@@ -169,7 +169,7 @@ var/global/datum/library_catalog/library_catalog = new()
else
dat += "<BR>"
dat+= "<BR><A href='?src=\ref[src];eject=1'>\[Remove Book\]</A>"
user << browse(dat, "window=scanner")
user << browse(HTML_SKELETON(dat), "window=scanner")
onclose(user, "scanner")
/obj/machinery/libraryscanner/Topic(href, href_list)

View File

@@ -27,7 +27,7 @@
Volume: <A href='byond://?src=\ref[src];set_volume=-1'>[volume*100]%</a><BR>
"}
dat+={"</TT></body></html>"}
user << browse(dat, "window=radio-recv")
user << browse(HTML_SKELETON(dat), "window=radio-recv")
onclose(user, "radio-recv")
return

View File

@@ -227,7 +227,7 @@
<h4>Record Deletion</h4>
<b><a href='byond://?src=\ref[src];del_rec=1'>Scan card to confirm.</a></b><br>
<b><a href='byond://?src=\ref[src];menu=3'>Return</a></b>"}
user << browse(dat, "window=cloning")
user << browse(HTML_SKELETON(dat), "window=cloning")
onclose(user, "cloning")
return

View File

@@ -303,7 +303,7 @@
dat += "<h4>Crew Manifest</h4>"
dat += data_core.get_manifest(OOC = 1)
src << browse(dat, "window=manifest;size=370x420;can_close=1")
src << browse(HTML_SKELETON(dat), "window=manifest;size=370x420;can_close=1")
//Used for drawing on walls with blood puddles as a spooky ghost.
/mob/dead/verb/bloody_doodle()

View File

@@ -378,7 +378,7 @@
for(var/datum/language/L in languages)
dat += "<b>[L.name] (:[L.key])</b><br/>[L.desc]<br/><br/>"
src << browse(dat, "window=checklanguage")
src << browse(HTML_SKELETON(dat), "window=checklanguage")
return
/mob/living/check_languages()
@@ -393,7 +393,7 @@
else
dat += "<b>[L.name] (:[L.key])</b> - <a href='byond://?src=\ref[src];default_lang=[L]'>set default</a><br/>[L.desc]<br/><br/>"
src << browse(dat, "window=checklanguage")
src << browse(HTML_SKELETON(dat), "window=checklanguage")
/mob/living/Topic(href, href_list)
if(href_list["default_lang"])

View File

@@ -359,7 +359,7 @@ var/static/list/ai_icon_states = list(
dat += "<BR>\n"
viewalerts = TRUE
src << browse(dat, "window=aialerts&can_close=0")
src << browse(HTML_SKELETON(dat), "window=aialerts&can_close=0")
// this verb lets the ai see the stations manifest
/mob/living/silicon/ai/proc/ai_roster()

View File

@@ -274,7 +274,7 @@ They can only use one tool at a time, they can't choose modules, and they have 1
dat += text("[module.emag]: <B>Activated</B><BR>")
else
dat += text("[module.emag]: <A HREF=?src=\ref[src];act=\ref[module.emag]>Activate</A><BR>")
src << browse(dat, "window=robotmod&can_close=1")
src << browse(HTML_SKELETON(dat), "window=robotmod&can_close=1")
onclose(src,"robotmod") // Register on-close shit, which unsets machinery.

View File

@@ -147,7 +147,7 @@ var/datum/paiController/paiController // Global handler for pAI candidates
<h3><a href='byond://?src=\ref[src];option=submit;new=1;candidate=\ref[candidate]'>Submit Personality</a></h3><br>
<a href='byond://?src=\ref[src];option=save;new=1;candidate=\ref[candidate]'>Save Personality</a><br>
<a href='byond://?src=\ref[src];option=load;new=1;candidate=\ref[candidate]'>Load Personality</a><br>"}
M << browse(dat, "window=paiRecruit")
M << browse(HTML_SKELETON(dat), "window=paiRecruit")
/datum/paiController/proc/findPAI(var/obj/item/device/paicard/p, var/mob/user)
requestRecruits(p)
@@ -191,7 +191,7 @@ var/datum/paiController/paiController // Global handler for pAI candidates
dat += "</table>"
user << browse(dat, "window=findPai")
user << browse(HTML_SKELETON(dat), "window=findPai")
/datum/paiController/proc/requestRecruits(var/obj/item/device/paicard/p)
for(var/mob/dead/observer/O in player_list) // We handle polling ourselves.

Some files were not shown because too many files have changed in this diff Show More