summaryrefslogtreecommitdiff
path: root/src/SemanticScuttle/Environment.php
blob: e5fe3dec43b7430bfc84d1877110b68df47b13c1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?php
/**
 * SemanticScuttle - your social bookmark manager.
 *
 * PHP version 5.
 *
 * @category Bookmarking
 * @package  SemanticScuttle
 * @author   Christian Weiske <cweiske@cweiske.de>
 * @license  AGPL http://www.gnu.org/licenses/agpl.html
 * @link     http://sourceforge.net/projects/semanticscuttle
 */

/**
 * Server environment handling methods
 *
 * @category Bookmarking
 * @package  SemanticScuttle
 * @author   Christian Weiske <cweiske@cweiske.de>
 * @license  AGPL http://www.gnu.org/licenses/agpl.html
 * @link     http://sourceforge.net/projects/semanticscuttle
 */
class SemanticScuttle_Environment
{
    /**
     * Determines the correct $_SERVER['PATH_INFO'] value
     *
     * @return string New value
     */
    public static function getServerPathInfo()
    {
        /* old code that does not work today.
           if you find that this code helps you, tell us
           and send us the output of var_export($_SERVER);
        // Correct bugs with PATH_INFO (maybe for Apache 1 or CGI) -- for 1&1 host...
        if (isset($_SERVER['PATH_INFO']) && isset($_SERVER['ORIG_PATH_INFO'])) {
            if (strlen($_SERVER["PATH_INFO"])<strlen($_SERVER["ORIG_PATH_INFO"])) {
                $_SERVER["PATH_INFO"] = $_SERVER["ORIG_PATH_INFO"];
            }
            if (strcasecmp($_SERVER["PATH_INFO"], $_SERVER["SCRIPT_NAME"]) == 0) {
                unset($_SERVER["PATH_INFO"]);
            }
            if (strpos($_SERVER["PATH_INFO"], '.php') !== false) {
                unset($_SERVER["PATH_INFO"]);
            }
        }
        */

        return $_SERVER['PATH_INFO'];
    }
}
?>