e-mail вместо логина при входе в аккаунт virtuemart

Discussion in 'VirtueMart' started by MariannaBrava, Oct 3, 2010.

  1. Offline

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

    Joined:
    Sep 9, 2010
    Messages:
    35
    Likes Received:
    0
    Gender:
    Female
    Подскажите, как сделать так, что бы при входе в аккаунт магазина virtuemart, вместо поля ваш логин было ваш e-mail. На форуме есть похожая тема, здесь, но конкретного ответа там нет.

    Если вы сталкивались с подобной задачей, поделитесь опытом.

    Заранее благодарю за ответы;)
     
  2.  
  3. Offline

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

    Joined:
    Jun 9, 2009
    Messages:
    100
    Likes Received:
    6
    Gender:
    Male
    MariannaBrava, я нашел только один выход - при регистрации пользователей в поле логина автоматически записывать е-мэйл.
    Для этого скрыл поле логина и с помощью JS автоматически подставлял туда введённый е-мэйл.
     
  4. sergiks
    Offline

    sergiks Недавно здесь => Cпециалист <=

    Joined:
    Oct 10, 2010
    Messages:
    362
    Likes Received:
    36
    Gender:
    Male
    Для Joybuy я сделал альтернативную систему регистрации пользвателей Joomla (не VM, pardon), сокращенную:
    1. просим только e-mail + кнопка "Зарегистрироваться"
    2. на него высылается письмо со ссылкой
    3. тык по ссылке - "Придумайте пароль" [____] и кнопка "Запомнить и войти".

    Именем пользователя становится копия email'а.

    Сделал все это в своем компоненте: пара видов и методы контроллера.
    Пользователь сохраняется в базе только в самом конце - после подтверждения email.
    Обрабатывая полученные и подтвержденные email и пароль я просто копирую значение email в username:
    Код (CODE):
    1. // Create a new user and save her
    2.         $user = clone(JFactory::getUser());
    3.        
    4.         // Set some initial user values
    5.         $user->set('id', 0);
    6.         $user->set('usertype', 'Registered');
    7.         $user->set('gid', 18);
    8.         $user->set('username', $email);     // hack to copy username from email
    9.         $user->set('name', $email);         // hack to copy name from email


    К сожалению, не разбирался с VirtueMart, но надеюсь, идея как-то поможет.
    Т.е. я предлагаю вам либо написать свой компонентик, который будет заниматься только регистрацией VM-пользователей по альтернативной схеме.
    Либо, более грязный способ — хакнуть контроллер VM, добавив туда пару методов и видов.
     
  5. Offline

    prosto-chups Недавно здесь

    Joined:
    Sep 11, 2009
    Messages:
    8
    Likes Received:
    0
    Gender:
    Male
    SindBAD, не можешь чуть подробнее? Это именно то решение, которое мне не обходимо!!!
     

Share This Page

Loading...