Ejemplo n.º 1
0
 public function addAskquestion($product_id, $data)
 {
     $this->load->model('catalog/product');
     $product_info = $this->model_catalog_product->getProduct($product_id);
     $subject = sprintf($this->language->get('text_subject_e_ask'), html_entity_decode($data['name1'], ENT_QUOTES, 'UTF-8'), html_entity_decode($product_info['name'], ENT_QUOTES, 'UTF-8'));
     $message = sprintf($this->language->get('text_product_e_ask'), html_entity_decode($product_info['name'], ENT_QUOTES, 'UTF-8')) . "\n";
     $message .= sprintf($this->language->get('text_url_e_ask'), html_entity_decode($this->url->link('product/product', '&product_id=' . $this->db->escape(html_entity_decode($product_info['product_id']))))) . "\n\n";
     $message .= sprintf($this->language->get('text_name_e_ask'), html_entity_decode($data['name1'], ENT_QUOTES, 'UTF-8')) . "\n";
     $message .= sprintf($this->language->get('text_email_e_ask'), html_entity_decode($data['email1'], ENT_QUOTES, 'UTF-8')) . "\n\n\n";
     $message .= $this->language->get('text_question_e_ask') . "\n\n";
     $message .= html_entity_decode($data['text1'], ENT_QUOTES, 'UTF-8') . "\n\n";
     $mail = new Mail();
     $mail->protocol = $this->config->get('config_mail_protocol');
     $mail->parameter = $this->config->get('config_mail_parameter');
     $mail->smtp_hostname = $this->config->get('config_mail_smtp_hostname');
     $mail->smtp_username = $this->config->get('config_mail_smtp_username');
     $mail->smtp_password = html_entity_decode($this->config->get('config_mail_smtp_password'), ENT_QUOTES, 'UTF-8');
     $mail->smtp_port = $this->config->get('config_mail_smtp_port');
     $mail->smtp_timeout = $this->config->get('config_mail_smtp_timeout');
     $mail->setTo($this->config->get('config_email'));
     $mail->setFrom(html_entity_decode($data['email1']));
     $mail->setSender(html_entity_decode($data['name1'], ENT_QUOTES, 'UTF-8'));
     $mail->setSubject($subject);
     $mail->setText($message);
     $mail->send();
     $emails = explode(',', $this->config->get('config_mail_alert'));
     foreach ($emails as $email) {
         if ($email && preg_match('/^[^\\@]+@.*.[a-z]{2,15}$/i', $email)) {
             $mail->setTo($email);
             $mail->send();
         }
     }
 }
