public function logindevAction() { //Apply only in development enviroments if (ApplicationConfiguration::isEnviroment("production") === FALSE) { $this->_helper->layout->disableLayout(); $this->_helper->viewRenderer->setNoRender(); $this->session->userid = isset($_GET["id"]) ? $_GET["id"] : NULL; $us = new Default_Model_Researchers(); $us->viewModerated = true; $us->filter->id->equals($this->session->userid); if (count($us->items) > 0) { $this->session->username = $us->items[0]->username; $this->session->fullName = $us->items[0]->name; $this->session->userRole = $us->items[0]->positionTypeID; $this->session->userCountryID = $us->items[0]->countryID; $this->session->userCountryName = $us->items[0]->country->name; $this->session->cname = $us->items[0]->cname; } else { $this->logoutAction(); } $this->view->session = $this->session; $this->view->entries = null; $users = new Default_Model_Researchers(); $users->viewModerated = true; $users->filter->id->equals($this->session->userid); if (count($users->items) > 0) { $user = $users->items[0]; setcookie("SimpleSAMLAuthToken", "09a4fcd92a07c008c2de0dcba1665580", 0, "/", null, true, true); //Create new user credentials $cred = new Default_Model_UserCredential(); $cred->researcherid = $this->session->userid; $cred->sessionid = session_id(); $cred->token = '09a4fcd92a07c008c2de0dcba1665580'; $cred->save(); $this->session->developsession = true; if ($user->deleted === true) { //Setup session variables in case of deleted profile $this->session->userDeleted = $user->deleted; if (isset($user->delInfo)) { $this->session->userDeletedById = $user->delInfo->deleter->id; $this->session->userDeletedByName = $user->delInfo->deleter->name; $this->session->userDeletedByCName = $user->delInfo->deleter->cname; $this->session->userDeletedOn = $user->delInfo->deletedOn; } else { $this->session->userDeletedById = null; $this->session->userDeletedByName = null; $this->session->userDeletedByCName = null; $this->session->userDeletedOn = null; } $this->_redirect('/saml/deletedprofile'); return; } else { //Get first user account and initialize saml session $uaccounts = new Default_Model_UserAccounts(); $uaccounts->filter->researcherid->equals($user->id); if (count($uaccounts->items) > 0) { $uaccount = $uaccounts->items[0]; SamlAuth::setupSamlSession($this->session, $uaccount, $user); } } } header('Location: https://' . $_SERVER['HTTP_HOST']); $this->session->userWarning = array("title" => "Development user", "message" => "You are currently signed in developer mode"); } }