mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-21 07:32:02 +00:00
Merge pull request #12033 from PsiOmegaDelta/160124-Permissions
The id modification console now only operate on NT access permissions.
This commit is contained in:
@@ -94,12 +94,12 @@ var/list/cargo_positions = list(
|
|||||||
|
|
||||||
var/list/civilian_positions = list(
|
var/list/civilian_positions = list(
|
||||||
"Head of Personnel",
|
"Head of Personnel",
|
||||||
|
"Internal Affairs Agent",
|
||||||
"Bartender",
|
"Bartender",
|
||||||
"Gardener",
|
"Gardener",
|
||||||
"Chef",
|
"Chef",
|
||||||
"Janitor",
|
"Janitor",
|
||||||
"Librarian",
|
"Librarian",
|
||||||
"Lawyer",
|
|
||||||
"Chaplain",
|
"Chaplain",
|
||||||
"Assistant"
|
"Assistant"
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -138,7 +138,10 @@
|
|||||||
<u>Blood Type:</u> [id_card.blood_type]<br><br>
|
<u>Blood Type:</u> [id_card.blood_type]<br><br>
|
||||||
<u>Access:</u><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)
|
for(var/A in id_card.access)
|
||||||
|
if(A in known_access_rights)
|
||||||
contents += " [get_access_desc(A)]"
|
contents += " [get_access_desc(A)]"
|
||||||
|
|
||||||
if(!computer.nano_printer.print_text(contents,"access report"))
|
if(!computer.nano_printer.print_text(contents,"access report"))
|
||||||
@@ -162,7 +165,7 @@
|
|||||||
if("terminate")
|
if("terminate")
|
||||||
if(computer && can_run(user, 1))
|
if(computer && can_run(user, 1))
|
||||||
id_card.assignment = "Terminated"
|
id_card.assignment = "Terminated"
|
||||||
id_card.access = list()
|
remove_nt_access(id_card)
|
||||||
callHook("terminate_employee", list(id_card))
|
callHook("terminate_employee", list(id_card))
|
||||||
if("edit")
|
if("edit")
|
||||||
if(computer && can_run(user, 1))
|
if(computer && can_run(user, 1))
|
||||||
@@ -200,7 +203,8 @@
|
|||||||
|
|
||||||
access = jobdatum.get_access()
|
access = jobdatum.get_access()
|
||||||
|
|
||||||
id_card.access = access
|
remove_nt_access(id_card)
|
||||||
|
apply_access(id_card, access)
|
||||||
id_card.assignment = t1
|
id_card.assignment = t1
|
||||||
id_card.rank = t1
|
id_card.rank = t1
|
||||||
|
|
||||||
@@ -209,7 +213,7 @@
|
|||||||
if(href_list["allowed"] && computer && can_run(user, 1))
|
if(href_list["allowed"] && computer && can_run(user, 1))
|
||||||
var/access_type = text2num(href_list["access_target"])
|
var/access_type = text2num(href_list["access_target"])
|
||||||
var/access_allowed = text2num(href_list["allowed"])
|
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
|
id_card.access -= access_type
|
||||||
if(!access_allowed)
|
if(!access_allowed)
|
||||||
id_card.access += access_type
|
id_card.access += access_type
|
||||||
@@ -218,3 +222,9 @@
|
|||||||
|
|
||||||
nanomanager.update_uis(NM)
|
nanomanager.update_uis(NM)
|
||||||
return 1
|
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
|
||||||
|
|||||||
Reference in New Issue
Block a user