Linux altar53.supremepanel53.com 4.18.0-553.8.1.lve.el8.x86_64 #1 SMP Thu Jul 4 16:24:39 UTC 2024 x86_64
/ home/ bdapparelinfo/ dhakazone.com/ catalog/ model/ extension/ payment/ |
|
<?php class ModelExtensionPaymentPPBraintree extends Model { public function generateToken($gateway, $data) { try { if ($gateway != null) { $client_token = $gateway->clientToken()->generate($data); } else { $client_token = Braintree_ClientToken::generate($data); } return $client_token; } catch (Exception $e) { $this->log($e->getMessage()); return false; } } public function addTransaction($gateway, $data) { try { if ($gateway != null) { $transaction = $gateway->transaction()->sale($data); } else { $transaction = Braintree_Transaction::sale($data); } return $transaction; } catch (Exception $e) { $this->log($e->getMessage()); return false; } } public function getCustomer($gateway, $customer_id, $log = true) { try { if ($gateway != null) { $customer = $gateway->customer()->find($customer_id); } else { $customer = Braintree_Customer::find($customer_id); } return $customer; } catch (Exception $e) { if ($log) { $this->log($e->getMessage()); } return false; } } public function getPaymentMethod($gateway, $token) { try { if ($gateway != null) { $payment_method = $gateway->paymentMethod()->find($token); } else { $payment_method = Braintree_PaymentMethod::find($token); } return $payment_method; } catch (Exception $e) { $this->log($e->getMessage()); return false; } } public function addPaymentMethod($gateway, $data) { try { if ($gateway != null) { $payment_method = $gateway->paymentMethod()->create($data); } else { $payment_method = Braintree_PaymentMethod::create($data); } return $payment_method; } catch (Exception $e) { $this->log($e->getMessage()); return false; } } public function deletePaymentMethod($gateway, $token) { try { if ($gateway != null) { $gateway->paymentMethod()->delete($token); } else { Braintree_PaymentMethod::delete($token); } return true; } catch (Exception $e) { $this->log($e->getMessage()); return false; } } public function getPaymentMethodNonce($gateway, $token) { try { if ($gateway != null) { $response = $gateway->paymentMethodNonce()->find($token); } else { $response = Braintree_PaymentMethodNonce::find($token); } return $response; } catch (Exception $e) { $this->log($e->getMessage()); return false; } } public function createPaymentMethodNonce($gateway, $token) { try { if ($gateway != null) { $response = $gateway->paymentMethodNonce()->create($token); } else { $response = Braintree_PaymentMethodNonce::create($token); } return $response; } catch (Exception $e) { $this->log($e->getMessage()); return false; } } public function setCredentials() { Braintree_Configuration::environment($this->config->get('payment_pp_braintree_environment')); Braintree_Configuration::merchantId($this->config->get('payment_pp_braintree_merchant_id')); Braintree_Configuration::publicKey($this->config->get('payment_pp_braintree_public_key')); Braintree_Configuration::privateKey($this->config->get('payment_pp_braintree_private_key')); } public function setGateway($access_token) { return new Braintree_Gateway(array('accessToken' => $access_token)); } public function getMethod($address, $total) { $this->load->language('extension/payment/pp_braintree'); $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "zone_to_geo_zone WHERE geo_zone_id = '" . (int)$this->config->get('payment_pp_braintree_geo_zone_id') . "' AND country_id = '" . (int)$address['country_id'] . "' AND (zone_id = '" . (int)$address['zone_id'] . "' OR zone_id = '0')"); if ($this->config->get('payment_pp_braintree_total') > 0 && $this->config->get('payment_pp_braintree_total') > $total) { $status = false; } elseif (!$this->config->get('payment_pp_braintree_geo_zone_id')) { $status = true; } elseif ($query->num_rows) { $status = true; } else { $status = false; } $method_data = array(); if ($status) { $method_data = array( 'code' => 'pp_braintree', 'title' => $this->language->get('text_title'), 'terms' => '', 'sort_order' => $this->config->get('payment_pp_braintree_sort_order') ); } return $method_data; } public function getSupportedCurrencies() { $currencies = array(); foreach ($this->config->get('payment_pp_braintree_account') as $currency => $account) { if ($account['status']) { $currencies[] = $currency; } } return $currencies; } public function log($data) { if ($this->config->get('payment_pp_braintree_debug')) { $log = new Log('braintree.log'); $log->write(print_r($data, true)); } } }