+function sqsession_is_registered ($name) {
+ $test_name = &$name;
+ $result = false;
+ if ( !check_php_version(4,1) ) {
+ global $HTTP_SESSION_VARS;
+ if (isset($HTTP_SESSION_VARS[$test_name])) {
+ $result = true;
+ }
+ }
+ else {
+ if (isset($_SESSION[$test_name])) {
+ $result = true;
+ }
+ }
+ return $result;
+}
+
+
+define('SQ_INORDER',0);
+define('SQ_GET',1);
+define('SQ_POST',2);
+define('SQ_SESSION',3);
+define('SQ_COOKIE',4);
+define('SQ_SERVER',5);
+
+/**
+ * Search for the var $name in $_SESSION, $_POST, $_GET,
+ * $_COOKIE, or $_SERVER and set it in provided var.
+ * If $search is not provided, or == SQ_INORDER, it will search
+ * $_SESSION, then $_POST, then $_GET. Otherwise,
+ * use one of the defined constants to look for
+ * a var in one place specifically.
+ * Returns FALSE if variable is not found.
+ * Returns TRUE if it is.
+ */
+function sqgetGlobalVar($name, &$value, $search = SQ_INORDER) {
+ if ( !check_php_version(4,1) ) {
+ global $_SESSION, $_GET, $_POST, $_COOKIE, $_SERVER;
+ }
+
+ switch ($search) {
+ /* we want the default case to be first here,
+ so that if a valid value isn't specified,
+ all three arrays will be searched. */
+ default:
+ case 'SQ_INORDER':
+ case 'SQ_SESSION':
+ if( isset($_SESSION[$name]) ) {
+ $value = $_SESSION[$name];
+ return TRUE;
+ } elseif ( $search == SQ_SESSION ) {
+ break;
+ }
+ case 'SQ_POST':
+ if( isset($_POST[$name]) ) {
+ $value = $_POST[$name];
+ return TRUE;
+ } elseif ( $search == SQ_POST ) {
+ break;
+ }
+ case 'SQ_GET':
+ if ( isset($_GET[$name]) ) {
+ $value = $_GET[$name];
+ return TRUE;
+ }
+ /* NO IF HERE. FOR SQ_INORDER CASE, EXIT after GET */
+ break;
+ case 'SQ_COOKIE':
+ if ( isset($_COOKIE[$name]) ) {
+ $value = $_COOKIE[$name];
+ return TRUE;
+ }
+ break;
+ case 'SQ_SERVER':
+ if ( isset($_SERVER[$name]) ) {
+ $value = $_SERVER[$name];
+ return TRUE;
+ }
+ break;
+ }
+ return FALSE;
+}
+
+