Комплект плагинов Registration Helper v.1.10

+50
1.82K
Доброго всем времени суток!
В продолжении темы из постов:
Плагин Сообщение о регистрации пользователя
Хак Повторная активация + Умная регистрация + Авторегистрация.
выпустил общее обновление для 1.10. Старался делать без хаков — почти получилось, пришлось только подправить файл frontend.php из компонента registration(перенести одну строку 😊 )

Итак:
Комплект плагинов + минихак для облегчения регистрации пользователей версия InstantCMS v.1.10
1) Возможность повторной активации пользователя
2) Интеллектуальные сообщения об ошибках при авторизации (не активирован, заблокирован, неверные имя и пароль и т.д.)
3) Автоматическая авторизация на сайте после активации учетной записи
4) Сообщение админу о регистрации нового пользователя.

Установка:
1) Файлы которые начинаются на знак подчеркивания- из них нужно скопировать код и вставить в соответствующий файл CMS
2) Файлы без подчеркивания просто скопировать на сайт
3) Установить и включить 2 новых плагина RegRoutePlugin и Regstration Helper
4) проделать минихак: в файле /components/registration/frontend.php найти

  1. ///////////////////////////////////////////////////////////////////////////////////
  2. if ($do=='activate'){
  3.  
  4. $code = cmsCore::request('code', 'str', '');
  5. if (!$code) { cmsCore::error404(); }
  6.  
  7. $user_id = $inDB->get_field('cms_users_activate', "code = '$code'", 'user_id');
  8. if (!$user_id){ cmsCore::error404(); }
  9.  
  10. $inDB->query("UPDATE cms_users SET is_locked = 0 WHERE id = '$user_id'");
  11. $inDB->query("DELETE FROM cms_users_activate WHERE code = '$code'");
  12.  
  13. cmsCore::callEvent('USER_ACTIVATED', $user_id);
  14.  
  15. if ($model->config['send_greetmsg']){ $model->sendGreetsMessage($user_id); }
  16.  
  17. // Регистрируем событие
  18. cmsActions::log('add_user', array(
  19. 'object' => '',
  20. 'user_id' => $user_id,
  21. 'object_url' => '',
  22. 'object_id' => $user_id,
  23. 'target' => '',
  24. 'target_url' => '',
  25. 'target_id' => 0,
  26. 'description' => ''
  27. ));
  28.  
  29. cmsCore::addSessionMessage($_LANG['ACTIVATION_COMPLETE'], 'info');
  30.  
  31. cmsUser::goToLogin();
  32.  
  33. }
  34. //////////////////////////////////////////////////////////////////////////////////////
и сделать вот так:

  1. ///////////////////////////////////////////////////////////////////////////////////////
  2. if ($do=='activate'){
  3.  
  4. $code = cmsCore::request('code', 'str', '');
  5. if (!$code) { cmsCore::error404(); }
  6.  
  7. $user_id = $inDB->get_field('cms_users_activate', "code = '$code'", 'user_id');
  8. if (!$user_id){ cmsCore::error404(); }
  9.  
  10. $inDB->query("UPDATE cms_users SET is_locked = 0 WHERE id = '$user_id'");
  11. $inDB->query("DELETE FROM cms_users_activate WHERE code = '$code'");
  12.  
  13.  
  14. if ($model->config['send_greetmsg']){ $model->sendGreetsMessage($user_id); }
  15.  
  16. // Регистрируем событие
  17. cmsActions::log('add_user', array(
  18. 'object' => '',
  19. 'user_id' => $user_id,
  20. 'object_url' => '',
  21. 'object_id' => $user_id,
  22. 'target' => '',
  23. 'target_url' => '',
  24. 'target_id' => 0,
  25. 'description' => ''
  26. ));
  27.  
  28. cmsCore::callEvent('USER_ACTIVATED', $user_id);
  29.  
  30. cmsCore::addSessionMessage($_LANG['ACTIVATION_COMPLETE'], 'info');
  31.  
  32. cmsUser::goToLogin();
  33.  
  34. }
  35. ///////////////////////////////////////////////////////////////////////////////////////
подсказка — нужно перенести вниз строку
  1. cmsCore::callEvent('USER_ACTIVATED', $user_id);
Спасибо за внимание, можно использовать!

демо: ver110.csagent.ru

чуть не забыл — качать тут )
0
Reborn Reborn 11 лет назад #
Спасибо, полезно +
0
Zau4man Zau4man 11 лет назад #
Пока не ставил, но думаю поставлю. Полезное дополнение. Спасибо!
0
Майкл Майкл 11 лет назад #
Спасибо! Раньше стоял этот хак и на 1.10 с нетерпением ждал.
+1
Bubble Gumoff Bubble Gumoff 11 лет назад #
капчу ввел неправильно, все введенные данные слетают и надо их заново заполнять! Яб психанул и бросил затею
0
Александр Александр 9 лет назад #
а это под предпоследнею версию пойдет?
0
Майкл Майкл 9 лет назад #
Добрый день!
На 1.10.6 работает?
0
al955 al955 7 лет назад #
У меня на 1.10.6 не работает
0
Майкл Майкл 7 лет назад #
Под 1.10.6 были изменения.
У кто-то были, только не помню у кого....

Еще от автора

Инвайтер 1.9 для 1.10.6
Доброго всем времени суток! Решил нарушить сложившуюся здесь традицию и решил вернуться сюда с обновлениями.
Инстант "по взрослому". Часть 2. Авторизация. Аякс. v1.10
Доброго всем времени суток! Продолжая серию Инстант "по взрослому", сегодня хотел бы показать более мощный плагин авторизации.
Инстант "по взрослому". Часть 1. Авторизация. Счетчик неверных входов. v1.10
Доброго всем дня! Продолжим наши уроки по усовершенствованию Инстанта. Сегодня мы будем изучать и усовершенствовать первую ветку Инстанта.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.