Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

shoputils

Ветеран спільноти
  
  • Публікації

    3 007
  • З нами

  • Відвідування

Усі публікації користувача shoputils

  1. Проверил на Opencart 1.5.6 - все ок. lysa, а у вас "Статус заказа после подтверждения" и "Статус заказа для отсроченной оплаты" разные? Если они совпадают - то покупателя будет "кидать" сразу на оплату в Единую кассу, не зависимо от положения radiobutton "Режим отсроченной оплаты". https://yadi.sk/i/C5iX36ZRWr8RD
  2. В ручную и не будет ничего. Смысл отправлять письмо админу, когда он сам поменял статус? Еще раз скачайте дистрибутив и распакуйте в корень сайта. Была ошибка, я ее исправил. Номер версии модуля менять не стал. Изменилось 2 файла: catalog/model/payment/shoputils_uniteller.php catalog/controller/payment/shoputils_uniteller.php
  3. lysa, днем еще раз на вашей версии проверю.
  4. Модуль обновлен до версии 1.1 - Добавлено управление письмами администратору с возможностью формирования своего произвольного шаблона письма при успешной оплате клиентом - Журнал запросов модуля теперь можно очистить только при наличии прав администратора на внесение измений модуля Для обновления распакуйте архив с дситрибутивом в корневую директори сайта с заменой файлов. Админ-панель -> Дополнения -> Оплата -> Uniteller -> Изменить При необходимости, скорректируйте настройки модуля. Нажмите кнопку "Сохранить" независимо от того, менялись ли настройки или нет (это необходимо для записи в БД нового функционала). solvisk, верните все назад и обновитесь до последеней версии модуля, письмо админу теперь можно настраивать из настроек модуля.
  5. Выпущена версия 2.1.1 - Добавлено управление письмами администратору с возможностью формирования своего произвольного шаблона письма при успешной оплате клиентом Обновление: - Распакуйте архив в папку с установленным Opencart/OcStore 1.5.x. и нажмите "Изменить" в "Панели администратора" - "Дополнения" - "Оплата" - "Единая касса". - При необходимости, скорректируйте настройки модуля. - Нажмите кнопку "Сохранить".
  6. Дайте в ЛС доступ к FTP, я завтра посмотрю. UPD: Подождите пару дней, я сейчас в Единой Кассе делаю возможность уведомления админа с возможностью задавать шаблон письма в настройках модуля. После этого сделаю тоже самое в Uniteller.
  7. Семен Семеныч! Все верно. Я confirm с success'ом перепутал. ))
  8. Платежные модули берут номер заказа из сессии, а это еще до confirm'а P.S. Хотя могу ошибаться, надо смотреть.
  9. Вообще-то, насколько я помню, номер заказа присваивается в момент перехода покупателя на оформление заказа. Хранится в сессии. $this->session->data['order_id'];
  10. А статус меняете где? В "Продажи -> Заказы -> Изменить"? Здесь не отправляются оповещения при смене статуса. Надо в "Продажи -> Заказы -> Просмотр", вкладка "История" и не забыть поставить галочку "Уведомить покупателя".
  11. Модуль обновлен до версии 2.1 - Стабилизирована работа режима отсроченной оплаты - Актуализированы данные в настройках модуля во вкладке "Информация" - В настройки модуля добавлена возможность выводить при подтверждении заказа инструкцию по оплате произвольным текстом Для обновления распакуйте дистрибутив в корень сайта и нажмите "Изменить" в "Панели администратора" - "Дополнения" - "Оплата" - "Единая касса". При этом автоматически должны удалиться 2 устаревших файла от версии 2.0: catalog/view/theme/default/template/shoputils_w1_postpay.tpl vqmod/xml/shoputils_w1_postpay.xml
  12. Есть такое... <?php echo $order['products_count']; ?> надо заменить на <?php echo $order['products_count']; ?><?php if (!empty($order['shoputils_w1_onpay'])) { ?><br /><a onclick="location='<?php echo $order['shoputils_w1_onpay']; ?>'" class="button"><?php echo $button_shoputils_w1_onpay; ?></a><?php } ?> А лучше дождитесь версии 2.1, она будет выпущена приблизительно к 16 июля.
  13. Система -> Локализация -> Статусы заказов, кликаете по "Изменить" напротив нужного статуса Смотрите в адресной строке браузера URL, он имеет вид http://mysite.ru/admin/index.php?route=localisation/order_status/update&order_status_id=5&token=df77ff58b23bdae4801ce5185f4f674d и смотрите чему равен нужный order_status_id.
  14. Для ocStore 1.5.5.1.2 (на других версиях, по идее, тоже должно работать): В catalog/model/checkout/order.php в методе update() после строк if ($comment) { $message .= $language->get('text_update_comment') . "\n\n"; $message .= $comment . "\n\n"; } $message .= $language->get('text_update_footer'); $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($order_info['email']); $mail->setFrom($this->config->get('config_email')); $mail->setSender($order_info['store_name']); $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8')); $mail->setText(html_entity_decode($message, ENT_QUOTES, 'UTF-8')); $mail->send(); это в районе 690-й строки файла добавьте следующие строки: //Shoputils Mail Send to Admin If Order_Status_Id == 5 if ($order_status_id == '5') { $text = $order_status_query->row['name'] . ': ' . $order_info['payment_method'] . ', ' . html_entity_decode($this->currency->format($order_info['total'], $order_info['currency_code']), ENT_NOQUOTES, 'UTF-8') . ', ' . $order_info['payment_lastname'] . ' ' . $order_info['payment_firstname'] . ', ' . ($order_status_query->num_rows ? $order_status_query->row['name'] : '') . "\n\n" . $language->get('text_new_order_id') . ' ' . $order_id . "\n" . $language->get('text_new_date_added') . ' ' . date('d.m.Y H:i', strtotime($order_info['date_added'])) . "\n" . $language->get('text_new_order_status') . ' ' . ($order_status_query->num_rows ? $order_status_query->row['name'] : '') . "\n\n" . $language->get('text_new_products') . "\n"; $order_product_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_product WHERE order_id = '" . (int)$order_id . "'"); $order_download_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_download WHERE order_id = '" . (int)$order_id . "'"); $order_voucher_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_voucher WHERE order_id = '" . (int)$order_id . "'"); $order_total_query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "order_total` WHERE order_id = '" . (int)$order_id . "' ORDER BY sort_order ASC"); foreach ($order_product_query->rows as $product) { $text .= $product['quantity'] . 'x ' . $product['name'] . ' (' . $product['model'] . ') ' . html_entity_decode($this->currency->format($product['total'] + ($this->config->get('config_tax') ? ($product['tax'] * $product['quantity']) : 0), $order_info['currency_code'], $order_info['currency_value']), ENT_NOQUOTES, 'UTF-8') . "\n"; $order_option_query = $this->db->query("SELECT * FROM " . DB_PREFIX . "order_option WHERE order_id = '" . (int)$order_id . "' AND order_product_id = '" . $product['order_product_id'] . "'"); foreach ($order_option_query->rows as $option) { if ($option['type'] != 'file') { $value = $option['value']; } else { $value = utf8_substr($option['value'], 0, utf8_strrpos($option['value'], '.')); } $text .= chr(9) . '-' . $option['name'] . ' ' . (utf8_strlen($value) > 20 ? utf8_substr($value, 0, 20) . '..' : $value) . "\n"; } } foreach ($order_voucher_query->rows as $voucher) { $text .= '1x ' . $voucher['description'] . ' ' . $this->currency->format($voucher['amount'], $order_info['currency_code'], $order_info['currency_value']); } $text .= "\n"; $text .= $language->get('text_new_order_total') . "\n"; foreach ($order_total_query->rows as $total) { $text .= $total['title'] . ': ' . html_entity_decode($total['text'], ENT_NOQUOTES, 'UTF-8') . "\n"; } $text .= "\n"; if ($order_info['comment']) { $text .= $language->get('text_new_comment') . "\n\n"; $text .= $order_info['comment'] . "\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->config->get('config_email')); $mail->setFrom($order_info['email']); $mail->setSender($order_info['store_name']); $mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8')); $mail->setText(html_entity_decode($text, ENT_QUOTES, 'UTF-8')); $mail->send(); // Send to additional 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(); } } } //Shoputils Mail Send If Order_Status_Id == 5 В $order_status_id == '5' вместо 5 поставьте нужный status_id
  15. Уведомление о платеже от платежной системы или от модуля оплаты? Приходят ли уведомления от платежной системы - не подскажу, аккаунт, куда я вхож, настроен не на мой e-mail. При изменении статуса заказа в Opencart уведомления админу не приходят, но в своем ИМ я добавил в catalog/model/order.php несколько строчек и теперь при переводе заказа в определенный статус мне приходит оповещение на e-mail, что очень удобно. К вечеру доберусь до нормального компьютера - скажу что надо добавить.
  16. Если б я знал, что это ваш блог, сразу бы отправил ТС в нужную тему.
  17. В файлах catalog/language/russian/record/record.php и в catalog/language/russian/record/blog.php должна быть строка, похожая на эту: $_['text_hours'] = 'H:i:s';Замените ее в обоих файлах на: $_['text_hours'] = '';
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.