/** * Constructs and returns a BankCardTransaction object from a given JSONObject. * * @param o_json json containing the BankCardTransaction type * @return the newly created bank card transaction * @author Ryan Murphy <*****@*****.**> * @author Steven Wright <*****@*****.**> * @author Rob Kurst <*****@*****.**> */ static function buildFromJSON($vo_json) { $o_bct = new BankCardTransaction(); if (array_key_exists('bank_card_transaction_billing_address', $vo_json)) { $o_bct->setBillingAddress(Address::buildFromJSON($vo_json['bank_card_transaction_billing_address'])); } if (array_key_exists('bank_card_transaction_name', $vo_json)) { $o_bct->setCardName($vo_json['bank_card_transaction_name']); } if (array_key_exists('token', $vo_json)) { $o_bct->setToken($vo_json['token']); } if (array_key_exists('bank_card_transaction_card_number', $vo_json)) { $o_bct->setCardNumber($vo_json['bank_card_transaction_card_number']); } if (array_key_exists('bank_card_transaction_expiration_month', $vo_json)) { $o_bct->setCardExpirationMonth($vo_json['bank_card_transaction_expiration_month']); } if (array_key_exists('bank_card_transaction_expiration_year', $vo_json)) { $o_bct->setCardExpirationYear($vo_json['bank_card_transaction_expiration_year']); } if (array_key_exists('bank_card_transaction_billing_address', $vo_json)) { $o_bct->setBillingAddress(Address::buildFromJSON($vo_json['bank_card_transaction_billing_address'])); } if (array_key_exists('bank_card_transaction_type', $vo_json)) { if (gettype($vo_json['bank_card_transaction_type']) === "array") { $o_type = (array) $vo_json['bank_card_transaction_type']; if (array_key_exists('bank_card_transaction_type_name', $o_type)) { $o_bct->setType($o_type['bank_card_transaction_type_name']); } } else { $o_bct->setType($vo_json['bank_card_transaction_type']); } } if (array_key_exists('bank_card_transaction_po_number', $vo_json)) { $o_bct->setPONumber($vo_json['bank_card_transaction_po_number']); } if (array_key_exists('bank_card_transaction_amount', $vo_json)) { $o_bct->setAmount($vo_json['bank_card_transaction_amount']); } if (array_key_exists('bank_card_transaction_tax_amount', $vo_json)) { $o_bct->setTaxAmount($vo_json['bank_card_transaction_tax_amount']); } if (array_key_exists('bank_card_transaction_tip_amount', $vo_json)) { $o_bct->setTipAmount($vo_json['bank_card_transaction_tip_amount']); } if (array_key_exists('bank_card_transaction_ip_address', $vo_json)) { $o_bct->setIPAddress($vo_json['bank_card_transaction_ip_address']); } if (array_key_exists('bank_card_transaction_merchant_transaction_id', $vo_json)) { $o_bct->setMerchantTransactionID($vo_json['bank_card_transaction_merchant_transaction_id']); } if (array_key_exists('bank_card_transaction_status', $vo_json)) { if (gettype($vo_json['bank_card_transaction_status']) === "array") { $o_status = (array) $vo_json['bank_card_transaction_status']; if (array_key_exists('bank_card_transaction_status_name', $o_status)) { $o_bct->setStatus($o_status['bank_card_transaction_status_name']); } } else { $o_bct->setStatus($vo_json['bank_card_transaction_status']); } } if (array_key_exists('bank_card_transction_check_secure_code', $vo_json)) { $o_bct->setCheckSecureCode($vo_json['bank_card_transction_check_secure_code']); } if (array_key_exists('bank_card_transaction_response_message', $vo_json)) { $o_bct->setResponseMessage($vo_json['bank_card_transaction_response_message']); } if (array_key_exists('bank_card_transaction_response_code', $vo_json)) { $o_bct->setResponseCode($vo_json['bank_card_transaction_response_code']); } if (array_key_exists('bank_card_transaction_avs_response_code', $vo_json)) { $o_bct->setAVSResponseCode($vo_json['bank_card_transaction_avs_response_code']); } if (array_key_exists('bank_card_transaction_cvv_response_code', $vo_json)) { $o_bct->setCVVResponseCode($vo_json['bank_card_transaction_cvv_response_code']); } if (array_key_exists('bank_card_transaction_card_cvv2', $vo_json)) { $o_bct->setCardCVV2($vo_json['bank_card_transaction_card_cvv2']); } if (array_key_exists('bank_card_transaction_authorization_code', $vo_json)) { $o_bct->setAuthorizationCode($vo_json['bank_card_transaction_authorization_code']); } if (array_key_exists('bank_card_transaction_id', $vo_json)) { $o_bct->setTransactionID($vo_json['bank_card_transaction_id']); } if (array_key_exists('bank_card_transaction_verify_complete_url', $vo_json)) { $o_bct->setVerifyCompleteURL($vo_json['bank_card_transaction_verify_complete_url']); } if (array_key_exists('bank_card_transaction_verify_url', $vo_json)) { $o_bct->setVerifyURL($vo_json['bank_card_transaction_verify_url']); } if (array_key_exists("bank_card_transaction_encrypted_track_data", $vo_json)) { $o_bct->setEncryptedTrackData($vo_json['bank_card_transaction_encrypted_track_data']); } if (array_key_exists('bank_card_transaction_recurring_indicator', $vo_json)) { $o_bct->setRecurringIndicator($vo_json['bank_card_transaction_recurring_indicator']); } if (array_key_exists('bank_card_transaction_settlement_batch_id', $vo_json)) { $o_bct->setSettlementBatchID($vo_json['bank_card_transaction_settlement_batch_id']); } if (array_key_exists('bank_card_transaction_settlement_date', $vo_json)) { $o_bct->setSettlementDate(date("m/d/Y H:i:s", strtotime($vo_json['bank_card_transaction_settlement_date']))); } if (array_key_exists('bank_card_transaction_creation_date', $vo_json)) { $o_bct->setCreationDate(date("m/d/Y H:i:s", strtotime($vo_json['bank_card_transaction_creation_date']))); } if (array_key_exists("bank_card_transaction_custom_field1", $vo_json)) { $o_bct->setCustomField1($vo_json["bank_card_transaction_custom_field1"]); } if (array_key_exists("bank_card_transaction_custom_field2", $vo_json)) { $o_bct->setCustomField2($vo_json["bank_card_transaction_custom_field2"]); } if (array_key_exists("bank_card_transaction_custom_field3", $vo_json)) { $o_bct->setCustomField3($vo_json["bank_card_transaction_custom_field3"]); } if (array_key_exists("bank_card_transaction_custom_field4", $vo_json)) { $o_bct->setCustomField4($vo_json["bank_card_transaction_custom_field4"]); } if (array_key_exists("bank_card_transaction_custom_field5", $vo_json)) { $o_bct->setCustomField5($vo_json["bank_card_transaction_custom_field5"]); } if (array_key_exists("bank_card_transaction_custom_field6", $vo_json)) { $o_bct->setCustomField6($vo_json["bank_card_transaction_custom_field6"]); } if (array_key_exists("bank_card_transaction_custom_field7", $vo_json)) { $o_bct->setCustomField7($vo_json["bank_card_transaction_custom_field7"]); } if (array_key_exists("bank_card_transaction_custom_field8", $vo_json)) { $o_bct->setCustomField8($vo_json["bank_card_transaction_custom_field8"]); } if (array_key_exists("bank_card_transaction_custom_field9", $vo_json)) { $o_bct->setCustomField9($vo_json["bank_card_transaction_custom_field9"]); } if (array_key_exists("bank_card_transaction_custom_field10", $vo_json)) { $o_bct->setCustomField10($vo_json["bank_card_transaction_custom_field10"]); } if (array_key_exists("bank_card_transaction_cipher_pay_uuid", $vo_json)) { $o_bct->setCipherPayUUID($vo_json["bank_card_transaction_cipher_pay_uuid"]); } return $o_bct; }