Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Регистрация пользователя и корзина гостя/пользователя

Автор atachРаздел Макросы UMI.CMS

Ответов: 7
Просмотров: 12875
Последний ответ 27 Июня 2014, 21:34:14
от admin
Автоматическая регистрация при отправке формы?

Автор muldyРаздел Custom макросы

Ответов: 1
Просмотров: 1832
Последний ответ 03 Сентября 2013, 19:33:59
от admin
Регистрация новых пользователей AJAX

Автор CubesРаздел JS и AJAX

Ответов: 3
Просмотров: 7693
Последний ответ 30 Октября 2014, 15:33:18
от Cubes
Не работает регистрация

Автор koroganРаздел Шаблоны TPL

Ответов: 9
Просмотров: 5761
Последний ответ 21 Октября 2011, 12:22:47
от korogan
регистрация пользователя

Автор he100885ldvРаздел Custom макросы

Ответов: 5
Просмотров: 3671
Последний ответ 29 Января 2013, 19:36:42
от Rodogor

0 Пользователей и 1 Гость просматривают эту тему.

*

Vladimir

  • ****
  • 279
  • +48/-0
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #15 : 18 Декабря 2011, 16:16:29 »
Да! Обработчики были бы очень к месту, но, к сожалению, проверка email при регистрации производится ДО вызова события. Это самое неприятное в данном методе. Все бы так красиво решалось...

*

Vladimir

  • ****
  • 279
  • +48/-0
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #16 : 18 Декабря 2011, 16:20:22 »
Владимир, нельзя же так к клиенту, для них же стараемся)

Эх, наверно, да. Это меня довел последний магазан своими "а вот еще чтобы было..."

*

DZHETIGAPA

  • **
  • 79
  • +0/-0
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #17 : 18 Декабря 2011, 21:43:15 »
Есть ли где в факе подробное описание переопределения стандартных методов? Чтобы я форум не засорял.... А то что-то делаю по описанию Владимира, но видимо что-то не так.

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #18 : 18 Декабря 2011, 22:09:00 »
Цитировать
Это изменение совсем не криминальная вещь, все что нам надо это, написать 3 обработчика событий

один будет срабатывать после регистрации (событие "users_registrate")
второй после изменения настроек пользователя (событие "users_settings_do")
третий при создании или изменении настроек пользователя в админке (события "systemCreateObject" и "systemModifyObject")

все обработчики будут дублировать email в поле логин.

Шаблоны для регистрации и редактирования настроек надо немного изменить. сделать поле логин скрытым и подставлять в него:
1.при регистрации: уникальное значение (например текущее время в миллисекундах), чтобы система не ругалась
2. во всех остальных случаях уже существующее значение из объекта пользователя

вроде ничего не забыл, и такой вариант предусмотрел все возможные вопросы и проблемы на пути регистрации только с email'ом

Владимир, то что проверка email и логина происходит до обработки события тоже предусмотрено в моем сообщение выше.

DZHETIGAPA , я говорю про событийную модель о ней можно почитать в официальной документации api , много примеров на wiki.umisoft например "События - подписка на рассылки при регистрации пользователя" и на данном форуме уже приводились примеры например вот тут "Уведомление о новых комментариях на почту"

*

DZHETIGAPA

  • **
  • 79
  • +0/-0
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #19 : 19 Декабря 2011, 01:12:07 »
Разобрался. Сделал. Только одно пока понять не могу. Если я в админке смотрю список пользователей, то в качестве логина указан логин, который находился в скрытом поле логин. То есть логин у всех пользователей один, а имейл отличается в списке пользователей. Если же я захожу в сам объект конкретного пользователя, то там логин и имейл указаны верно, то есть как имейлы. Как это можно устранить? А то у меня выходит все пользователи в списке пользователей будут под одним логином, хотя на самом деле их логины отличаются

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #20 : 19 Декабря 2011, 03:26:15 »
а логины в админке в списке пользователей после чего стали одинаковы?

сделали как именно? через события?

*

DZHETIGAPA

  • **
  • 79
  • +0/-0
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #21 : 19 Декабря 2011, 10:55:51 »
Да.. сделал через события...

Логины то такие какие нужны, но в списке пользователей, где поле Название, отображаются совсем не такие логины, а логин, который находится в скрытом поле и как я понял изначально заносится в БД, а потом уже я исправляю логин через события.

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #22 : 19 Декабря 2011, 11:12:23 »
ты когда событием заполняет логин в соответсвии с полем email делаешь это примерно так ?
$user->login = $user->email;

если да, то добавь к изменению поля login еще и переименование объекта данного пользователя, то есть
$user->setName($user->email);

*

DZHETIGAPA

  • **
  • 79
  • +0/-0
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #23 : 19 Декабря 2011, 11:46:01 »
Только я сделал вот так:

$email = $user->getValue('e-mail');
                $user->setValue('login', $email);
                $user->setName($email);

И все работает. Спасибо админ.

Буду тебе благодарен, если поможешь мне в соседней теме, где в письме с формы обратной связи приходят крокозябры.

*

DZHETIGAPA

  • **
  • 79
  • +0/-0
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #24 : 08 Февраля 2012, 12:50:41 »
Возникла проблема. В ИЕ8, ИЕ9 регистрация не проходит. Выдает ошибку. Хотя в других браузерах все гуд. В чем может быть дело?

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #25 : 08 Февраля 2012, 12:57:15 »
не проходит это как? какие начальные условия?

форма авторизации всплывает при помощи js или просто где-то выводиться или даже на системной странице авторизации не получается? что видно в адресной строке при попытке авторизации (не забыли ли отобразить ошибки) и т.д.

*

DZHETIGAPA

  • **
  • 79
  • +0/-0
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #26 : 08 Февраля 2012, 14:23:19 »
В строке браузера появляется переменная error. Мол ошибка какая-то. И регистрация не проходит.

Форма авторизации не при чем. Я про форму регистрации. Нет никакого js. Хотя может юми как-то js и использует.

А как можно отобразить какая именно ошибка?

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #27 : 08 Февраля 2012, 14:27:18 »
прошу прощения, про регистрацию просмотрел, но все выше сказанное все равно подходит)

насчет ошибки при регистрации... Все такие ошибки выводит макрос %system listErrorMessages()%

видимо в шаблоне (скорее всего основном, если это системная страница) нет этого макроса

*

DZHETIGAPA

  • **
  • 79
  • +0/-0
    • Просмотр профиля
Re:Регистрация-авторизация по имейлу
« Ответ #28 : 08 Февраля 2012, 14:42:49 »
Щас попробую ошибку вывести. А в чем может быть дело? в ИЕ никто не может зарегиться, а в остальных все гуд. Если я избавляюсь от событий и регистрации по имейлу, то все гуд работает. странно...