From 11972639df8315753123ebccdadee1f596807ad0 Mon Sep 17 00:00:00 2001
From: Antonio Gallo <tonicucoz@gmail.com>
Date: Tue, 16 Sep 2014 08:03:29 +0000
Subject: Integrated new EasyGiant Library

---
 h-source/Library/Url.php | 23 +++++++++++++++--------
 1 file changed, 15 insertions(+), 8 deletions(-)

(limited to 'h-source/Library/Url.php')

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,"&");
 	}
 
 } 
-- 
cgit v1.2.3