X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FCore%2FSession.php;h=ba1fe1b2a88bcdcbc342b53e8ff032503b8c857b;hb=ced9bfed5abf0d9edd1c9039a4089666b603a5ff;hp=f9c51bdf6d60dc9d50ddf26ece076a0f2ec4b93d;hpb=00be918220e9ac8f6d25d12ed3c9c49fddd07ff7;p=civicrm-core.git diff --git a/CRM/Core/Session.php b/CRM/Core/Session.php index f9c51bdf6d..ba1fe1b2a8 100644 --- a/CRM/Core/Session.php +++ b/CRM/Core/Session.php @@ -23,7 +23,7 @@ | GNU Affero General Public License or the licensing of CiviCRM, | | see the CiviCRM license FAQ at http://civicrm.org/licensing | +--------------------------------------------------------------------+ -*/ + */ require_once "PEAR.php"; @@ -64,7 +64,6 @@ class CRM_Core_Session { * pattern and cache the instance in this variable * * @var object - * @static */ static private $_singleton = NULL; @@ -86,18 +85,17 @@ class CRM_Core_Session { * @return CRM_Core_Session */ public function __construct() { - $this->_session = null; + $this->_session = NULL; } /** * Singleton function used to manage this object * * @return CRM_Core_Session - * @static */ public static function &singleton() { if (self::$_singleton === NULL) { - self::$_singleton = new CRM_Core_Session; + self::$_singleton = new CRM_Core_Session(); } return self::$_singleton; } @@ -106,9 +104,9 @@ class CRM_Core_Session { * Creates an array in the session. All variables now will be stored * under this array * - * @param boolean $isRead is this a read operation, in this case, the session will not be touched + * @param bool $isRead + * Is this a read operation, in this case, the session will not be touched. * - * @access private * * @return void */ @@ -125,7 +123,7 @@ class CRM_Core_Session { // FIXME: This belongs in CRM_Utils_System_* if ($config->userSystem->is_drupal && function_exists('drupal_session_start')) { // https://issues.civicrm.org/jira/browse/CRM-14356 - if (! (isset($GLOBALS['lazy_session']) && $GLOBALS['lazy_session'] == true)) { + if (!(isset($GLOBALS['lazy_session']) && $GLOBALS['lazy_session'] == TRUE)) { drupal_session_start(); } $_SESSION = array(); @@ -146,13 +144,12 @@ class CRM_Core_Session { ) { $this->_session[$this->_key] = array(); } - return; + return NULL; } /** * Resets the session store * - * @access public * * @param int $all * @@ -170,16 +167,17 @@ class CRM_Core_Session { $this->_session = array(); } - return; + return NULL; } /** * Creates a session local scope * - * @param string $prefix local scope name - * @param boolean $isRead is this a read operation, in this case, the session will not be touched + * @param string $prefix + * Local scope name. + * @param bool $isRead + * Is this a read operation, in this case, the session will not be touched. * - * @access public * * @return void */ @@ -198,8 +196,8 @@ class CRM_Core_Session { /** * Resets the session local scope * - * @param string $prefix local scope name - * @access public + * @param string $prefix + * Local scope name. * * @return void */ @@ -223,14 +221,15 @@ class CRM_Core_Session { * to store complex objects in the session. I suspect it * is supported but we need to verify this * - * @access public * - * @param string $name name of the variable - * @param mixed $value value of the variable - * @param string $prefix a string to prefix the keys in the session with + * @param string $name + * Name of the variable. + * @param mixed $value + * Value of the variable. + * @param string $prefix + * A string to prefix the keys in the session with. * * @return void - * */ public function set($name, $value = NULL, $prefix = NULL) { // create session scope @@ -259,20 +258,20 @@ class CRM_Core_Session { * This function takes a name and retrieves the value of this * variable from the session scope. * - * @access public * - * @param string $name : name of the variable - * @param string $prefix : adds another level of scope to the session + * @param string $name + * name of the variable. + * @param string $prefix + * adds another level of scope to the session. * * @return mixed - * */ public function get($name, $prefix = NULL) { // create session scope $this->createScope($prefix, TRUE); if (empty($this->_session) || empty($this->_session[$this->_key])) { - return null; + return NULL; } if (empty($prefix)) { @@ -280,7 +279,7 @@ class CRM_Core_Session { } else { if (empty($this->_session[$this->_key][$prefix])) { - return null; + return NULL; } $session =& $this->_session[$this->_key][$prefix]; } @@ -292,13 +291,13 @@ class CRM_Core_Session { * Gets all the variables in the current session scope * and stuffs them in an associate array * - * @access public * - * @param array $vars associative array to store name/value pairs - * @param string $prefix will be stripped from the key before putting it in the return + * @param array $vars + * Associative array to store name/value pairs. + * @param string $prefix + * Will be stripped from the key before putting it in the return. * * @return void - * */ public function getVars(&$vars, $prefix = '') { // create session scope @@ -324,13 +323,13 @@ class CRM_Core_Session { * Returns true-ish values if the timer is not set or expired, and false if the timer is still running * If you want to get more nuanced, you can check the type of the return to see if it's 'not set' or actually expired at a certain time * - * @access public * - * @param string $name : name of the timer - * @param int $expire : expiry time (in seconds) + * @param string $name + * name of the timer. + * @param int $expire + * expiry time (in seconds). * * @return mixed - * */ public function timer($name, $expire) { $ts = $this->get($name, 'timer'); @@ -338,19 +337,18 @@ class CRM_Core_Session { $this->set($name, time(), 'timer'); return $ts ? $ts : 'not set'; } - return false; + return FALSE; } /** * Adds a userContext to the stack * - * @param string $userContext the url to return to when done - * @param boolean $check should we do a dupe checking with the top element + * @param string $userContext + * The url to return to when done. + * @param bool $check + * Should we do a dupe checking with the top element. * * @return void - * - * @access public - * */ public function pushUserContext($userContext, $check = TRUE) { if (empty($userContext)) { @@ -384,12 +382,10 @@ class CRM_Core_Session { /** * Replace the userContext of the stack with the passed one * - * @param string $userContext the url to return to when done + * @param string $userContext + * The url to return to when done. * * @return void - * - * @access public - * */ public function replaceUserContext($userContext) { if (empty($userContext)) { @@ -405,8 +401,8 @@ class CRM_Core_Session { /** * Pops the top userContext stack * - * @return string the top of the userContext stack (also pops the top element) - * + * @return string + * the top of the userContext stack (also pops the top element) */ public function popUserContext() { $this->createScope(self::USER_CONTEXT); @@ -417,8 +413,8 @@ class CRM_Core_Session { /** * Reads the top userContext stack * - * @return string the top of the userContext stack - * + * @return string + * the top of the userContext stack */ public function readUserContext() { $this->createScope(self::USER_CONTEXT); @@ -445,9 +441,11 @@ class CRM_Core_Session { /** * Fetches status messages * - * @param bool $reset should we reset the status variable? + * @param bool $reset + * Should we reset the status variable?. * - * @return string the status message if any + * @return string + * the status message if any */ public function getStatus($reset = FALSE) { $this->initialize(); @@ -466,13 +464,13 @@ class CRM_Core_Session { /** * Stores an alert to be displayed to the user via crm-messages * - * @param $text string + * @param string $text * The status message * - * @param $title string + * @param string $title * The optional title of this message * - * @param $type string + * @param string $type * The type of this message (printed as a css class). Possible options: * - 'alert' (default) * - 'info' @@ -481,7 +479,7 @@ class CRM_Core_Session { * until the user dismisses it) * - 'no-popup' (will display in the document like old-school) * - * @param $options array + * @param array $options * Additional options. Possible values: * - 'unique' (default: true) Check if this message was already set before adding * - 'expires' how long to display this message before fadeout (in ms) @@ -489,7 +487,6 @@ class CRM_Core_Session { * defaults to 10 seconds for most messages, 5 if it has a title but no body, * or 0 for errors or messages containing links * - * @static * * @return void */ @@ -557,7 +554,8 @@ class CRM_Core_Session { /** * Retrieve contact id of the logged in user - * @return integer|NULL contact ID of logged in user + * @return int|NULL + * contact ID of logged in user */ public static function getLoggedInContactID() { $session = CRM_Core_Session::singleton(); @@ -576,4 +574,5 @@ class CRM_Core_Session { // helps proxies like varnish return empty($_SESSION); } + }