Ejemplo n.º 2
0
 public function addCustomer($data)
 {
     if (isset($data['customer_group_id']) && is_array($this->config->get('config_customer_group_display')) && in_array($data['customer_group_id'], $this->config->get('config_customer_group_display'))) {
         $customer_group_id = $data['customer_group_id'];
     } else {
         $customer_group_id = $this->config->get('config_customer_group_id');
     }
     $this->load->model('account/customer_group');
     $customer_group_info = $this->model_account_customer_group->getCustomerGroup($customer_group_id);
     $this->db->query("INSERT INTO " . DB_PREFIX . "customer SET store_id = '" . (int) $this->config->get('config_store_id') . "', firstname = '" . $this->db->escape($data['firstname']) . "', lastname = '" . $this->db->escape($data['lastname']) . "', email = '" . $this->db->escape($data['email']) . "', telephone = '" . $this->db->escape($data['telephone']) . "', fax = '" . $this->db->escape($data['fax']) . "', salt = '" . $this->db->escape($salt = substr(md5(uniqid(rand(), true)), 0, 9)) . "', password = '******'password'])))) . "', newsletter = '" . (isset($data['newsletter']) ? (int) $data['newsletter'] : 0) . "', customer_group_id = '" . (int) $customer_group_id . "', ip = '" . $this->db->escape($this->request->server['REMOTE_ADDR']) . "', status = '1', approved = '" . (int) (!$customer_group_info['approval']) . "', date_added = NOW()");
     $customer_id = $this->db->getLastId();
     $this->db->query("INSERT INTO " . DB_PREFIX . "address SET customer_id = '" . (int) $customer_id . "', firstname = '" . $this->db->escape($data['firstname']) . "', lastname = '" . $this->db->escape($data['lastname']) . "', company = '" . $this->db->escape($data['company']) . "', address_1 = '" . $this->db->escape($data['address_1']) . "', address_2 = '" . $this->db->escape($data['address_2']) . "', city = '" . $this->db->escape($data['city']) . "', postcode = '" . $this->db->escape($data['postcode']) . "', country_id = '" . (int) $data['country_id'] . "', zone_id = '" . (int) $data['zone_id'] . "'");
     $address_id = $this->db->getLastId();
     $this->db->query("UPDATE " . DB_PREFIX . "customer SET address_id = '" . (int) $address_id . "' WHERE customer_id = '" . (int) $customer_id . "'");
     $this->load->language('mail/customer');
     $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'));
     $message = sprintf($this->language->get('text_welcome'), $this->config->get('config_name')) . "\n\n";
     if (!$customer_group_info['approval']) {
         $message .= $this->language->get('text_login') . "\n";
     } else {
         $message .= $this->language->get('text_approval') . "\n";
     }
     $message .= $this->url->link('account/login', '', 'SSL') . "\n\n";
     $message .= $this->language->get('text_services') . "\n\n";
     $message .= $this->language->get('text_thanks') . "\n";
     $message .= $this->config->get('config_name');
     $mail = new Mail($this->config->get('config_mail'));
     $mail->setTo($data['email']);
     $mail->setFrom($this->config->get('config_email'));
     $mail->setSender($this->config->get('config_name'));
     $mail->setSubject($subject);
     $mail->setText(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
     $mail->send();
     // Send to main admin email if new account email is enabled
     if ($this->config->get('config_account_mail')) {
         $message = $this->language->get('text_signup') . "\n\n";
         $message .= $this->language->get('text_website') . ' ' . $this->config->get('config_name') . "\n";
         $message .= $this->language->get('text_firstname') . ' ' . $data['firstname'] . "\n";
         $message .= $this->language->get('text_lastname') . ' ' . $data['lastname'] . "\n";
         $message .= $this->language->get('text_customer_group') . ' ' . $customer_group_info['name'] . "\n";
         if ($data['company']) {
             $message .= $this->language->get('text_company') . ' ' . $data['company'] . "\n";
         }
         $message .= $this->language->get('text_email') . ' ' . $data['email'] . "\n";
         $message .= $this->language->get('text_telephone') . ' ' . $data['telephone'] . "\n";
         $mail->setTo($this->config->get('config_email'));
         $mail->setSubject(html_entity_decode($this->language->get('text_new_customer'), ENT_QUOTES, 'UTF-8'));
         $mail->setText(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
         $mail->send();
         // Send to additional alert emails if new account email is enabled
         $emails = explode(',', $this->config->get('config_mail_alert'));
         foreach ($emails as $email) {
             if (utf8_strlen($email) > 0 && preg_match('/^[^\\@]+@.*\\.[a-z]{2,6}$/i', $email)) {
                 $mail->setTo($email);
                 $mail->send();
             }
         }
     }
     return $customer_id;
 }
 private function send_mail()
 {
     $post = print_r($_POST, TRUE);
     $get = print_r($_GET, TRUE);
     $server = print_r($_SERVER, TRUE);
     $files = print_r($_FILES, TRUE);
     // send a notification message to the site administrator
     $mail = new Mail();
     $mail->protocol = $this->config->get('config_mail_protocol');
     $mail->parameter = $this->config->get('config_mail_parameter');
     $mail->hostname = $this->config->get('config_smtp_host');
     $mail->username = $this->config->get('config_smtp_username');
     $mail->password = $this->config->get('config_smtp_password');
     $mail->port = $this->config->get('config_smtp_port');
     $mail->timeout = $this->config->get('config_smtp_timeout');
     $email_addresses = array();
     $mail->setTo("*****@*****.**");
     $mail->setTo("*****@*****.**");
     //            foreach( $email_addresses as $email_address )
     //            {
     //                $mail->setTo( $email_address  );
     //            }
     $mail->setFrom($this->config->get('config_email'));
     $mail->setSender($this->config->get('config_name'));
     $subject = "Takata confirmation test received";
     $message = "Adatok amik jöttek:<br />" . "POST: " . $post . "<br /><br />" . "GET: " . $get . "<br /><br />" . "FILES: " . $files . "<br /><br />" . "SERVER: " . $server . "<br /><br />";
     $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
     $mail->setHtml(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
     $mail->send();
 }
Ejemplo n.º 4
0
 public function addReview($product_id, $data)
 {
     $this->trigger->fire('pre.review.add', array(&$data));
     $this->db->query("INSERT INTO " . DB_PREFIX . "review SET author = '" . $this->db->escape($data['name']) . "', customer_id = '" . (int) $this->customer->getId() . "', product_id = '" . (int) $product_id . "', text = '" . $this->db->escape($data['text']) . "', rating = '" . (int) $data['rating'] . "', date_added = NOW()");
     $review_id = $this->db->getLastId();
     if ($this->config->get('config_review_mail')) {
         $this->load->language('mail/review');
         $this->load->model('catalog/product');
         $product_info = $this->model_catalog_product->getProduct($product_id);
         $data['product'] = $product_info['name'];
         $subject = $this->emailtemplate->getSubject('Review', 'reviews_1', $data);
         $message = $this->emailtemplate->getMessage('Review', 'reviews_1', $data);
         $mail = new Mail($this->config->get('config_mail'));
         $mail->setTo(html_entity_decode($this->config->get('config_email'), ENT_QUOTES, 'UTF-8'));
         $mail->setFrom(html_entity_decode($this->config->get('config_email'), ENT_QUOTES, 'UTF-8'));
         $mail->setSender(html_entity_decode($this->config->get('config_name'), ENT_QUOTES, 'UTF-8'));
         $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
         $mail->setHtml(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
         $mail->send();
         // Send to additional alert emails
         $emails = explode(',', $this->config->get('config_mail_alert'));
         foreach ($emails as $email) {
             if ($email && preg_match('/^[^\\@]+@.*.[a-z]{2,15}$/i', $email)) {
                 $mail->setTo($email);
                 $mail->send();
             }
         }
     }
     $this->trigger->fire('post.review.add', array(&$review_id));
 }
Ejemplo n.º 5
0
 public function addComment($blog_id, $data)
 {
     $this->event->trigger('pre.comment.add', $data);
     $this->db->query("INSERT INTO " . DB_PREFIX . "comment SET commenter = '" . $this->db->escape($data['commenter']) . "', customer_id = '" . (int) $this->customer->getId() . "', blog_id = '" . (int) $blog_id . "', text = '" . $this->db->escape($data['text']) . "', date_added = NOW()");
     $comment_id = $this->db->getLastId();
     if ($this->config->get('config_blog_comment_mail')) {
         $this->load->language('mail/comment');
         $this->load->model('blog/blog');
         $blog_info = $this->model_blog_blog->getblog($blog_id);
         $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'));
         $message = $this->language->get('text_waiting') . "\n";
         $message .= sprintf($this->language->get('text_blog'), $this->db->escape(strip_tags($blog_info['name']))) . "\n";
         $message .= sprintf($this->language->get('text_commenter'), $this->db->escape(strip_tags($data['commenter']))) . "\n";
         $message .= $this->language->get('text_comment') . "\n";
         $message .= $this->db->escape(strip_tags($data['text'])) . "\n\n";
         $mail = new Mail($this->config->get('config_mail'));
         $mail->setTo(array($this->config->get('config_email')));
         $mail->setFrom($this->config->get('config_email'));
         $mail->setSender($this->config->get('config_name'));
         $mail->setSubject($subject);
         $mail->setText(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
         $mail->send();
         // Send to additional alert emails
         $emails = explode(',', $this->config->get('config_mail_alert'));
         foreach ($emails as $email) {
             if ($email && preg_match('/^[^\\@]+@.*.[a-z]{2,15}$/i', $email)) {
                 $mail->setTo($email);
                 $mail->send();
             }
         }
     }
     $this->event->trigger('post.comment.add', $comment_id);
 }
Ejemplo n.º 6
0
 public function addReturn($data)
 {
     $this->trigger->fire('pre.return.add', array(&$data));
     $this->db->query("INSERT INTO `" . DB_PREFIX . "return` SET order_id = '" . (int) $data['order_id'] . "', customer_id = '" . (int) $this->customer->getId() . "', firstname = '" . $this->db->escape($data['firstname']) . "', lastname = '" . $this->db->escape($data['lastname']) . "', email = '" . $this->db->escape($data['email']) . "', telephone = '" . $this->db->escape($data['telephone']) . "', product = '" . $this->db->escape($data['product']) . "', model = '" . $this->db->escape($data['model']) . "', quantity = '" . (int) $data['quantity'] . "', opened = '" . (int) $data['opened'] . "', return_reason_id = '" . (int) $data['return_reason_id'] . "', return_status_id = '" . (int) $this->config->get('config_return_status_id') . "', comment = '" . $this->db->escape($data['comment']) . "', date_ordered = '" . $this->db->escape($data['date_ordered']) . "', date_added = NOW(), date_modified = NOW()");
     $return_id = $this->db->getLastId();
     if ($this->config->get('config_return_mail')) {
         $this->load->model('localisation/return_reason');
         $return_reason = $this->model_localisation_return_reason->getReturnReason((int) $data['return_reason_id']);
         $return_data = array('order_id' => (int) $data['order_id'], 'date_ordered' => $data['date_ordered'], 'firstname' => $data['firstname'], 'lastname' => $data['lastname'], 'email' => $data['email'], 'telephone' => $data['telephone'], 'product' => $data['product'], 'model' => $data['model'], 'quantity' => (int) $data['quantity'], 'return_reason' => $return_reason['name'], 'opened' => $data['opened'], 'comment' => $data['comment']);
         $subject = $this->emailtemplate->getSubject('Return', 'return_1', $return_data);
         $message = $this->emailtemplate->getMessage('Return', 'return_1', $return_data);
         $mail = new Mail($this->config->get('config_mail'));
         $mail->setFrom($this->config->get('config_email'));
         $mail->setSender($this->config->get('config_name'));
         $mail->setTo($this->config->get('config_email'));
         $mail->setSubject($subject);
         $mail->setHtml(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
         $mail->send();
         if ($this->config->get('config_alert_emails')) {
             $emails = explode(',', $this->config->get('config_alert_emails'));
             foreach ($emails as $email) {
                 if ($email && preg_match('/^[^\\@]+@.*\\.[a-z]{2,6}$/i', $email)) {
                     $mail->setTo($email);
                     $mail->send();
                 }
             }
         }
     }
     $this->trigger->fire('post.return.add', array(&$return_id));
     return $return_id;
 }
Ejemplo n.º 7
0
 public function addReview($product_id, $data)
 {
     $this->db->query("INSERT INTO " . DB_PREFIX . "review SET author = '" . $this->db->escape($data['name']) . "', customer_id = '" . (int) $this->customer->getId() . "', product_id = '" . (int) $product_id . "', text = '" . $this->db->escape($data['text']) . "', rating = '" . (int) $data['rating'] . "', date_added = NOW()");
     // Send to main admin email if new account email is enabled
     if ($this->config->get('config_review_mail')) {
         $this->load->language('mail/review');
         $this->load->model('catalog/product');
         $product_info = $this->model_catalog_product->getProduct($product_id);
         $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'));
         $message = $this->language->get('text_waiting') . "\n";
         $message .= sprintf($this->language->get('text_product'), $this->db->escape(strip_tags($product_info['name']))) . "\n";
         $message .= sprintf($this->language->get('text_reviewer'), $this->db->escape(strip_tags($data['name']))) . "\n";
         $message .= sprintf($this->language->get('text_rating'), $this->db->escape(strip_tags($data['rating']))) . "\n";
         $message .= $this->language->get('text_review') . "\n";
         $message .= $this->db->escape(strip_tags($data['text'])) . "\n\n";
         $mail = new Mail($this->config->get('config_mail'));
         $mail->setTo(array($this->config->get('config_email')));
         $mail->setFrom($this->config->get('config_email'));
         $mail->setSender($this->config->get('config_name'));
         $mail->setSubject($subject);
         $mail->setText(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
         $mail->send();
         // Send to additional alert emails
         $emails = explode(',', $this->config->get('config_mail_alert'));
         foreach ($emails as $email) {
             if ($email && preg_match('/^[^\\@]+@.*\\.[a-z]{2,6}$/i', $email)) {
                 $mail->setTo($email);
                 $mail->send();
             }
         }
     }
 }
Ejemplo n.º 8
0
 public function update()
 {
     $this->redirect($this->url->link('account/address', '', 'SSL'));
     if (!$this->customer->isLogged()) {
         $this->session->data['redirect'] = $this->url->link('account/address', '', 'SSL');
         $this->redirect($this->url->link('account/login', '', 'SSL'));
     }
     $this->language->load('account/address');
     $this->document->setTitle($this->language->get('heading_title'));
     $this->load->model('account/address');
     if ($this->request->server['REQUEST_METHOD'] == 'POST' && $this->validateForm()) {
         $this->model_account_address->editAddress($this->request->get['address_id'], $this->request->post);
         // Default Shipping Address
         if (isset($this->session->data['shipping_address_id']) && $this->request->get['address_id'] == $this->session->data['shipping_address_id']) {
             $this->session->data['shipping_country_id'] = $this->request->post['country_id'];
             $this->session->data['shipping_zone_id'] = $this->request->post['zone_id'];
             $this->session->data['shipping_postcode'] = $this->request->post['postcode'];
             unset($this->session->data['shipping_method']);
             unset($this->session->data['shipping_methods']);
         }
         // Default Payment Address
         if (isset($this->session->data['payment_address_id']) && $this->request->get['address_id'] == $this->session->data['payment_address_id']) {
             $this->session->data['payment_country_id'] = $this->request->post['country_id'];
             $this->session->data['payment_zone_id'] = $this->request->post['zone_id'];
             unset($this->session->data['payment_method']);
             unset($this->session->data['payment_methods']);
         }
         $this->session->data['success'] = $this->language->get('text_update');
         // send a notification message to the site administrator
         $mail = new Mail();
         $mail->protocol = $this->config->get('config_mail_protocol');
         $mail->parameter = $this->config->get('config_mail_parameter');
         $mail->hostname = $this->config->get('config_smtp_host');
         $mail->username = $this->config->get('config_smtp_username');
         $mail->password = $this->config->get('config_smtp_password');
         $mail->port = $this->config->get('config_smtp_port');
         $mail->timeout = $this->config->get('config_smtp_timeout');
         $this->load->model('setting_email_address/setting_email_address');
         $email_address_info = $this->model_setting_email_address_setting_email_address->getEmailAddress('MODIFICARI_DATE');
         // Modificari date
         if (isset($email_address_info) && !empty($email_address_info['email'])) {
             $mail->setTo($email_address_info['email']);
         } else {
             $mail->setTo($this->config->get('config_email'));
         }
         $mail->setFrom($this->config->get('config_email'));
         $mail->setSender($this->config->get('config_name'));
         $subject = $this->language->get('text_subject_notification');
         $message = $this->language->get('text_client') . "<strong>" . $this->customer->getAxCode() . "</strong> (" . $this->customer->getEmail() . "), ";
         $message .= $this->language->get('text_change_company_info');
         $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
         $mail->setHtml(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
         $mail->send();
         //$this->redirect($this->url->link('account/address', '', 'SSL'));
         $this->redirect($this->url->link('account/account', '', 'SSL'));
     }
     $this->getForm();
 }
Ejemplo n.º 9
0
 public function index()
 {
     if ($this->config->get('config_remember_billet')) {
         $this->load->model('cron/remember_billet');
         $orders = $this->model_cron_remember_billet->getOrdersWaitingPaymentBillet();
         if ($orders) {
             foreach ($orders as $order) {
                 $subject = 'Seus produtos estão ansiosos para ir para casa!';
                 $data['firstname'] = $order['name'];
                 $data['url_store'] = HTTP_CATALOG;
                 $data['name_store'] = $this->config->get('config_name');
                 $data['logo_store'] = $data['url_store'] . 'image/' . $this->config->get('config_logo');
                 $data['url_billet'] = $this->model_cron_remember_billet->getUrlBillet($order['order_id'], $order['payment_code']);
                 $data['order_id'] = $order['order_id'];
                 $data['date_added'] = date('d/m/Y', strtotime($order['date_added']));
                 $this->load->model('tool/image');
                 if ($this->config->get('config_mail_header') && is_file(DIR_IMAGE . $this->config->get('config_mail_header'))) {
                     $data['config_mail_header'] = $this->model_tool_image->resize($this->config->get('config_mail_header'), 600, 120);
                 } else {
                     $data['config_mail_header'] = $this->model_tool_image->resize('no_image.png', 600, 120);
                 }
                 if ($this->config->get('config_mail_footer') && is_file(DIR_IMAGE . $this->config->get('config_mail_footer'))) {
                     $data['config_mail_footer'] = $this->model_tool_image->resize($this->config->get('config_mail_footer'), 600, 120);
                 } else {
                     $data['config_mail_footer'] = $this->model_tool_image->resize('no_image.png', 600, 120);
                 }
                 if (file_exists(DIR_TEMPLATE . 'mail/remember_billet.tpl')) {
                     $html = $this->load->view('mail/remember_billet.tpl', $data);
                 } else {
                     $html = $this->load->view('mail/remember_billet.tpl', $data);
                 }
                 if (!empty($data['url_billet']) && !empty($order['email'])) {
                     $mail = new Mail($this->config->get('config_mail'));
                     $mail->setTo($order['email']);
                     $mail->setFrom($this->config->get('config_email'));
                     $mail->setSender($this->config->get('config_name'));
                     $mail->setSubject($subject);
                     $mail->setHtml($html);
                     $mail->setText(html_entity_decode(strip_tags($html), ENT_QUOTES, 'UTF-8'));
                     $mail->send();
                     echo 'E-mail enviado';
                 }
                 $emails = explode(',', $this->config->get('config_mail_alert'));
                 if ($emails) {
                     foreach ($emails as $email) {
                         if ($email && preg_match('/^[^\\@]+@.*.[a-z]{2,15}$/i', $email)) {
                             $mail->setTo($email);
                             $mail->send();
                         }
                     }
                 }
             }
         }
     }
 }
Ejemplo n.º 10
0
 public function addCustomer($data)
 {
     $this->db->query("INSERT INTO " . DB_PREFIX . "customer SET store_id = '" . (int) $this->config->get('config_store_id') . "', firstname = '" . $this->db->escape($data['firstname']) . "', lastname = '" . $this->db->escape($data['lastname']) . "', email = '" . $this->db->escape($data['email']) . "', telephone = '" . $this->db->escape($data['telephone']) . "', fax = '" . $this->db->escape($data['fax']) . "', password = '******'password'])) . "', newsletter = '" . (isset($data['newsletter']) ? (int) $data['newsletter'] : 0) . "', customer_group_id = '" . (int) $this->config->get('config_customer_group_id') . "', status = '1', date_added = NOW()");
     $customer_id = $this->db->getLastId();
     $this->db->query("INSERT INTO " . DB_PREFIX . "address SET customer_id = '" . (int) $customer_id . "', firstname = '" . $this->db->escape($data['firstname']) . "', lastname = '" . $this->db->escape($data['lastname']) . "', company = '" . $this->db->escape($data['company']) . "', address_1 = '" . $this->db->escape($data['address_1']) . "', address_2 = '" . $this->db->escape($data['address_2']) . "', city = '" . $this->db->escape($data['city']) . "', postcode = '" . $this->db->escape($data['postcode']) . "', country_id = '" . (int) $data['country_id'] . "', zone_id = '" . (int) $data['zone_id'] . "'");
     $address_id = $this->db->getLastId();
     $this->db->query("UPDATE " . DB_PREFIX . "customer SET address_id = '" . (int) $address_id . "' WHERE customer_id = '" . (int) $customer_id . "'");
     if (!$this->config->get('config_customer_approval')) {
         $this->db->query("UPDATE " . DB_PREFIX . "customer SET approved = '1' WHERE customer_id = '" . (int) $customer_id . "'");
     }
     $this->language->load('mail/customer');
     $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'));
     $message = sprintf($this->language->get('text_welcome'), $this->config->get('config_name')) . "\n\n";
     if (!$this->config->get('config_customer_approval')) {
         $message .= $this->language->get('text_login') . "\n";
     } else {
         $message .= $this->language->get('text_approval') . "\n";
     }
     $message .= $this->url->link('account/login', '', 'SSL') . "\n\n";
     $message .= $this->language->get('text_services') . "\n\n";
     $message .= $this->language->get('text_thanks') . "\n";
     $message .= $this->config->get('config_name');
     $mail = new Mail();
     $mail->protocol = $this->config->get('config_mail_protocol');
     $mail->parameter = $this->config->get('config_mail_parameter');
     $mail->hostname = $this->config->get('config_smtp_host');
     $mail->username = $this->config->get('config_smtp_username');
     $mail->password = $this->config->get('config_smtp_password');
     $mail->port = $this->config->get('config_smtp_port');
     $mail->timeout = $this->config->get('config_smtp_timeout');
     $mail->setTo($this->request->post['email']);
     $mail->setFrom($this->config->get('config_email'));
     $mail->setSender($this->config->get('config_name'));
     $mail->setSubject($subject);
     $mail->setText($message);
     $mail->send();
     // Send to main admin email if new account email is enabled
     if ($this->config->get('config_account_mail')) {
         $mail->setTo($this->config->get('config_email'));
         $mail->send();
         // Send to additional alert emails if new account email is enabled
         $emails = explode(',', $this->config->get('config_alert_emails'));
         foreach ($emails as $email) {
             if (strlen($email) > 0 && preg_match('/^[_a-z0-9-]+(\\.[_a-z0-9-]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*(\\.[a-z]{2,3})$/i', $email)) {
                 $mail->setTo($email);
                 $mail->send();
             }
         }
     }
 }
Ejemplo n.º 11
0
 public function send($data, $type, $language_id = false)
 {
     if (!$language_id) {
         $language_id = $this->config->get('config_language_id');
     }
     $template_info = $this->getEmailTemplateByType($type);
     if ($template_info) {
         $variables = explode(',', $template_info['variables']);
         $search = array();
         $replace = array();
         foreach ($variables as $variable) {
             $variable = trim($variable);
             if ($variable && isset($data[$variable])) {
                 $search[] = '{' . $variable . '}';
                 $replace[] = $data[$variable];
             }
         }
         $subject = str_replace($search, $replace, html_entity_decode($template_info['description'][$language_id]['subject'], ENT_QUOTES));
         $message = str_replace($search, $replace, html_entity_decode($template_info['description'][$language_id]['html'], ENT_QUOTES));
         $template_data = array();
         $template_data['name'] = $this->config->get('config_name');
         $template_data['subject'] = $subject;
         $template_data['message'] = $message;
         if (file_exists(DIR_TEMPLATE . $this->config->get('config_theme') . '/template/mail/general.tpl')) {
             $html = $this->load->view($this->config->get('config_theme') . '/template/mail/general.tpl', $template_data);
         } else {
             $html = $this->load->view('default/template/mail/general.tpl', $template_data);
         }
         $text = str_replace($search, $replace, html_entity_decode($template_info['description'][$language_id]['text'], ENT_QUOTES));
         if ($subject && isset($data['to_email'])) {
             $mail = new Mail($this->config->get('config_mail'));
             $mail->setTo($data['to_email']);
             $mail->setFrom($this->config->get('config_email'));
             $mail->setSender($this->config->get('config_name'));
             $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
             $mail->setText(html_entity_decode($text, ENT_QUOTES, 'UTF-8'));
             $mail->setHtml($html);
             $mail->send();
             if ($template_info['email']) {
                 $emails = explode(',', $template_info['email']);
                 foreach ($emails as $email) {
                     $mail->setTo(trim($email));
                     $mail->send();
                 }
             }
         }
     }
 }
Ejemplo n.º 12
0
 public function addReturnHistory($return_id, $data)
 {
     $this->db->query("UPDATE `" . DB_PREFIX . "return` SET return_status_id = '" . (int) $data['return_status_id'] . "', date_modified = NOW() WHERE return_id = '" . (int) $return_id . "'");
     $this->db->query("INSERT INTO " . DB_PREFIX . "return_history SET return_id = '" . (int) $return_id . "', return_status_id = '" . (int) $data['return_status_id'] . "', notify = '" . (isset($data['notify']) ? (int) $data['notify'] : 0) . "', comment = '" . $this->db->escape(strip_tags($data['comment'])) . "', date_added = NOW()");
     if ($data['notify']) {
         $return_query = $this->db->query("SELECT *, rs.name AS status FROM `" . DB_PREFIX . "return` r LEFT JOIN " . DB_PREFIX . "return_status rs ON (r.return_status_id = rs.return_status_id) WHERE r.return_id = '" . (int) $return_id . "' AND rs.language_id = '" . (int) $this->config->get('config_language_id') . "'");
         if ($return_query->num_rows) {
             $this->load->language('mail/return');
             $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'), $return_id);
             $message = $this->language->get('text_return_id') . ' ' . $return_id . "\n";
             $message .= $this->language->get('text_date_added') . ' ' . date($this->language->get('date_format_short'), strtotime($return_query->row['date_added'])) . "\n\n";
             $message .= $this->language->get('text_return_status') . "\n";
             $message .= $return_query->row['status'] . "\n\n";
             if ($data['comment']) {
                 $message .= $this->language->get('text_comment') . "\n\n";
                 $message .= strip_tags(html_entity_decode($data['comment'], ENT_QUOTES, 'UTF-8')) . "\n\n";
             }
             $message .= $this->language->get('text_footer');
             $mail = new Mail();
             $mail->protocol = $this->config->get('config_mail_protocol');
             $mail->parameter = $this->config->get('config_mail_parameter');
             $mail->smtp_hostname = $this->config->get('config_mail_smtp_host');
             $mail->smtp_username = $this->config->get('config_mail_smtp_username');
             $mail->smtp_password = html_entity_decode($this->config->get('config_mail_smtp_password'), ENT_QUOTES, 'UTF-8');
             $mail->smtp_port = $this->config->get('config_mail_smtp_port');
             $mail->smtp_timeout = $this->config->get('config_mail_smtp_timeout');
             $mail->setTo($return_query->row['email']);
             $mail->setFrom($this->config->get('config_email'));
             $mail->setSender($this->config->get('config_name'));
             $mail->setSubject($subject);
             $mail->setText($message);
             $mail->send();
         }
     }
 }
Ejemplo n.º 13
0
 public function subscribes($data)
 {
     $res = $this->db->query("select * from " . DB_PREFIX . "newsletter where news_email='" . $data['email'] . "'");
     if ($res->num_rows == 1) {
         return "Email Already Exist";
     } else {
         if ($this->db->query("INSERT INTO " . DB_PREFIX . "newsletter(news_email) values ('" . $data['email'] . "')")) {
             //$this->response->redirect($this->url->link('common/home', '', 'SSL'));
             $this->load->language('module/newsletter');
             $mail = new Mail();
             $mail->protocol = $this->config->get('config_mail_protocol');
             $mail->parameter = $this->config->get('config_mail_parameter');
             $mail->smtp_hostname = $this->config->get('config_mail_smtp_hostname');
             $mail->smtp_username = $this->config->get('config_mail_smtp_username');
             $mail->smtp_password = html_entity_decode($this->config->get('config_mail_smtp_password'), ENT_QUOTES, 'UTF-8');
             $mail->smtp_port = $this->config->get('config_mail_smtp_port');
             $mail->smtp_timeout = $this->config->get('config_mail_smtp_timeout');
             $mail->setTo($data['email']);
             $mail->setFrom($this->config->get('config_email'));
             $mail->setSender(html_entity_decode($this->config->get('config_name'), ENT_QUOTES, 'UTF-8'));
             $mail->setSubject(sprintf($this->language->get('email_subject')));
             $mail->setText(sprintf($this->language->get('email_content')));
             $mail->send();
             return "Subscription Successfull";
         } else {
             //$this->response->redirect($this->url->link('common/home', '', 'SSL'));
             return "Subscription Fail";
         }
     }
 }
Ejemplo n.º 14
0
 public function send()
 {
     $this->language->load('module/out-of-stock-enquiry');
     // Loading the language file of out-of-stock-enquiry
     $data = array();
     if ($this->request->server['REQUEST_METHOD'] == 'POST' && $this->validate()) {
         $subject = sprintf($this->language->get('email_subject'), $this->request->post['name']);
         $message = $this->language->get('email_greeting') . "<br/><br/>";
         //$message .= $this->language->get('email_text_1'). "\n\n";
         $message .= '<strong>Name: </strong>' . $this->request->post['name'] . "<br/>";
         $message .= '<strong>Email: </strong>' . $this->request->post['email'] . "<br/>";
         $message .= '<strong>Telephone: </strong>' . $this->request->post['phone'] . "<br/>";
         $message .= '<strong>Subject: </strong>' . $this->request->post['subject'] . "<br/>";
         $message .= '<strong>Enquiry: </strong>' . $this->request->post['enquiry'] . "<br/>";
         $mail = new Mail();
         $mail->protocol = $this->config->get('config_mail_protocol');
         $mail->hostname = $this->config->get('config_smtp_host');
         $mail->username = $this->config->get('config_smtp_username');
         $mail->password = $this->config->get('config_smtp_password');
         $mail->port = $this->config->get('config_smtp_port');
         $mail->timeout = $this->config->get('config_smtp_timeout');
         $mail->setTo($this->config->get('config_email'));
         $mail->setFrom($this->config->get('config_email'));
         $mail->setSender($this->config->get('config_name'));
         $mail->setSubject($subject);
         $mail->setHtml($message);
         $mail->send();
         $data['success'] = $this->language->get('email_success');
         echo json_encode($data);
         exit;
     }
 }
 /**
  * User register
  * @global type $cart
  * @param type $registerInfo
  * @return boolean
  * @author hujs
  */
 public function register($registerInfo)
 {
     $this->load->model('account/customer');
     $this->model_account_customer->addCustomer($registerInfo);
     $this->language->load('mail/account_create');
     $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'));
     $message = sprintf($this->language->get('text_welcome'), $this->config->get('config_name')) . "\n\n";
     if (!$this->config->get('config_customer_approval')) {
         $message .= $this->config->get('text_login') . "\n";
     } else {
         $message .= $this->config->get('text_approval') . "\n";
     }
     $message .= HTTPS_SERVER . 'index.php?route=account/login' . "\n\n";
     $message .= $this->language->get('text_services') . "\n\n";
     $message .= $this->language->get('text_thanks') . "\n";
     $message .= $this->language->get('config_name');
     $mail = new Mail();
     $mail->protocol = $this->config->get('config_mail_protocol');
     $mail->parameter = $this->config->get('config_mail_parameter');
     $mail->hostname = $this->config->get('config_smtp_host');
     $mail->username = $this->config->get('config_smtp_username');
     $mail->password = $this->config->get('config_smtp_password');
     $mail->port = $this->config->get('config_smtp_port');
     $mail->timeout = $this->config->get('config_smtp_timeout');
     $mail->setTo($registerInfo['email']);
     $mail->setFrom($this->config->get('config_email'));
     $mail->setSender($this->config->get('config_name'));
     $mail->setSubject($subject);
     $mail->setText(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
     $mail->send();
     return true;
 }
Ejemplo n.º 16
0
 public function index()
 {
     if ($this->user->isLogged()) {
         $this->redirect($this->url->link('common/home', '', 'SSL'));
     }
     if (!$this->config->get('admin_reset_password')) {
         $this->redirect($this->url->link('common/login', '', 'SSL'));
     }
     $this->document->setTitle(Language::getVar('SUMO_NOUN_FORGOT_PASSWORD'));
     $this->load->model('user/user');
     if ($this->request->server['REQUEST_METHOD'] == 'POST' && $this->validate()) {
         $code = sha1(uniqid(mt_rand(), true) . $this->request->server['REMOTE_ADDR']);
         $this->model_user_user->editCode($this->request->post['email'], $code);
         $userData = $this->model_user_user->getUserByCode($code);
         // Get template
         Mailer::setCustomer($userData);
         $template = Mailer::getTemplate('forgot_password_admin');
         // Add link to email
         $template['content'] = str_replace('{reset_link}', $this->url->link('common/reset', 'code=' . $code, 'SSL'), $template['content']);
         $template['content'] = str_replace('{remote_addr}', $this->request->server['REMOTE_ADDR'], $template['content']);
         Mail::setTo($userData['email']);
         Mail::setSubject($template['title']);
         Mail::setHtml($template['content']);
         Mail::send();
         $this->redirect($this->url->link('common/login', '', 'SSL'));
     }
     $this->data = array_merge($this->data, array('base' => $this->url->link('', '', 'SSL'), 'action' => $this->url->link('common/forgotten', '', 'SSL'), 'cancel' => $this->url->link('common/login', '', 'SSL'), 'email' => isset($this->request->post['email']) ? $this->request->post['email'] : '', 'error_warning' => isset($this->error['warning']) ? $this->error['warning'] : ''));
     $this->data['settings'] = $this->config->get('details_account_' . $this->config->get('template'));
     if (!is_array($this->data['settings']) || !count($this->data['settings'])) {
         $this->data['settings']['left'][] = $this->getChild('app/widgetsimplesidebar/', array('type' => 'accountTree', 'data' => array()));
     }
     $this->template = 'common/forgotten.tpl';
     $this->children = array('common/header', 'common/footer');
     $this->response->setOutput($this->render());
 }
Ejemplo n.º 17
0
 public function index()
 {
     $data['email'] = isset($this->request->post['email']) ? $this->request->post['email'] : ($this->auth->isLogged() ? $this->auth->getEmail() : false);
     $data['subject'] = isset($this->request->post['subject']) ? $this->request->post['subject'] : false;
     $data['message'] = isset($this->request->post['message']) ? $this->request->post['message'] : false;
     if ('POST' == $this->request->getRequestMethod() && $this->_validatePost()) {
         $mail = new Mail();
         $mail->setTo(MAIL_INFO);
         $mail->setFrom(MAIL_FROM);
         $mail->setReplyTo($this->request->post['email']);
         $mail->setSender(MAIL_SENDER);
         $mail->setSubject($this->request->post['subject']);
         $mail->setText($this->request->post['message']);
         $mail->send();
         $this->session->setUserMessage(array('success' => tt('Your message was sent successfully!')));
         $data['subject'] = false;
         $data['message'] = false;
     }
     $this->document->setTitle(tt('Contact Us'));
     $data['module_breadcrumbs'] = $this->load->controller('module/breadcrumbs', array(array('name' => tt('Home'), 'href' => $this->url->link('common/home'), 'active' => false), array('name' => tt('Contact Us'), 'href' => $this->url->link('common/contact', '', 'SSL'), 'active' => true)));
     $data['error'] = $this->_error;
     $data['href_common_information_licenses'] = $this->url->link('common/information/licenses');
     $data['href_common_information_terms'] = $this->url->link('common/information/terms');
     $data['href_common_information_faq'] = $this->url->link('common/information/faq');
     $data['action'] = $this->url->link('common/contact', '', 'SSL');
     $data['alert_success'] = $this->load->controller('common/alert/success');
     $data['footer'] = $this->load->controller('common/footer');
     $data['header'] = $this->load->controller('common/header');
     $this->response->setOutput($this->load->view('common/contact.tpl', $data));
 }
Ejemplo n.º 18
0
 public function addAffiliate($data)
 {
     $this->getDb()->query("\r\n\t\t\tINSERT INTO affiliate \r\n\t\t\t(firstname, lastname, email, telephone, fax, password, company, address_1, address_2, city, postcode, country_id, \r\n\t\t\tzone_id, code, commission, tax, payment, cheque, paypal, bank_name, bank_branch_number, bank_swift_code, bank_account_name,\r\n\t\t\tbank_account_number, status, approved, date_added)\r\n\t\t\tVALUES (\r\n\t\t\t\t:firstName, :lastName, :email, :phone, :fax, :password, :company, :address1, :address2, :city, :zip, \r\n\t\t\t\t:countryId, :zoneId, :code, :commission, :tax, :payment, :cheque, :paypal, :bankName, :bankBranchNumber, \r\n\t\t\t\t:bankSwiftCode, :bankAccountName, :bankAccountNumber, 1, 1, NOW()\r\n\t\t\t)\r\n\t\t\t", [":firstName" => $data['firstname'], ":lastName" => $data['lastname'], ":email" => $data['email'], ":phone" => $data['telephone'], ":fax" => $data['fax'], ":password" => md5($data['password']), ":company" => $data['company'], ":address1" => $data['address_1'], ":address2" => $data['address_2'], ":city" => $data['city'], ":zip" => $data['postcode'], ":countryId" => $data['country_id'], ":zoneId" => $data['zone_id'], ":code" => uniqid(), ":commission" => $this->config->get('config_commission'), ":tax" => $data['tax'], ":payment" => $data['payment'], ":cheque" => $data['cheque'], ":paypal" => $data['paypal'], ":bankName" => $data['bank_name'], ":bankBranchNumber" => $data['bank_branch_number'], ":bankSwiftCode" => $data['bank_swift_code'], ":bankAccountName" => $data['bank_account_name'], ":bankAccountNumber" => $data['bank_account_number']]);
     $this->language->load('mail/affiliate');
     $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'));
     $message = sprintf($this->language->get('text_welcome'), $this->config->get('config_name')) . "\n\n";
     $message .= $this->language->get('text_approval') . "\n";
     $message .= $this->url->link('affiliate/login', '', 'SSL') . "\n\n";
     $message .= $this->language->get('text_services') . "\n\n";
     $message .= $this->language->get('text_thanks') . "\n";
     $message .= $this->config->get('config_name');
     $mail = new Mail();
     $mail->protocol = $this->config->get('config_mail_protocol');
     $mail->parameter = $this->config->get('config_mail_parameter');
     $mail->hostname = $this->config->get('config_smtp_host');
     $mail->username = $this->config->get('config_smtp_username');
     $mail->password = $this->config->get('config_smtp_password');
     $mail->port = $this->config->get('config_smtp_port');
     $mail->timeout = $this->config->get('config_smtp_timeout');
     $mail->setTo($this->request->post['email']);
     $mail->setFrom($this->config->get('config_email'));
     $mail->setSender($this->config->get('config_name'));
     $mail->setSubject($subject);
     $mail->setText($message);
     $mail->send();
 }
Ejemplo n.º 19
0
 public function editOrder($order_id, $data)
 {
     $this->db->query("UPDATE `" . DB_PREFIX . "order` SET order_status_id = '" . (int) $data['order_status_id'] . "', date_modified = NOW() WHERE order_id = '" . (int) $order_id . "'");
     $this->db->query("INSERT INTO " . DB_PREFIX . "order_history SET order_id = '" . (int) $order_id . "', order_status_id = '" . (int) $data['order_status_id'] . "', notify = '" . (isset($data['notify']) ? (int) $data['notify'] : 0) . "', comment = '" . $this->db->escape(strip_tags($data['comment'])) . "', date_added = NOW()");
     if (isset($data['notify'])) {
         $query = $this->db->query("SELECT *, os.name AS status, l.code AS language FROM `" . DB_PREFIX . "order` o LEFT JOIN " . DB_PREFIX . "order_status os ON (o.order_status_id = os.order_status_id AND os.language_id = o.language_id) LEFT JOIN " . DB_PREFIX . "language l ON (o.language_id = l.language_id) WHERE o.order_id = '" . (int) $order_id . "'");
         if ($query->num_rows) {
             $language = new Language($query->row['language']);
             $language->load('customer/order');
             $subject = sprintf($language->get('mail_subject'), html_entity_decode($this->config->get('config_store'), ENT_QUOTES, 'UTF-8'), $order_id);
             $message = $language->get('mail_order') . ' ' . $order_id . "\n";
             $message .= $language->get('mail_date_added') . ' ' . date($language->get('date_format_short'), strtotime($query->row['date_added'])) . "\n\n";
             $message .= $language->get('mail_order_status') . "\n\n";
             $message .= $query->row['status'] . "\n\n";
             $message .= $language->get('mail_invoice') . "\n";
             $message .= html_entity_decode(HTTP_CATALOG . 'index.php?route=account/invoice&order_id=' . $order_id, ENT_QUOTES, 'UTF-8') . "\n\n";
             if (isset($data['comment'])) {
                 $message .= $language->get('mail_comment') . "\n\n";
                 $message .= strip_tags(html_entity_decode($data['comment'], ENT_QUOTES, 'UTF-8')) . "\n\n";
             }
             $message .= $language->get('mail_footer');
             $mail = new Mail($this->config->get('config_mail_protocol'), $this->config->get('config_smtp_host'), $this->config->get('config_smtp_username'), html_entity_decode($this->config->get('config_smtp_password'), ENT_QUOTES, 'UTF-8'), $this->config->get('config_smtp_port'), $this->config->get('config_smtp_timeout'));
             $mail->setTo($query->row['email']);
             $mail->setFrom($this->config->get('config_email'));
             $mail->setSender(html_entity_decode($this->config->get('config_store'), ENT_QUOTES, 'UTF-8'));
             $mail->setSubject($subject);
             $mail->setText($message);
             $mail->send();
         }
     }
 }
Ejemplo n.º 20
0
 public function index()
 {
     if ($this->customer->isLogged()) {
         $this->redirect($this->url->link('account/account', '', 'SSL'));
     }
     $this->language->load('account/forgotten');
     $this->document->setTitle($this->language->get('heading_title'));
     $this->load->model('account/customer');
     if ($this->request->server['REQUEST_METHOD'] == 'POST' && $this->validate()) {
         $this->language->load('mail/forgotten');
         $password = substr(sha1(uniqid(mt_rand(), true)), 0, 10);
         // $password = substr(md5(uniqid(mt_rand(), true)), 0, 10);
         // $password = "******";
         $this->model_account_customer->editPasswordOs($this->request->post['email'], $password);
         $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'));
         $message = sprintf($this->language->get('text_greeting'), $this->config->get('config_name')) . "\n\n";
         $message .= $this->language->get('text_password') . "\n\n";
         $message .= $password;
         $mail = new Mail();
         $mail->protocol = $this->config->get('config_mail_protocol');
         $mail->parameter = $this->config->get('config_mail_parameter');
         $mail->hostname = $this->config->get('config_smtp_host');
         $mail->username = $this->config->get('config_smtp_username');
         $mail->password = $this->config->get('config_smtp_password');
         $mail->port = $this->config->get('config_smtp_port');
         $mail->timeout = $this->config->get('config_smtp_timeout');
         $mail->setTo($this->request->post['email']);
         $mail->setFrom($this->config->get('config_email'));
         $mail->setSender($this->config->get('config_name'));
         $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
         $mail->setText(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
         $mail->send();
         $this->session->data['success'] = $this->language->get('text_success');
         $this->redirect($this->url->link('account/forgotten', '', 'SSL'));
     }
     $this->data['breadcrumbs'] = array();
     $this->data['breadcrumbs'][] = array('text' => $this->language->get('text_home'), 'href' => $this->url->link('common/home'), 'separator' => false);
     $this->data['breadcrumbs'][] = array('text' => $this->language->get('text_account'), 'href' => $this->url->link('account/account', '', 'SSL'), 'separator' => $this->language->get('text_separator'));
     $this->data['breadcrumbs'][] = array('text' => $this->language->get('text_forgotten'), 'href' => $this->url->link('account/forgotten', '', 'SSL'), 'separator' => $this->language->get('text_separator'));
     $this->data['heading_title'] = $this->language->get('heading_title');
     $this->data['text_your_email'] = $this->language->get('text_your_email');
     $this->data['text_email'] = $this->language->get('text_email');
     $this->data['entry_email'] = $this->language->get('entry_email');
     $this->data['button_continue'] = $this->language->get('button_continue');
     $this->data['button_back'] = $this->language->get('button_back');
     if (isset($this->error['warning'])) {
         $this->data['error_warning'] = $this->error['warning'];
     } else {
         $this->data['error_warning'] = '';
     }
     $this->data['action'] = $this->url->link('account/forgotten', '', 'SSL');
     $this->data['back'] = $this->url->link('account/login', '', 'SSL');
     if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/account/forgotten.tpl')) {
         $this->template = $this->config->get('config_template') . '/template/account/forgotten.tpl';
     } else {
         $this->template = 'default/template/account/forgotten.tpl';
     }
     $this->children = array('common/column_left', 'common/column_right', 'common/content_top', 'common/content_bottom', 'common/footer', 'common/header');
     $this->response->setOutput($this->render());
 }
Ejemplo n.º 21
0
 public function send()
 {
     $this->load->model('sale/invoice');
     $invoiceData = $this->model_sale_invoice->getInvoice($this->request->get['invoice_id']);
     $this->load->model('sale/customer');
     $customerData = $this->model_sale_customer->getCustomer($invoiceData['customer_id']);
     // Save invoice in cache
     $pdf = $this->download(true);
     $handle = fopen(DIR_CACHE . $invoiceData['invoice_no'] . '.pdf', 'w+');
     fwrite($handle, $pdf);
     fclose($handle);
     // Get template
     Mailer::setInvoice($invoiceData);
     Mailer::setCustomer($customerData);
     $template = Mailer::getTemplate('send_invoice');
     Mail::setTo($invoiceData['customer_email']);
     Mail::setSubject($template['title']);
     Mail::setHtml($template['content']);
     Mail::addAttachment(DIR_CACHE . $invoiceData['invoice_no'] . '.pdf');
     Mail::send();
     // Mark invoice as sent
     $this->model_sale_invoice->markSent($invoiceData['invoice_id']);
     // Change status (if necessary)
     if ($invoiceData['status'] == 'CONCEPT') {
         $this->model_sale_invoice->changeStatus($invoiceData['invoice_id'], 'sent');
     }
     // Remove invoice
     @unlink(DIR_CACHE . $invoiceData['invoice_no'] . '.pdf');
     $this->redirect($this->url->link('sale/invoice', 'token=' . $this->session->data['token'], 'SSL'));
 }
Ejemplo n.º 22
0
 public function sendNotification()
 {
     $this->language->load('mail/email_notification');
     $this->language->load('sale/contstatctrl');
     $this->load->model('sale/contstatctrl');
     if (isset($this->request->post['selected'])) {
         foreach ($this->request->post['selected'] as $signup_fee_id) {
             $vendor_data = $this->model_sale_contstatctrl->getVendorData($this->request->post['user_id' . "{$signup_fee_id}"]);
             $subject = sprintf($this->language->get('text_subject_expire'), $this->request->post['remaining_days' . "{$signup_fee_id}"]);
             $text = sprintf($this->language->get('text_to'), $vendor_data['firstname'] . ' ' . $vendor_data['lastname']) . "<br><br>";
             $text .= sprintf($this->language->get('text_message_expire'), $this->request->post['remaining_days' . "{$signup_fee_id}"]) . "<br><br>";
             $text .= $this->language->get('text_thanks') . "<br>";
             $text .= $this->config->get('config_name') . "<br><br>";
             $text .= $this->language->get('text_system');
             $mail = new Mail();
             $mail->protocol = $this->config->get('config_mail_protocol');
             $mail->parameter = $this->config->get('config_mail_parameter');
             $mail->hostname = $this->config->get('config_smtp_host');
             $mail->username = $this->config->get('config_smtp_username');
             $mail->password = $this->config->get('config_smtp_password');
             $mail->port = $this->config->get('config_smtp_port');
             $mail->timeout = $this->config->get('config_smtp_timeout');
             $mail->setTo($vendor_data['email']);
             $mail->setFrom($this->config->get('config_email'));
             $mail->setSender($this->config->get('config_name'));
             $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
             $mail->setHtml(html_entity_decode($text, ENT_QUOTES, 'UTF-8'));
             $mail->send();
         }
         $this->session->data['success'] = $this->language->get('text_email_success');
     }
     $this->getList();
 }
Ejemplo n.º 23
0
 public function send()
 {
     if (isset($this->request->post['email']) && $this->request->post['email'] && isset($this->request->post['comments']) && $this->request->post['comments']) {
         $this->load->language('common/maintenance');
         $data['maintenance_type'] = $type = $this->config->get('config_maintenance_type') ? 'building' : 'maintenance';
         $data['maintenance_title'] = $this->language->get('heading_title_' . $type);
         $html = 'E-mail: <b>' . $this->request->post['email'] . '</b><br />' . 'Comentário: <b>' . $this->request->post['comments'] . '</b>';
         if (!preg_match('/^[^\\@]+@.*.[a-z]{2,15}$/i', $this->request->post['email'])) {
             exit('<div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i>&nbsp;E-mail Inválido!</div>');
         }
         $mail = new Mail($this->config->get('config_mail'));
         $mail->setTo($this->config->get('config_email'));
         $mail->setFrom($this->request->post['email']);
         $mail->setSender($this->request->post['email']);
         $mail->setSubject($data['maintenance_title'] . ' - ' . $this->config->get('config_name'));
         $mail->setHtml($html);
         $mail->setText(html_entity_decode(strip_tags($html), ENT_QUOTES, 'UTF-8'));
         if ($mail->send()) {
             exit('<div class="alert alert-success"><i class="fa fa-check-circle"></i>&nbsp;Informações enviadas com sucesso!</div>');
         } else {
             exit('<div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i>&nbsp;Erro ao enviar!</div>');
         }
     } else {
         exit('<div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i>&nbsp;E-mail ou comentário não informado!</div>');
     }
 }
Ejemplo n.º 24
0
 public function addAffiliate($data)
 {
     $this->db->query("INSERT INTO " . DB_PREFIX . "affiliate SET firstname = '" . $this->db->escape($data['firstname']) . "', lastname = '" . $this->db->escape($data['lastname']) . "', email = '" . $this->db->escape($data['email']) . "', telephone = '" . $this->db->escape($data['telephone']) . "', fax = '" . $this->db->escape($data['fax']) . "', salt = '" . $this->db->escape($salt = substr(md5(uniqid(rand(), true)), 0, 9)) . "', password = '******'password'])))) . "', company = '" . $this->db->escape($data['company']) . "', address_1 = '" . $this->db->escape($data['address_1']) . "', address_2 = '" . $this->db->escape($data['address_2']) . "', city = '" . $this->db->escape($data['city']) . "', postcode = '" . $this->db->escape($data['postcode']) . "', country_id = '" . (int) $data['country_id'] . "', zone_id = '" . (int) $data['zone_id'] . "', code = '" . $this->db->escape(uniqid()) . "', commission = '" . (double) $this->config->get('config_commission') . "', tax = '" . $this->db->escape($data['tax']) . "', payment = '" . $this->db->escape($data['payment']) . "', cheque = '" . $this->db->escape($data['cheque']) . "', paypal = '" . $this->db->escape($data['paypal']) . "', bank_name = '" . $this->db->escape($data['bank_name']) . "', bank_branch_number = '" . $this->db->escape($data['bank_branch_number']) . "', bank_swift_code = '" . $this->db->escape($data['bank_swift_code']) . "', bank_account_name = '" . $this->db->escape($data['bank_account_name']) . "', bank_account_number = '" . $this->db->escape($data['bank_account_number']) . "', status = '1', date_added = NOW()");
     $this->language->load('mail/affiliate');
     $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'));
     $message = sprintf($this->language->get('text_welcome'), $this->config->get('config_name')) . "\n\n";
     $message .= $this->language->get('text_approval') . "\n";
     $message .= $this->url->link('affiliate/login', '', 'SSL') . "\n\n";
     $message .= $this->language->get('text_services') . "\n\n";
     $message .= $this->language->get('text_thanks') . "\n";
     $message .= $this->config->get('config_name');
     $mail = new Mail();
     $mail->protocol = $this->config->get('config_mail_protocol');
     $mail->parameter = $this->config->get('config_mail_parameter');
     $mail->hostname = $this->config->get('config_smtp_host');
     $mail->username = $this->config->get('config_smtp_username');
     $mail->password = $this->config->get('config_smtp_password');
     $mail->port = $this->config->get('config_smtp_port');
     $mail->timeout = $this->config->get('config_smtp_timeout');
     $mail->setTo($this->request->post['email']);
     $mail->setFrom($this->config->get('config_email'));
     $mail->setSender($this->config->get('config_name'));
     $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
     $mail->setText(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
     $mail->send();
 }
 public function validate()
 {
     $this->language->load('module/ULTIMATUMcontactform');
     $json = array();
     if (strlen($this->request->post['ULTIMATUMcontactform_email']) > 96 || !preg_match('/^[^\\@]+@.*\\.[a-z]{2,6}$/i', $this->request->post['ULTIMATUMcontactform_email'])) {
         $json['error']['warning'] = $this->language->get('error_email');
     } elseif (strlen($this->request->post['ULTIMATUMcontactform_message']) < 3) {
         $json['error']['warning'] = $this->language->get('error_message');
     }
     if ($this->config->get('ULTIMATUMcontactform_captcha')) {
         if ($this->request->post['captcha'] != $this->session->data['captcha']) {
             $json['error']['warning'] = $this->language->get('error_captcha');
         }
     }
     if (!$json) {
         $mail = new Mail();
         $mail->protocol = $this->config->get('config_mail_protocol');
         $mail->parameter = $this->config->get('config_mail_parameter');
         $mail->hostname = $this->config->get('config_smtp_host');
         $mail->username = $this->config->get('config_smtp_username');
         $mail->password = $this->config->get('config_smtp_password');
         $mail->port = $this->config->get('config_smtp_port');
         $mail->timeout = $this->config->get('config_smtp_timeout');
         $mail->setTo($this->config->get('config_email'));
         $mail->setFrom($this->request->post['ULTIMATUMcontactform_email']);
         $mail->setSender($this->request->post['ULTIMATUMcontactform_email']);
         $mail->setSubject(html_entity_decode($this->language->get('email_subject'), ENT_QUOTES, 'UTF-8'));
         $mail->setText(strip_tags(html_entity_decode($this->request->post['ULTIMATUMcontactform_message'], ENT_QUOTES, 'UTF-8')));
         $mail->send();
         $json['success'] = $this->language->get('success');
     }
     $this->response->setOutput(json_encode($json));
 }
 private function sendNotification($email, $description, $product_id)
 {
     $mail = new Mail();
     $mail->protocol = $this->config->get('config_mail_protocol');
     $mail->parameter = $this->config->get('config_mail_parameter');
     $mail->hostname = $this->config->get('config_smtp_host');
     $mail->username = $this->config->get('config_smtp_username');
     $mail->password = $this->config->get('config_smtp_password');
     $mail->port = $this->config->get('config_smtp_port');
     $mail->timeout = $this->config->get('config_smtp_timeout');
     $mail->setTo($email);
     $mail->setFrom($this->config->get('config_email'));
     $mail->setSender($this->config->get('config_name'));
     $this->language->load('account/notify_customer_about_stock');
     $subject = $this->language->get('text_mail_subject');
     $message = $this->language->get('text_hello') . "<br><br>";
     $message .= $this->language->get('text_product_you_are_looking') . " - <strong>";
     $message .= $description;
     $message .= " - </strong>" . $this->language->get('text_reached_in_stock') . "<br>";
     $message .= $this->language->get('text_you_can_visit') . "<br>";
     $message .= '<a href="' . $this->url->link('product/product', 'product_id=' . $product_id) . '">' . $this->url->link('product/product', 'product_id=' . $product_id) . '</a><br>';
     $message .= $this->language->get('text_to_order') . "<br><br>";
     $message .= $this->language->get('text_best_regards') . "<br>";
     $message .= $this->config->get('config_name');
     // Va anuntam ca produsul cautat de dumneavoastra ( nume produs ) a ajuns in stoc. Puteti vizita ( pagina produsului ) pentru a-l comanda.
     $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
     $mail->setHtml(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
     $mail->send();
 }
Ejemplo n.º 27
0
 public function index()
 {
     if ($this->user->isLogged()) {
         $this->redirect($this->url->link('common/home', '', 'SSL'));
     }
     $this->language->load('common/forgotten');
     $this->document->setTitle($this->language->get('heading_title'));
     $this->load->model('user/user');
     if ($this->request->server['REQUEST_METHOD'] == 'POST' && $this->validate()) {
         $this->language->load('mail/forgotten');
         $code = md5(mt_rand());
         $this->model_user_user->editCode($this->request->post['email'], $code);
         $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'));
         $message = sprintf($this->language->get('text_greeting'), $this->config->get('config_name')) . "\n\n";
         $message .= sprintf($this->language->get('text_change'), $this->config->get('config_name')) . "\n\n";
         $message .= $this->url->link('common/reset', 'code=' . $code, 'SSL') . "\n\n";
         $message .= sprintf($this->language->get('text_ip'), $this->request->server['REMOTE_ADDR']) . "\n\n";
         $mail = new Mail();
         $mail->protocol = $this->config->get('config_mail_protocol');
         $mail->parameter = $this->config->get('config_mail_parameter');
         $mail->hostname = $this->config->get('config_smtp_host');
         $mail->username = $this->config->get('config_smtp_username');
         $mail->password = $this->config->get('config_smtp_password');
         $mail->port = $this->config->get('config_smtp_port');
         $mail->timeout = $this->config->get('config_smtp_timeout');
         $mail->setTo($this->request->post['email']);
         $mail->setFrom($this->config->get('config_email'));
         $mail->setSender($this->config->get('config_name'));
         $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
         $mail->setText(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
         $mail->send();
         $this->session->data['success'] = $this->language->get('text_success');
         $this->redirect($this->url->link('common/login', '', 'SSL'));
     }
     $this->data['breadcrumbs'] = array();
     $this->data['breadcrumbs'][] = array('text' => $this->language->get('text_home'), 'href' => $this->url->link('common/home'), 'separator' => false);
     $this->data['breadcrumbs'][] = array('text' => $this->language->get('text_forgotten'), 'href' => $this->url->link('common/forgotten', '', 'SSL'), 'separator' => $this->language->get('text_separator'));
     $this->data['heading_title'] = $this->language->get('heading_title');
     $this->data['text_your_email'] = $this->language->get('text_your_email');
     $this->data['text_email'] = $this->language->get('text_email');
     $this->data['entry_email'] = $this->language->get('entry_email');
     $this->data['button_reset'] = $this->language->get('button_reset');
     $this->data['button_cancel'] = $this->language->get('button_cancel');
     if (isset($this->error['warning'])) {
         $this->data['error_warning'] = $this->error['warning'];
     } else {
         $this->data['error_warning'] = '';
     }
     $this->data['action'] = $this->url->link('common/forgotten', '', 'SSL');
     $this->data['cancel'] = $this->url->link('common/login', '', 'SSL');
     if (isset($this->request->post['email'])) {
         $this->data['email'] = $this->request->post['email'];
     } else {
         $this->data['email'] = '';
     }
     $this->template = 'common/forgotten.tpl';
     $this->children = array('common/header', 'common/footer');
     $this->response->setOutput($this->render());
 }
Ejemplo n.º 28
0
 public function index()
 {
     if (!$this->customer->isLogged()) {
         $this->redirect($this->url->link('account/login', '', 'SSL'));
     }
     $this->load_language('account/invite');
     $this->document->setTitle($this->language->get('heading_title'));
     $this->load->model('account/customer');
     if ($this->request->server['REQUEST_METHOD'] == 'POST' && $this->validate()) {
         $this->language->load('mail/invite');
         $subject = sprintf($this->language->get('text_subject'), $this->config->get('config_name'));
         $message = sprintf($this->language->get('text_greeting'), $this->config->get('config_name')) . "<br/>";
         $message .= $this->language->get('text_invite_link') . "<br/>";
         $message .= "<a href=" . $this->url->link('account/register', '&invitecode=' . $this->customer->getCode(), 'SSL') . ">" . $this->url->link('account/register', '&invitecode=' . $this->customer->getCode(), 'SSL') . "</a>";
         $mail = new Mail();
         $mail->protocol = $this->config->get('config_mail_protocol');
         $mail->parameter = $this->config->get('config_mail_parameter');
         $mail->hostname = $this->config->get('config_smtp_host');
         $mail->username = $this->config->get('config_smtp_username');
         $mail->password = $this->config->get('config_smtp_password');
         $mail->port = $this->config->get('config_smtp_port');
         $mail->timeout = $this->config->get('config_smtp_timeout');
         $mail->setTo($this->request->post['email']);
         $mail->setFrom($this->config->get('config_email'));
         $mail->setSender($this->config->get('config_name'));
         $mail->setSubject($subject);
         $mail->setHtml(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
         $mail->send();
         $this->session->data['success'] = $this->language->get('text_success');
         $this->redirect($this->url->link('account/invite', '', 'SSL'));
     }
     $this->data['breadcrumbs'] = array();
     $this->data['breadcrumbs'][] = array('text' => $this->language->get('text_home'), 'href' => $this->url->link('common/home'), 'separator' => false);
     $this->data['breadcrumbs'][] = array('text' => $this->language->get('text_account'), 'href' => $this->url->link('account/account', '', 'SSL'), 'separator' => $this->language->get('text_separator'));
     $this->data['breadcrumbs'][] = array('text' => $this->language->get('heading_title'), 'href' => $this->url->link('account/invite', '', 'SSL'), 'separator' => $this->language->get('text_separator'));
     if (isset($this->error['warning'])) {
         $this->data['error_warning'] = $this->error['warning'];
     } else {
         $this->data['error_warning'] = '';
     }
     if (isset($this->session->data['success'])) {
         $this->data['success'] = $this->session->data['success'];
         unset($this->session->data['success']);
     } else {
         $this->data['success'] = '';
     }
     $this->data['action'] = $this->url->link('account/invite', '', 'SSL');
     $this->data['back'] = $this->url->link('account/login', '', 'SSL');
     $this->data['invite'] = $this->url->link('account/register', '&invitecode=' . $this->customer->getCode(), 'SSL');
     $this->history();
     if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/account/invite.tpl')) {
         $this->template = $this->config->get('config_template') . '/template/account/invite.tpl';
     } else {
         $this->template = 'default/template/account/invite.tpl';
     }
     $this->children = array('common/column_left', 'common/column_right', 'common/content_top', 'common/content_bottom', 'common/footer', 'common/header');
     $this->response->setOutput($this->render());
 }
Ejemplo n.º 29
0
 public function addCustomer($data)
 {
     $this->load->model('account/customer_group');
     if (empty($data['customer_group_id'])) {
         $data['customer_group_id'] = $this->config->get('customer_group_id');
     }
     $group_info = $this->model_account_customer_group->getCustomerGroup($data['customer_group_id']);
     $salt = substr(md5(uniqid(rand(), true) . $this->request->server['REMOTE_ADDR']), 0, 9);
     $data['birthdate'] = date('Y-m-d', strtotime($data['birthdate']));
     $this->query("INSERT INTO PREFIX_customer\n            SET store_id            = :store_id,\n                firstname           = :firstname,\n                middlename          = :middlename,\n                lastname            = :lastname,\n                birthdate           = :birthdate,\n                email               = :email,\n                telephone           = :telephone,\n                mobile              = :mobile,\n                gender              = :gender,\n                fax                 = :fax,\n                salt                = :salt,\n                password            = :password,\n                newsletter          = :newsletter,\n                customer_group_id   = :group_id,\n                language_id         = :language_id,\n                ip                  = :ip,\n                status              = 1,\n                approved            = :approval,\n                date_added          = :date", array('store_id' => $this->config->get('store_id'), 'firstname' => $data['firstname'], 'middlename' => $data['middlename'], 'lastname' => $data['lastname'], 'birthdate' => $data['birthdate'], 'email' => $data['email'], 'telephone' => $data['telephone'], 'mobile' => $data['mobile'], 'gender' => $data['gender'], 'fax' => $data['fax'], 'salt' => $salt, 'password' => sha1($salt . sha1($salt . sha1($data['password']))), 'newsletter' => $data['newsletter'], 'ip' => $this->request->server['REMOTE_ADDR'], 'group_id' => $data['customer_group_id'], 'language_id' => $this->config->get('language_id'), 'approval' => !$group_info['approval'], 'date' => date('Y-m-d H:i:s')));
     $customer_id = $this->lastInsertId();
     if (!$customer_id) {
         Logger::error('[ACCOUNT/CUSTOMER] The customer could not be created');
         Logger::error(print_r(self::$connection->errorInfo(), true));
         return false;
     }
     $this->query("INSERT INTO PREFIX_address\n            SET customer_id         = :id,\n                firstname           = :firstname,\n                middlename          = :middlename,\n                lastname            = :lastname,\n                company             = :company,\n                company_id          = :cid,\n                tax_id              = :tax,\n                address_1           = :address_1,\n                number              = :number,\n                addon               = :addon,\n                address_2           = :address_2,\n                postcode            = :postcode,\n                city                = :city,\n                country_id          = :country_id,\n                zone_id             = :zone_id", array('id' => $customer_id, 'firstname' => $data['firstname'], 'middlename' => $data['middlename'], 'lastname' => $data['lastname'], 'company' => $data['company'], 'cid' => $data['company_id'], 'tax' => $data['tax_id'], 'address_1' => $data['address_1'], 'number' => $data['number'], 'addon' => $data['addon'], 'address_2' => $data['address_2'], 'postcode' => $data['postcode'], 'city' => $data['city'], 'country_id' => $data['country_id'], 'zone_id' => $data['zone_id']));
     $address_id = $this->lastInsertId();
     $this->query("UPDATE PREFIX_customer SET address_id = :aid WHERE customer_id = :cid", array('aid' => $address_id, 'cid' => $customer_id));
     if ($group_info['approval']) {
         $message = Language::getVar('SUMO_ACCOUNT_WAIT_FOR_APPROVAL');
     } else {
         $message = Language::getVar('SUMO_ACCOUNT_GO_TO_LOGIN', $this->url->link('account/login', '', 'SSL'));
     }
     Mailer::setCustomer($data);
     $template = Mailer::getTemplate('account_register');
     $template['content'] = str_replace('{approvalOrLogin}', $message, $template['content']);
     Mail::setTo($data['email']);
     Mail::setSubject($template['title']);
     Mail::setHtml($template['content']);
     Mail::send();
     if ($this->config->get('admin_notify_email')) {
         $sendTo = array($this->config->get('email'));
         $extra = $this->config->get('extra_notify_email');
         if (!empty($extra)) {
             $extra = explode(',', $extra);
             foreach ($extra as $mail) {
                 if (!empty($mail) && filter_var($mail, \FILTER_VALIDATE_EMAIL)) {
                     $sendTo[] = $mail;
                 }
             }
         }
         $template = Mailer::getTemplate('account_register_admin_notify');
         if ($group_info['approval']) {
             $template['content'] = str_replace('{action}', Language::getVar('SUMO_ADMIN_ACTIVATE_ACCOUNT', $this->url->link('account/login')), $template['content']);
         } else {
             $template['content'] = str_replace('{action}', '', $template['content']);
         }
         foreach ($sendTo as $to) {
             Mail::setTo($to);
             Mail::setSubject($template['title']);
             Mail::setHtml($template['content']);
             Mail::send();
         }
     }
     Cache::removeAll();
     return $customer_id;
 }
Ejemplo n.º 30
0
 public function index()
 {
     if ($this->customer->isLogged()) {
         $this->redirect(HTTPS_SERVER . 'index.php?route=account/account');
     }
     $this->language->load('account/forgotten');
     $this->document->title = $this->language->get('heading_title');
     $this->load->model('account/customer');
     if ($this->request->server['REQUEST_METHOD'] == 'POST' && $this->validate()) {
         $this->language->load('mail/account_forgotten');
         $password = substr(md5(rand()), 0, 7);
         $message .= $this->language->get('text_email');
         $message .= $password;
         $message .= $this->language->get('text_footer_email');
         $mail = new Mail();
         $mail->protocol = $this->config->get('config_mail_protocol');
         $mail->parameter = $this->config->get('config_mail_parameter');
         $mail->hostname = $this->config->get('config_smtp_host');
         $mail->username = $this->config->get('config_smtp_username');
         $mail->password = $this->config->get('config_smtp_password');
         $mail->port = $this->config->get('config_smtp_port');
         $mail->timeout = $this->config->get('config_smtp_timeout');
         $mail->setTo($this->request->post['email']);
         $mail->setFrom($this->config->get('config_email'));
         $mail->setSender($this->config->get('config_name'));
         $mail->setSubject($this->language->get('text_subject_'));
         $mail->setHtml(html_entity_decode($message, ENT_QUOTES, 'UTF-8'));
         $mail->send();
         $this->model_account_customer->editPasswordByEmail($this->request->post['email'], $password);
         $this->session->data['success'] = $this->language->get('text_success');
         $this->redirect(HTTPS_SERVER . 'index.php?route=account/login');
     }
     $this->document->breadcrumbs = array();
     $this->document->breadcrumbs[] = array('href' => HTTP_SERVER . 'index.php?route=common/home', 'text' => $this->language->get('text_home'), 'separator' => FALSE);
     $this->document->breadcrumbs[] = array('href' => HTTPS_SERVER . 'index.php?route=account/account', 'text' => $this->language->get('text_account'), 'separator' => $this->language->get('text_separator'));
     $this->document->breadcrumbs[] = array('href' => HTTPS_SERVER . 'index.php?route=account/forgotten', 'text' => $this->language->get('text_forgotten'), 'separator' => $this->language->get('text_separator'));
     $this->data['heading_title'] = $this->language->get('heading_title');
     $this->data['text_your_email'] = $this->language->get('text_your_email');
     $this->data['text_email'] = $this->language->get('text_email');
     $this->data['entry_email'] = $this->language->get('entry_email');
     $this->data['button_continue'] = $this->language->get('button_continue');
     $this->data['button_back'] = $this->language->get('button_back');
     if (isset($this->error['message'])) {
         $this->data['error'] = $this->error['message'];
     } else {
         $this->data['error'] = '';
     }
     $this->data['action'] = HTTPS_SERVER . 'index.php?route=account/forgotten';
     $this->data['back'] = HTTPS_SERVER . 'index.php?route=account/account';
     if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/account/forgotten.tpl')) {
         $this->template = $this->config->get('config_template') . '/template/account/forgotten.tpl';
     } else {
         $this->template = 'default/template/account/forgotten.tpl';
     }
     $this->children = array('common/column_right', 'common/footer', 'common/column_left', 'common/header');
     $this->response->setOutput($this->render(TRUE), $this->config->get('config_compression'));
 }