Перейти к содержанию

Перейти к решению Решений Panda58dev,

Рекомендуемые сообщения

  • Решение

Расширенное управление правами пользователей админки (UPP)

Расширенное управление правами пользователей админки Users Permissions Plus или просто UPP.
    На написание данного модуля сподвигло  постоянная «головная боль» на поддерживаемых проектах. Какие права у менеджеров? Какие у кладовщиков? Какие у контентщиков? Кто видит все заказы? Кто что то не видит? Кто имеет права удалять заказы, а кто нет?  Кто мог удалить карточку товара, а кто не мог?  
    Штатные инструменты OpenCart мягко говоря «не удобны», т.к. это тупое перечисление контроллеров, идущее «портянкой» в которой может потеряться и опытный пользователь магазина. Особое «ФИ» вызывает невозможность  «на лету» проверить за что отвечает тот или иной контроллер с «фендепеперным» названием.
    Каждые такие «непонятки» убивают массу времени на изучение того, у кого же какие права? Кто в какой группе, и что может та или иная группа. Как правило каждая такая необходимость = изучение всего как в первый раз.  
    И вот, посчитав сколько времени убивается, на эти «бестолковые, раздражающие, но необходимые в любом проекте», действия созрела идея данного модуля.


И так основные преимущества модуля:
- Наглядная инфографика прав доступа каждого пользователя;
- Возможность наглядного сравнения прав, и эффект «выскакивания» при несоответствиях;
- Клонирование прав того или иного пользователя;
- Импорт\Экспорт прав с любых существующих проектов (в рамках модуля);
- Разные варианты сортировок;
- Возможность кастомной сортировки списка, методом «Drag-and-drop»;
- Быстрый, прямой доступ к странице контроллера в новой вкладке (если не понятно за что он отвечает);
- Возможность собственного названия для контроллеров + предустановки наиболее популярных названий на русском;
- Быстрая логинизация под выбранным пользователем (в 1 клик) для проверки корректности работы;
- Запрет исполняемых методов (к примеру удаление, редактирование, изменение);
- Изменение статуса пользователя в 1 клик (вкл\выкл);
- Возможность создания типовых шаблонов под разные задачи;
- Комментарии к контроллерам;
- Имя активного пользователя в шапке сайта для OC 2.x (дабы не запутаться под каким аккаунтом выполнен вход);
- Система динамичных подсказок (разберется даже далекий от кода пользователь);
- Не заменяет системных файлов,  установленные права сохраняются даже после удаления модуля;
- AJAX обработка изменений...

    Тестировалось на OpenCart 2.3.x и OpenCart 3.x, но должно работать и на других.
На OpenCart 1.5, допилю в случае востребованности модуля.
Так же, хочу обратить внимание, что данный модуль, будет конфликтовать с "Запрет действий пользователей админки" от SlavaSoft. Поэтому, если Вы его используете, перед установкой UPP, "запрет действий" стоит удалить.

 

Какие файлы качать после покупки:

Узнайте версию своей CMS и PHP, файлы в названии имеют соответствующие версии. Например, если у Вас установлены OcStore 3.0.3.7 и PHP 7.1, скачайте:

  • ReadMe_oc3x.zip - документация к модулю, в ней подробно описан процесс установки;
  • upp1.0.1_oc_3.0.3_php_7.1.ocmod.zip - сам модуль.

Для PHP версий 7.2 и выше, нужен файл "upp_oc_3.0.3_v_1.0.0_php_7.2.ocmod.zip".

Так же, для безошибочной установки, советую скачать и установить модификатор "Local Copy".

 

Важно!
    После того, как файлы были загружены на сервер, сначала активируйте модуль в меню "дополнения->модули", и только после этого, обновите кэш модификаторов OCMOD. Иначе, установка будет выполнена некорректно.

Рекомендации после установки модуля:

     После установки модуля, настоятельно рекомендую, создать нового пользователя, выбрать его и администратора, после в редакторе прав создать шаблоны администратора и «нулевой» шаблон (у нового пользователя пустые права), для их использования в будущем. Для лучшей сохранности шаблонов, лучше всего экспортировать их к себе на компьютер.

     Про создание шаблонов, можете узнать из документации.

 

 

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

Протестировать работу модуля без ключа активации можно на тестовом поддомене test.вашдомен (например test.primer.ru).

