Merge pull request #10177 from LightningIron/dev-freeze

Fixes #9546
This commit is contained in:
GinjaNinja32
2015-07-14 20:27:06 +01:00

View File

@@ -46,8 +46,8 @@
if(vendmode == 3) if(vendmode == 3)
if(istype(W,/obj/item/weapon/card)) if(istype(W,/obj/item/weapon/card))
var/obj/item/weapon/card/I = W var/obj/item/weapon/card/I = W
reimburse(I) if(reimburse(I))
vendmode = 0 vendmode = 0
if(vendmode == 0) if(vendmode == 0)
if(istype(W, /obj/item/device/laptop)) if(istype(W, /obj/item/device/laptop))
var/obj/item/device/laptop/L = W var/obj/item/device/laptop/L = W
@@ -215,6 +215,9 @@
var/obj/item/weapon/card/id/C = I var/obj/item/weapon/card/id/C = I
visible_message("<span class='info'>[usr] swipes a card through [src].</span>") visible_message("<span class='info'>[usr] swipes a card through [src].</span>")
var/datum/money_account/CH = get_account(C.associated_account_number) var/datum/money_account/CH = get_account(C.associated_account_number)
if(!CH)
usr << "\icon[src]<span class='warning'>No valid account number is associated with this card.</span>"
return
if(CH.security_level != 0) //If card requires pin authentication (ie seclevel 1 or 2) if(CH.security_level != 0) //If card requires pin authentication (ie seclevel 1 or 2)
if(vendor_account) if(vendor_account)
var/attempt_pin = input("Enter pin code", "Vendor transaction") as num var/attempt_pin = input("Enter pin code", "Vendor transaction") as num
@@ -363,18 +366,25 @@
var/obj/item/weapon/card/id/C = I var/obj/item/weapon/card/id/C = I
visible_message("<span class='info'>[usr] swipes a card through [src].</span>") visible_message("<span class='info'>[usr] swipes a card through [src].</span>")
var/datum/money_account/CH = get_account(C.associated_account_number) var/datum/money_account/CH = get_account(C.associated_account_number)
if(!CH)
usr << "\icon[src]<span class='warning'>No valid account number is associated with this card.</span>"
return 0
if(CH.security_level != 0) //If card requires pin authentication (ie seclevel 1 or 2) if(CH.security_level != 0) //If card requires pin authentication (ie seclevel 1 or 2)
if(vendor_account) if(vendor_account)
var/attempt_pin = input("Enter pin code", "Vendor transaction") as num var/attempt_pin = input("Enter pin code", "Vendor transaction") as num
var/datum/money_account/D = attempt_account_access(C.associated_account_number, attempt_pin, 2) var/datum/money_account/D = attempt_account_access(C.associated_account_number, attempt_pin, 2)
if(D) if(D)
transfer_and_reimburse(D) transfer_and_reimburse(D)
return 1
else else
usr << "\icon[src]<span class='warning'>Unable to access account. Check security settings and try again.</span>" usr << "\icon[src]<span class='warning'>Unable to access account. Check security settings and try again.</span>"
return 0
else else
usr << "\icon[src]<span class='warning'>Unable to access vendor account. Please record the machine ID and call CentComm Support.</span>" usr << "\icon[src]<span class='warning'>Unable to access vendor account. Please record the machine ID and call CentComm Support.</span>"
return 0
else else
transfer_and_reimburse(CH) transfer_and_reimburse(CH)
return 1
/obj/machinery/lapvend/proc/transfer_and_reimburse(var/datum/money_account/D) /obj/machinery/lapvend/proc/transfer_and_reimburse(var/datum/money_account/D)
var/transaction_amount = total() var/transaction_amount = total()