//CONTENTS:
//Generic records
//Security records
//Medical records
/datum/computer/file/pda_program/records
var/mode = 0
var/datum/data/record/active1 = null //General
var/datum/data/record/active2 = null //Security/Medical/Whatever
//To-do: editing arrest status/etc from pda.
/datum/computer/file/pda_program/records/security
name = "Security Records"
size = 12.0
return_text()
if(..())
return
var/dat = src.return_text_header()
switch(src.mode)
if(0)
dat += "
Security Record List
"
for (var/datum/data/record/R in data_core.general)
dat += "[R.fields["id"]]: [R.fields["name"]]
"
dat += "
"
if(1)
dat += "Security Record
"
dat += "Back
"
if (istype(src.active1, /datum/data/record) && data_core.general.Find(src.active1))
dat += "Name: [src.active1.fields["name"]] ID: [src.active1.fields["id"]]
"
dat += "Sex: [src.active1.fields["sex"]]
"
dat += "Age: [src.active1.fields["age"]]
"
dat += "Fingerprint: [src.active1.fields["fingerprint"]]
"
dat += "Physical Status: [src.active1.fields["p_stat"]]
"
dat += "Mental Status: [src.active1.fields["m_stat"]]
"
else
dat += "Record Lost!
"
dat += "
"
dat += "Security Data
"
if (istype(src.active2, /datum/data/record) && data_core.security.Find(src.active2))
dat += "Criminal Status: [src.active2.fields["criminal"]]
"
dat += "Minor Crimes: [src.active2.fields["mi_crim"]]
"
dat += "Details: [src.active2.fields["mi_crim"]]
"
dat += "Major Crimes: [src.active2.fields["ma_crim"]]
"
dat += "Details: [src.active2.fields["ma_crim_d"]]
"
dat += "Important Notes:
"
dat += "[src.active2.fields["notes"]]"
else
dat += "Record Lost!
"
dat += "
"
return dat
Topic(href, href_list)
if(..())
return
if(href_list["mode"])
var/newmode = text2num(href_list["mode"])
src.mode = max(newmode, 0)
else if(href_list["select_rec"])
var/datum/data/record/R = locate(href_list["select_rec"])
var/datum/data/record/S = locate(href_list["select_rec"])
if (data_core.general.Find(R))
for (var/datum/data/record/E in data_core.security)
if ((E.fields["name"] == R.fields["name"] || E.fields["id"] == R.fields["id"]))
S = E
break
src.active1 = R
src.active2 = S
src.mode = 1
src.master.add_fingerprint(usr)
src.master.updateSelfDialog()
return
/datum/computer/file/pda_program/records/medical
name = "Medical Records"
size = 8.0
return_text()
if(..())
return
var/dat = src.return_text_header()
switch(src.mode)
if(0)
dat += "Medical Record List
"
for (var/datum/data/record/R in data_core.general)
dat += "[R.fields["id"]]: [R.fields["name"]]
"
dat += "
"
if(1)
dat += "Medical Record
"
dat += "Back
"
if (istype(src.active1, /datum/data/record) && data_core.general.Find(src.active1))
dat += "Name: [src.active1.fields["name"]] ID: [src.active1.fields["id"]]
"
dat += "Sex: [src.active1.fields["sex"]]
"
dat += "Age: [src.active1.fields["age"]]
"
dat += "Fingerprint: [src.active1.fields["fingerprint"]]
"
dat += "Physical Status: [src.active1.fields["p_stat"]]
"
dat += "Mental Status: [src.active1.fields["m_stat"]]
"
else
dat += "Record Lost!
"
dat += "
"
dat += "Medical Data
"
if (istype(src.active2, /datum/data/record) && data_core.medical.Find(src.active2))
dat += "Blood Type: [src.active2.fields["b_type"]]
"
dat += "Minor Disabilities: [src.active2.fields["mi_dis"]]
"
dat += "Details: [src.active2.fields["mi_dis_d"]]
"
dat += "Major Disabilities: [src.active2.fields["ma_dis"]]
"
dat += "Details: [src.active2.fields["ma_dis_d"]]
"
dat += "Allergies: [src.active2.fields["alg"]]
"
dat += "Details: [src.active2.fields["alg_d"]]
"
dat += "Current Diseases: [src.active2.fields["cdi"]]
"
dat += "Details: [src.active2.fields["cdi_d"]]
"
dat += "Important Notes: [src.active2.fields["notes"]]
"
else
dat += "Record Lost!
"
dat += "
"
return dat
Topic(href, href_list)
if(..())
return
if(href_list["mode"])
var/newmode = text2num(href_list["mode"])
src.mode = max(newmode, 0)
else if(href_list["select_rec"])
var/datum/data/record/R = locate(href_list["select_rec"])
var/datum/data/record/M = locate(href_list["select_rec"])
if (data_core.general.Find(R))
for (var/datum/data/record/E in data_core.medical)
if ((E.fields["name"] == R.fields["name"] || E.fields["id"] == R.fields["id"]))
M = E
break
src.active1 = R
src.active2 = M
src.mode = 1
src.master.add_fingerprint(usr)
src.master.updateSelfDialog()
return