' . $var . "
"; if ( isset($_GET[$var]) ) { //echo '$_get -> $var =>' . $var . "
"; return $_GET[$var]; } elseif ( isset($_POST[$var]) ) { //echo '$_POST -> $var =>' . $var . "
"; return $_POST[$var]; }else { return; } } // MET LA PREMIÈRE LETTRE D'UN MOT EN MAJUSCULE ( utf8 compliant ) function mb_ucfirst($str) { $char = mb_substr($str,0,1,"UTF8"); $str = mb_substr( $str, 1, NULL, "UTF8"); $char = mb_strtoupper( $char, "UTF8"); return $char . $str; } function getLang( $lang, $gestion=false ) { $dico = array(); if ( empty($lang) ) { $lang="en"; } $langPath ='lang/'.$lang; if ($gestion) $langPath = "../" . $langPath; if (($fh = fopen($langPath, 'r') )) { $str = fgets($fh); fclose($fh); $dico = json_decode($str, true); return $dico; }else { return false; } } function formatteDate($locale, $date, $tz) { $formatter = new IntlDateFormatter($locale, IntlDateFormatter::FULL, IntlDateFormatter::FULL, $tz, IntlDateFormatter::GREGORIAN ); if ($formatter == null) { log_write(__FILE__ . EOLH . __LINE__ . EOLH . "Formatter error : locale = " . $locale . "tz = " . $tz . "Formatter = " . print_r($formatter, true) . InvalidConfigException(intl_get_error_message()),ERROR); } return $formatter->format($date); } /* Remplace les variables dans les textes */ function replaceVariables($db, $text, $dico) :array { $variables = array( 'expediteur' => 'expeMail', 'destinataire' => 'destMail', 'date_depart' => 'startTimeRFC822', 'date_arrivee' => 'deliveryTimeRFC822', 'new_date_arrivee' => 'datePeripetie', 'message' => 'message', 'onglet_apropos' => 'onglet_apropos', 'NB_avion_poeme' => 'avionJournalier', "url_avion" => "urlAvion"); $posVar = 0 ; $x =0; $result = array(); // si contient la variable '$message' alors le text est en html if (strpos($text, '$message') === false) { $html = false; }else { $html = true; } while( 1 ) { // Recherche les variables dans le texte $posVar = strpos( $text, "$", $posVar); if ($posVar !== false) { // une variable a été trouvée if ($x++ >10 ) break; // empêche une boucle sans fin, il n'y a pas plus de 10 variables par texte $posEsp = strpos( $text, " ", $posVar); if ($posEsp === false) { $var = substr($text, $posVar+1, strlen($text)-$posVar); }else { $var = substr($text, $posVar+1, $posEsp-$posVar-1); } $posVar = $posEsp+1; $var = trim($var, " .\n\r)"); $varReplace = "$" . $var; if ( isset ($variables[$var]) ) { $dbVar = $variables[$var]; $varText = $db->$dbVar; //$text = str_replace($varReplace, $db->$dbVar, $text); }elseif ( isset ($dico[$var]) ) { $varText = $dico[$var]; //$text = str_replace($varReplace, $dico[$var], $text); }else { log_error( "La variable => " . $var . "n'est pas reconnue
" . __file__ . ' ligne ' . __line__ . "\n" , true, false); } if ($html and (strpos($var, "url") !== false)) { $varText = '' . $varText . ""; } $text = str_replace($varReplace, $varText, $text); //remplace la variable dans le texte }else { break; } } $result['html'] = $html; $result['text'] = $text; return $result; }