Документацию к модулю можно найти в центре загрузок:

  • ReadMe_oc2.3 - документация для версий совместимых с OpenCart 2.3
  • ReadMe_oc3 - документация для версий совместимых с OpenCart 3.x

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

неплохо было бы добавить в модуль

 

Цитата

Можно назначить пользователю, группе пользователей домашнюю страничку - куда пользователь попадает после логина в систему

 

и где можно взять файлы модуля на тест?

Ссылка на комментарий
Поделиться на другие сайты

В 14.05.2022 в 22:40, zhu4koff сказал:

и где можно взять файлы модуля на тест?

Приветствую! Интересная задумка, в следующей версии добавлю )
Пришлите на почту panda58dev@inbox.ru сообщение с версией OpenCart и PHP, я вышлю Вам модуль и соответствующую документацию.

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

 

В 14.05.2022 в 15:06, Panda58dev сказал:

Запрет исполняемых методов (к примеру удаление, редактирование, изменение);

 

может и такое получится реализовать)

 

Запрет полей для редактирования (к примеру остатки, sku товара и т.д.)

 

Ссылка на комментарий
Поделиться на другие сайты

В 15.05.2022 в 16:04, zhu4koff сказал:

Запрет полей для редактирования (к примеру остатки, sku товара и т.д.)

Планирую развитие модуля, если увижу, что он востребован. На написание текущей версии, ушло около 3-х месяцев. Накопятся отзывы и пожелания, достаточного количества для новой версии - запилим :)
Если нужно срочно, то за отдельную плату можем обсудить доработку в личке. 

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

Купил,  установил ,  поюзал...   Ииии честно сказать незнаю как раньше без этого модуля обходился.  Ощущение, что с "Горбатого запорожца" пересел на "Мерседес".    Автор оперативен,  проблем с установкой не было.  

Предсказываю Будущее по IP, Очищаю Карму (только после очистки Чакр) черезVPN, общаюсь с потусторонними через VoIP, вызываю Format C по ussd коду.  - Seo, SMM, Копирайтинг, Маркетинг.

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...
В 14.05.2022 в 22:40, zhu4koff сказал:

Можно назначить пользователю, группе пользователей домашнюю страничку - куда пользователь попадает после логина в систему

 

купил модуль в качестве инвестиции в его развитие) надеюсь будет развиваться)

Ссылка на комментарий
Поделиться на другие сайты

В 27.05.2022 в 17:26, zhu4koff сказал:

купил модуль в качестве инвестиции в его развитие) надеюсь будет развиваться)

Развитие обязательно будет, благодарю за оказанное доверие :)

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Добрый день,
ocstore 2.3.0.2.3

все установил, активировал, работает.

Но проблема, что не сохраняются права которые выставил.
Пользователь клонируется но полностью с пустыми правами.

пошел смотреть в базу данных и заметил что там пользователи создаются но без прав.
и базе данных без префикса oc_ , просто user, user_group
Может в этом дело?

Ссылка на комментарий
Поделиться на другие сайты

17 минут назад, MaxPeshkun сказал:

без префикса oc_ , просто user, user_group

Да вполне возможно, смотря какой префикс БД установлен у Вас в конфиге. Посмотреть префикс можно в /www/example.com/config.php, в последней строке:

 image.png.6c0853ca8112395599a222ed1ecd8f85.png

Переименовать таблицу можно через PhpMyAdmin.

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

2 минуты назад, Panda58dev сказал:

Посмотреть префикс можно в /www/example.com/config.php, в последней строке:

Да, в конфиге пусто, нет "oc_" но в самой базе данных есть и с "oc_" и без ((

Ссылка на комментарий
Поделиться на другие сайты

Только что, MaxPeshkun сказал:

Да, в конфиге пусто, нет "oc_"

Значит в этом и проблема, при установке модуля таблицы user и user_group перезаписываются и префикс берётся из этого конфига. Как уже писал выше - можете переименовать таблицу через PhpMyAdmin, либо через консоль MySQL:
 

RENAME TABLE `user` TO `oc_user`;
RENAME TABLE `user_group` TO `oc_user_group`;

 

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

Так же это касается и таблиц oc_user_users_perm_plus_tpls и oc_user_users_perm_plus, без них модуль работать тоже не будет. 

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

3 минуты назад, Panda58dev сказал:

Так же это касается и таблиц oc_user_users_perm_plus_tpls и oc_user_users_perm_plus, без них модуль работать тоже не будет. 

Да, они есть в базе но тоже без префикса, сейчас попробую исправить)

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Panda58dev сказал:
RENAME TABLE `user` TO `oc_user`;
RENAME TABLE `user_group` TO `oc_user_group`;

переименовал, и соответственно админка сразу отключилась,  как быть?) вернул обратно и все ок.

