Jump to content

Go to solution Solved by Panda58dev,

Recommended Posts

  • Solution

Расширенное управление правами пользователей админки (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ᒪᒪ|=•

Почта: panda58dev@inbox.ru
Телеграмм: @panda58dev

Link to comment
Share on other sites

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

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

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

•=|KIᖇIᒪᒪ|=•

Почта: panda58dev@inbox.ru
Телеграмм: @panda58dev

Link to comment
Share on other sites

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

 

Цитата

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

 

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

Link to comment
Share on other sites

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

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

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

•=|KIᖇIᒪᒪ|=•

Почта: panda58dev@inbox.ru
Телеграмм: @panda58dev

Link to comment
Share on other sites

 

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

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

 

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

 

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

 

Link to comment
Share on other sites

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

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

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

•=|KIᖇIᒪᒪ|=•

Почта: panda58dev@inbox.ru
Телеграмм: @panda58dev

Link to comment
Share on other sites

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

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

Link to comment
Share on other sites

  • 2 weeks later...
В 14.05.2022 в 22:40, zhu4koff сказал:

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

 

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

Link to comment
Share on other sites

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

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

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

•=|KIᖇIᒪᒪ|=•

Почта: panda58dev@inbox.ru
Телеграмм: @panda58dev

Link to comment
Share on other sites

  • 1 month later...

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

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

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

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

Link to comment
Share on other sites

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

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

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

 image.png.6c0853ca8112395599a222ed1ecd8f85.png

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

•=|KIᖇIᒪᒪ|=•

Почта: panda58dev@inbox.ru
Телеграмм: @panda58dev

Link to comment
Share on other sites

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

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

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

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

 

•=|KIᖇIᒪᒪ|=•

Почта: panda58dev@inbox.ru
Телеграмм: @panda58dev

Link to comment
Share on other sites

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

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

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

Link to comment
Share on other sites

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

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

Edited by MaxPeshkun
дополнение
Link to comment
Share on other sites

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

 

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

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

Link to comment
Share on other sites

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

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

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

•=|KIᖇIᒪᒪ|=•

Почта: panda58dev@inbox.ru
Телеграмм: @panda58dev

Link to comment
Share on other sites

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

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

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

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

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

Edited by MaxPeshkun
Link to comment
Share on other sites

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

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

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

Link to comment
Share on other sites

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

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

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

•=|KIᖇIᒪᒪ|=•

Почта: panda58dev@inbox.ru
Телеграмм: @panda58dev

Link to comment
Share on other sites

  • 2 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...