Skip to content

Commit bebbaab

Browse files
authored
Merge pull request #9 from yoomoney/release/v1.2.0
Release/1.2.0
2 parents 45661bf + 824eea4 commit bebbaab

38 files changed

+1928
-521
lines changed

CHANGELOG.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
### v1.2.0 от 09.11.2020
2+
* Изменена ссылка для обновления модуля yandex-money -> yoomoney
3+
* Обновлен SDK до версии 1.6.8
4+
15
### v1.1.1 от 31.07.2020
26
* Мелкие правки
37

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
[Инструкция по настройке](https://kassa.yandex.ru/manuals/oscommerce)
66

7-
Для установки данного модуля необходимо переместить папки `ext`, `includes` и файл `callback.php` из папки `src` [архива](https://github.com/yandex-money/yandex-money-cms-v2-oscommerce/archive/master.zip) в корень Вашего сайта.
7+
Для установки данного модуля необходимо переместить папки `ext`, `includes` и файл `callback.php` из папки `src` [архива](https://github.com/yoomoney/yandex-money-cms-v2-oscommerce/archive/master.zip) в корень Вашего сайта.
88

99
По умолчанию модуль устанавливается для работы с Яндекс.Кассой, для того чтобы его изменить в файле [src/ext/modules/payment/yandex_money/yandex_money.php](src/ext/modules/payment/yandex_money/yandex_money.php) найдите строки:
1010
```php

oscommerce-yamoney-module.zip

9.59 KB
Binary file not shown.

src/includes/modules/payment/yandex_money.php

+3-3
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ class Yandex_Money
1818
const MODE_MONEY = 2;
1919
const MODE_BILLING = 3;
2020

21-
const MODULE_VERSION = '1.1.1';
21+
const MODULE_VERSION = '1.2.0';
2222
const INSTALLMENTS_MIN_AMOUNT = 3000;
2323

2424
public $code;
@@ -93,7 +93,7 @@ private function applyVersionInfo()
9393
.'<td></td><td></td><td></td><td></td><td></td></tr></tbody></table></div>';
9494
}
9595

96-
$js = <<<JS
96+
$js = <<<HTML
9797
<style>
9898
#backup-list-window table {
9999
width: 100%;
@@ -198,7 +198,7 @@ function updateModuleHandler() {
198198
}
199199
});
200200
</script>
201-
JS;
201+
HTML;
202202

203203
$this->description .= $versionText.$js;
204204
}

src/includes/modules/payment/yandex_money/Updater.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ class Updater
2020
private $backupDirectory = 'yandex_money/backup';
2121
private $versionDirectory = 'yandex_money/updates';
2222
private $downloadDirectory = 'yandex_money';
23-
private $repository = 'yandex-money/yandex-money-cms-v2-oscommerce';
23+
private $repository = 'yoomoney/yandex-money-cms-v2-oscommerce';
2424

2525
public function __construct(\Yandex_Money $module)
2626
{

src/includes/modules/payment/yandex_money/yandex-checkout-sdk/lib/Client.php

+7-10
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@
6868
use YandexCheckout\Request\Receipts\CreatePostReceiptRequestInterface;
6969
use YandexCheckout\Request\Receipts\CreatePostReceiptRequestSerializer;
7070
use YandexCheckout\Request\Receipts\ReceiptResponseFactory;
71+
use YandexCheckout\Request\Receipts\ReceiptsRequest;
72+
use YandexCheckout\Request\Receipts\ReceiptsRequestSerializer;
7173
use YandexCheckout\Request\Receipts\ReceiptsResponse;
7274
use YandexCheckout\Request\Refunds\CreateRefundRequest;
7375
use YandexCheckout\Request\Refunds\CreateRefundRequestInterface;
@@ -92,7 +94,7 @@ class Client extends BaseClient
9294
/**
9395
* Текущая версия библиотеки
9496
*/
95-
const SDK_VERSION = '1.6.4';
97+
const SDK_VERSION = '1.6.8';
9698

9799
/**
98100
* Получить список платежей магазина.
@@ -697,6 +699,7 @@ public function getWebhooks()
697699
* @throws TooManyRequestsException
698700
* @throws UnauthorizedException
699701
* @throws ExtensionNotFoundException
702+
* @throws Exception
700703
*/
701704
public function getReceipts($filter = null)
702705
{
@@ -706,16 +709,10 @@ public function getReceipts($filter = null)
706709
$queryParams = array();
707710
} else {
708711
if (is_array($filter)) {
709-
$queryParams = $filter;
710-
} elseif ($filter instanceof PaymentInterface) {
711-
$queryParams = array(
712-
'payment_id' => $filter->getId()
713-
);
714-
} elseif ($filter instanceof RefundInterface) {
715-
$queryParams = array(
716-
'refund_id' => $filter->getId()
717-
);
712+
$filter = ReceiptsRequest::builder()->build($filter);
718713
}
714+
$serializer = new ReceiptsRequestSerializer();
715+
$queryParams = $serializer->serialize($filter);
719716
}
720717

721718
$response = $this->execute($path, HttpVerb::GET, $queryParams);

src/includes/modules/payment/yandex_money/yandex-checkout-sdk/lib/Common/AbstractRequestBuilder.php

+3-2
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,9 @@ public function setOptions($options)
106106
if (method_exists($this, $method)) {
107107
$this->{$method} ($value);
108108
} else {
109-
$tmp = preg_replace('/\_(\w)/', '\1', $property);
110-
$method = 'set' . ucfirst($tmp);
109+
$property = str_replace('.', '_', $property);
110+
$field = implode('', array_map('ucfirst', explode('_', $property)));
111+
$method = 'set' . ucfirst($field);
111112
if (method_exists($this, $method)) {
112113
$this->{$method} ($value);
113114
}

src/includes/modules/payment/yandex_money/yandex-checkout-sdk/lib/Model/PaymentData/PaymentDataWechat.php

+3
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@
2828

2929
use YandexCheckout\Model\PaymentMethodType;
3030

31+
/**
32+
* @deprecated Класс будет удалён в одной из будущих версий.
33+
*/
3134
class PaymentDataWechat extends AbstractPaymentData
3235
{
3336
public function __construct()

src/includes/modules/payment/yandex_money/yandex-checkout-sdk/lib/Model/PaymentMethod/PaymentMethodWechat.php

+3
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@
2828

2929
use YandexCheckout\Model\PaymentMethodType;
3030

31+
/**
32+
* @deprecated Класс будет удалён в одной из будущих версий.
33+
*/
3134
class PaymentMethodWechat extends AbstractPaymentMethod
3235
{
3336
public function __construct()

src/includes/modules/payment/yandex_money/yandex-checkout-sdk/lib/Model/PaymentMethodType.php

+3
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,9 @@ class PaymentMethodType extends AbstractEnum
6262
const B2B_SBERBANK = 'b2b_sberbank';
6363
const TINKOFF_BANK = 'tinkoff_bank';
6464
const PSB = 'psb';
65+
/**
66+
* @deprecated Будет удален в следующих версиях
67+
*/
6568
const WECHAT = 'wechat';
6669

6770
protected static $validValues = array(

src/includes/modules/payment/yandex_money/yandex-checkout-sdk/lib/Model/ReceiptType.php

+7-6
Original file line numberDiff line numberDiff line change
@@ -34,21 +34,22 @@
3434
* --- | ---
3535
* |payment|Приход|
3636
* |refund|Возврат|
37+
* |simple|Простой|
3738
*/
3839
class ReceiptType extends AbstractEnum
3940
{
40-
/**
41-
* @var string Тип чека: приход
42-
*/
41+
/** @var string Тип чека: приход */
4342
const PAYMENT = 'payment';
4443

45-
/**
46-
* @var string Тип чека: возврат
47-
*/
44+
/** @var string Тип чека: возврат */
4845
const REFUND = 'refund';
4946

47+
/** @var string Тип чека: простой */
48+
const SIMPLE = 'simple';
49+
5050
protected static $validValues = array(
5151
self::PAYMENT => true,
5252
self::REFUND => true,
53+
self::SIMPLE => true,
5354
);
5455
}

src/includes/modules/payment/yandex_money/yandex-checkout-sdk/lib/Model/Refund.php

+29-10
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
* @property AmountInterface $amount Сумма возврата
4545
* @property string $receiptRegistration Статус регистрации чека
4646
* @property string $receipt_registration Статус регистрации чека
47-
* @property string $comment Комментарий, основание для возврата средств покупателю
47+
* @property string $description Комментарий, основание для возврата средств покупателю
4848
*/
4949
class Refund extends AbstractObject implements RefundInterface
5050
{
@@ -81,7 +81,7 @@ class Refund extends AbstractObject implements RefundInterface
8181
/**
8282
* @var string Комментарий, основание для возврата средств покупателю
8383
*/
84-
private $_comment;
84+
private $_description;
8585

8686
/**
8787
* @var SourceInterface[] Данные о распределении денег — сколько и в какой магазин нужно перевести.
@@ -298,33 +298,52 @@ public function setReceiptRegistration($value)
298298

299299
/**
300300
* Возвращает комментарий к возврату
301+
* @deprecated Устарел. Будет удален в одной из следующих версий
301302
* @return string Комментарий, основание для возврата средств покупателю
302303
*/
303304
public function getComment()
304305
{
305-
return $this->_comment;
306+
return $this->_description;
307+
}
308+
309+
/**
310+
* Возвращает комментарий к возврату
311+
* @return string Комментарий, основание для возврата средств покупателю
312+
*/
313+
public function getDescription()
314+
{
315+
return $this->_description;
306316
}
307317

308318
/**
309319
* Устанавливает комментарий к возврату
320+
* @deprecated Устарел. Будет удален в одной из следующих версий
310321
* @param string $value Комментарий, основание для возврата средств покупателю
311322
*
312323
* @throws EmptyPropertyValueException Выбрасывается если был передан пустой аргумент
313324
* @throws InvalidPropertyValueException Выбрасывается если було передано невалидное значение
314325
* @throws InvalidPropertyValueTypeException Выбрасывается если аргумент не является строкой
315326
*/
316327
public function setComment($value)
328+
{
329+
$this->setDescription($value);
330+
}
331+
332+
/**
333+
* Устанавливает комментарий к возврату
334+
* @param string $value Комментарий, основание для возврата средств покупателю
335+
*
336+
* @throws EmptyPropertyValueException Выбрасывается если был передан пустой аргумент
337+
* @throws InvalidPropertyValueTypeException Выбрасывается если аргумент не является строкой
338+
*/
339+
public function setDescription($value)
317340
{
318341
if ($value === null || $value === '') {
319-
throw new EmptyPropertyValueException('Empty refund comment', 0, 'Refund.comment');
342+
throw new EmptyPropertyValueException('Empty refund description', 0, 'Refund.description');
320343
} elseif (TypeCast::canCastToEnumString($value)) {
321-
$length = mb_strlen((string)$value, 'utf-8');
322-
if ($length > 250) {
323-
throw new InvalidPropertyValueException('Empty refund comment', 0, 'Refund.comment', $value);
324-
}
325-
$this->_comment = (string)$value;
344+
$this->_description = (string)$value;
326345
} else {
327-
throw new InvalidPropertyValueTypeException('Empty refund comment', 0, 'Refund.comment', $value);
346+
throw new InvalidPropertyValueTypeException('Empty refund description', 0, 'Refund.description', $value);
328347
}
329348
}
330349

src/includes/modules/payment/yandex_money/yandex-checkout-sdk/lib/Model/RefundInterface.php

+8-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
* @property-read AmountInterface $amount Сумма возврата
4141
* @property-read string $receiptRegistration Статус регистрации чека
4242
* @property-read string $receipt_registration Статус регистрации чека
43-
* @property-read string $comment Комментарий, основание для возврата средств покупателю
43+
* @property-read string $description Комментарий, основание для возврата средств покупателю
4444
*/
4545
interface RefundInterface
4646
{
@@ -82,10 +82,17 @@ function getReceiptRegistration();
8282

8383
/**
8484
* Возвращает комментарий к возврату
85+
* @deprecated Устарел. Будет удален в одной из следующих версий
8586
* @return string Комментарий, основание для возврата средств покупателю
8687
*/
8788
function getComment();
8889

90+
/**
91+
* Возвращает комментарий к возврату
92+
* @return string Комментарий, основание для возврата средств покупателю
93+
*/
94+
function getDescription();
95+
8996
/**
9097
* Возвращает информацию об инициаторе платежа или возврата
9198
* @return RequestorInterface

0 commit comments

Comments
 (0)