Exemplo n.º 1
0
 /** get session item
  * this method returns a session item
  *
  * @param string session_id the session id
  *
  * @return object cs_session_item the session item
  */
 function get($session_id)
 {
     // don't delete session on every site request
     if (1 == rand(1, 100)) {
         $this->deleteOldSessions();
     }
     if (!empty($session_id) and !empty($this->_cache_object[$session_id])) {
         $session_item = $this->_cache_object[$session_id];
     } else {
         $session_arrays = array();
         $session_item = NULL;
         $query = 'SELECT session_value FROM session WHERE session_id="' . encode(AS_DB, $session_id) . '";';
         $this->_last_query = $query;
         $result = $this->_db_conntector->performQuery($query);
         if (!isset($result)) {
             include_once 'functions/error_functions.php';
             trigger_error('Problems selecting session values for: ' . $session_id . '.', E_USER_WARNING);
         } elseif (!empty($result[0])) {
             include_once 'classes/cs_session_item.php';
             $session_item = new cs_session_item();
             $session_item->setSessionID($session_id);
             $session = $result[0];
             if (!empty($session['session_value'])) {
                 if (strstr($session['session_value'], 'cs_mail_obj')) {
                     // must included here, because this objects could get out of the session
                     include_once 'classes/cs_mail_obj.php';
                 }
                 include_once 'functions/text_functions.php';
                 $session_array = mb_unserialize($session['session_value']);
             } else {
                 $session_array = array();
             }
             $session_item->_data = $session_array;
             if ($this->_cache_on) {
                 $this->_cache_object[$session_id] = $session_item;
             }
         }
     }
     return $session_item;
 }
Exemplo n.º 2
0
		$auth_data = $auth_source_item->getAuthData();
		$host = $auth_data['HOST'];
	}
	if(!empty($source_type) AND $source_type == "Shibboleth"){
	    if(!empty($_SERVER['uid']) AND !empty($_SERVER['Shib_Session_ID'])){
	    	$authentication = $environment->getAuthenticationObject();
	    	if ( isset($_POST['auth_source']) and !empty($_POST['auth_source']) ) {
	      		$auth_source = $_POST['auth_source'];
	   		} else {
	      		$auth_source = '';
	   		}
	        #if($host == $_SERVER['HTTP_HOST']){
	            // Benutzer ist eingeloggt // root extra!?
	            $session = new cs_session_item();
	            // Session from Shibboleth identity provider
	            $session->setSessionID(substr($_SERVER['Shib_Session_ID'],1));
	            $session->setValue("user_id", $_SERVER["Shib_uid"]);
	            // Benutzer muss erstellt werden
	            
	            #$session->createSessionID($user_id);
	            
	            if ( $cookie == '1' ) {
	                $session->setValue('cookie',2);
	            } elseif ( empty($cookie) ) {
	                // do nothing, so CommSy will try to save cookie
	            } else {
	                $session->setValue('cookie',0);
	            }
	            if ($javascript == '1') {
	                $session->setValue('javascript',1);
	            } elseif ($javascript == '-1') {