Example #1
0
 public static function setupSamlUserCredentials($user, $session = null)
 {
     $userid = $user->id;
     //Remove existing user credentials
     $oldcred = self::getUserCredentials($userid);
     if ($oldcred !== null) {
         $creds = new Default_Model_UserCredentials();
         if (count($creds->items) > 0) {
             $creds->remove($oldcred);
         }
         //$oldcred->remove();
     }
     //Create new user credentials
     $cred = new Default_Model_UserCredential();
     $cred->researcherid = $userid;
     $cred->sessionid = session_id();
     $cred->token = $_COOKIE["SimpleSAMLAuthToken"];
     $cred->save();
     //Save to session
     if ($session !== null) {
         $session->authCredSessionId = $cred->sessionid;
         $session->authCredSamlAuthToken = $cred->token;
         $session->authCredAddedOn = $cred->addedon;
         $session->authCredId = $cred->id;
     }
     return $cred;
 }
Example #2
0
 private function saveUserCredentials($userid, $token)
 {
     $cred = new Default_Model_UserCredential();
     $cred->researcherid = $userid;
     $cred->sessionid = session_id();
     $cred->token = $token;
     $cred->save();
     return $cred;
 }
 public function save(Default_Model_UserCredential $value)
 {
     global $application;
     $data = array();
     if (!isnull($value->getId())) {
         $data['id'] = $value->getId();
     }
     if (!isnull($value->getResearcherID())) {
         $data['researcherid'] = $value->getResearcherID();
     }
     if (!isnull($value->getSessionID())) {
         $data['sessionid'] = $value->getSessionID();
     }
     if (!isnull($value->getToken())) {
         $data['token'] = $value->getToken();
     }
     if (!isnull($value->getAddedOn())) {
         $data['addedon'] = $value->getAddedOn();
     }
     $q1 = 'id = ?';
     $q2 = $value->id;
     if (null === ($id = $value->id)) {
         unset($data['id']);
         $value->id = $this->getDbTable()->insert($data);
     } else {
         $s = $this->getDbTable()->getAdapter()->quoteInto($q1, $q2);
         $this->getDbTable()->update($data, $s);
     }
 }