Где в библиотеке dx_auth прописана логика вывода сообщения о некорректной авторизации?

0

Привет. 

Разбираюсь с уроками разграничения прав codeigniter (24 урок). Хочу изменить поведение обработки запросов, в частности тех, результат которых выводиться на отдельных страницах. Например, при выходе из аккаунта, выводится сообщение You have been logged out на новой странице. В данном виде это поведение не подходит для реального сайта. Поэтому, в метод logout() я поставил редирект. 

При вводе некорректных данных в форму авторизации выводится форма авторизации и сообщение Username not exist. по адресу http://kinomonster.com/auth/login/      По идеи логика должна находится в методе login(), но не могу понять где, если это верно. Всю библиотеку перерыл - так и не нашел строки  Username not exist. Но они где-то же прописаны! 

Помогите разобраться с частью кода (в контроллере, виде, модели), который выводит сообщение о введении некорректных данных в форму авторизации. 

СПАСИБО!

codeigniter

4 ответов

0

Во view Auth есть строчки:

<?php  
	
$this->session->set_flashdata('general__error', $this->dx_auth->get_auth_error()); 
$this->session->set_flashdata('username__error', form_error($username['name'])); 
$this->session->set_flashdata('password__error', form_error($password['name'])); 

?>

Вот это:

$this->dx_auth->get_auth_error()

Соответственно, в libraries - Dx_auth.php есть переменная, в которую задаются ошибки при разных сценариях:

$this->_auth_error = $this->ci->lang->line('auth_login_username_not_exist');

Это переменная в файле локализации в папке language - english - dx_auth_lang.php: 

$lang['auth_login_username_not_exist'] = "Логин и пароль не совпадают.";

В курсе упрощенно сделано в папке english, предполагается, что можно делать мультиязычный сайт, в котором будут сообщения об ошибках в зависимости от выбранного языка и файлов dx_auth_lang.php будет равным количеству языков, как и папок: english, russian и т.д.

0
Искомую строку не нашел я, слова прописаны через нижнее подчеркивание.

В последнем уроке есть исходный код, оттуда можно скачать (там Файлы есть кнопка справа) и копия базы там тоже есть. 

Поделитесь советом, как вы пришли к этому пониманию?

Сначала сам писал код, потом, когда где-то что-то не понимал, скачивал исходный код из урока, анализировал и читал дополнительные материалы по ссылкам, которые даются в курсе. 

0

Спасибо, student_Cx8W3815. Очень содержательное пояснение! Искомую строку не нашел я, слова прописаны через нижнее подчеркивание. Тяжеловато как-то осваивается курс codeigniter.

Поделитесь советом, как вы пришли к этому пониманию?

0

Спасибо за помощь, вероятно, и я извлеку урок из вашего метода! 

Sign up or Log in to write an answer