From d81bfe3c3e6ede6fc09c71c2b053e5e99d318f80 Mon Sep 17 00:00:00 2001 From: NullSnapshot Date: Mon, 25 Jul 2016 14:33:32 -0700 Subject: [PATCH] adds footer and changes fax challenge to an md5 of the game ID. --- code/modules/paperwork/adminpaper.dm | 50 +++++++++++++++++++++------- 1 file changed, 38 insertions(+), 12 deletions(-) diff --git a/code/modules/paperwork/adminpaper.dm b/code/modules/paperwork/adminpaper.dm index ccecb16d44..13bd884a14 100644 --- a/code/modules/paperwork/adminpaper.dm +++ b/code/modules/paperwork/adminpaper.dm @@ -13,6 +13,9 @@ var/header = null var/headerOn = TRUE + var/footer = null + var/footerOn = FALSE + /obj/item/weapon/paper/admin/New() ..() generateInteractions() @@ -21,36 +24,52 @@ /obj/item/weapon/paper/admin/proc/generateInteractions() //clear first interactions = null - interactions += "
" - interactions += "
Send fax " + + //Snapshot is crazy and likes putting each topic hyperlink on a seperate line from any other tags so it's nice and clean. + interactions += "
The fax will transmit everything above this line
" + interactions += "Send fax " interactions += "Pen mode: [isCrayon ? "Crayon" : "Pen"] " interactions += "Cancel fax " interactions += "
" interactions += "Toggle Header " - interactions += "Clear page
" + interactions += "Toggle Footer " + interactions += "Clear page " + interactions += "
" /obj/item/weapon/paper/admin/proc/generateHeader() var/originhash = md5("[origin]") - var/timehash = copytext(md5("[world.time]"),1,10) + var/challengehash = copytext(md5("[game_id]"),1,10) // changed to a hash of the game ID so it's more consistant but changes every round. var/text = null //TODO change logo based on who you're contacting. text = "

" - text += "[origin] quantum uplink signed message
" + text += "[origin] Quantum Uplink Signed Message
" text += "Encryption key: [originhash]
" - text += "Challenge: [timehash]

" + text += "Challenge: [challengehash]

" header = text +/obj/item/weapon/paper/admin/proc/generateFooter() + var/text = null + + text = "
" + text += "This transmission is intended only for the addressee and may contain confidential information. Any unauthorized disclosure is strictly prohibited.

" + text += "If this transmission is recieved in error, please notify both the sender and the office of [boss_name] Internal Affairs immediately so that corrective action may be taken." + text += "Failure to comply is a breach of regulation and may be prosecuted to the fullest extent of the law, where applicable." + text += "
" + + footer = text + + /obj/item/weapon/paper/admin/proc/adminbrowse() updateinfolinks() generateHeader() - usr << browse("[name][header][info_links][stamps][interactions]", "window=[name];can_close=0") + generateFooter() + updateDisplay() obj/item/weapon/paper/admin/proc/updateDisplay() - if (headerOn) - usr << browse("[name][header][info_links][stamps][interactions]", "window=[name];can_close=0") - else - usr << browse("[name][info_links][stamps][interactions]", "window=[name];can_close=0") + usr << browse("[name][headerOn ? header : ""][info_links][stamps][footerOn ? footer : ""][interactions]", "window=[name];can_close=0") + + /obj/item/weapon/paper/admin/Topic(href, href_list) if(href_list["write"]) @@ -94,7 +113,9 @@ obj/item/weapon/paper/admin/proc/updateDisplay() if("Yes") if(headerOn) info = header + info - updateinfolinks() + if(footerOn) + info += footer + updateinfolinks() usr << browse(null, "window=[name]") admindatum.faxCallback(src, destination) return @@ -120,6 +141,11 @@ obj/item/weapon/paper/admin/proc/updateDisplay() updateDisplay() return + if(href_list["togglefooter"]) + footerOn = !footerOn + updateDisplay() + return +