alipay_cross.php (6725B)
1 <?php 2 class ControllerExtensionPaymentAlipayCross extends Controller { 3 private $error = array(); 4 private $currencies = array('GBP', 'HKD', 'USD', 'CHF', 'SGD', 'SEK', 'DKK', 'NOK', 'JPY', 'CAD', 'AUD', 'EUR', 'NZD', 'KRW', 'THB'); 5 6 public function index() { 7 $this->load->language('extension/payment/alipay_cross'); 8 9 $this->document->setTitle($this->language->get('heading_title')); 10 11 $this->load->model('setting/setting'); 12 13 if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) { 14 $this->model_setting_setting->editSetting('payment_alipay_cross', $this->request->post); 15 16 $this->session->data['success'] = $this->language->get('text_success'); 17 18 $this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=payment', true)); 19 } 20 21 if (isset($this->error['warning'])) { 22 $data['error_warning'] = $this->error['warning']; 23 } else { 24 $data['error_warning'] = ''; 25 } 26 27 if (isset($this->error['app_id'])) { 28 $data['error_app_id'] = $this->error['app_id']; 29 } else { 30 $data['error_app_id'] = ''; 31 } 32 33 if (isset($this->error['merchant_private_key'])) { 34 $data['error_merchant_private_key'] = $this->error['merchant_private_key']; 35 } else { 36 $data['error_merchant_private_key'] = ''; 37 } 38 39 $data['breadcrumbs'] = array(); 40 41 $data['breadcrumbs'][] = array( 42 'text' => $this->language->get('text_home'), 43 'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true) 44 ); 45 46 $data['breadcrumbs'][] = array( 47 'text' => $this->language->get('text_extension'), 48 'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=payment', true) 49 ); 50 51 $data['breadcrumbs'][] = array( 52 'text' => $this->language->get('heading_title'), 53 'href' => $this->url->link('extension/payment/alipay_cross', 'user_token=' . $this->session->data['user_token'], true) 54 ); 55 56 $data['action'] = $this->url->link('extension/payment/alipay_cross', 'user_token=' . $this->session->data['user_token'], true); 57 58 $data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=payment', true); 59 60 if (isset($this->request->post['payment_alipay_cross_app_id'])) { 61 $data['payment_alipay_cross_app_id'] = $this->request->post['payment_alipay_cross_app_id']; 62 } else { 63 $data['payment_alipay_cross_app_id'] = $this->config->get('payment_alipay_cross_app_id'); 64 } 65 66 if (isset($this->request->post['payment_alipay_cross_merchant_private_key'])) { 67 $data['payment_alipay_cross_merchant_private_key'] = $this->request->post['payment_alipay_cross_merchant_private_key']; 68 } else { 69 $data['payment_alipay_cross_merchant_private_key'] = $this->config->get('payment_alipay_cross_merchant_private_key'); 70 } 71 72 if (isset($this->request->post['payment_alipay_cross_currency'])) { 73 $data['payment_alipay_cross_currency'] = $this->request->post['payment_alipay_cross_currency']; 74 } else { 75 $data['payment_alipay_cross_currency'] = $this->config->get('payment_alipay_cross_currency'); 76 } 77 78 $this->load->model('localisation/currency'); 79 80 $currencies = $this->model_localisation_currency->getCurrencies(); 81 $data['currencies'] = array(); 82 foreach ($currencies as $currency) { 83 if (in_array($currency['code'], $this->currencies)) { 84 $data['currencies'][] = array( 85 'code' => $currency['code'], 86 'title' => $currency['title'] 87 ); 88 } 89 } 90 91 if (isset($this->request->post['payment_alipay_cross_test'])) { 92 $data['payment_alipay_cross_test'] = $this->request->post['payment_alipay_cross_test']; 93 } else { 94 $data['payment_alipay_cross_test'] = $this->config->get('payment_alipay_cross_test'); 95 } 96 97 if (isset($this->request->post['payment_alipay_cross_total'])) { 98 $data['payment_alipay_cross_total'] = $this->request->post['payment_alipay_cross_total']; 99 } else { 100 $data['payment_alipay_cross_total'] = $this->config->get('payment_alipay_cross_total'); 101 } 102 103 if (isset($this->request->post['payment_alipay_cross_order_status_id'])) { 104 $data['payment_alipay_cross_order_status_id'] = $this->request->post['payment_alipay_cross_order_status_id']; 105 } else { 106 $data['payment_alipay_cross_order_status_id'] = $this->config->get('payment_alipay_cross_order_status_id'); 107 } 108 109 $this->load->model('localisation/order_status'); 110 111 $data['order_statuses'] = $this->model_localisation_order_status->getOrderStatuses(); 112 113 if (isset($this->request->post['payment_alipay_cross_geo_zone_id'])) { 114 $data['payment_alipay_cross_geo_zone_id'] = $this->request->post['payment_alipay_cross_geo_zone_id']; 115 } else { 116 $data['payment_alipay_cross_geo_zone_id'] = $this->config->get('payment_alipay_cross_geo_zone_id'); 117 } 118 119 $this->load->model('localisation/geo_zone'); 120 121 $data['geo_zones'] = $this->model_localisation_geo_zone->getGeoZones(); 122 123 if (isset($this->request->post['payment_alipay_cross_test'])) { 124 $data['payment_alipay_cross_test'] = $this->request->post['payment_alipay_cross_test']; 125 } else { 126 $data['payment_alipay_cross_test'] = $this->config->get('payment_alipay_cross_test'); 127 } 128 129 if (isset($this->request->post['payment_alipay_cross_status'])) { 130 $data['payment_alipay_cross_status'] = $this->request->post['payment_alipay_cross_status']; 131 } else { 132 $data['payment_alipay_cross_status'] = $this->config->get('payment_alipay_cross_status'); 133 } 134 135 if (isset($this->request->post['payment_alipay_cross_sort_order'])) { 136 $data['payment_alipay_cross_sort_order'] = $this->request->post['payment_alipay_cross_sort_order']; 137 } else { 138 $data['payment_alipay_cross_sort_order'] = $this->config->get('payment_alipay_cross_sort_order'); 139 } 140 141 $data['header'] = $this->load->controller('common/header'); 142 $data['column_left'] = $this->load->controller('common/column_left'); 143 $data['footer'] = $this->load->controller('common/footer'); 144 145 $this->response->setOutput($this->load->view('extension/payment/alipay_cross', $data)); 146 } 147 148 private function validate() { 149 if (!$this->user->hasPermission('modify', 'extension/payment/alipay_cross')) { 150 $this->error['warning'] = $this->language->get('error_permission'); 151 } 152 153 if (!$this->request->post['payment_alipay_cross_app_id']) { 154 $this->error['app_id'] = $this->language->get('error_app_id'); 155 } 156 157 if (!$this->request->post['payment_alipay_cross_merchant_private_key']) { 158 $this->error['merchant_private_key'] = $this->language->get('error_merchant_private_key'); 159 } 160 161 return !$this->error; 162 } 163 }