function _valid_perform() { $locale_id = $this->dataspace->get('locale_id'); if (!locale::is_valid_locale_id($locale_id)) { return new close_popup_response(RESPONSE_STATUS_FAILURE); } $user =& user::instance(); $user->set_locale_id($locale_id); return new close_popup_response(RESPONSE_STATUS_SUCCESS); }
function _valid_perform(&$request, &$response) { $locale_id = $this->dataspace->get('locale_id'); if ($request->has_attribute('popup')) { $response->write(close_popup_response($request)); } elseif (isset($_SERVER['HTTP_REFERER'])) { $response->redirect($_SERVER['HTTP_REFERER']); } else { $response->redirect('/'); } if (!locale::is_valid_locale_id($locale_id)) { $request->set_status(REQUEST_STATUS_FAILURE); } $user =& user::instance(); $user->set_locale_id($locale_id); $request->set_status(REQUEST_STATUS_SUCCESS); }
function _set_logged_user_data(&$user_data, $locale_id = '') { $this->_set_is_logged_in(); $this->_set_id($user_data['id']); $this->_set_node_id($user_data['node_id']); $this->_set_login($user_data['identifier']); $this->_set_password($user_data['password']); $this->_set_email($user_data['email']); $this->_set_name($user_data['name']); $this->_set_lastname($user_data['lastname']); $this->_determine_groups(); if ($locale_id && locale::is_valid_locale_id($locale_id)) { $this->set_locale_id($locale_id); } }
function login($login, $password, $locale_id = '') { $this->logout(); if (!($record = $this->_get_identity_record($login, $password))) { return false; } $this->_set_is_logged_in(); $this->_set_id($record['id']); $this->_set_node_id($record['node_id']); $this->_set_login($login); $this->_set_password($record['password']); $this->_set_email($record['email']); $this->_set_name($record['name']); $this->_set_lastname($record['lastname']); $this->_determine_groups(); if ($locale_id && locale::is_valid_locale_id($locale_id)) { $this->set_locale_id($locale_id); } return true; }