Изменено пользователем MaxPeshkun
дополнение
Ссылка на комментарий
Поделиться на другие сайты

я бы на вашем месте с 0 переустановил опенкарт,  ибо  не понятно,  по какой причине часть таблиц в Б\д  с перификсом, а часть без.    Предполагаю,  думаю, что у Вас будут проблемы не только с данным модулем :)))   но и со многими другими. 

 

Смотрите  Процитирую Ваше сообщение выше :  Да, в конфиге пусто, нет "oc_" но в самой базе данных есть и с "oc_" и без.      По дефолту опенкарт ставится с перефиксом в б\д   oc_ ,   раз данного перефикса у Вас нет в  файлах конфига,  значит деволтные настройки были изменены.    Теперь начинается самое интересное.   Если Вы устанавливали без  oc_  то откуда взялись в базе  таблицы с данным перефиксом ?    т.е. если в конфигах  нет  данного перефикса,  то и другие модули к таблицам имеющим перефикс oc_  обратиться не смогут.    В вашем случае надо определиться  (как в анегдоте, либо крест снять, либо трусы надеть)   ,  т.е. либо ввести перефикс,  прописать его в конфигах, и переименовать все таблицы данного перефикса не имеющие.   Либо убрать перефикс со всех таблиц,   и оставить конфиги как есть. 

Предсказываю Будущее по IP, Очищаю Карму (только после очистки Чакр) черезVPN, общаюсь с потусторонними через VoIP, вызываю Format C по ussd коду.  - Seo, SMM, Копирайтинг, Маркетинг.

Ссылка на комментарий
Поделиться на другие сайты

18 часов назад, MaxPeshkun сказал:

админка сразу отключилась

Значит у Вас какие-то беды с конфигами. Могу предположить, что в конфиге /www/example.com/admin/config.php в константу префикса БД, тоже записана пустая строка. Довольно странная ситуация, думаю Вам следует прислушаться совету @byba: либо в всех конфигах прописать префикс и переименовать все таблицы, либо наоборот избавится от префикса в таблицах и конфигах (предварительно, не забудьте сделать бэкап БД, чтобы обезопасить себя). Так же рассмотрите вариант переустановки CMS, если нагруженность сайта позволяет.

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

54 минуты назад, Panda58dev сказал:

Так же рассмотрите вариант переустановки CMS, если нагруженность сайта позволяет.

Спасибо,сегодня посмотрю что в других конфигах, много купленных и бесплатных модулей стоит и все отлично работает 🤔 уже 1,5 года точно ,посмотрю куда эти модули ссылаются в базе , с префиксом или без, получается на данный момент только с Вашим модулем так.

могу предположить ,что это я при установке опенкарт начудил и может потом восстанавливал базу по неопытности и потянул с прошлой установке ( да, сам понимаю, что это странно.

Чуть позже отпишусь,что и как

Изменено пользователем MaxPeshkun
Ссылка на комментарий
Поделиться на другие сайты

6 часов назад, byba сказал:

Либо убрать префикс со всех таблиц,   и оставить конфиги как есть.

Проверил, в конфигах прописано без префикса "oc_", в базе данных, все что с префиксом, та остались данные от демо магазина опенкарт, все остальные модули ставились без префикса и по этому все работает.
Остался вопрос, как быстро удалить в базе таблицы с префиксом "oc_".
и осталось понять как заставить работать правильно UUP

Ссылка на комментарий
Поделиться на другие сайты

В 15.07.2022 в 11:08, MaxPeshkun сказал:

осталось понять как заставить работать правильно UUP

Скиньте в личку доступы, посмотрю что не так и что можно сделать.

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

  • 2 месяца спустя...
В 14.05.2022 в 22:46, Panda58dev сказал:

Приветствую! Интересная задумка, в следующей версии добавлю )

приветствую, не было еще этой реализации?

Ссылка на комментарий
Поделиться на другие сайты

2 минуты назад, zhu4koff сказал:

не было еще этой реализации?

Пока - нет. Сейчас занимаюсь другими разработками.

•=|KIᖇIᒪᒪ|=•

E-mail: panda58dev@inbox.ru
Telegram: @panda58dev

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...