Авторизованный user не может написать комментарий

Здравствуйте. Прошу подсказать. На сайте есть авторизация через HybridAuth. И возможность добалениния комментариев через tickets. Проблема в том, что пользователи авторизовавшись, например через твиттер, не могут добавить комментарий т.к. в их профиле (им не доступном) нет email. С гостями все хорошо, они ручками заполняют поле и все публикуется, с пользователями у которых подтянулся email то-же все хорошо.
Нашел похожий вопрос и решение, потестировал, у меня не работает.
Как это обойти, не заставляя пользователя вводить email?
Борис И
30 июля 2016, 19:14
modx.pro
1 178
0

Комментарии: 2

Борис И
30 июля 2016, 22:36
0
Работает, видимо событие другое, пошел думать…
    Борис И
    30 июля 2016, 22:53
    0
    В решение был код
    <?php
    switch ($modx->event-name) {
    	case 'OnBeforeUserFormSave':
    		if ($profile = $user->getOne('Profile') and !$profile->get('email')) {
    			$profile->set('email', $user->get('username').'@site.ru');
    		}
    		break;
    	default: break;
    }
    Спасибо Воеводскому Михаилу, подсмотрел решение.
    Но у меня этот код не завелся.
    Работает только так
    <?php
    switch ($modx->event-name) {
    	case '1':
    		if ($profile = $user->getOne('Profile') and !$profile->get('email')) {
    			$profile->set('email', $user->get('username').'@site.ru');
    		}
    		break;
    	default: break;
    }
    Только что-то не нравится мне, отсутсвие проверки, перепробовал кучу событий на user, вставлял разные в case (дошел уже до метода тыка), ни одно не прошло
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      2