register_function('gettext', 'smartyFunctionGettext'); $g_objSmarty->template_dir = dirname(__FILE__).'/smarty/templates'; $g_objSmarty->compile_dir = dirname(__FILE__).'/smarty/templates_c'; $g_objSmarty->compile_check = true; if (!is_dir($g_objSmarty->compile_dir)) { mkdir($g_objSmarty->compile_dir); } // ----------------------------------------------- // --- Security Authenticate // ----------------------------------------------- //$objPasswordCreator = new com_borealis_security_password_V2PasswordCreator(); //com_borealis_security_Authentication::withSmarty($g_objSmarty, 'login.tpl', $objPasswordCreator); // ----------------------------------------------- // --- Check right // ----------------------------------------------- /* $strUsername = com_borealis_security_manager_SecurityManager::getInstance()->getUser()->getUsername(); $objRessource = com_borealis_acl_object_Ressource::getByName('administration.acl'); $objAction = com_borealis_acl_object_Action::getByName('update'); if (!com_borealis_acl_manager_ACLManager::isAuthorized($strUsername, $objRessource, $objAction)) { die('Droit insufisant'); } */ /** * Smarty fonction for i18n - Fonction pour internationalisation du texte dans smarty * Exemple : * gettext('sample') = 'sample :param1 :param2 "cool" '; * * {gettext key=sample} => sample :param1 :param2 "cool" * {gettext key=sample javascript=true} => sample :param1 :param2 \"cool\" * {gettext key=sample param1=aaa param2=bbb} => sample aaa bbb "cool" * * @param array $pobjArrayParams Paramétre de la fonction * * @return string */ function smartyFunctionGettext($pobjArrayParams) { if (count($pobjArrayParams) == 0) { throw new Exception('Param key is mandatory'); } $strResult = gettext($pobjArrayParams['key']); // Replace param foreach ($pobjArrayParams as $strParamName => $strValue) { if ($strParamName != 'key' && $strParamName != 'javascript') { $strResult = str_replace(":$strParamName", $strValue, $strResult); } } // Formatage pour l'échapement des " dans une chaine javascript if (isset($pobjArrayParams['javascript']) && $pobjArrayParams['javascript'] == 'true') { $strResult = str_replace('"', '\"', $strResult); } return $strResult; } ?>