diff options
| author | Antonio Gallo <tonicucoz@gmail.com> | 2014-09-16 08:03:29 +0000 | 
|---|---|---|
| committer | Antonio Gallo <tonicucoz@gmail.com> | 2014-09-16 08:03:29 +0000 | 
| commit | 11972639df8315753123ebccdadee1f596807ad0 (patch) | |
| tree | 7c932d7e2f0d66afa55e603960f86cef7b00c5ff /h-source/Library/Url.php | |
| parent | 6209923d6cfb2418ee926cccdc62a9383e14bd97 (diff) | |
Integrated new EasyGiant Library
Diffstat (limited to 'h-source/Library/Url.php')
| -rwxr-xr-x | h-source/Library/Url.php | 23 | 
1 files changed, 15 insertions, 8 deletions
| diff --git a/h-source/Library/Url.php b/h-source/Library/Url.php index da312b1..26ff3df 100755 --- a/h-source/Library/Url.php +++ b/h-source/Library/Url.php @@ -2,7 +2,7 @@  // EasyGiant is a PHP framework for creating and managing dynamic content  // -// Copyright (C) 2009 - 2011  Antonio Gallo +// Copyright (C) 2009 - 2014  Antonio Gallo (info@laboratoriolibero.com)  // See COPYRIGHT.txt and LICENSE.txt.  //  // This file is part of EasyGiant @@ -26,28 +26,35 @@ class Url {  	//get the url starting from the root folder  	public static function getRoot($pathFromRootFolder = null) { -		$url = MOD_REWRITE_MODULE === true ? 'http://' . DOMAIN_NAME . '/' . $pathFromRootFolder : 'http://' . DOMAIN_NAME . '/index.php/' . $pathFromRootFolder; +		 +		$langUrl = isset(Params::$lang) ? "/".Params::$lang : null; +		 +		$protocol = Params::$useHttps ? "https" : "http"; +		 +		$url = MOD_REWRITE_MODULE === true ? "$protocol://" . DOMAIN_NAME . $langUrl . '/' . $pathFromRootFolder : "$protocol://" . DOMAIN_NAME . '/index.php/' . $langUrl . $pathFromRootFolder;  		return $url;  	} -	//create an url string (element1/element2/element4) from the values of the array $valuesArray considering only the elements indicated in the numeric string $numericString (in this case '1,2,4') -	public static function createUrl($valuesArray,$numericString = null) { +	//create an url string (element1/element2/element4) from the values of the array $valuesArray considering only the elements indicated in the numeric string $numericString  +	//$forceRewrite: if true it always rewrite the status variables +	public static function createUrl($variablesArray, $numericString = null, $forceRewrite = false) {  		$elementsArray = explode(',',$numericString); -		$valuesArray = array_values($valuesArray); +		$valuesArray = array_values($variablesArray); +		$keysArray = array_keys($variablesArray);  		$urlString = null;  		for ($i = 0; $i < count($valuesArray); $i++)  		{  			if (isset($numericString)) {  				if (isset($valuesArray[$i]) and in_array($i,$elementsArray)) { -					$urlString .= "/".$valuesArray[$i]; +					$urlString .= (Params::$rewriteStatusVariables or $forceRewrite) ? "/".$valuesArray[$i] : "&".$keysArray[$i]."=".$valuesArray[$i];  				}  			} else {  				if (isset($valuesArray[$i])) { -					$urlString .= "/".$valuesArray[$i]; +					$urlString .= (Params::$rewriteStatusVariables or $forceRewrite) ? "/".$valuesArray[$i] : "&".$keysArray[$i]."=".$valuesArray[$i];  				}  			}  		} -		return $urlString; +		return (Params::$rewriteStatusVariables or $forceRewrite) ? $urlString : "?".ltrim($urlString,"&");  	}  }  | 
