miniShop2 icon indicating copy to clipboard operation
miniShop2 copied to clipboard

Проверка разрешения msproduct_save

Open andronex opened this issue 5 years ago • 1 comments

Сообщение об ошибке

Резюме

При 'canSave' => $this->canSave, в строке https://github.com/bezumkin/miniShop2/blob/7894e4479e98ed26d2cb189379ca47657615489d/core/components/minishop2/controllers/product/update.class.php#L134 не проверяется разрешение msproduct_save политики доступа по аналогии с категорией https://github.com/bezumkin/miniShop2/blob/7894e4479e98ed26d2cb189379ca47657615489d/core/components/minishop2/controllers/category/update.class.php#L115 . Из-за этого на странице товара кнопка "Сохранить" заблокирована при отключенном разрешении save_document.

Нужно изменить строку https://github.com/bezumkin/miniShop2/blob/7894e4479e98ed26d2cb189379ca47657615489d/core/components/minishop2/controllers/product/update.class.php#L134 на 'canSave' => $this->modx->hasPermission('msproduct_save'), и аналогично здесь https://github.com/bezumkin/miniShop2/blob/7894e4479e98ed26d2cb189379ca47657615489d/core/components/minishop2/controllers/product/create.class.php#L132

Шаг для воспроизведения

Отключить разрешение save_document и включить разрешение msproduct_save

Ожидаемое поведение

Кнопка "Сохранить" на карточке товара (class_key = msProduct) должна быть видна и не должна быть заблокированной при включенном разрешении msproduct_save по аналогии с категорией (class_key = msCategory).

Среда

PHP 7.3.11 MODX Revolution 2.7.2-pl minishop2-2.5.0-pl

andronex avatar Feb 15 '20 17:02 andronex

То же самое с разрешением 'canDelete' => $this->modx->hasPermission('msproduct_delete'), в строках https://github.com/bezumkin/miniShop2/blob/7894e4479e98ed26d2cb189379ca47657615489d/core/components/minishop2/controllers/product/update.class.php#L138 и https://github.com/bezumkin/miniShop2/blob/7894e4479e98ed26d2cb189379ca47657615489d/core/components/minishop2/controllers/product/create.class.php#L136

andronex avatar Feb 15 '20 18:02 andronex