|
@@ -0,0 +1,74 @@
|
|
|
|
+<?php
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * globals.php
|
|
|
|
+ *
|
|
|
|
+ * Copyright (c) 1999-2002 The SquirrelMail Project Team
|
|
|
|
+ * Licensed under the GNU GPL. For full terms see the file COPYING.
|
|
|
|
+ *
|
|
|
|
+ * This includes code to update < 4.1.0 globals to the newer format
|
|
|
|
+ * It also has two session register functions that work across various
|
|
|
|
+ * php versions.
|
|
|
|
+ *
|
|
|
|
+ * $Id$
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+/* convert old-style superglobals to current method
|
|
|
|
+ * this is executed if you are running PHP 4.0.x.
|
|
|
|
+ * it is run via a require_once directive in validate.php
|
|
|
|
+ * and redirect.php. Patch submitted by Ray Black.
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+if ( (float)substr(PHP_VERSION,0,3) < 4.1 ) {
|
|
|
|
+ global $_COOKIE, $_ENV, $_FILES, $_GET, $_POST, $_SERVER, $_SESSION;
|
|
|
|
+ global $HTTP_COOKIE_VARS, $HTTP_ENV_VARS, $HTTP_POST_FILES, $HTTP_GET_VARS,
|
|
|
|
+ $HTTP_POST_VARS, $HTTP_SERVER_VARS, $HTTP_SESSION_VARS;
|
|
|
|
+ $_COOKIE =& $HTTP_COOKIE_VARS;
|
|
|
|
+ $_ENV =& $HTTP_ENV_VARS;
|
|
|
|
+ $_FILES =& $HTTP_POST_FILES;
|
|
|
|
+ $_GET =& $HTTP_GET_VARS;
|
|
|
|
+ $_POST =& $HTTP_POST_VARS;
|
|
|
|
+ $_SERVER =& $HTTP_SERVER_VARS;
|
|
|
|
+ $_SESSION =& $HTTP_SESSION_VARS;
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+function sqsession_register ($var, $name) {
|
|
|
|
+ $rg = ini_get('register_globals');
|
|
|
|
+ if ( (float)substr(PHP_VERSION,0,3) < 4.1 && empty($rg)) {
|
|
|
|
+ global $HTTP_SESSION_VARS;
|
|
|
|
+ $HTTP_SESSION_VARS["$name"] = $var;
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ session_register("$name");
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+function sqsession_unregister ($name) {
|
|
|
|
+ $rg = ini_get('register_globals');
|
|
|
|
+ if ( (float)substr(PHP_VERSION,0,3) < 4.1 && empty($rg)) {
|
|
|
|
+ global $HTTP_SESSION_VARS;
|
|
|
|
+ unset($HTTP_SESSION_VARS["$name"]);
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ session_unregister("$name");
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * Search for the var $name in $_SESSION, $_POST, $_GET
|
|
|
|
+ * (in that order) and register it as a global var.
|
|
|
|
+ */
|
|
|
|
+function sqextractGlobalVar ($name) {
|
|
|
|
+ global $_SESSION, $_GET, $_POST, $$name;
|
|
|
|
+
|
|
|
|
+ if( isset($_SESSION[$name]) ) {
|
|
|
|
+ $$name = $_SESSION[$name];
|
|
|
|
+ }
|
|
|
|
+ if( isset($_POST[$name]) ) {
|
|
|
|
+ $$name = $_POST[$name];
|
|
|
|
+ }
|
|
|
|
+ else if ( isset($_GET[$name]) ) {
|
|
|
|
+ $$name = $_GET[$name];
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+?>
|