diff --git a/CHANGELOG.md b/CHANGELOG.md
index 66465f0..999736d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,202 +1,4 @@
-### v1.9.4 от 06.11.2020
-* Изменена ссылка для обновления модуля yandex-money -> yoomoney
-* Обновлен SDK до версии 1.6.8
+### v2.0.0 от 10.12.2020
+* Ребрендинг модуля
-### v1.9.3 от 16.10.2020
-* Удален файл install.php
-
-### v1.9.2 от 06.10.2020
-* Добавлена ставка НДС 20% для СББОЛ
-
-### v1.9.1 от 25.09.2020
-* Изменен принцип подключения внутренних шаблонов
-* Фикс шаблона номера телефона для второго чека
-
-### v1.9.0 от 16.09.2020
-* Добавлен файл apple-developer-merchantid-domain-association для виджета
-
-### v1.8.1 от 25.08.2020
-* Добавлена константа с версией
-
-### v1.8.0 от 21.08.2020
-* Добавлено холдирование в виджет
-
-### v1.7.1 от 10.08.2020
-* Исправлена ошибка отправки второго чека
-* Исправлена ошибка конвертации валюты
-
-### v1.7.0 от 06.08.2020
-* Обновлен SDK до версии 1.6.5
-
-### v1.6.1 от 31.07.2020
-* Мелкие правки
-* Правки по отправке второго чека
-
-### v1.6.0 от 07.07.2020
-* Обновлен SDK до версии 1.6.4
-* Сохранение настроек метрики и маркета независимо от платежей
-
-### v1.5.1 от 17.06.2020
-* Управление тегом name в прайсе
-* Убираем ошибки для выключенного компонента
-
-### v1.5.0 от 03.06.2020
-* Обновлен SDK до версии 1.6.1
-* Исправлена сортировка в списке методов
-* Добавлена старая цена для комбинаций в прайс-листе
-* Выбор опций по URL из маркета на странице товара
-
-### v1.4.6 от 29.05.2020
-* Разрешен выбор способа оплаты на стороне кассы для тестовых магазинов
-* Исправлен метод оплаты в кредит
-* Исправлена работа в теме journal3
-
-### v1.4.5 от 22.05.2020
-* Добавлены файлы для темы journal3
-* Исправлены ошибки JS
-
-### v1.4.4 от 08.05.2020
-* Исправлено формирование прайс-листа для маркета
-
-### v1.4.3 от 30.04.2020
-* Совместимость с PHP 5.4
-
-### v1.4.2 от 23.04.2020
-* Исправлено логирование
-
-### v1.4.1 от 21.04.2020
-* Изменено название платежного метода(виджет)
-
-### v1.4.0 от 17.04.2020
-* Обновлен SDK до версии 1.5.8
-* Платеж в выбранной валюте
-* Исправлено логирование
-
-### v1.3.3 от 19.03.2020
-* Исправлены ошибки в модификаторах
-
-### v1.3.2 от 16.03.2020
-* Добавлен платежный виджет в список платежных методов
-
-### v1.3.1 от 22.10.2019
-* Исправлена ошибка с доп. условиями в маркете
-
-### v1.3.0 от 10.10.2019
-* Добавлена поддержка отправки второго чека
-
-### v1.2.11 от 05.09.2019
-* ускорен процесс генерации прайс-листа при большом количестве товаров.
-* добавлено кэширование прайса
-
-### v1.2.10 от 19.08.2019
-* Добавлен текст ошибки в переводах
-* Исправлена ссылка на модуль opencart2
-* Деактивация кнопки «Оплатить» после первого нажатия
-
-### v1.2.9 от 06.08.2019
-* Исправлен баг с выставлением счета.
-
-### v1.2.8 от 04.04.2019
-* Изменен лейбл для ставки НДС с 18% на 20%
-
-### v1.2.7 от 29.03.2019
-* Проверка полей заказа email и telephone для чеков
-* Установка статуса нового заказа из настроек
-
-### v1.2.6 от 22.03.2019
-* Изменен способ получения суммы заказа для передачи в кассу.
-* Исправлена проверка на тип платежа в зависимости от платформы.
-
-### v1.2.5 от 25.02.2019
-* Добавлен метод оплаты ТКС.
-
-### v1.2.4 от 12.02.2019
-* Правка передачи токена метрики
-
-### v1.2.3 от 31.01.2019
-* Исправление багов.
-
-### v1.2.2 от 24.12.2018
-* Добавлены поля ФФД 1.05
-
-### v1.2.1 от 24.11.2018
-* Добавлен текст с реквизитами платежа для способа оплаты Сбербанк Бизнес Онлайн
-
-### v1.2.0 от 06.11.2018
-* Добавлен способ оплаты Сбербанк Бизнес Онлайн
-
-### v1.1.3 от 27.09.2018
-* Добавлено приглашение пройти опрос
-* Исправлена ошибка с установкой модуля
-
-### v1.1.2 от 19.09.2018
-* Добавлена возможность указания атрибутов тега в Дополнительных условиях
-
-### v1.1.1 от 11.09.2018
-* Добавлена настройка управления отображением инфоблока "Заплатить по частям"
-
-### v1.1.0 от 06.09.2018
-* Обновлен раздел выгрузки прайс-листа в Яндекс.Маркет
-
-### v1.0.16 от 24.08.2018
-* Исправлено отображение статуса для отмены.
-
-### v1.0.15 от 21.08.2018
-* Убрана отправка taxSystemCode
-* Добавлена передача налога по умолчанию (для доставки и товаров без указания налога)
-* Изменено сопоставление налоговых ставок на сопоставление ставок для чека в налоговую с налоговыми классами товаров
-
-### v1.0.14 от 20.07.2018
-* Исправлены ошибки возникающие при установке модуля
-
-### v1.0.13 от 03.07.2018
-* Платежи через кошелек переведены на API форм и кнопок.
-
-### v1.0.12 от 29.06.2018
-* Обновлен код для передачи ecommerce-данных в Яндекс.Метрику
-* Исправлены мелкие ошибки
-
-### v1.0.11 от 22.06.2018
-* Добавлено холдирование
-
-### v1.0.10 от 19.06.2018
-* Удален блок Заказы в Маркете
-
-### v1.0.9 от 15.06.2018
-* Добавлен функционал автообновления.
-* Добавлен description.
-
-### v1.0.8 от 21.05.2018
-* Исправлен баг с оплатой банковскими картами на кошелек Яндекс.Денег
-
-### v1.0.7 от 28.04.2018
-* Актуализация PHP SDK до версии 1.0.8
-* Добавлен метод "Заплатить по частям"
-
-### v1.0.6 от 17.04.2018
-* Исправлен баг с получением авторизационного токена для Яндекс.Маркета
-
-### v1.0.5 от 09.04.2018
-* Актуализация PHP SDK до версии 1.0.6
-* Добавлена поддержка уведомлений succeeded
-
-### v1.0.4 от 16.03.2018
-* Исправлено сохранение настроек
-* Исправлены мелкие ошибки
-
-### v1.0.3 от 10.01.2018
-* Добавлен интерфейс ручного подтверждения платежей
-
-### v1.0.2 от 25.12.2017
-* В настройках оплаты с помощью Яндекс.Кассы добавлена проверка валидности указанных shopId и Секретного ключа
-* В настройках интеграции с маркетом исправлен js код для сворачивания и разворачивания категорий
-* Исправлен установщик, при установке из архива он снова переустанавливает связанные с модулем модификаторы
-* Добавлены настройки создания платежа и очистки корзины перед переходом пользователя на страницу оплаты в Яндекс.Кассе
-* В футер добавлена ссылка "Работает Яндекс.Касса", а так же добавлены настройки для отображения этой ссылки
-
-### v1.0.1 от 20.12.2017
-* Добавлена возможность установки состояния платежа и корзины перед редиректом пользователя на сайт платёжной системы
-
-### v1.0.0
-* Добавлена возможность оплаты с помощью PHP SDK через API Яндекс.Кассы
-* Добавлена отправка информации о имени CMS и версии используемого модуля в параметре metadata платежа
+###
diff --git a/LICENSE b/LICENSE
index 7e1177d..4715701 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,3 +1,3 @@
Лицензионный договор.
-Любое использование Вами программы означает полное и безоговорочное принятие Вами условий лицензионного договора, размещенного по адресу https://money.yandex.ru/doc.xml?id=527132 (далее – «Лицензионный договор»). Если Вы не принимаете условия Лицензионного договора в полном объёме, Вы не имеете права использовать программу в каких-либо целях.
\ No newline at end of file
+Любое использование Вами программы означает полное и безоговорочное принятие Вами условий лицензионного договора, размещенного по адресу https://yoomoney.ru/doc.xml?id=527132 (далее – «Лицензионный договор»). Если Вы не принимаете условия Лицензионного договора в полном объёме, Вы не имеете права использовать программу в каких-либо целях.
\ No newline at end of file
diff --git a/README.md b/README.md
index c3b4b34..7006443 100644
--- a/README.md
+++ b/README.md
@@ -1,51 +1,35 @@
-# yandex-money-ycms-opencart3
+# yoomoney-cms-opencart3
-### Что такое Y.CMS
-Y.CMS — это универсальный модуль для интеграции интернет-магазина с сервисами Яндекса: Кассой, Деньгами, Метрикой и Маркетом.
+### Что такое ЮMoney
+ЮMoney — это модуль для интеграции интернет-магазина с сервисами ЮKassa и ЮMoney.
#### Инструкция по настройке
-[Инструкция по настройке](https://kassa.yandex.ru/manuals/y.cms_opencart2.html)
+[Инструкция по настройке](https://yookassa.ru/docs/support/payments/onboarding/integration/cms-module/opencart2)
### Требования к CMS
* версия 3.0.х;
* PHP 5.4 или выше;
* cURL.
-#### Яндекс.Касса
-Через Кассу можно настроить прием платежей на сайте. Способ подходит юрлицам и ИП: для подключения нужен договор, а деньги приходят на расчетный счет компании.
+#### ЮKassa
+Через ЮKassa можно настроить прием платежей на сайте. Способ подходит юрлицам и ИП: для подключения нужен договор, а деньги приходят на расчетный счет компании.
По договору вы можете выбрать любой набор способов приема платежей: банковские карты, электронные кошельки, интернет-банки, наличные, баланс мобильного, кредитование. Комиссия берется с каждого успешного платежа.
Есть дополнительные опции: возвраты, холдирование и другие возможности.
-[Сайт Кассы](https://kassa.yandex.ru/)
+[Сайт ЮKassa](https://yookassa.ru/)
-#### Яндекс.Деньги
+#### ЮMoney
-Через Яндекс.Деньги можно без договора настроить на сайте прием платежей: клиенты смогут платить с карт и из электронных кошельков, деньги будут приходить в кошелек на Яндексе. Комиссия берется с каждого успешного платежа.
+Через ЮMoney можно без договора настроить на сайте прием платежей: клиенты смогут платить с карт и из электронных кошельков, деньги будут приходить в кошелек ЮMoney. Комиссия берется с каждого успешного платежа.
-[Подробные условия на сайте Яндекс.Денег](https://money.yandex.ru/quickpay/)
-
-#### Яндекс.Метрика
-
-Через Метрику можно настроить сбор статистики по сайту: сколько человек заходят, как и куда «ходят» по сайту, в какой момент бросают корзины и сколько человек доходят до конца.
-
-Метрикой можно пользоваться бесплатно.
-
-[Сайт Метрики](https://metrika.yandex.ru/)
-
-#### Яндекс.Маркет
-
-С помощью модуля можно выгрузить все товары сайта на Яндекс.Маркет: с ценой, описанием, параметрами и фотографиями.
-
-Перед настройкой нужно зарегистрировать магазин на Яндекс.Маркете. Это бесплатно.
-
-[Зарегистрировать магазин на Яндекс.Маркете](https://partner.market.yandex.ru/)
+[Подробные условия на сайте ЮMoney](https://yoomoney.ru/quickpay/)
### Контакты
-Если у вас есть вопросы или идеи для модуля, напишите нам: cms@yamoney.ru
+Если у вас есть вопросы или идеи для модуля, напишите нам: cms@yoomoney.ru
В письме укажите:
* версию платформы,
diff --git a/src/install.xml b/src/install.xml
index 7151e96..0fbffdb 100644
--- a/src/install.xml
+++ b/src/install.xml
@@ -1,19 +1,19 @@
- Y.CMS for Opencart 3.x
- ycms.2.0
- 1.9.4
- Yandex.Money
+ YooMoney for Opencart 3.x
+ YooMoney
+ 2.0.0
+ YooMoney
language->load('extension/payment/yandex_money');
+ $this->language->load('extension/payment/yoomoney');
$data['heading_title'] = $this->language->get('text_order');
if ($order_info['payment_method'] == $this->language->get('kassa_title') || $order_info['payment_method'] == $this->language->get('p2p_title')) {
$this->session->data['order_id'] = $this->request->get['order_id'];
- $data['yandex_money'] = $this->load->controller('extension/payment/yandex_money');
+ $data['yoomoney'] = $this->load->controller('extension/payment/yoomoney');
}]]>
@@ -21,9 +21,9 @@
]]>
- {{ yandex_money }}
+ {{ yoomoney }}
{% endif %}
]]>
@@ -43,19 +43,19 @@
$result = array();
$orderIds = array();
foreach ($query->rows as $record) {
- if ($record['payment_code'] === 'yandex_money') {
+ if ($record['payment_code'] === 'yoomoney') {
$orderIds[] = $record['order_id'];
}
$result[$record['order_id']] = $record;
}
if (!empty($orderIds)) {
- $sql = 'SELECT `order_id`, `payment_id`, `status` FROM `' . DB_PREFIX . 'ya_money_payment` WHERE `order_id` IN (' . implode(',', $orderIds) . ')';
+ $sql = 'SELECT `order_id`, `payment_id`, `status` FROM `' . DB_PREFIX . 'yoomoney_payment` WHERE `order_id` IN (' . implode(',', $orderIds) . ')';
$recordSet = $this->db->query($sql);
foreach ($recordSet->rows as $record) {
- $result[$record['order_id']]['yandex_money_payment_id'] = $record['payment_id'];
- $result[$record['order_id']]['yandex_money_payment_status'] = $record['status'];
+ $result[$record['order_id']]['yoomoney_payment_id'] = $record['payment_id'];
+ $result[$record['order_id']]['yoomoney_payment_status'] = $record['status'];
}
- $sql = 'SELECT `order_id`, `refund_id`, `status`, `amount` FROM `' . DB_PREFIX . 'ya_money_refunds` WHERE `order_id` IN (' . implode(',', $orderIds) . ') AND `status` <> \'canceled\'';
+ $sql = 'SELECT `order_id`, `refund_id`, `status`, `amount` FROM `' . DB_PREFIX . 'yoomoney_refunds` WHERE `order_id` IN (' . implode(',', $orderIds) . ') AND `status` <> \'canceled\'';
$recordSet = $this->db->query($sql);
foreach ($recordSet->rows as $record) {
if (!isset($result[$record['order_id']]['refund_amount'])) {
@@ -89,18 +89,18 @@
$result['shipping_code'],]]>
(isset($result['payment_code']) && $this->config->get('yandex_money_kassa_enabled') && $this->config->get('yandex_money_kassa_invoice') && $result['order_status_id'] == 1) ? $result['payment_code'] : '',
- 'payment_status' => (isset($result['yandex_money_payment_status']) ? $result['yandex_money_payment_status'] : ''),
- 'email' => (isset($result['email']) && $this->config->get('yandex_money_kassa_enabled')) ? $result['email'] : '',
+ 'payment_code' => (isset($result['payment_code']) && $this->config->get('yoomoney_kassa_enabled') && $this->config->get('yoomoney_kassa_invoice') && $result['order_status_id'] == 1) ? $result['payment_code'] : '',
+ 'payment_status' => (isset($result['yoomoney_payment_status']) ? $result['yoomoney_payment_status'] : ''),
+ 'email' => (isset($result['email']) && $this->config->get('yoomoney_kassa_enabled')) ? $result['email'] : '',
'refund_amount' => (isset($result['refund_amount']) ? $result['refund_amount'] : ''),
- 'refund_url' => (isset($result['payment_code']) && $result['payment_code'] == 'yandex_money') ? $this->url->link('extension/payment/yandex_money/refund', 'order_id='.$result['order_id'].'&user_token='.$this->session->data['user_token'], true) : '',
- 'capture_url' => (isset($result['payment_code']) && $result['payment_code'] == 'yandex_money') ? $this->url->link('extension/payment/yandex_money/capture', 'order_id='.$result['order_id'].'&user_token='.$this->session->data['user_token'], true) : '',
+ 'refund_url' => (isset($result['payment_code']) && $result['payment_code'] == 'yoomoney') ? $this->url->link('extension/payment/yoomoney/refund', 'order_id='.$result['order_id'].'&user_token='.$this->session->data['user_token'], true) : '',
+ 'capture_url' => (isset($result['payment_code']) && $result['payment_code'] == 'yoomoney') ? $this->url->link('extension/payment/yoomoney/capture', 'order_id='.$result['order_id'].'&user_token='.$this->session->data['user_token'], true) : '',
]]>
session->data['user_token'];]]>
config->get('yandex_money_kassa_enabled')) {
+ if ($this->config->get('yoomoney_kassa_enabled')) {
$data['button_invoice_kassa'] = $this->language->get('button_invoice_kassa');
$data['store_url'] = $this->request->server['HTTPS'] ? HTTPS_CATALOG : HTTP_CATALOG;
}
@@ -112,7 +112,7 @@
{{ button_edit }} ]]>
Выставить счёт
{% endif %}
{% if order.payment_status is defined and order.payment_status == 'succeeded' %}
@@ -131,7 +131,7 @@
var text = 'Вы действительно хотите отправить счёт пользователю ' + node.dataset.customer + ' на адрес ' + node.dataset.email + '?';
if (confirm(text)) {
jQuery.ajax({
- url: '{{ store_url }}admin/index.php?route=extension/payment/yandex_money/sendmail&user_token={{ user_token }}&order_id=' + node.dataset.order_id,
+ url: '{{ store_url }}admin/index.php?route=extension/payment/yoomoney/sendmail&user_token={{ user_token }}&order_id=' + node.dataset.order_id,
dataType: 'json',
crossDomain: true,
beforeSend: function() {
@@ -196,10 +196,7 @@
url->link('account/newsletter']]>
config->get('yandex_money_metrika_active') && $this->config->get('yandex_money_metrika_code')
- ? html_entity_decode($this->config->get('yandex_money_metrika_code'), ENT_QUOTES, 'UTF-8')
- : '';
- $data['yandex_money_kassa_show_in_footer'] = $this->config->get('yandex_money_kassa_enabled') && $this->config->get('yandex_money_kassa_show_in_footer');
+ $data['yoomoney_kassa_show_in_footer'] = $this->config->get('yoomoney_kassa_enabled') && $this->config->get('yoomoney_kassa_show_in_footer');
]]>
@@ -207,8 +204,8 @@
session->data['order_id'])) {]]>
load->model('extension/payment/yandex_money');
- $data['script_order'] = $this->model_extension_payment_yandex_money->getMetricsJavaScript($this->session->data['order_id']);
+ $this->load->model('extension/payment/yoomoney');
+ $data['script_order'] = $this->model_extension_payment_yoomoney->getMetricsJavaScript($this->session->data['order_id']);
]]>
@@ -224,44 +221,11 @@
-
-
-
- window.dataLayer = window.dataLayer || [];
- function sendEcommerceAdd(id, quantity) {
- $.ajax({
- url: 'index.php?route=extension/payment/yandex_money/productInfo',
- type: 'post',
- data: 'id=' + id,
- dataType: 'json',
- success: function(json) {
- json.quantity = quantity;
- dataLayer.push({ecommerce: {add: {products: [json]}}});
- }
- });
- }
- $(window).on("load", function () {
- var opencartCartAdd = cart.add;
- cart.add = function (product_id, quantity) {
- opencartCartAdd(product_id, quantity);
- sendEcommerceAdd(product_id, typeof(quantity) !== 'undefined' ? parseInt(quantity) : 1);
- };
-
- $('#button-cart').on('click', function() {
- var ecommerce_product = new Array();
- sendEcommerceAdd($('#product input[name="product_id"]').val(), parseInt($('#product input[name="quantity"]').val()));
- });
- });
-
- ]]>
-
{{ powered }}
]]>
Работает Яндекс.Касса
+ {% if yoomoney_kassa_show_in_footer is defined and yoomoney_kassa_show_in_footer %}
+ Работает ЮKassa
{% endif %}
]]>
@@ -280,7 +244,7 @@
]]>
{% endif %}
]]>
@@ -291,19 +255,12 @@
config->get('yandex_money_kassa_enabled')
- && $this->config->get('yandex_money_kassa_add_installments_block');
+ $showInstallmentsBlock = $this->config->get('yoomoney_kassa_enabled')
+ && $this->config->get('yoomoney_kassa_add_installments_block');
- $data['yamoney_showInstallmentsBlock'] = $showInstallmentsBlock;
- $data['yamoney_shop_id'] = $this->config->get('yandex_money_kassa_shop_id');
- $data['yamoney_language_code'] = $this->language->get('code');
-
- $data['ymm_option']['color_enabled'] = $this->config->get('yandex_money_market_option_color_enabled');
- $data['ymm_option']['size_enabled'] = $this->config->get('yandex_money_market_option_size_enabled');
- $color_option = $this->config->get('yandex_money_market_option_color_option_id');
- $data['ymm_option']['color'] = !empty($color_option) ? $color_option : '-';
- $size_option = $this->config->get('yandex_money_market_option_size_option_id');
- $data['ymm_option']['size'] = !empty($size_option) ? $size_option : '-';
+ $data['yoomoney_showInstallmentsBlock'] = $showInstallmentsBlock;
+ $data['yoomoney_shop_id'] = $this->config->get('yoomoney_kassa_shop_id');
+ $data['yoomoney_language_code'] = $this->language->get('code');
]]>
@@ -314,8 +271,8 @@
if ($this->currency->has('RUB')) {
$data['cost'] = sprintf('%.2f', $this->currency->format($cost, 'RUB', '', false));
} else {
- $this->load->model('extension/payment/yandex_money');
- $data['cost'] = $this->model_extension_payment_yandex_money->convertFromCbrf(array('total' => $cost), 'RUB');
+ $this->load->model('extension/payment/yoomoney');
+ $data['cost'] = $this->model_extension_payment_yoomoney->convertFromCbrf(array('total' => $cost), 'RUB');
}
]]>
@@ -325,7 +282,7 @@
{% if options %}]]>
{% endif %}
]]>
@@ -334,12 +291,12 @@
- {% if yamoney_showInstallmentsBlock %}
+ {% if yoomoney_showInstallmentsBlock %}
if (typeof YandexCheckoutCreditUI !== "undefined") {
const yamoneyCheckoutCreditUI = YandexCheckoutCreditUI({
- shopId: '{{ yamoney_shop_id }}',
+ shopId: '{{ yoomoney_shop_id }}',
sum: parseFloat('{{ cost }}'),
- language: '{{ yamoney_language_code }}'
+ language: '{{ yoomoney_language_code }}'
});
yamoneyCheckoutCreditUI({
type: 'info',
@@ -360,43 +317,6 @@
]]>
-
- ]]>
- ]]>
-
-
- {% for option_value in option.product_option_value %}]]>
- {% for option_value in option.product_option_value %}]]>
-
-
-
-
-
@@ -406,13 +326,13 @@
-HTML;
- return $html;
- }
-
- private function htmlDeliveryView($cost, $daysFrom, $daysTo, $orderBefore)
- {
- $daysText = $this->language->get('market_delivery_text');
- $daysLabelText = $this->language->get('market_delivery_days_measurement_unit');
- $orderBeforeText = $this->language->get('market_delivery_order_before');
- $defaultValueText = $this->language->get('market_delivery_default_value');
-
- $costValue = (int)$cost;
- $daysValue = empty($daysTo) || $daysFrom === $daysTo ? (int)$daysFrom : $daysFrom.'-'.$daysTo;
- $orderBeforeValue = $orderBefore ?: $useDefaultValue = $defaultValueText;
-
- $html = <<< HTML
-
- {$costValue}
- {$this->defaultCurrency}
- {$daysText}
- {$daysValue}
- {$daysLabelText}
- {$orderBeforeText}
- {$orderBeforeValue}
-
-HTML;
- return $html;
- }
-
- /**
- * @param string $cost
- * @param string $daysFrom
- * @param string $daysTo
- * @param int $orderBefore
- * @return string
- */
- private function htmlDeliveryEdit($cost, $daysFrom, $daysTo, $orderBefore)
- {
- $costText = $this->language->get('market_delivery_cost');
- $daysText = $this->language->get('market_delivery_days');
- $daysFromText = $this->language->get('market_delivery_days_from');
- $daysToText = $this->language->get('market_delivery_days_to');
- $orderBeforeText = $this->language->get('market_delivery_days_order_before');
- $daysLabelText = $this->language->get('market_delivery_days_measurement_unit');
- $okText = $this->language->get('ok');
- $cancelText = $this->language->get('cancel');
-
- $orderBeforeSelect = $this->htmlDeliveryOrderBeforeSelect($orderBefore);
-
- $html = <<
-
-
-HTML;
- return $html;
- }
-
- /**
- * @param int $selectedTime
- * @return string
- */
- private function htmlDeliveryOrderBeforeSelect($selectedTime)
- {
- $useDefaultValue = $this->language->get('market_delivery_use_default');
-
- $html = '';
- for ($time = 0; $time <= 24; $time++) {
- $html .= $this->htmlDeliveryOrderBeforeOption($time, $selectedTime, $useDefaultValue);
- }
- $html .= ' ';
-
- return $html;
- }
-
- /**
- * @param int $time
- * @param int $selectedTime
- * @param string $useDefaultValue
- * @return string
- */
- private function htmlDeliveryOrderBeforeOption($time, $selectedTime, $useDefaultValue)
- {
- $selected = $time === (int)$selectedTime ? 'selected="selected"' : '';
- $timeText = $time === 0 ? $useDefaultValue : $time.':00';
-
- return <<{$timeText}
-HTML;
- }
-
- /**
- * @return string
- */
- public function htmlAvailableList()
- {
- $nonZeroCountText = $this->language->get('market_available_non_zero_count_goods');
- $ifZeroCountText = $this->language->get('market_available_if_zero_count_goods');
-
- $html = '';
- $statuses = $this->stock_status->getStockStatuses();
- $html .= $this->htmlAvailable('non-zero-quantity', $nonZeroCountText);
- $html .= '';
-
- return $html;
- }
-
- /**
- * @param $statusId
- * @param $statusName
- * @return string
- */
- public function htmlAvailable($statusId, $statusName)
- {
- $enabled = $this->getConfig("available_enabled", $statusId);
- $available = $this->getConfig("available_available", $statusId);
- $delivery = $this->getConfig("available_delivery", $statusId);
- $pickup = $this->getConfig("available_pickup", $statusId);
- $store = $this->getConfig("available_store", $statusId);
-
- $enabledCheckbox = $this->htmlAvailableCheckbox($statusId, 'enabled', $enabled, '');
-
- $htmlView = $this->htmlAvailableView($statusId, $statusName);
- $htmlEdit = $this->htmlAvailableEdit($statusId, $statusName, $available, $delivery, $pickup, $store);
-
- $html = <<
- {$enabledCheckbox}
-
-
-
-
- {$htmlView}
- {$htmlEdit}
-
-
-HTML;
- return $html;
- }
-
-
- /**
- * @param $statusId
- * @param $statusName
- * @return string
- */
- private function htmlAvailableView($statusId, $statusName)
- {
- $availableProductStatusText = $statusId === 'non-zero-quantity'
- ? ''
- : $this->language->get('market_available_view_order_label');
- $availableDontUploadText = $this->language->get('market_available_view_dont_upload');
- $availableWillUploadText = $this->language->get('market_available_view_will_upload');
- $availableReadyText = $this->language->get('market_available_view_ready');
- $availableToOrderText = $this->language->get('market_available_view_to_order');
- $availableWithAvailableText = $this->language->get('market_available_view_with_available');
- $availableDeliveryText = $this->language->get('market_available_view_delivery');
- $availablePickupText = $this->language->get('market_available_view_pickup');
- $availableStoreText = $this->language->get('market_available_view_store');
-
- $html = <<< HTML
-
- {$availableProductStatusText}
- {$statusName}
- {$availableDontUploadText}
-
- {$availableWillUploadText}
- {$availableReadyText}
- {$availableToOrderText}
-
- {$availableWithAvailableText}
- {$availableDeliveryText}
- {$availablePickupText}
- {$availableStoreText}
-
-
-
-HTML;
- return $html;
- }
-
- /**
- * @param string $statusId
- * @param $statusName
- * @param string $available
- * @param string $delivery
- * @param string $pickup
- * @param string $store
- * @return string
- */
- private function htmlAvailableEdit($statusId, $statusName, $available, $delivery, $pickup, $store)
- {
- $cancelText = $this->language->get('cancel');
- $okText = $this->language->get('ok');
-
- $deliveryLabel = $this->language->get('market_available_delivery');
- $pickupLabel = $this->language->get('market_available_pickup');
- $storeLabel = $this->language->get('market_available_store');
-
- $availableSelect = $this->htmlAvailableSelect($statusId, $available);
- $deliveryCheckbox = $this->htmlAvailableCheckbox($statusId, 'delivery', $delivery,
- $this->language->get('market_available_delivery_description'));
- $pickupCheckbox = $this->htmlAvailableCheckbox($statusId, 'pickup', $pickup,
- $this->language->get('market_available_pickup_description'));
- $storeCheckbox = $this->htmlAvailableCheckbox($statusId, 'store', $store,
- $this->language->get('market_available_store_description'));
-
- $html = <<
- {$statusName}
-
-
-HTML;
- return $html;
- }
-
- /**
- * @param string $statusId
- * @param string $available
- * @return string
- */
- private function htmlAvailableSelect($statusId, $available)
- {
- $options = array(
- 'none' => $this->language->get('market_available_dont_unload'),
- 'true' => $this->language->get('market_available_ready'),
- 'false' => $this->language->get('market_available_to_order'),
- );
-
- $html = '';
- foreach ($options as $value => $text) {
- $html .= $this->htmlAvailableOption($value, $text, $available);
- }
- $html .= ' ';
-
- return $html;
- }
-
- /**
- * @param string $value
- * @param string $text
- * @param string $available
- * @return string
- */
- private function htmlAvailableOption($value, $text, $available)
- {
- $selected = $value === $available ? 'selected="selected"' : '';
-
- return <<{$text}
-HTML;
- }
-
- /**
- * @param $statusId
- * @param $field
- * @param string $value
- * @param string $text
- * @return string
- */
- private function htmlAvailableCheckbox($statusId, $field, $value, $text)
- {
- $checked = $value === 'on' ? 'checked="checked"' : '';
-
- return <<
-
- {$text}
-
-HTML;
- }
-
- /**
- * @return string
- */
- public function htmlOptionList()
- {
- return $this->htmlOptionItem('color')
- .$this->htmlOptionItem('size');
- }
-
- /**
- * @param $option
- * @return string
- */
- public function htmlOptionItem($option)
- {
- $text = $this->language->get("market_option_{$option}_label");
- $enabled = $this->config->get("yandex_money_market_option_{$option}_enabled");
- $checked = $enabled === 'on' ? 'checked="checked"' : '';
- $select = $this->htmlOptionSelect($option);
-
- $text_name = $this->language->get("market_option_name_{$option}_label");
- $enabled_name = $this->config->get("yandex_money_market_option_name_{$option}_enabled");
- $checked_name = $enabled_name === 'on' ? 'checked="checked"' : '';
-
- $placeholder_prefix = $this->language->get("market_option_prefix_{$option}_label");
- $text_prefix = $this->config->get("yandex_money_market_option_prefix_{$option}_text");
-
- $html = <<
-
-
- {$text}
-
-
- {$select}
-
-
-
-HTML;
-
- return $html;
- }
-
- /**
- * @param string $option
- * @return string
- */
- private function htmlOptionSelect($option)
- {
- $optionId = (int)$this->config->get("yandex_money_market_option_{$option}_option_id");
- $options = array();
- foreach ($this->option->getOptions() as $oneOption) {
- $options[$oneOption['option_id']] = $oneOption['name'];
- }
-
- $html = '';
- foreach ($options as $value => $text) {
- $selected = $value === $optionId ? 'selected="selected"' : '';
- $html .= "{$text} ";
- }
- $html .= ' ';
-
- return $html;
- }
-
- /**
- * @return string
- */
- public function htmlAdditionalConditionList()
- {
- $typeValues = (array)$this->config->get("yandex_money_market_additional_condition_type_value");
- $maxIndex = empty($typeValues) ? 0 : max(array_keys($typeValues));
-
- $html = '';
- for ($index = 1; $index <= $maxIndex; $index++) {
- $html .= $this->htmlAdditionalConditionItem($index);
- }
- $html .= $this->htmlAdditionalConditionItem('');
-
- $html .= <<
-
-HTML;
-
- return $html;
- }
-
- private function htmlAdditionalConditionItem($index)
- {
- if ($index === '') {
- $enabled = '';
- $name = '';
- $tag = '';
- $typeValue = 'static';
- $staticValue = '';
- $dataValue = '';
- $addTemplate = 'yandex-money-market-additional-condition-template';
- $fieldName = 'data-name';
- $forAllCat = 'on';
- $join = '';
- $checkedList = array();
- } else {
- $enabled = $this->getConfig("additional_condition_enabled", $index);
- $name = $this->getConfig("additional_condition_name", $index);
- $tag = $this->getConfig("additional_condition_tag", $index);
- $typeValue = $this->getConfig("additional_condition_type_value", $index);
- $staticValue = $this->getConfig("additional_condition_static_value", $index);
- $dataValue = $this->getConfig("additional_condition_data_value", $index);
- $forAllCat = $this->getConfig("additional_condition_for_all_cat", $index);
- $join = $this->getConfig("additional_condition_join", $index);
- $checkedList = (array)$this->getConfig("additional_condition_categories", $index);
- $addTemplate = '';
- $fieldName = 'name';
- }
-
- if (empty($typeValue)) {
- return '';
- }
-
- $categoriesInput = array();
- foreach ($this->getCategories() as $categoryGroup) {
- foreach ($categoryGroup as $category) {
- $checked = in_array($category['category_id'], $checkedList) ? 'checked="checked" ' : '';
- $categoriesInput[] = '
';
- }
- }
- $htmlCategoriesInput = implode('', $categoriesInput);
-
- $htmlView = $this->htmlAdditionalConditionItemView($name, $tag, $typeValue, $staticValue, $dataValue,
- $forAllCat, $checkedList);
- $htmlEdit = $this->htmlAdditionalConditionItemEdit($name, $tag, $typeValue, $staticValue, $dataValue,
- $forAllCat, $checkedList, $join);
-
- $checked = $enabled === 'on' ? 'checked="checked"' : '';
-
- $html = <<
-
-
-
-
-
-
-
-
-
- {$htmlCategoriesInput}
- {$htmlView}
-
-
- {$htmlEdit}
-
-HTML;
- return $html;
- }
-
- /**
- * @param string $name
- * @param string $tag
- * @param string $typeValue
- * @param string $staticValue
- * @param string $dataValue
- * @param string $forAllCat
- * @param array $checkedList
- * @return string
- */
- private function htmlAdditionalConditionItemView(
- $name,
- $tag,
- $typeValue,
- $staticValue,
- $dataValue,
- $forAllCat,
- array $checkedList
- ) {
- $makeTag = $this->language->get('market_additional_condition_make_tag_label');
- $withValue = $this->language->get('market_additional_condition_with_value_label');
- $forCategory = $this->language->get('market_additional_condition_for_category_label');
- $forAllCategories = $this->language->get('market_additional_condition_for_all_category_label');
- $forMoreCategories = $this->language->get('market_additional_condition_for_more_category_label');
-
- $value = $typeValue === 'static'
- ? $staticValue
- : $this->language->get('entry_'.$dataValue);
-
- if ($forAllCat === 'on') {
- $categoryList = $forAllCategories;
- } else {
- $categories = array();
- foreach ($this->getCategories() as $categoryGroup) {
- foreach ($categoryGroup as $category) {
- if (in_array($category['category_id'], $checkedList)) {
- $categories[] = $category['name'];
- }
- }
- }
- $count = count($categories);
- if ($count <= self::MAX_CATEGORY_NUMBER) {
- $categoryList = implode(', ', $categories);
- } else {
- $categoryList = implode(', ', array_slice($categories, 0, self::MAX_CATEGORY_NUMBER));
- $categoryList .= ' '.sprintf($forMoreCategories, $count - self::MAX_CATEGORY_NUMBER);
- }
- }
-
- $html = <<< HTML
-
- {$name}
- {$makeTag}
- <{$tag} >
- {$withValue}
- {$value}
- {$forCategory}
- {$categoryList}
-
-HTML;
- return $html;
- }
-
- /**
- * @param $name
- * @param $tag
- * @param $typeValue
- * @param $staticValue
- * @param $dataValue
- * @param $forAllCat
- * @param array $checkedList
- * @param string $join
- * @return string
- */
- private function htmlAdditionalConditionItemEdit(
- $name,
- $tag,
- $typeValue,
- $staticValue,
- $dataValue,
- $forAllCat,
- array $checkedList,
- $join
- ) {
- $nameText = $this->language->get('market_additional_condition_name_label');
- $tagText = $this->language->get('market_additional_condition_tag_label');
- $staticValueText = $this->language->get('market_additional_condition_static_value_label');
- $dataValueText = $this->language->get('market_additional_condition_data_value_label');
- $categoriesText = $this->language->get('market_additional_condition_for_categories_label');
- $allCategoriesText = $this->language->get('market_categories_all');
- $selectedCategoriesText = $this->language->get('market_categories_selected');
- $joinLabel = $this->language->get('market_additional_condition_join_label');
- $joinText = $this->language->get('market_additional_condition_join_text');
- $dontJoinText = $this->language->get('market_additional_condition_dont_join_text');
- $okText = $this->language->get('ok');
- $cancelText = $this->language->get('cancel');
- $deleteText = $this->language->get('delete');
- $hideAllText = $this->language->get('market_sv_all');
- $showAllText = $this->language->get('market_rv_all');
- $checkAllText = $this->language->get('market_ch_all');
- $uncheckAllText = $this->language->get('market_unch_all');
-
- $dataValueSelect = $this->htmlAdditionalConditionProductDataSelect($dataValue);
-
- if ($typeValue === 'static') {
- $staticValueChecked = ' checked="checked"';
- $dataValueChecked = '';
- } else {
- $staticValueChecked = '';
- $dataValueChecked = ' checked="checked"';
- }
-
- if ($forAllCat === 'on') {
- $allCategoriesChecked = ' checked="checked"';
- $selectedCategoriesChecked = '';
- $classCategoryTree = ' yandex-money-market-hidden-element';
- } else {
- $allCategoriesChecked = '';
- $selectedCategoriesChecked = ' checked="checked"';
- $classCategoryTree = '';
- }
-
- if ($join === 'on') {
- $joinChecked = ' checked="checked"';
- $dontJoinChecked = '';
- } else {
- $joinChecked = '';
- $dontJoinChecked = ' checked="checked"';
- }
-
- $html = <<
-
-
-HTML;
- return $html;
- }
-
- /**
- * @param int $selectedField
- * @return string
- */
- private function htmlAdditionalConditionProductDataSelect($selectedField)
- {
- $html = '';
- foreach ($this->productFields as $productField) {
- $selected = $productField === $selectedField ? 'selected="selected"' : '';
- $text = $this->language->get('entry_'.$productField);
- $html .= <<{$text}
-HTML;
- }
- $html .= ' ';
-
- return $html;
- }
-
- /**
- * @param array $array
- * @param string $key
- * @param null $default
- * @return null
- */
- private function array_get($array, $key, $default = null)
- {
- return isset($array[$key]) ? $array[$key] : $default;
- }
-
- /**
- * @param $key
- * @param $index
- * @param null $default
- * @return null
- */
- private function getConfig($key, $index = null, $default = null)
- {
- return $index === null
- ? $this->config->get("yandex_money_market_".$key)
- : $this->array_get(
- $this->config->get("yandex_money_market_".$key),
- $index,
- $default
- );
- }
-
-}
\ No newline at end of file
diff --git a/src/upload/admin/model/extension/payment/yandex_money/YandexMoneyMetrikaModel.php b/src/upload/admin/model/extension/payment/yandex_money/YandexMoneyMetrikaModel.php
deleted file mode 100644
index 5d106bf..0000000
--- a/src/upload/admin/model/extension/payment/yandex_money/YandexMoneyMetrikaModel.php
+++ /dev/null
@@ -1,100 +0,0 @@
-SendResponse('counter/'.$number, $token, array(), array(), 'GET');
- }
-
- /**
- * @param int $number
- * @param string $token
- * @param array $options
- * @return mixed
- */
- public function saveCounterOptions($number, $token, $options)
- {
- $params = array(
- 'counter' => array(
- 'code_options' => array(
- 'clickmap' => (int)$options['clickmap'],
- 'visor' => (int)$options['visor'],
- 'track_hash' => (int)$options['track_hash'],
- 'ecommerce' => 1,
- 'informer' => array(
- 'enabled' => 0,
- ),
- ),
- ),
- );
-
- return $this->SendResponse('counter/'.$number, $token, array(), $params, 'PUT');
- }
-
- /**
- * @param string $to
- * @param string $token
- * @param array $headers
- * @param array $params
- * @param string $type
- * @return mixed
- */
- private function SendResponse($to, $token, $headers, $params, $type)
- {
- $headers[] = 'Authorization: OAuth '.$token;
- return $this->post(self::URL.$to, $headers, $params, $type);
- }
-
- /**
- * @param string $url
- * @param array $headers
- * @param array $params
- * @param string $type
- * @return stdClass
- */
- private static function post($url, $headers, $params, $type)
- {
- $curlOpt = array(
- CURLOPT_RETURNTRANSFER => true,
- CURLINFO_HEADER_OUT => true,
- CURLOPT_MAXREDIRS => 3,
- CURLOPT_CONNECTTIMEOUT => 10,
- CURLOPT_TIMEOUT => 10,
- CURLOPT_SSL_VERIFYPEER => true,
- );
-
- switch (strtoupper($type)) {
- case 'GET':
- if (!empty($params)) {
- $url .= (strpos($url, '?') === false ? '?' : '&').http_build_query($params);
- }
- break;
- case 'PUT':
- $json = json_encode($params);
- $headers[] = 'Content-Type: application/json';
- $headers[] = 'Content-Length: '.strlen($json);
-
- $curlOpt[CURLOPT_CUSTOMREQUEST] = 'PUT';
- $curlOpt[CURLOPT_POSTFIELDS] = $json;
- break;
- }
-
- $curlOpt[CURLOPT_HTTPHEADER] = $headers;
- $curl = curl_init($url);
- curl_setopt_array($curl, $curlOpt);
- $response = curl_exec($curl);
- curl_close($curl);
-
- return json_decode($response, true);
- }
-}
\ No newline at end of file
diff --git a/src/upload/admin/model/extension/payment/yandex_money/opencart-3.map b/src/upload/admin/model/extension/payment/yandex_money/opencart-3.map
deleted file mode 100644
index c1bf8e6..0000000
--- a/src/upload/admin/model/extension/payment/yandex_money/opencart-3.map
+++ /dev/null
@@ -1,11 +0,0 @@
-f:src/upload/admin/controller/extension/payment/yandex_money.php:admin/controller/extension/payment/yandex_money.php
-f:src/upload/{admin,catalog}/language/{en-gb,ru-ru}/extension/payment/yandex_money.php:{admin,catalog}/language/{en-gb,ru-ru}/extension/payment/yandex_money.php
-d:src/upload/{admin,catalog}/model/extension/payment/yandex_money:{admin,catalog}/model/extension/payment/yandex_money
-f:src/upload/admin/model/extension/payment/yandex_money.php:admin/model/extension/payment/yandex_money.php
-d:src/upload/admin/view/template/extension/payment/yandex_money:admin/view/template/extension/payment/yandex_money
-f:src/upload/admin/view/template/extension/payment/yandex_money.twig:admin/view/template/extension/payment/yandex_money.twig
-f:src/upload/catalog/{controller,model}/extension/payment/yandex_money.php:catalog/{controller,model}/extension/payment/yandex_money.php
-f:src/upload/catalog/view/theme/default/template/extension/payment/yandex_money_failure_status.tpl:catalog/view/theme/default/template/extension/payment/yandex_money_failure_status.tpl
-f:src/upload/catalog/view/theme/default/template/extension/payment/yandex_money_success_status.tpl:catalog/view/theme/default/template/extension/payment/yandex_money_success_status.tpl
-d:src/upload/catalog/view/theme/default/template/extension/payment/yandex_money:catalog/view/theme/default/template/extension/payment/yandex_money
-d:src/upload/image/catalog/payment/yandex_money:image/catalog/payment/yandex_money
\ No newline at end of file
diff --git a/src/upload/admin/model/extension/payment/yandex_money.php b/src/upload/admin/model/extension/payment/yoomoney.php
similarity index 80%
rename from src/upload/admin/model/extension/payment/yandex_money.php
rename to src/upload/admin/model/extension/payment/yoomoney.php
index 84cc3d6..ce0d2b9 100644
--- a/src/upload/admin/model/extension/payment/yandex_money.php
+++ b/src/upload/admin/model/extension/payment/yoomoney.php
@@ -1,29 +1,26 @@
log('info', 'install yandex_money module');
+ $this->log('info', 'install yoomoney module');
$this->db->query('
- CREATE TABLE IF NOT EXISTS `'.DB_PREFIX.'ya_money_payment` (
+ CREATE TABLE IF NOT EXISTS `'.DB_PREFIX.'yoomoney_payment` (
`order_id` INTEGER NOT NULL,
`payment_id` CHAR(36) NOT NULL,
`status` ENUM(\'pending\', \'waiting_for_capture\', \'succeeded\', \'canceled\') NOT NULL,
@@ -35,12 +32,12 @@ public function install()
`captured_at` DATETIME NOT NULL DEFAULT \'0000-00-00 00:00:00\',
`receipt` TEXT DEFAULT NULL,
- CONSTRAINT `'.DB_PREFIX.'ya_money_payment_pk` PRIMARY KEY (`order_id`),
- CONSTRAINT `'.DB_PREFIX.'ya_money_payment_unq_payment_id` UNIQUE (`payment_id`)
+ CONSTRAINT `'.DB_PREFIX.'yoomoney_payment_pk` PRIMARY KEY (`order_id`),
+ CONSTRAINT `'.DB_PREFIX.'yoomoney_payment_unq_payment_id` UNIQUE (`payment_id`)
) ENGINE=InnoDB DEFAULT CHARSET=UTF8 COLLATE=utf8_general_ci;
');
$this->db->query('
- CREATE TABLE IF NOT EXISTS `'.DB_PREFIX.'ya_money_refunds` (
+ CREATE TABLE IF NOT EXISTS `'.DB_PREFIX.'yoomoney_refunds` (
`refund_id` CHAR(36) NOT NULL,
`order_id` INTEGER NOT NULL,
`payment_id` CHAR(36) NOT NULL,
@@ -49,32 +46,32 @@ public function install()
`currency` CHAR(3) NOT NULL,
`created_at` DATETIME NOT NULL,
`authorized_at` DATETIME NOT NULL DEFAULT \'0000-00-00 00:00:00\',
- INDEX `'.DB_PREFIX.'ya_money_refunds_idx_order_id` (`order_id`),
- INDEX `'.DB_PREFIX.'ya_money_refunds_idx_payment_id` (`payment_id`),
- CONSTRAINT `'.DB_PREFIX.'ya_money_refunds_pk` PRIMARY KEY (`refund_id`)
+ INDEX `'.DB_PREFIX.'yoomoney_refunds_idx_order_id` (`order_id`),
+ INDEX `'.DB_PREFIX.'yoomoney_refunds_idx_payment_id` (`payment_id`),
+ CONSTRAINT `'.DB_PREFIX.'yoomoney_refunds_pk` PRIMARY KEY (`refund_id`)
) ENGINE=InnoDB DEFAULT CHARSET=UTF8 COLLATE=utf8_general_ci;
');
$this->db->query('
- CREATE TABLE IF NOT EXISTS `'.DB_PREFIX.'ya_money_product_properties` (
+ CREATE TABLE IF NOT EXISTS `'.DB_PREFIX.'yoomoney_product_properties` (
`product_id` INTEGER NOT NULL,
`payment_subject` VARCHAR(256),
`payment_mode` VARCHAR(256),
- CONSTRAINT `'.DB_PREFIX.'ya_money_payment_pk` PRIMARY KEY (`product_id`)
+ CONSTRAINT `'.DB_PREFIX.'yoomoney_payment_pk` PRIMARY KEY (`product_id`)
) ENGINE=InnoDB DEFAULT CHARSET=UTF8 COLLATE=utf8_general_ci;
');
}
public function uninstall()
{
- $this->log('info', 'uninstall yandex_money module');
+ $this->log('info', 'uninstall yoomoney module');
}
public function log($level, $message, $context = null)
{
if ($this->getKassaModel()->getDebugLog()) {
- $log = new Log('yandex-money.log');
+ $log = new Log('yoomoney.log');
$search = array();
$replace = array();
if (!empty($context)) {
@@ -112,11 +109,11 @@ public function installEventForSecondReceipt()
{
$this->load->model('setting/event');
- $this->model_setting_event->deleteEventByCode(self::YCMS_EVENT_SECOND_RECEIPT_CODE);
+ $this->model_setting_event->deleteEventByCode(self::YOOMONEY_EVENT_SECOND_RECEIPT_CODE);
$this->model_setting_event->addEvent(
- self::YCMS_EVENT_SECOND_RECEIPT_CODE,
+ self::YOOMONEY_EVENT_SECOND_RECEIPT_CODE,
"catalog/model/checkout/order/addOrderHistory/after",
- "extension/payment/yandex_money/hookOrderStatusChange"
+ "extension/payment/yoomoney/hookOrderStatusChange"
);
}
@@ -127,7 +124,7 @@ public function installEventForSecondReceipt()
*/
public function findPaymentIdByOrderId($orderId)
{
- $sql = 'SELECT `payment_id` FROM `'.DB_PREFIX.'ya_money_payment` WHERE `order_id` = '.(int)$orderId;
+ $sql = 'SELECT `payment_id` FROM `'.DB_PREFIX.'yoomoney_payment` WHERE `order_id` = '.(int)$orderId;
$resultSet = $this->db->query($sql);
if (empty($resultSet) || empty($resultSet->num_rows)) {
return null;
@@ -144,7 +141,7 @@ public function findPaymentIdByOrderId($orderId)
*/
public function findPayments($offset = 0, $limit = 0)
{
- $res = $this->db->query('SELECT * FROM `'.DB_PREFIX.'ya_money_payment` ORDER BY `order_id` DESC LIMIT '.(int)$offset.', '.(int)$limit);
+ $res = $this->db->query('SELECT * FROM `'.DB_PREFIX.'yoomoney_payment` ORDER BY `order_id` DESC LIMIT '.(int)$offset.', '.(int)$limit);
if ($res->num_rows) {
return $res->rows;
}
@@ -157,7 +154,7 @@ public function findPayments($offset = 0, $limit = 0)
*/
public function countPayments()
{
- $res = $this->db->query('SELECT COUNT(*) AS `count` FROM `'.DB_PREFIX.'ya_money_payment`');
+ $res = $this->db->query('SELECT COUNT(*) AS `count` FROM `'.DB_PREFIX.'yoomoney_payment`');
if ($res->num_rows) {
return $res->row['count'];
}
@@ -168,7 +165,7 @@ public function countPayments()
/**
* @param $payments
*
- * @return \YandexCheckout\Model\PaymentInterface[]
+ * @return \YooKassa\Model\PaymentInterface[]
*/
public function updatePaymentsStatuses($payments)
{
@@ -176,8 +173,8 @@ public function updatePaymentsStatuses($payments)
$client = $this->getClient();
$statuses = array(
- \YandexCheckout\Model\PaymentStatus::PENDING,
- \YandexCheckout\Model\PaymentStatus::WAITING_FOR_CAPTURE,
+ \YooKassa\Model\PaymentStatus::PENDING,
+ \YooKassa\Model\PaymentStatus::WAITING_FOR_CAPTURE,
);
foreach ($payments as $payment) {
if (in_array($payment['status'], $statuses)) {
@@ -185,7 +182,7 @@ public function updatePaymentsStatuses($payments)
$paymentObject = $client->getPaymentInfo($payment['payment_id']);
if ($paymentObject === null) {
$this->updatePaymentStatus($payment['payment_id'],
- \YandexCheckout\Model\PaymentStatus::CANCELED);
+ \YooKassa\Model\PaymentStatus::CANCELED);
} else {
$result[] = $paymentObject;
if ($paymentObject->getStatus() !== $payment['status']) {
@@ -203,7 +200,7 @@ public function updatePaymentsStatuses($payments)
}
/**
- * @param \YandexCheckout\Model\PaymentInterface $payment
+ * @param \YooKassa\Model\PaymentInterface $payment
* @param bool $fetchPayment
*
* @return bool
@@ -221,13 +218,13 @@ public function capturePayment($payment, $fetchPayment = true)
}
}
- if ($payment->getStatus() !== \YandexCheckout\Model\PaymentStatus::WAITING_FOR_CAPTURE) {
- return $payment->getStatus() === \YandexCheckout\Model\PaymentStatus::SUCCEEDED;
+ if ($payment->getStatus() !== \YooKassa\Model\PaymentStatus::WAITING_FOR_CAPTURE) {
+ return $payment->getStatus() === \YooKassa\Model\PaymentStatus::SUCCEEDED;
}
$client = $this->getClient();
try {
- $builder = \YandexCheckout\Request\Payments\Payment\CreateCaptureRequest::builder();
+ $builder = \YooKassa\Request\Payments\Payment\CreateCaptureRequest::builder();
$builder->setAmount($payment->getAmount());
$request = $builder->build();
$result = $client->capturePayment($request, $payment->getId());
@@ -265,7 +262,7 @@ public function cancelPayment($payment)
/**
* @param int $orderId
* @param array $orderInfo
- * @param \YandexCheckout\Model\PaymentInterface $payment
+ * @param \YooKassa\Model\PaymentInterface $payment
* @param int $statusId
*/
public function confirmOrderPayment($orderId, $orderInfo, $payment, $statusId)
@@ -296,11 +293,11 @@ public function updateOrderStatus($order_id, $order_info, $comment = '')
private function updatePaymentStatus($paymentId, $status, $capturedAt = null)
{
- $sql = 'UPDATE `'.DB_PREFIX.'ya_money_payment` SET `status` = \''.$status.'\'';
+ $sql = 'UPDATE `'.DB_PREFIX.'yoomoney_payment` SET `status` = \''.$status.'\'';
if ($capturedAt !== null) {
$sql .= ', `captured_at`=\''.$capturedAt->format('Y-m-d H:i:s').'\'';
}
- if ($status !== \YandexCheckout\Model\PaymentStatus::CANCELED && $status !== \YandexCheckout\Model\PaymentStatus::PENDING) {
+ if ($status !== \YooKassa\Model\PaymentStatus::CANCELED && $status !== \YooKassa\Model\PaymentStatus::PENDING) {
$sql .= ', `paid`=\'Y\'';
}
$sql .= ' WHERE `payment_id`=\''.$paymentId.'\'';
@@ -314,11 +311,11 @@ private function updatePaymentStatus($paymentId, $status, $capturedAt = null)
*/
public function getOrderRefunds($orderId)
{
- $sql = 'SELECT * FROM `'.DB_PREFIX.'ya_money_refunds` WHERE `order_id` = '.(int)$orderId;
+ $sql = 'SELECT * FROM `'.DB_PREFIX.'yoomoney_refunds` WHERE `order_id` = '.(int)$orderId;
$recordSet = $this->db->query($sql);
$result = array();
foreach ($recordSet->rows as $record) {
- if ($record['status'] === \YandexCheckout\Model\RefundStatus::PENDING) {
+ if ($record['status'] === \YooKassa\Model\RefundStatus::PENDING) {
$this->checkRefundStatus($record['refund_id']);
}
$result[] = $record;
@@ -334,7 +331,7 @@ private function checkRefundStatus($refundId)
} catch (\Exception $e) {
return;
}
- $sql = 'UPDATE `'.DB_PREFIX.'ya_money_payment` SET `status` = \''
+ $sql = 'UPDATE `'.DB_PREFIX.'yoomoney_payment` SET `status` = \''
.$this->db->escape($refund->getStatus()).'\'';
$sql .= ' WHERE `refund_id` = \''.$this->db->escape($refund->getId()).'\'';
$this->db->escape($sql);
@@ -343,7 +340,7 @@ private function checkRefundStatus($refundId)
/**
* @param string $paymentId
*
- * @return \YandexCheckout\Model\PaymentInterface|null
+ * @return \YooKassa\Model\PaymentInterface|null
*/
public function fetchPaymentInfo($paymentId)
{
@@ -360,8 +357,8 @@ public function fetchPaymentInfo($paymentId)
public function getKassaModel()
{
if ($this->kassaModel === null) {
- require_once __DIR__.'/yandex_money/YandexMoneyKassaModel.php';
- $this->kassaModel = new YandexMoneyKassaModel($this->config);
+ require_once __DIR__.'/yoomoney/YooMoneyKassaModel.php';
+ $this->kassaModel = new YooMoneyKassaModel($this->config);
$this->kassaModel->setApiClient($this->getClient());
}
@@ -371,65 +368,19 @@ public function getKassaModel()
public function getWalletModel()
{
if ($this->walletModel === null) {
- require_once __DIR__.'/yandex_money/YandexMoneyWalletModel.php';
- $this->walletModel = new YandexMoneyWalletModel($this->config);
+ require_once __DIR__.'/yoomoney/YooMoneyWalletModel.php';
+ $this->walletModel = new YooMoneyWalletModel($this->config);
}
return $this->walletModel;
}
- public function getBillingModel()
- {
- if ($this->billingModel === null) {
- require_once __DIR__.'/yandex_money/YandexMoneyBillingModel.php';
- $this->billingModel = new YandexMoneyBillingModel($this->config);
- }
-
- return $this->billingModel;
- }
-
- /**
- * @return YandexMoneyMetrikaModel
- */
- public function getMetrikaModel()
- {
- if ($this->metrikaModel === null) {
- require_once dirname(__FILE__).DIRECTORY_SEPARATOR.'yandex_money'.DIRECTORY_SEPARATOR.'YandexMoneyMetrikaModel.php';
- $this->metrikaModel = new YandexMoneyMetrikaModel();
- }
-
- return $this->metrikaModel;
- }
-
- /**
- * @return YandexMoneyMarketModel
- */
- public function getMarket()
- {
- if ($this->market === null) {
- require_once dirname(__FILE__).DIRECTORY_SEPARATOR.'yandex_money'.DIRECTORY_SEPARATOR.'YandexMoneyMarketModel.php';
- $this->load->model('localisation/stock_status');
- $this->load->model('localisation/tax_class');
- $this->load->model('catalog/category');
- $this->load->model('catalog/option');
- $this->load->language('catalog/product');
- $this->market = new YandexMoneyMarketModel($this->config, $this->db, $this->language,
- $this->model_localisation_stock_status,
- $this->model_catalog_option,
- $this->model_localisation_tax_class,
- $this->model_catalog_category
- );
- }
-
- return $this->market;
- }
-
public function refundPayment($payment, $order, $amount, $comment)
{
try {
- $builder = \YandexCheckout\Request\Refunds\CreateRefundRequest::builder();
+ $builder = \YooKassa\Request\Refunds\CreateRefundRequest::builder();
$builder->setAmount($amount)
- ->setCurrency(\YandexCheckout\Model\CurrencyCode::RUB)
+ ->setCurrency(\YooKassa\Model\CurrencyCode::RUB)
->setPaymentId($payment->getId())
->setDescription($comment);
$request = $builder->build();
@@ -455,12 +406,12 @@ public function refundPayment($payment, $order, $amount, $comment)
}
/**
- * @param \YandexCheckout\Model\RefundInterface $refund
+ * @param \YooKassa\Model\RefundInterface $refund
* @param int $orderId
*/
private function insertRefund($refund, $orderId)
{
- $sql = 'INSERT INTO `'.DB_PREFIX.'ya_money_refunds`('
+ $sql = 'INSERT INTO `'.DB_PREFIX.'yoomoney_refunds`('
.'`refund_id`, `order_id`, `payment_id`, `status`, `amount`, `currency`, `created_at`'
.') VALUES ('
."'".$this->db->escape($refund->getId())."',"
@@ -477,7 +428,7 @@ private function insertRefund($refund, $orderId)
protected function getClient()
{
if ($this->client === null) {
- $this->client = new \YandexCheckout\Client();
+ $this->client = new \YooKassa\Client();
$this->client->setAuth(
$this->getKassaModel()->getShopId(),
$this->getKassaModel()->getPassword()
@@ -485,7 +436,7 @@ protected function getClient()
$this->client->setLogger($this);
$userAgent = $this->client->getApiClient()->getUserAgent();
$userAgent->setCms('OpenCart', VERSION);
- $userAgent->setModule('Y.CMS',self::MODULE_VERSION);
+ $userAgent->setModule('YooMoney',self::MODULE_VERSION);
}
return $this->client;
@@ -527,8 +478,8 @@ public function createBackup($version)
$this->preventDirectories();
$sourceDirectory = dirname(realpath(DIR_CATALOG));
- $reader = new \YandexMoney\Updater\ProjectStructure\ProjectStructureReader();
- $root = $reader->readFile(dirname(__FILE__).'/yandex_money/'.$this->getMapFileName(),
+ $reader = new \YooMoney\Updater\ProjectStructure\ProjectStructureReader();
+ $root = $reader->readFile(dirname(__FILE__).'/yoomoney/'.$this->getMapFileName(),
$sourceDirectory);
$rootDir = $version.'-'.time();
@@ -545,7 +496,7 @@ public function createBackup($version)
try {
$fileName = $dir.'/'.$fileName;
- $archive = new \YandexMoney\Updater\Archive\BackupZip($fileName, $rootDir);
+ $archive = new \YooMoney\Updater\Archive\BackupZip($fileName, $rootDir);
$archive->backup($root);
} catch (Exception $e) {
$this->log('error', 'Failed to create backup: '.$e->getMessage());
@@ -570,7 +521,7 @@ public function restoreBackup($fileName)
try {
$sourceDirectory = dirname(realpath(DIR_CATALOG));
- $archive = new \YandexMoney\Updater\Archive\RestoreZip($fileName);
+ $archive = new \YooMoney\Updater\Archive\RestoreZip($fileName);
$archive->restore('file_map.map', $sourceDirectory);
} catch (Exception $e) {
$this->log('error', $e->getMessage());
@@ -687,7 +638,7 @@ public function unpackLastVersion($fileName)
try {
$sourceDirectory = dirname(realpath(DIR_CATALOG));
- $archive = new \YandexMoney\Updater\Archive\RestoreZip($fileName);
+ $archive = new \YooMoney\Updater\Archive\RestoreZip($fileName);
$archive->restore($this->getMapFileName(), $sourceDirectory);
} catch (Exception $e) {
$this->log('error', $e->getMessage());
@@ -752,7 +703,7 @@ private function formatSize($size)
private function loadClasses()
{
if (!class_exists('GitHubConnector')) {
- $path = dirname(__FILE__).DIRECTORY_SEPARATOR.'yandex_money'.DIRECTORY_SEPARATOR.'Updater'.DIRECTORY_SEPARATOR;
+ $path = dirname(__FILE__).DIRECTORY_SEPARATOR.'yoomoney'.DIRECTORY_SEPARATOR.'Updater'.DIRECTORY_SEPARATOR;
require_once $path.'GitHubConnector.php';
require_once $path.'ProjectStructure/EntryInterface.php';
require_once $path.'ProjectStructure/DirectoryEntryInterface.php';
diff --git a/src/upload/admin/model/extension/payment/yandex_money/Updater/Archive/BackupZip.php b/src/upload/admin/model/extension/payment/yoomoney/Updater/Archive/BackupZip.php
similarity index 95%
rename from src/upload/admin/model/extension/payment/yandex_money/Updater/Archive/BackupZip.php
rename to src/upload/admin/model/extension/payment/yoomoney/Updater/Archive/BackupZip.php
index 5d87b0d..66e4d00 100644
--- a/src/upload/admin/model/extension/payment/yandex_money/Updater/Archive/BackupZip.php
+++ b/src/upload/admin/model/extension/payment/yoomoney/Updater/Archive/BackupZip.php
@@ -1,17 +1,17 @@
invoiceEnable = (bool)$config->get('yandex_money_kassa_invoice');
- $this->invoiceSubject = $config->get('yandex_money_kassa_invoice_subject');
- $this->invoiceMessage = $config->get('yandex_money_kassa_invoice_message');
- $this->invoiceLogo = (bool)$config->get('yandex_money_kassa_invoice_logo');
+ $this->invoiceEnable = (bool)$config->get('yoomoney_kassa_invoice');
+ $this->invoiceSubject = $config->get('yoomoney_kassa_invoice_subject');
+ $this->invoiceMessage = $config->get('yoomoney_kassa_invoice_message');
+ $this->invoiceLogo = (bool)$config->get('yoomoney_kassa_invoice_logo');
}
/**
@@ -51,11 +51,6 @@ public function setEpl($value)
$this->epl = $value ? true : false;
}
- public function setUseYandexButton($value)
- {
- $this->useYandexButton = $value ? true : false;
- }
-
public function setUseInstallmentsButton($value)
{
$this->useInstallmentsButton = (bool)$value;
@@ -207,7 +202,7 @@ public function checkConnection()
{
try {
$this->apiClient->getPaymentInfo('00000000-0000-0000-0000-000000000001');
- } catch (\YandexCheckout\Common\Exceptions\NotFoundException $e) {
+ } catch (\YooKassa\Common\Exceptions\NotFoundException $e) {
return true;
} catch (Exception $e) {
return false;
diff --git a/src/upload/admin/model/extension/payment/yandex_money/YandexMoneyWalletModel.php b/src/upload/admin/model/extension/payment/yoomoney/YooMoneyWalletModel.php
similarity index 87%
rename from src/upload/admin/model/extension/payment/yandex_money/YandexMoneyWalletModel.php
rename to src/upload/admin/model/extension/payment/yoomoney/YooMoneyWalletModel.php
index 52cbf80..e247d44 100644
--- a/src/upload/admin/model/extension/payment/yandex_money/YandexMoneyWalletModel.php
+++ b/src/upload/admin/model/extension/payment/yoomoney/YooMoneyWalletModel.php
@@ -1,8 +1,8 @@
-
-
{{ language.get('billing_page_title') }}
-
-
-
-
{{ language.get('billing_header_description') }}
-
{{ language.get('billing_version_string') }} {{ module_version }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/upload/admin/view/template/extension/payment/yandex_money/market.twig b/src/upload/admin/view/template/extension/payment/yandex_money/market.twig
deleted file mode 100644
index 741a62b..0000000
--- a/src/upload/admin/view/template/extension/payment/yandex_money/market.twig
+++ /dev/null
@@ -1,614 +0,0 @@
-{% for m in market_status %}
- {{ m }}
-{% endfor %}
-
-
-
-
-
{{ language.get('kassa_header_description') }}
-
{{ language.get('kassa_version_string') }} {{ module_version }}
-
-
-
-
-
-
-
-
- {{ language.get('market_header_offer_settings') }}
-
-
-
-
-
-
-
- {{ language.get('market_additional_condition_label') }}
- {{ market.htmlAdditionalConditionList }}
-
-
-
- {{ language.get('market_header_param_settings') }}
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/upload/admin/view/template/extension/payment/yandex_money/metrika.twig b/src/upload/admin/view/template/extension/payment/yandex_money/metrika.twig
deleted file mode 100644
index dcc7eb3..0000000
--- a/src/upload/admin/view/template/extension/payment/yandex_money/metrika.twig
+++ /dev/null
@@ -1,58 +0,0 @@
-{% for me in metrika_status %}
-{{ me }}
-{% endfor %}
-
-
-
-
{{ language.get('kassa_header_description') }}
-
{{ language.get('kassa_version_string') }} {{ module_version }}
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/upload/admin/view/template/extension/payment/yandex_money.twig b/src/upload/admin/view/template/extension/payment/yoomoney.twig
similarity index 56%
rename from src/upload/admin/view/template/extension/payment/yandex_money.twig
rename to src/upload/admin/view/template/extension/payment/yoomoney.twig
index 54d230b..5c618eb 100644
--- a/src/upload/admin/view/template/extension/payment/yandex_money.twig
+++ b/src/upload/admin/view/template/extension/payment/yoomoney.twig
@@ -3,7 +3,7 @@
-{{ footer }}
-{% endif %}
\ No newline at end of file
diff --git a/src/upload/catalog/view/theme/default/template/extension/payment/yandex_money/kassa_form.twig b/src/upload/catalog/view/theme/default/template/extension/payment/yoomoney/kassa_form.twig
similarity index 79%
rename from src/upload/catalog/view/theme/default/template/extension/payment/yandex_money/kassa_form.twig
rename to src/upload/catalog/view/theme/default/template/extension/payment/yoomoney/kassa_form.twig
index 398563f..71a6b97 100644
--- a/src/upload/catalog/view/theme/default/template/extension/payment/yandex_money/kassa_form.twig
+++ b/src/upload/catalog/view/theme/default/template/extension/payment/yoomoney/kassa_form.twig
@@ -8,16 +8,16 @@
{{ kassa.getDisplayName() }}
{% endif %}
-