Posted 28 декабря, 20167 yr comment_118768 У юзера не работает почта. Надо сделать его снова не подтвержденным, чтобы заставить его сменить почту. Как?
28 декабря, 20167 yr comment_118770 А почему просто нельзя спросить у юзера почту и сменить через АЦ? Я думаю, стандартных методов для этого не предусмотрено, а ковырять БД - стоит ли оно того.. Edited 28 декабря, 20167 yr by Envy
28 декабря, 20167 yr comment_118774 Просто никак. А вообще, пользователи для валидации хранятся в таблице core_validating. Возможно, стоит добавить отдельную группу пользователей, у которых емейл невалиден. Далее запретить им публикацию и просмотр контента, до тех пор пока они не изменят емейл и не отпишутся администратору). О чем убедительно проинформировать их путем добавления на страницу текста блока, созданного в приложении Pages и видного только этой группе. 1. Пользователи массово переводятся в группу "Сменить емейл" с определенными ограничениями. 2. Этим пользователям отображается уведомление на всех страницах, видное только их группе. 3. Пользователи меняют емейл и сообщают об этом в письме с этого ящика на емейл администратора. 4. Администратор руками переносит их с другую соответствующую группу.
28 декабря, 20167 yr comment_118777 1 час назад, slimer сказал: У юзера не работает почта. Надо сделать его снова не подтвержденным, чтобы заставить его сменить почту. Как? https://invisionpower.com/files/file/8317-remind-users-to-update-their-email/
28 декабря, 20167 yr Author comment_118802 4 часа назад, Zero108 сказал: Администратор руками Тысячи!! Redneck, да, типа того. Только тут для всех. Собственно вопрос в каком месте в базе это дело хранится. Хук напишу, надо знать что куда записать. 4 часа назад, Zero108 сказал: А вообще, пользователи для валидации хранятся в таблице core_validating. Похоже, но много полей и не ясно что для чего предназначено. И как сгенерить vid. Методом тыка не хочется.
28 декабря, 20167 yr Author comment_118803 /* Insert a record */ \IPS\Db::i()->insert( 'core_validating', array( 'vid' => md5( $this->members_pass_hash . \IPS\Login::generateRandomString() ), 'member_id' => $this->member_id, 'entry_date' => time(), 'new_reg' => 1, 'ip_address' => $this->ip_address, 'spam_flag' => ( $this->members_bitoptions['bw_is_spammer'] ) ?: FALSE, 'user_verified' => ( $validationType == 'admin' ) ?: FALSE, 'email_sent' => ( $validationType != 'admin' ) ? time() : NULL, ) ); Продвигаемся дальше...
28 декабря, 20167 yr Author comment_118804 При смене почты чуть другие значения front/system/register.php $vid = \IPS\Login::generateRandomString(); \IPS\Db::i()->insert( 'core_validating', array( 'vid' => $vid, 'member_id' => \IPS\Member::loggedIn()->member_id, 'entry_date' => time(), 'new_reg' => !$pending or $pending['new_reg'], 'email_chg' => $pending and $pending['email_chg'], 'user_verified' => ( \IPS\Settings::i()->reg_auth_type == 'admin' ) ?: FALSE, 'ip_address' => \IPS\Request::i()->ipAddress(), 'email_sent' => time(), ) );
24 января, 20177 yr Author comment_120973 Сделал хук по этому поводу. Кому интересно: https://invisionpower.com/files/file/8443-sl-force-users-to-change-email/
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.