Система Управления Пользователями, Ролями И Заданиями

[size="4"]UserAdmin module[/size]

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

http://www.yiiframework.com/extension/useradmin/

Базовые плюшки

  • Управление пользователями. Создание, удаление, назначение ролей и допустимых задач

  • Управление ролями. Can assign allowed tasks to role, can set home page for role (for redirect after login or registration)

  • Управление задачами (allowed routes).

  • Встроенная система логина и регистрации

  • Кэширование

Круто конечно, но я по старинке буду сидеть на user+rights.

За труды спасибо, сам эти модули дорабатывал по мере необходимости, так что то же самое есть.

Можно вопрос - почему bootstrap везде? Многие ведь его не используют, да и зачем мне тащить монстра в простенький бэкэнд например, который можно сверстать за пару дней?

Ну, я по большому счёту выложил этот модуль (и планирую выложить ещё несколько других) по настоятельным рекомендациям коллег. А все мы используем бутстрап. И партнёры используют его, да и вообще, практически все из моих знакомых :)

В принципе, если народу понравится модуль, то могу сделать бутстрап опциональным, т.к. по сути он нужен только для наведения марафета в паре мест.

возник ламерский вопрос: а какова архитектура БД для этой плюшки?

насколько я понял - все хранится в базе данных?

можете как-то кратко пояснить хранение данных пользователей и их прав

видимо весь проект использует бутстрап: фронтенд + бэкенд

Там в папке "/data/" есть файл "Class_diagram_little_bit_outdated.png".

Как следует из названия, он слегка устарел, но всё ещё бодр, т.к. архитектура та же, просто дописывались новые методы.

Чего не оставили то архитектуру user+rights? Мне лично очень нравится)

Ну и чтобы писать уж не зря 1 предложение по улучшайзингу:

В модуле добавляем:




public $layout = 'UserAdmin.views.layouts.auth';



Далее в init() контроллеров




$this->layout = $this->module->layout;



Вуаля, теперь мы смело можем писать в конфиге:




...

'modules'=>array(

       ...

       'UserAdmin' => array(

               'cache_time' => 3600,

               'layout' => 'application.views.layouts.main',

       ),

       ...

),

...



Так будет проще я думаю.

Собственно с регистрацией хорошая идея, но проще будет вынести так же в настройки:




//UserAdminModule.php


public $registration=false;


//config

...

'modules'=>array(

       ...

       'UserAdmin' => array(

               'cache_time' => 3600,

               'layout' => 'application.views.layouts.main',

               'registration' => true

       ),

       ...

),

...


// useradmin / controllers / AuthController.php line 69

if (!$this->module->registration) return;



Это конечно мое мнение но так имхо удобнее. Когда будет свободное время, посмотрю еще,

дедлайн на подходе :(

P.S. gitlab это клон гитхаба? можно будет если что pull request слать?

По поводу гитлаба - я хз кто чей клон, но гитлаб = гитхаб + все его платные плюшки. Очень удобно и бесплатно :)

А так, все те же возможности, включая пулл реквесты.

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

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

Вот как-то так )