Current Path : /home/sudancam/.trash/catalog.2/controller/account/ |
Current File : /home/sudancam/.trash/catalog.2/controller/account/voucher.php |
<?php class ControllerAccountVoucher extends Controller { private $error = array(); public function index() { $this->load->language('account/voucher'); $this->document->setTitle($this->language->get('heading_title')); if (!isset($this->session->data['vouchers'])) { $this->session->data['vouchers'] = array(); } if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) { $this->session->data['vouchers'][mt_rand()] = array( 'description' => sprintf($this->language->get('text_for'), $this->currency->format($this->request->post['amount'], $this->session->data['currency'], 1.0), $this->request->post['to_name']), 'to_name' => $this->request->post['to_name'], 'to_email' => $this->request->post['to_email'], 'from_name' => $this->request->post['from_name'], 'from_email' => $this->request->post['from_email'], 'voucher_theme_id' => $this->request->post['voucher_theme_id'], 'message' => $this->request->post['message'], 'amount' => $this->currency->convert($this->request->post['amount'], $this->session->data['currency'], $this->config->get('config_currency')) ); $this->response->redirect($this->url->link('account/voucher/success')); } $data['breadcrumbs'] = array(); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_home'), 'href' => $this->url->link('common/home') ); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_account'), 'href' => $this->url->link('account/account', '', true) ); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_voucher'), 'href' => $this->url->link('account/voucher', '', true) ); $data['help_amount'] = sprintf($this->language->get('help_amount'), $this->currency->format($this->config->get('config_voucher_min'), $this->session->data['currency']), $this->currency->format($this->config->get('config_voucher_max'), $this->session->data['currency'])); if (isset($this->error['warning'])) { $data['error_warning'] = $this->error['warning']; } else { $data['error_warning'] = ''; } if (isset($this->error['to_name'])) { $data['error_to_name'] = $this->error['to_name']; } else { $data['error_to_name'] = ''; } if (isset($this->error['to_email'])) { $data['error_to_email'] = $this->error['to_email']; } else { $data['error_to_email'] = ''; } if (isset($this->error['from_name'])) { $data['error_from_name'] = $this->error['from_name']; } else { $data['error_from_name'] = ''; } if (isset($this->error['from_email'])) { $data['error_from_email'] = $this->error['from_email']; } else { $data['error_from_email'] = ''; } if (isset($this->error['theme'])) { $data['error_theme'] = $this->error['theme']; } else { $data['error_theme'] = ''; } if (isset($this->error['amount'])) { $data['error_amount'] = $this->error['amount']; } else { $data['error_amount'] = ''; } $data['action'] = $this->url->link('account/voucher', '', true); if (isset($this->request->post['to_name'])) { $data['to_name'] = $this->request->post['to_name']; } else { $data['to_name'] = ''; } if (isset($this->request->post['to_email'])) { $data['to_email'] = $this->request->post['to_email']; } else { $data['to_email'] = ''; } if (isset($this->request->post['from_name'])) { $data['from_name'] = $this->request->post['from_name']; } elseif ($this->customer->isLogged()) { $data['from_name'] = $this->customer->getFirstName() . ' ' . $this->customer->getLastName(); } else { $data['from_name'] = ''; } if (isset($this->request->post['from_email'])) { $data['from_email'] = $this->request->post['from_email']; } elseif ($this->customer->isLogged()) { $data['from_email'] = $this->customer->getEmail(); } else { $data['from_email'] = ''; } $this->load->model('extension/total/voucher_theme'); $data['voucher_themes'] = $this->model_extension_total_voucher_theme->getVoucherThemes(); if (isset($this->request->post['voucher_theme_id'])) { $data['voucher_theme_id'] = $this->request->post['voucher_theme_id']; } else { $data['voucher_theme_id'] = ''; } if (isset($this->request->post['message'])) { $data['message'] = $this->request->post['message']; } else { $data['message'] = ''; } if (isset($this->request->post['amount'])) { $data['amount'] = $this->request->post['amount']; } else { $data['amount'] = $this->currency->format($this->config->get('config_voucher_min'), $this->config->get('config_currency'), false, false); } if (isset($this->request->post['agree'])) { $data['agree'] = $this->request->post['agree']; } else { $data['agree'] = false; } $data['column_left'] = $this->load->controller('common/column_left'); $data['column_right'] = $this->load->controller('common/column_right'); $data['content_top'] = $this->load->controller('common/content_top'); $data['content_bottom'] = $this->load->controller('common/content_bottom'); $data['footer'] = $this->load->controller('common/footer'); $data['header'] = $this->load->controller('common/header'); $this->response->setOutput($this->load->view('account/voucher', $data)); } public function success() { $this->load->language('account/voucher'); $this->document->setTitle($this->language->get('heading_title')); $data['breadcrumbs'] = array(); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_home'), 'href' => $this->url->link('common/home') ); $data['breadcrumbs'][] = array( 'text' => $this->language->get('heading_title'), 'href' => $this->url->link('account/voucher') ); $data['continue'] = $this->url->link('checkout/cart'); $data['column_left'] = $this->load->controller('common/column_left'); $data['column_right'] = $this->load->controller('common/column_right'); $data['content_top'] = $this->load->controller('common/content_top'); $data['content_bottom'] = $this->load->controller('common/content_bottom'); $data['footer'] = $this->load->controller('common/footer'); $data['header'] = $this->load->controller('common/header'); $this->response->setOutput($this->load->view('common/success', $data)); } protected function validate() { if ((utf8_strlen($this->request->post['to_name']) < 1) || (utf8_strlen($this->request->post['to_name']) > 64)) { $this->error['to_name'] = $this->language->get('error_to_name'); } if ((utf8_strlen($this->request->post['to_email']) > 96) || !filter_var($this->request->post['to_email'], FILTER_VALIDATE_EMAIL)) { $this->error['to_email'] = $this->language->get('error_email'); } if ((utf8_strlen($this->request->post['from_name']) < 1) || (utf8_strlen($this->request->post['from_name']) > 64)) { $this->error['from_name'] = $this->language->get('error_from_name'); } if ((utf8_strlen($this->request->post['from_email']) > 96) || !filter_var($this->request->post['from_email'], FILTER_VALIDATE_EMAIL)) { $this->error['from_email'] = $this->language->get('error_email'); } if (!isset($this->request->post['voucher_theme_id'])) { $this->error['theme'] = $this->language->get('error_theme'); } if ((!isset($this->request->post['amount'])) || (!is_numeric($this->request->post['amount'])) || ($this->currency->convert($this->request->post['amount'], $this->session->data['currency'], $this->config->get('config_currency')) < $this->config->get('config_voucher_min')) || ($this->currency->convert($this->request->post['amount'], $this->session->data['currency'], $this->config->get('config_currency')) > $this->config->get('config_voucher_max'))) { $this->error['amount'] = sprintf($this->language->get('error_amount'), $this->currency->format($this->config->get('config_voucher_min'), $this->session->data['currency']), $this->currency->format($this->config->get('config_voucher_max'), $this->session->data['currency'])); } if (!isset($this->request->post['agree'])) { $this->error['warning'] = $this->language->get('error_agree'); } return !$this->error; } }