forked from mirrors/easyappointments
Login will set the user timezone in the session variable (if available).
This commit is contained in:
parent
b8ebe2b1bd
commit
26efa3c410
1 changed files with 34 additions and 10 deletions
|
@ -99,17 +99,41 @@ class User_Model extends CI_Model {
|
||||||
$salt = $this->user_model->get_salt($username);
|
$salt = $this->user_model->get_salt($username);
|
||||||
$password = hash_password($salt, $password);
|
$password = hash_password($salt, $password);
|
||||||
|
|
||||||
$user_data = $this->db
|
$user_settings = $this->db->get_where('ea_user_settings', [
|
||||||
->select('ea_users.id AS user_id, ea_users.email AS user_email, ea_users.timezone,'
|
'username' => $username,
|
||||||
. 'ea_roles.slug AS role_slug, ea_user_settings.username')
|
'password' => $password
|
||||||
->from('ea_users')
|
])->row_array();
|
||||||
->join('ea_roles', 'ea_roles.id = ea_users.id_roles', 'inner')
|
|
||||||
->join('ea_user_settings', 'ea_user_settings.id_users = ea_users.id')
|
|
||||||
->where('ea_user_settings.username', $username)
|
|
||||||
->where('ea_user_settings.password', $password)
|
|
||||||
->get()->row_array();
|
|
||||||
|
|
||||||
return ($user_data) ? $user_data : NULL;
|
if (empty($user_settings))
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
$user = $this->db->get_where('ea_users', ['id' => $user_settings['id_users']])->row_array();
|
||||||
|
|
||||||
|
if (empty($user))
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
$role = $this->db->get_where('ea_roles', ['id' => $user['id_roles']])->row_array();
|
||||||
|
|
||||||
|
if (empty($role))
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
$this->load->model('timezones_model');
|
||||||
|
|
||||||
|
$default_timezone = $this->timezones_model->get_default_timezone();
|
||||||
|
|
||||||
|
return [
|
||||||
|
'user_id' => $user['id'],
|
||||||
|
'user_email' => $user['email'],
|
||||||
|
'username' => $username,
|
||||||
|
'timezone' => isset($user['timezone']) ? $user['timezone'] : $default_timezone,
|
||||||
|
'role_slug' => $role['slug'],
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in a new issue