567 lines
17 KiB
PHP
Executable File
567 lines
17 KiB
PHP
Executable File
<?php
|
||
|
||
/**-----------------------------------------------
|
||
*
|
||
* Rooty, 2018 <rooty@rooty.me>
|
||
*
|
||
*
|
||
* This software is protected by copyright, please
|
||
* read the file COPYRIGHT.
|
||
* This program is distributed in the hope that it
|
||
* will be useful, but without any warranty; without
|
||
* even the implied warranty of merchantability or
|
||
* fitness for a particular purpose. Please
|
||
* read the file LICENCE.
|
||
*
|
||
* Fichier navigation.php
|
||
*
|
||
* Ce fichier contient la classe Navigation
|
||
*
|
||
* @copyright Copyright © 2004-2005, Initiance
|
||
* @since 2004/06/07
|
||
* @version 0.3
|
||
* @link www.rooty.me
|
||
* @package object_plugin
|
||
* @subpackage AmaranteHttps
|
||
*/
|
||
if ( !defined('SYSTEM_IN') )
|
||
{
|
||
die("Hacking attempt");
|
||
}
|
||
|
||
/**
|
||
* Constante du plugin [Urlrewrite]
|
||
*/
|
||
define("CONF_PLUGIN_URLREWRITE_NODE", "espace");
|
||
|
||
/**
|
||
* Test de présence du mod_rewrite et de htaccess
|
||
*/
|
||
if(function_exists("apache_get_modules"))
|
||
$GLOBALS["CONF_PLUGIN_URL_REWRITE"]=( in_array("mod_rewrite", apache_get_modules()) && file_exists(".htaccess"))?true:false;
|
||
else
|
||
$GLOBALS["CONF_PLUGIN_URL_REWRITE"]=(file_exists(".htaccess"))?true:false;
|
||
|
||
/**
|
||
* Classe Navigation
|
||
*<P>Déclare les fonctions usuelles de gestion d'url, permettent l'activation de Https ou non</P>
|
||
* @package object_plugin
|
||
* @subpackage Navigation
|
||
*/
|
||
class Navigation extends Plugin{
|
||
|
||
/**
|
||
* Constructeur de la classe Plugin
|
||
* @access public
|
||
*/
|
||
function Navigation(){
|
||
$this->__construct();
|
||
}
|
||
|
||
/**
|
||
* Constructeur de la classe Plugin
|
||
* @access public
|
||
*/
|
||
function __construct()
|
||
{
|
||
parent::__construct("1.0", "Olivier Devaine", "gestion du la navigation granilim");
|
||
}
|
||
/**
|
||
* __beforeSessionStart : methode executée avant que la session commence [Urlrewrite]
|
||
*<p>Cette methode à pour but d'être surchagée par le plugin<br>
|
||
*pour être executée avant l'initialisation du system</p>
|
||
* @abstract
|
||
* @access public
|
||
* @return booleen
|
||
*/
|
||
function __beforeSessionStart()
|
||
{
|
||
if($GLOBALS["CONF_PLUGIN_URL_REWRITE"])
|
||
{
|
||
/* Changement de noeud courant */
|
||
if(( isset($_GET["navigationNodeId"]) ) && ($_GET["navigationNodeId"]!=nid()) || ( isset($_GET["nid"]) ) && ($_GET["nid"]!=nid()) )
|
||
{
|
||
if ( (isset($_GET["system"])) && (strpos($_GET["system"], "navigationNode")===false) ){
|
||
$_GET["system"].=",navigationNode";
|
||
}elseif(!isset($_GET["system"])){
|
||
$_GET["system"]="navigationNode";
|
||
}
|
||
}
|
||
}
|
||
}
|
||
/**
|
||
* __beforeProcess : methode executée avant que le system ne soit executé [Urlrewrite]
|
||
*<p>Cette methode à pour but d'être surchagée par le plugin<br>
|
||
*pour être executée avant l'execution system</p>
|
||
* @abstract
|
||
* @access public
|
||
* @return booleen
|
||
*/
|
||
function __beforeProcess()
|
||
{
|
||
if(isset($_GET["oid"]) && is_numeric($_GET["oid"]))
|
||
$_GET["classe"]=get_class(Navigation::idToSessionCoordinationObject($_GET["oid"]));
|
||
}
|
||
|
||
public static function idToSessionCoordinationObject($id)
|
||
{
|
||
if (is_numeric($id) && is_array($GLOBALS["SYSTEM_CONTROL"]->objectArray)){
|
||
for($i=0;$i<count($GLOBALS["SYSTEM_CONTROL"]->objectArray);$i++){
|
||
if($GLOBALS["SYSTEM_CONTROL"]->objectArray[$i]->getId()==$id){
|
||
return $GLOBALS["SYSTEM_CONTROL"]->objectArray[$i];
|
||
}
|
||
}
|
||
}
|
||
return $GLOBALS["SYSTEM_MANAGER"]["COORDINATION_OBJ"]->createInstance($id);
|
||
}
|
||
/**
|
||
* __beforeExec gére le cas d'une authentification https (paramétre dans config HTTPS)
|
||
*
|
||
* si l'utilisateur essaye de se connecter, on annule l'execution de la page <br/>
|
||
* on redirige vers la même page en http.
|
||
* @access private
|
||
*/
|
||
function __beforeExec(){
|
||
if(isset($_GET["system"])){
|
||
if(strpos($_GET["system"],"authSession")!==false && $GLOBALS['CONF_AUTH_SECURE']==true){
|
||
if(dirname($_SERVER["PHP_SELF"])!="." && dirname($_SERVER["PHP_SELF"])!="/"){
|
||
$dir=dirname($_SERVER["PHP_SELF"])."/";
|
||
}else{
|
||
$dir="/";
|
||
}
|
||
// Si tout le système doit être sécurisé ? https sinon http
|
||
$urlTo = ($GLOBALS['CONF_ALL_SECURE']==true)?"https://":"http://";
|
||
$urlTo.= $_SERVER['HTTP_HOST'].$dir;
|
||
systemRedirect($urlTo.$GLOBALS['CONF_PAGE_EXECUTION']);
|
||
if(strpos($_GET["system"],"noExec")!==false){
|
||
}else{
|
||
$_GET["system"].=",noExec"; // permet de ne pas executer l'objet de coordination
|
||
}
|
||
}
|
||
|
||
}
|
||
}
|
||
/**
|
||
* formatName utilisé avec UrlRewrite::formatName [Urlrewrite]
|
||
*<p>formate une chaîne (node||CoordinationObject)</p>
|
||
*
|
||
*@return chaine
|
||
*@desc chaine chaine sans caractére spéciaux
|
||
*/
|
||
public static function formatName($ch)
|
||
{
|
||
|
||
/* Fonction permettant de supprimer les numéros, le point et l'espace à l'affichage */
|
||
// $ch = eregi_replace("^[[:space:]]*[a-z]+[.)".chr(176)."][[:space:]]+", "", $ch);
|
||
|
||
$ch = preg_replace("/^[[:space:]]*[a-z]+[.)".chr(176)."][[:space:]]+/i", "", $ch);
|
||
|
||
$s = strtolower($ch);
|
||
# Gestion des charactères remplaçables
|
||
// $s=ereg_replace("à|À|â|Â|ä|Ä","a",$s);
|
||
// $s=ereg_replace("ç|Ç","c",$s);
|
||
// $s=ereg_replace("è|È|é|É|ê|Ê|ë|Ë","e",$s);
|
||
// $s=ereg_replace("î|Î|ï|Ï","i",$s);
|
||
// $s=ereg_replace("ô|Ô","o",$s);
|
||
// $s=ereg_replace("ù|Ù|û|Û","u",$s);
|
||
// # Gestion des espaces
|
||
// $s=ereg_replace(" | |-|/|,","_",$s);
|
||
|
||
|
||
// echo $s."<br>";
|
||
$patterns[0] = '/[À|Â|Ä|á|â|à|å|ä]/';
|
||
$patterns[1] = '/[è|È|é|É|ê|Ê|ë|Ë]/';
|
||
$patterns[2] = '/[Î|Ï|í|î|ì|ï]/';
|
||
$patterns[3] = '/[Ô|ó|ô|ò|ø|õ|ö]/';
|
||
$patterns[4] = '/[Ù|Û|ú|û|ù|ü]/';
|
||
$patterns[5] = '/æ/';
|
||
$patterns[6] = '/[ç|Ç]/';
|
||
$patterns[7] = '/ß/';
|
||
$patterns[8] = '/\s+/';
|
||
$replacements[0] = 'a';
|
||
$replacements[1] = 'e';
|
||
$replacements[2] = 'i';
|
||
$replacements[3] = 'o';
|
||
$replacements[4] = 'u';
|
||
$replacements[5] = 'ae';
|
||
$replacements[6] = 'c';
|
||
$replacements[7] = 'ss';
|
||
$replacements[8] = '_';
|
||
|
||
$s = preg_replace($patterns, $replacements, $s);
|
||
// echo $s."<br>";
|
||
|
||
|
||
$nb=strlen($s);
|
||
$i=0;
|
||
while($i<$nb)
|
||
{
|
||
// Suppression de tous les caractères spèciaux!!!
|
||
if ( ((ord(substr($s,$i,1))<97) || (ord(substr($s,$i,1))>122)) && ((ord(substr($s,$i,1))!=95)) ){
|
||
$s=substr($s,0,$i).substr($s,($i+1));
|
||
$i=0;
|
||
$nb=strlen($s);
|
||
}
|
||
$i++;
|
||
}
|
||
if (strlen($s)>25)
|
||
$s=substr($s,0,25);
|
||
|
||
return $s;
|
||
}
|
||
/**
|
||
* Fonction formatUrlNode
|
||
*
|
||
* Formate l'url pour la navigation dans les noeuds
|
||
* @public
|
||
* @static
|
||
* @param chaine nom de la classe à utiliser...
|
||
* @param entier identifiant de l'objet
|
||
* @param chaine identifiant du message(optionnel)...
|
||
* @return chaine url formatté
|
||
*/
|
||
public static function formatUrlNode($system, $navigationNodeId, $msg="",$param="")
|
||
{
|
||
global $SERVER_NAME, $SCRIPT_NAME, $CONF_PERSISTANT_SECURE;
|
||
// var_dump($GLOBALS["CONF_PLUGIN_URL_REWRITE"]);
|
||
if ($GLOBALS["CONF_PLUGIN_URL_REWRITE"])
|
||
{ // [Urlrewrite]
|
||
if(strtolower($system) == "navigationnode")
|
||
{
|
||
$system = CONF_PLUGIN_URLREWRITE_NODE;
|
||
}
|
||
$currentCode=$GLOBALS["SYSTEM_USER_SESSION"]->langue->getCode();
|
||
|
||
$Node =$GLOBALS["SYSTEM_USER_SESSION"]->getNode($navigationNodeId);
|
||
$nodeName = Navigation::formatName($Node->getLibelle($currentCode));
|
||
|
||
$pageName = ((isset($pageName))?$pageName:"index");
|
||
$url =$nodeName."-". $navigationNodeId."---.htm";
|
||
|
||
if($GLOBALS['CONF_URL_KEY']){
|
||
$url =addIdToUrl($url);
|
||
} else {
|
||
$url.="?abs=1";
|
||
}
|
||
|
||
if ($msg!="")
|
||
$url.="&msg=".$msg;
|
||
if ($param!="")
|
||
$url.="¶m=".$param;
|
||
} else {
|
||
$url =$GLOBALS['CONF_PAGE_EXECUTION'];
|
||
if($GLOBALS['CONF_URL_KEY']){
|
||
$url =addIdToUrl($url);
|
||
}else{
|
||
$url.="?abs=1";
|
||
}
|
||
$url.="&sys=".$system."&nid=".$navigationNodeId;
|
||
if ($msg!="")
|
||
$url.="&msg=".$msg;
|
||
if ($param!="")
|
||
$url.="¶m=".$param;
|
||
}
|
||
if(dirname($_SERVER["PHP_SELF"])!="." && dirname($_SERVER["PHP_SELF"])!="/")
|
||
$dir=dirname($_SERVER["PHP_SELF"])."/";
|
||
else
|
||
$dir="/";
|
||
|
||
if($GLOBALS['CONF_AUTH_SECURE']==true){
|
||
if( (strtolower($system) == "navigationnode") && ( in_array(strtolower($navigationNodeId), $GLOBALS['SYSTEM_NODE_SECURE']) || ($GLOBALS['CONF_ALL_SECURE']==true)) )
|
||
{
|
||
return "https://".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
}else{
|
||
return "http://".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
}
|
||
}else{
|
||
return "http://".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
}
|
||
}
|
||
|
||
/**
|
||
* Fonction formatUrl
|
||
*
|
||
* Formate l'url pour l'execution d'une methode
|
||
* @public
|
||
* @static
|
||
* @param entier identifiant de l'objet
|
||
* @param chaine nom de la classe à utiliser...
|
||
* @param chaine nom de la methode à appeler
|
||
* @param chaine identifiant du message(optionnel)...
|
||
* @return chaine url formatté
|
||
*/
|
||
public static function formatUrl($oid, $className, $methodName, $msg="", $param="", $navigationNodeId=null, $urlparam=null)
|
||
{
|
||
global $SERVER_NAME, $SCRIPT_NAME, $CONF_PERSISTANT_SECURE;
|
||
if ($GLOBALS["CONF_PLUGIN_URL_REWRITE"])
|
||
{ // [Urlrewrite]
|
||
|
||
$navigationNodeId = ( (!is_null($navigationNodeId) && is_numeric($navigationNodeId))? $navigationNodeId: nid() );
|
||
|
||
$objectArray=Navigation::idToSessionCoordinationObject($oid);
|
||
$currentCode = $GLOBALS["SYSTEM_USER_SESSION"]->langue->getCode();
|
||
|
||
$Node =$GLOBALS["SYSTEM_USER_SESSION"]->getNode($navigationNodeId);
|
||
|
||
$nodeName = Navigation::formatName($Node->getLibelle($currentCode));
|
||
$objName = Navigation::formatName($objectArray->getName($currentCode));
|
||
|
||
$url = $nodeName."-".$navigationNodeId."-".$objName."-".$methodName."-".$oid.".htm";
|
||
|
||
if($GLOBALS['CONF_URL_KEY']){
|
||
$url =addIdToUrl($url);
|
||
}else{
|
||
$url.="?abs=1";
|
||
}
|
||
|
||
if ($msg!="")
|
||
$url.="&msg=".$msg;
|
||
if ($param!="")
|
||
$url.="¶m=".$param;
|
||
if ($urlparam!="")
|
||
$url.="&".$urlparam;
|
||
}else{
|
||
$url =$GLOBALS['CONF_PAGE_EXECUTION'];
|
||
if($GLOBALS['CONF_URL_KEY']){
|
||
$url =addIdToUrl($url);
|
||
$url.="&oid=".$oid."&classe=".$className."&action=".$methodName;
|
||
}else{
|
||
$url.="?oid=".$oid."&classe=".$className."&action=".$methodName;
|
||
}
|
||
if ($msg!="")
|
||
$url.="&msg=".$msg;
|
||
|
||
if ($param!="")
|
||
$url.="¶m=".$param;
|
||
if ($navigationNodeId!=null && is_numeric($navigationNodeId))
|
||
$url.="&sys=nid&nid=".$navigationNodeId;
|
||
}
|
||
|
||
if(dirname($_SERVER["PHP_SELF"])!="." && dirname($_SERVER["PHP_SELF"])!="/")
|
||
$dir=dirname($_SERVER["PHP_SELF"])."/";
|
||
else
|
||
$dir="/";
|
||
|
||
if($GLOBALS['CONF_AUTH_SECURE']==true){
|
||
// var_dump(strtolower($className).".".strtolower($methodName));
|
||
// var_dump($GLOBALS['SYSTEM_CLASS_METHOD_SECURE']);
|
||
// var_dump(in_array(strtolower($className).".".strtolower($methodName), $GLOBALS['SYSTEM_CLASS_METHOD_SECURE']));
|
||
if( ($GLOBALS['CONF_ALL_SECURE']==true) || in_array(strtolower($className).".".strtolower($methodName), $GLOBALS['SYSTEM_CLASS_METHOD_SECURE']) || in_array(strtolower($className), $GLOBALS['SYSTEM_CLASS_SECURE']) || in_array($oid, $GLOBALS['SYSTEM_OID_SECURE']) || in_array($navigationNodeId, $GLOBALS['SYSTEM_NODE_SECURE']) )
|
||
{
|
||
// return "https://".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
return "https://".$_SERVER['HTTP_HOST'].$dir.$url;
|
||
}else{
|
||
// return "//".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
return "//".$_SERVER['HTTP_HOST'].$dir.$url;
|
||
}
|
||
}else{
|
||
// return "//".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
return "//".$_SERVER['HTTP_HOST'].$dir.$url;
|
||
}
|
||
}
|
||
|
||
/**
|
||
* Fonction formatUrl
|
||
*
|
||
* Formate l'url pour l'execution d'une methode
|
||
* @public
|
||
* @static
|
||
* @param entier identifiant de l'objet
|
||
* @param chaine nom de la classe à utiliser...
|
||
* @param chaine nom de la methode à appeler
|
||
* @param chaine identifiant du message(optionnel)...
|
||
* @return chaine url formatté
|
||
*/
|
||
function extUrl($url, $oid, $className, $methodName)
|
||
{
|
||
global $SERVER_NAME, $SCRIPT_NAME, $CONF_PERSISTANT_SECURE;
|
||
|
||
$navigationNodeId = nid();
|
||
|
||
if( substr($url, 0, 8) === "https://" ) {
|
||
$url = explode("https://", $url);
|
||
$url = $url[1];
|
||
} elseif( substr($url, 0, 7) === "http://" ) {
|
||
$url = explode("http://", $url);
|
||
$url = $url[1];
|
||
} else
|
||
$url = $url;
|
||
|
||
// var_dump($url);
|
||
|
||
if($GLOBALS['CONF_AUTH_SECURE']==true){
|
||
if( ($GLOBALS['CONF_ALL_SECURE']==true) || in_array(strtolower($className).strtolower($methodName), $GLOBALS['SYSTEM_CLASS_METHOD_SECURE']) || in_array(strtolower($className), $GLOBALS['SYSTEM_CLASS_SECURE']) || in_array($oid, $GLOBALS['SYSTEM_OID_SECURE']) || in_array($navigationNodeId, $GLOBALS['SYSTEM_NODE_SECURE']) )
|
||
{
|
||
// return "https://".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
return "https://".$url;
|
||
}else{
|
||
// return "http://".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
return "http://".$url;
|
||
}
|
||
}else{
|
||
// return "http://".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
return "http://".$url;
|
||
}
|
||
}
|
||
|
||
|
||
/**
|
||
* Fonction formatUrl
|
||
*
|
||
* Formate l'url pour l'execution d'une methode
|
||
* @public
|
||
* @static
|
||
* @param entier identifiant de l'objet
|
||
* @param chaine nom de la classe à utiliser...
|
||
* @param chaine nom de la methode à appeler
|
||
* @param chaine identifiant du message(optionnel)...
|
||
* @return chaine url formatte
|
||
*/
|
||
function absoluteUrl($msg="",$param="")
|
||
{
|
||
global $SERVER_NAME, $SCRIPT_NAME, $CONF_PERSISTANT_SECURE;
|
||
if ($GLOBALS["CONF_PLUGIN_URL_REWRITE"])
|
||
{ // [Urlrewrite]
|
||
|
||
$navigationNodeId = ( (!is_null($navigationNodeId) && is_numeric($navigationNodeId))? $navigationNodeId: nid() );
|
||
|
||
$objectArray = Navigation::idToSessionCoordinationObject(oid());
|
||
$currentCode = $GLOBALS["SYSTEM_USER_SESSION"]->langue->getCode();
|
||
|
||
$Node =$GLOBALS["SYSTEM_USER_SESSION"]->getNode($navigationNodeId);
|
||
|
||
$nodeName = Navigation::formatName($Node->getLibelle($currentCode));
|
||
$objName = Navigation::formatName($objectArray->getName($currentCode));
|
||
|
||
$url = $nodeName."-".$navigationNodeId."-".$objName."-".methodName()."-".$oid.".htm";
|
||
|
||
if($GLOBALS['CONF_URL_KEY']){
|
||
$url =addIdToUrl($url);
|
||
}else{
|
||
$url.="?abs=1";
|
||
}
|
||
|
||
if ($msg!="")
|
||
$url.="&msg=".$msg;
|
||
if ($param!="")
|
||
$url.="&param=".$param;
|
||
} else {
|
||
$url =$GLOBALS['CONF_PAGE_EXECUTION'];
|
||
if($GLOBALS['CONF_URL_KEY']){
|
||
$url =addIdToUrl($url);
|
||
}else{
|
||
$url.="?abs=1";
|
||
}
|
||
if ($msg!="")
|
||
$url.="&msg=".$msg;
|
||
|
||
if ($param!="")
|
||
$url.="&param=".$param;
|
||
}
|
||
if(dirname($_SERVER["PHP_SELF"])!="." && dirname($_SERVER["PHP_SELF"])!="/")
|
||
$dir=dirname($_SERVER["PHP_SELF"])."/";
|
||
else
|
||
$dir="/";
|
||
|
||
if($GLOBALS['CONF_AUTH_SECURE']==true){
|
||
if( in_array(strtolower($nodeName), $GLOBALS['SYSTEM_NODE_SECURE']) || ($GLOBALS['CONF_ALL_SECURE']==true) )
|
||
{
|
||
return "https://".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
}else{
|
||
return "http://".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
}
|
||
}else{
|
||
return "//".$_SERVER['HTTP_HOST'].$dir.htmlentitiesconv(unhtmlentities($url));
|
||
}
|
||
}
|
||
|
||
function protocol()
|
||
{
|
||
if(isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) || isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
|
||
return $protocol = 'https://';
|
||
else return $protocol = 'http://';
|
||
}
|
||
}
|
||
|
||
//
|
||
// Déclaration des fonction d'url (alias du plugin Navigation)
|
||
//
|
||
/**
|
||
* Fonction formatUrlNode
|
||
*
|
||
* Formate l'url pour la navigation dans les noeuds
|
||
* @param chaine nom de la classe à utiliser...
|
||
* @param entier identifiant de l'objet
|
||
* @param chaine identifiant du message(optionnel)...
|
||
* @return chaine url formatté
|
||
*/
|
||
if (!function_exists("formatUrlNode")) // permet la redeclaration au niveau du plugin
|
||
{
|
||
function formatUrlNode($system, $navigationNodeId, $msg="",$param="")
|
||
{
|
||
return Navigation::formatUrlNode($system, $navigationNodeId, $msg, $param);
|
||
}
|
||
}
|
||
|
||
/**
|
||
* Fonction formatUrl
|
||
*
|
||
* Formate l'url pour l'execution d'une methode
|
||
* @param entier identifiant de l'objet
|
||
* @param chaine nom de la classe à utiliser...
|
||
* @param chaine nom de la methode à appeler
|
||
* @param chaine identifiant du message(optionnel)...
|
||
* @return chaine url formatté
|
||
*/
|
||
// if (!function_exists("formatUrl")) // permet la redeclaration aux niveau du plugin
|
||
// {
|
||
// function formatUrl($oid, $className, $methodName, $msg="",$param="", $navigationNodeId=null)
|
||
// {
|
||
// return Navigation::formatUrl($oid, $className, $methodName, $msg, $param, $navigationNodeId);
|
||
// }
|
||
// }
|
||
|
||
/**
|
||
* Fonction formatUrl
|
||
*
|
||
* Formate l'url pour l'execution d'une methode
|
||
* @param entier identifiant de l'objet
|
||
* @param chaine nom de la classe à utiliser...
|
||
* @param chaine nom de la methode à appeler
|
||
* @param chaine identifiant du message(optionnel)...
|
||
* @return chaine url formatté
|
||
*/
|
||
if (!function_exists("absoluteUrl")) // permet la redeclaration aux niveau du plugin
|
||
{
|
||
function absoluteUrl($msg="",$param="")
|
||
{
|
||
return Navigation::absoluteUrl($msg, $param);
|
||
}
|
||
}
|
||
|
||
/**
|
||
* Fonction extUrl
|
||
*
|
||
* Formate l'url pour l'execution d'une methode
|
||
* @param entier identifiant de l'objet
|
||
* @param chaine nom de la classe à utiliser...
|
||
* @param chaine nom de la methode à appeler
|
||
* @param chaine identifiant du message(optionnel)...
|
||
* @return chaine url formatté
|
||
*/
|
||
if (!function_exists("extUrl")) // permet la redeclaration aux niveau du plugin
|
||
{
|
||
function extUrl($url, $oid, $className, $methodName)
|
||
{
|
||
return Navigation::extUrl($url, $oid, $className, $methodName);
|
||
}
|
||
}
|
||
|
||
if (!function_exists("protocol")) // permet la redeclaration aux niveau du plugin
|
||
{
|
||
function protocol() {
|
||
if(isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) || isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') return $protocol = 'https://'; else return $protocol = 'http://';
|
||
}
|
||
}
|
||
?>
|