Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function login(){
- $data['title'] = 'Sign In';
- $validator = array('success' => false, 'messages' => array());
- $validate_data = array(
- array(
- 'field' => 'usernameforlog',
- 'label' => lang('controller-username-label'),
- 'rules' => 'trim|required|alpha_dash'
- ),
- array(
- 'field' => 'passwordforlog',
- 'label' => lang('controller-password-label'),
- 'rules' => 'trim|required|md5'
- )
- );
- $this->form_validation->set_rules($validate_data);
- $this->form_validation->set_message('required', lang("form_validation_required"));
- $this->form_validation->set_message('alpha_dash', lang("form_validation_alpha_dash"));
- $this->form_validation->set_error_delimiters('<p class="text-danger">', '</p>');
- if ($this->form_validation->run() === FALSE)
- {
- // fails
- $validator['success'] = false;
- foreach ($_POST as $key => $value) {
- $validator['messages'][$key] = form_error($key);
- }
- log_message('error', 'validation errors' );
- }else {
- // Get username
- $username = mb_strtolower($this->input->post('usernameforlog'), 'UTF-8');
- // Get and encrypt the password
- $password = $this->input->post('passwordforlog');
- // Login user
- $user_id = $this->user_model->login($username, $password);
- if($user_id){
- // Create session
- $user_data = array(
- 'id' => $user_id,
- 'instructors_slug' => $username,
- 'logged_in' => true
- );
- $this->session->set_userdata($user_data);
- $validator['success'] = true;
- $validator['messages'] = array();
- } else {
- $validator['success'] = false;
- $validator['messages'] = '<div class="alert alert-danger text-center">'.lang('controller-user-email-error3').'</div>';
- }
- }
- echo json_encode($validator);
- }
- $(document).ready(function() {
- $("#loginform").unbind('submit').bind('submit', function() {
- var form = $(this);
- $.ajax({
- url: form.attr('action'),
- type: form.attr('method'),
- data: form.serialize(),
- dataType: 'json',
- success:function(response) {
- console.log(response);
- if(response.success) {
- //redirect main page
- location.reload();
- }
- else {
- $("#loginmsg").html(response.messages);
- $.each(response.messages, function(index, value) {
- var element = $("#"+index);
- $(element)
- .closest('.form-group')
- .removeClass('has-error')
- .removeClass('has-success')
- .addClass(value.length > 0 ? 'has-error' : 'has-success')
- .find('.text-danger').remove();
- $(element).after(value);
- });
- }
- } // /success
- }); // /ajax
- return false;
- });
- });
Add Comment
Please, Sign In to add comment