Я нашел эту ошибку на сайте клиента. Принудительный выход из системы, кажется, это исправить.
Итак, я ввел принудительный выход из функции в функции пересылки сразу после отправки ссылки активации.
Рабочий код выглядит следующим образом в application / controllers / auth.php
function send_again()
{
if (!$this->tank_auth->is_logged_in(FALSE)) { // not logged in or activated
redirect('/auth/login/');
} else {
$this->form_validation->set_rules('email', 'Email', 'trim|required|xss_clean|valid_email');
$data['errors'] = array();
if ($this->form_validation->run()) { // validation ok
if (!is_null($data = $this->tank_auth->change_email(
$this->form_validation->set_value('email')))) { // success
$data['site_name'] = $this->config->item('website_name', 'tank_auth');
$data['activation_period'] = $this->config->item('email_activation_expire', 'tank_auth') / 3600;
$this->_send_email('activate', $data['email'], $data);
$this->_display_message(sprintf($this->lang->line('auth_message_activation_email_sent'), $data['email']));
/*
* Force a logout here or tank_auth remains
* stuck in the resend mode.
*/
$this->tank_auth->logout();
} else {
$errors = $this->tank_auth->get_error_message();
foreach ($errors as $k => $v) $data['errors'][$k] = $this->lang->line($v);
}
.....
Насколько я могу судить, это просто взлом, но он решил проблему для меня. Я не знаю, изменил ли создатель этого сайта что-то в действиях tank_auth или нет.
Я надеюсь, что это работает для других.