diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm
index 7df9fa4325f..f1e9108e0b8 100644
--- a/code/modules/mob/living/carbon/human/examine.dm
+++ b/code/modules/mob/living/carbon/human/examine.dm
@@ -413,8 +413,35 @@
msg += "Criminal status: \[[criminal]\]\n"
+ msg += "Security records: \[View\]\n"
//msg += "\[Set Hostile Identification\]\n"
+ if(istype(usr, /mob/living/carbon/human))
+ var/mob/living/carbon/human/H = usr
+ if(istype(H.glasses, /obj/item/clothing/glasses/hud/health))
+ var/perpname = "wot"
+ var/medical = "None"
+
+ if(wear_id)
+ if(istype(wear_id,/obj/item/weapon/card/id))
+ perpname = wear_id:registered_name
+ else if(istype(wear_id,/obj/item/device/pda))
+ var/obj/item/device/pda/tempPda = wear_id
+ perpname = tempPda.owner
+ else
+ perpname = src.name
+
+ for (var/datum/data/record/E in data_core.general)
+ if (E.fields["name"] == perpname)
+ for (var/datum/data/record/R in data_core.general)
+ if (R.fields["id"] == E.fields["id"])
+ medical = R.fields["p_stat"]
+
+
+ msg += "Physical status: \[[medical]\]\n"
+ msg += "Medical records: \[View\]\n"
+
+
if(print_flavor_text()) msg += "[print_flavor_text()]\n"
msg += "*---------*"
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index 666ba1d820c..2c0c8051d4e 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -632,6 +632,103 @@
if(!modified)
usr << "\red Unable to locate a data core entry for this person."
+
+ if (href_list["secrecord"])
+ if(istype(usr, /mob/living/carbon/human))
+ var/mob/living/carbon/human/H = usr
+ if(istype(H.glasses, /obj/item/clothing/glasses/hud/security) || istype(H.glasses, /obj/item/clothing/glasses/sunglasses/sechud))
+ var/perpname = "wot"
+ var/read = 0
+
+ if(wear_id)
+ if(istype(wear_id,/obj/item/weapon/card/id))
+ perpname = wear_id:registered_name
+ else if(istype(wear_id,/obj/item/device/pda))
+ var/obj/item/device/pda/tempPda = wear_id
+ perpname = tempPda.owner
+ else
+ perpname = src.name
+ for (var/datum/data/record/E in data_core.general)
+ if (E.fields["name"] == perpname)
+ for (var/datum/data/record/R in data_core.security)
+ if (R.fields["id"] == E.fields["id"])
+ if(istype(H.glasses, /obj/item/clothing/glasses/hud/security) || istype(H.glasses, /obj/item/clothing/glasses/sunglasses/sechud))
+ usr << "Name: [R.fields["name"]] Criminal Status: [R.fields["criminal"]]"
+ usr << "Minor Crimes: [R.fields["mi_crim"]]"
+ usr << "Details: [R.fields["mi_crim_d"]]"
+ usr << "Major Crimes: [R.fields["ma_crim"]]"
+ usr << "Details: [R.fields["ma_crim_d"]]"
+ usr << "Notes: [R.fields["notes"]]"
+ read = 1
+
+ if(!read)
+ usr << "\red Unable to locate a data core entry for this person."
+
+ if (href_list["medical"])
+ if(istype(usr, /mob/living/carbon/human))
+ var/mob/living/carbon/human/H = usr
+ if(istype(H.glasses, /obj/item/clothing/glasses/hud/health))
+ var/perpname = "wot"
+ var/modified = 0
+
+ if(wear_id)
+ if(istype(wear_id,/obj/item/weapon/card/id))
+ perpname = wear_id:registered_name
+ else if(istype(wear_id,/obj/item/device/pda))
+ var/obj/item/device/pda/tempPda = wear_id
+ perpname = tempPda.owner
+ else
+ perpname = src.name
+
+ for (var/datum/data/record/E in data_core.general)
+ if (E.fields["name"] == perpname)
+ for (var/datum/data/record/R in data_core.general)
+ if (R.fields["id"] == E.fields["id"])
+
+ var/setmedical = input(usr, "Specify a new criminal status for this person.", "Medical HUD", R.fields["p_stat"]) in list("*Deceased*", "*Unconscious*", "Physically Unfit", "Active", "Cancel")
+
+ if(istype(H.glasses, /obj/item/clothing/glasses/hud/health))
+ if(setmedical != "Cancel")
+ R.fields["p_stat"] = setmedical
+ modified = 1
+
+ spawn()
+ H.handle_regular_hud_updates()
+
+ if(!modified)
+ usr << "\red Unable to locate a data core entry for this person."
+
+ if (href_list["medrecord"])
+ if(istype(usr, /mob/living/carbon/human))
+ var/mob/living/carbon/human/H = usr
+ if(istype(H.glasses, /obj/item/clothing/glasses/hud/health))
+ var/perpname = "wot"
+ var/read = 0
+
+ if(wear_id)
+ if(istype(wear_id,/obj/item/weapon/card/id))
+ perpname = wear_id:registered_name
+ else if(istype(wear_id,/obj/item/device/pda))
+ var/obj/item/device/pda/tempPda = wear_id
+ perpname = tempPda.owner
+ else
+ perpname = src.name
+ for (var/datum/data/record/E in data_core.general)
+ if (E.fields["name"] == perpname)
+ for (var/datum/data/record/R in data_core.medical)
+ if (R.fields["id"] == E.fields["id"])
+ if(istype(H.glasses, /obj/item/clothing/glasses/hud/health))
+ usr << "Name: [R.fields["name"]] Blood Type: [R.fields["b_type"]]"
+ usr << "DNA: [R.fields["b_dna"]]"
+ usr << "Minor Disabilities: [R.fields["mi_dis"]]"
+ usr << "Details: [R.fields["mi_dis_d"]]"
+ usr << "Major Disabilities: [R.fields["ma_dis"]]"
+ usr << "Details: [R.fields["ma_dis_d"]]"
+ usr << "Notes: [R.fields["notes"]]"
+ read = 1
+
+ if(!read)
+ usr << "\red Unable to locate a data core entry for this person."
..()
return