Merge pull request #12033 from PsiOmegaDelta/160124-Permissions

The id modification console now only operate on NT access permissions.
This commit is contained in:
Ccomp5950
2016-01-25 00:08:08 -05:00
2 changed files with 15 additions and 5 deletions

View File

@@ -94,12 +94,12 @@ var/list/cargo_positions = list(
var/list/civilian_positions = list(
"Head of Personnel",
"Internal Affairs Agent",
"Bartender",
"Gardener",
"Chef",
"Janitor",
"Librarian",
"Lawyer",
"Chaplain",
"Assistant"
)

View File

@@ -138,7 +138,10 @@
<u>Blood Type:</u> [id_card.blood_type]<br><br>
<u>Access:</u><br>
"}
var/known_access_rights = get_access_ids(ACCESS_TYPE_STATION|ACCESS_TYPE_CENTCOM)
for(var/A in id_card.access)
if(A in known_access_rights)
contents += " [get_access_desc(A)]"
if(!computer.nano_printer.print_text(contents,"access report"))
@@ -162,7 +165,7 @@
if("terminate")
if(computer && can_run(user, 1))
id_card.assignment = "Terminated"
id_card.access = list()
remove_nt_access(id_card)
callHook("terminate_employee", list(id_card))
if("edit")
if(computer && can_run(user, 1))
@@ -200,7 +203,8 @@
access = jobdatum.get_access()
id_card.access = access
remove_nt_access(id_card)
apply_access(id_card, access)
id_card.assignment = t1
id_card.rank = t1
@@ -209,7 +213,7 @@
if(href_list["allowed"] && computer && can_run(user, 1))
var/access_type = text2num(href_list["access_target"])
var/access_allowed = text2num(href_list["allowed"])
if(access_type in (get_all_centcom_access() + get_all_station_access()))
if(access_type in get_access_ids(ACCESS_TYPE_STATION|ACCESS_TYPE_CENTCOM))
id_card.access -= access_type
if(!access_allowed)
id_card.access += access_type
@@ -218,3 +222,9 @@
nanomanager.update_uis(NM)
return 1
/datum/computer_file/program/card_mod/proc/remove_nt_access(var/obj/item/weapon/card/id/id_card)
id_card.access -= get_access_ids(ACCESS_TYPE_STATION|ACCESS_TYPE_CENTCOM)
/datum/computer_file/program/card_mod/proc/apply_access(var/obj/item/weapon/card/id/id_card, var/list/accesses)
id_card.access |= accesses