Автор Тема: Ограничить права доступа  (Прочитано 514 раз)

29 Май 2017, 19:05:07
  • Старожил
  • ****
  • Сообщений: 259
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Здравствуйте!
Стандартные настройки Престы позволяют ограничить права на редактирование / удаление товара "целиком", а мне нужно, чтобы определенные профили сотрудников могли изменять товары, но не могли "трогать" определенные поля, например:
Артикул
Штрих-код
Ширина
Высота
Длина
Вес
Как сделать всегда readonly конкретное поле - это понятно, в tpl в input добавить readonly.
А вот по условию, не все "догоняю", примерно представляю так :
1. В tpl вместо readonly ставлю что-то типа
{$field->isreadonly}2. В Контроллере определяю для текущего сотрудника id_profile
3. Если employee.id_profile=4 (например), то что?

По всем трем шагам вопросы:
1. Что поместить в {}?
2. Вызовом какой функции получить id текущего сотрудника?
3. Собственно вопрос там уже стоит.

Версия 1.6.1.12
29 Май 2017, 19:21:10
Ответ #1
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
На все 3 вопроса ответ один - ничего. Так эту задачу не решить.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
29 Май 2017, 19:24:37
Ответ #2
  • Старожил
  • ****
  • Сообщений: 259
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
С моей стороны логичен следующий вопрос:
Как тогда можно решить эту задачу?
29 Май 2017, 21:04:08
Ответ #3
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Не помню точно топик, где писали подробно про добавление прав. Алгоритм такой
1. Создают новый провиль в админке
2. Переопределяют Employee, добавляют правила
3. Добаляют новые правила в конроллер Admin...Controller
Для отдельных полей в редакторе еще придеться и в javascript поковыряться.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
29 Май 2017, 21:47:00
Ответ #4
  • Старожил
  • ****
  • Сообщений: 259
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Мне подсказали простое решение:
в tpl у нужных полей проставить
{if $employee->id_profile == 5}readonly{/if}
30 Май 2017, 10:53:50
Ответ #5
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
Мне подсказали простое решение:
в tpl у нужных полей проставить
{if $employee->id_profile == 5}readonly{/if}
Может и простое, но бесполезное.
F12, удаляешь readonly и делай что хочешь.
30 Май 2017, 13:27:29
Ответ #6
  • Старожил
  • ****
  • Сообщений: 259
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Может и простое, но бесполезное.
F12, удаляешь readonly и делай что хочешь.
Защищают обычно от случайности, дурака и вредительства
Этот подход от первых двух зол.
Я если менеджер захочет навредить, то смена штрих кода через F12 - это смешно, потому что навредить можно и проще и серьезней.