Отменить проверку уникальности e-mail при регистрации

Тема в разделе "Разделение прав доступа", создана пользователем marikrasil, 13.10.2010.

  1. marikrasil
    Offline

    marikrasil Недавно здесь

    Регистрация:
    26.07.2010
    Сообщения:
    5
    Симпатии:
    0
    Пол:
    Женский
    Коллеги, помогите! Обрыскала кучу форумов, блогов, статей - ничего не нашла. Мне нужно, чтобы на сайте пользователи могли регистрироваться, используя один и тот же емейл сколько угодно раз. Я обнаружила, что Джумла 1 это умела в общих настройках, а я на Джумле 1.5, и здесь таких слов даже нету... У меня стоит Community Builder, там есть такое поле - проверять уникальность e-mail, и там стоит "ДА" - и приписка, что коммюнити билдер берет это из настроек Джумлы, так что мол, сначала в джумле измените, а КБ и так подстроится. А в джумле я не нахожу. Буду крайне признательна за подсказку! Опция такая нужна кровь из носу пяткой в грудь! :'(
     
  2.  
  3. sergiks
    Offline

    sergiks специалист

    Регистрация:
    10.10.2010
    Сообщения:
    362
    Симпатии:
    36
    Пол:
    Мужской
    Похоже, только хакнув Joomla.
    libraries/joomla/database/table/user.php
    Код (CODE):
    1. // check for existing email
    2.       $query = 'SELECT id'
    3.          . ' FROM #__users '
    4.          . ' WHERE email = '. $this->_db->Quote($this->email)
    5.          . ' AND id != '. (int) $this->id
    6.          ;
    7.       $this->_db->setQuery( $query );
    8.       $xid = intval( $this->_db->loadResult() );
    9.       /** if ($xid && $xid != intval( $this->id )) {
    10.       *   $this->setError( JText::_( 'WARNREG_EMAIL_INUSE' ) );
    11.       *   return false;
    12.       *}
    13.       */

    Не забудьте запретить восстановление пароля, а то ... !
     
  4. marikrasil
    Offline

    marikrasil Недавно здесь

    Регистрация:
    26.07.2010
    Сообщения:
    5
    Симпатии:
    0
    Пол:
    Женский
    ООО! Спасибо большое! Я и не знала что тут такие файлы есть =) Только Вы уж извините, а где отменить восстановление пароля? :[
     
  5. sergiks
    Offline

    sergiks специалист

    Регистрация:
    10.10.2010
    Сообщения:
    362
    Симпатии:
    36
    Пол:
    Мужской
    А, ну надо найти там строки
    Код (CODE):
    1. if ($xid && $xid != intval( $this->id )) {
    2.   $this->setError( JText::_( 'WARNREG_EMAIL_INUSE' ) );
    3.   return false;
    4. }

    и "закомментить" их, окружив /* и */ или просто стереть.
    Код (CODE):
    1. /*  if ($xid && $xid != intval( $this->id )) {
    2.   $this->setError( JText::_( 'WARNREG_EMAIL_INUSE' ) );
    3.   return false;
    4. }   */
     
  6. marikrasil
    Offline

    marikrasil Недавно здесь

    Регистрация:
    26.07.2010
    Сообщения:
    5
    Симпатии:
    0
    Пол:
    Женский
    Большое спасибо! И за оперативность ответа, и за подробные объяснения! Приятно знать, что есть добрые и отзывчивые люди =)){:[
     
  7. sergiks
    Offline

    sergiks специалист

    Регистрация:
    10.10.2010
    Сообщения:
    362
    Симпатии:
    36
    Пол:
    Мужской
    Не за что! : ) Рад, что помог.
    Можете мне плюсик поставить в Репутацию — не знаю, зачем это, но малиновые штаны это же круто!
     
    Sorbon нравится это.
  8. Offline

    notarget Недавно здесь

    Регистрация:
    05.09.2011
    Сообщения:
    9
    Симпатии:
    0
    Пол:
    Мужской
    Нет, не эти строки, что вы написали, а эти:

    Код (PHP):
    1. if ((trim($this->email) == "") || ! JMailHelper::isEmailAddress($this->email) ) {
    2.             $this->setError( JText::_( 'WARNREG_MAIL' ) );
    3.             return false;
    4.         }
     
  9. Offline

    notarget Недавно здесь

    Регистрация:
    05.09.2011
    Сообщения:
    9
    Симпатии:
    0
    Пол:
    Мужской
    И вообще - зачем отключать эту функцию, от нее вреда почти не будет. Я более года администрирую корпоративный сайт с такой регистрацией, за это время не было ни одного запроса на восстановление пароля.
     

Поделиться этой страницей

Загрузка...