Subversion Repositories Sites.obs-saisons.fr

Compare Revisions

Ignore whitespace Rev 4 → Rev 5

/branches/v1.0-Amère nouvelle/obs_saisons/SPIP-v1-8-3/mes_fonctions.php3
New file
0,0 → 1,263
<?
 
// Mon "meta filtre" qui appelle tous les autres
function fl_complements($texte_in){
$texte = fl_protocolesobsform(
fl_envoiobsform(
fl_annuaire(
fl_carteform(
fl_cartographie(
fl_listepart(
fl_graphiqueform(
fl_historiqueform(
fl_inscriptionform(
fl_nbinscrits($texte_in))))))))));
return $texte;
}
function fl_inside($texte_in){
$texte = fl_graphiqueform($texte_in);
return $texte;
}
 
//fonction contrôlant l'apparition du nombre d'inscrits
function fl_nbinscrits($fl_txt){
$fl_patern_in="|<nb_inscrits([^>]*?)>|i";
$fl_replace_in1="";
if (preg_match($fl_patern_in, $fl_txt, $matches) ) {
$GLOBALS['nb_inscrits']=true;
if (trim($matches[1])<>""){
$notif_email=trim($matches[1]);
}
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt);
}
 
return $fl_txt;
}
 
//fonction contrôlant l'apparition d'un formaulaire de génération de graphiques
function fl_graphiqueform($fl_txt){
$fl_patern_in="|<graphique([^>]*?)>|i";
$fl_replace_in1="";
if (preg_match($fl_patern_in, $fl_txt, $matches) ) {
$GLOBALS['graphique']=true;
if (trim($matches[1])<>""){
$notif_email=trim($matches[1]);
}
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt);
}
 
return $fl_txt;
}
 
// fonction contrôlant l'apparition d'un formulaire d'inscription
function fl_inscriptionform($fl_txt){
global $notif_email;
// On récupère le/les email(s) pour la notification
$fl_patern_in="|<inscription([^>]*?)>|i";
$fl_replace_in1="";
if (preg_match($fl_patern_in, $fl_txt, $matches) ) {
$GLOBALS['inscription']=true;
if (trim($matches[1])<>""){
$notif_email=trim($matches[1]);
}
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt);
}
 
return $fl_txt;
}
 
// fonction contrôlant l'apparition de la cartographie (mrflos)
function fl_cartographie($fl_txt){
global $notif_email;
// On récupère le/les email(s) pour la notification
$fl_patern_in="|<cartographie([^>]*?)>|i";
$fl_replace_in1="";
if (preg_match($fl_patern_in, $fl_txt, $matches) ) {
$GLOBALS['cartographie']=true;
if (trim($matches[1])<>""){
$notif_email=trim($matches[1]);
}
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt);
}
 
return $fl_txt;
}
 
// fonction contrôlant l'apparition de la cartographie (mrflos)
function fl_annuaire($fl_txt){
global $notif_email;
// On récupère le/les email(s) pour la notification
$fl_patern_in="|<annuaire([^>]*?)>|i";
$fl_replace_in1="";
if (preg_match($fl_patern_in, $fl_txt, $matches) ) {
$GLOBALS['annuaire']=true;
if (trim($matches[1])<>""){
$notif_email=trim($matches[1]);
}
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt);
}
 
return $fl_txt;
}
 
// fonction contrôlant l'apparition d'un formulaire d'envoi d'observations
function fl_historiqueform($fl_txt){
$fl_patern_in="|<historique([^>]*?)>|i";
$fl_replace_in1="";
if (preg_match($fl_patern_in, $fl_txt, $matches) ) {
$GLOBALS['historique']=true;
if (trim($matches[1])<>""){
$notif_email=trim($matches[1]);
}
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt);
}
 
return $fl_txt;
}
 
// fonction contrôlant l'apparition d'un formulaire d'envoi d'observations
function fl_envoiobsform($fl_txt){
$fl_patern_in="|<envoi_obs([^>]*?)>|i";
$fl_replace_in1="";
if (preg_match($fl_patern_in, $fl_txt, $matches) ) {
$GLOBALS['envoi_obs']=true;
if (trim($matches[1])<>""){
$notif_email=trim($matches[1]);
}
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt);
}
 
return $fl_txt;
}
 
// fonction contrôlant l'apparition d'un formulaire d'envoi d'observations
function fl_carteform($fl_txt){
$fl_patern_in="|<carte([^>]*?)>|i";
$fl_replace_in1="";
if (preg_match($fl_patern_in, $fl_txt, $matches) ) {
$GLOBALS['carteform']=true;
if (trim($matches[1])<>""){
$notif_email=trim($matches[1]);
}
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt);
}
 
return $fl_txt;
}
 
// fonction contrôlant l'apparition de la liste des participants
function fl_listepart($fl_txt){
$fl_patern_in="|<liste([^>]*?)>|i";
$fl_replace_in1="";
if (preg_match($fl_patern_in, $fl_txt, $matches) ) {
$GLOBALS['liste']=true;
if (trim($matches[1])<>""){
$notif_email=trim($matches[1]);
}
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt);
}
 
return $fl_txt;
}
 
// fonction contrôlant l'apparition d'un formulaire d'envoi d'observations
function fl_protocolesobsform($fl_txt){
$fl_patern_in="|<protocoles_obs([^>]*?)>|i";
$fl_replace_in1="";
if (preg_match($fl_patern_in, $fl_txt, $matches) ) {
$GLOBALS['protocoles_obs']=true;
if (trim($matches[1])<>""){
$notif_email=trim($matches[1]);
}
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt);
}
 
return $fl_txt;
}
 
 
// Fonctions génériques provenant du livre PHP4
// Utilisées entre autre pour les inscriptions aux colloques
function supprimer_encodage_MQ($valeur) {
// si magic quotes est actif, retourner
// la valeur après suppression de l'encodage
// (appel à stripslashes), sinon, retourner
// la valeur
return (get_magic_quotes_gpc())?
stripslashes($valeur):$valeur;
}
function valeur_saisie($valeur) {
return supprimer_encodage_MQ ( trim($valeur));
}
function vers_formulaire($valeur) {
 
// affichage dans un formulaire
 
// encoder tous les caractères HTML spéciaux
// - ENT_QUOTES : dont " et '
return htmlentities($valeur,ENT_QUOTES);
 
}
function vers_page($valeur) {
 
// affichage direct dans une page
 
// 1. encoder tous les caractères HTML spéciaux
// - ENT_QUOTES : dont " et '
// 2. transformer les sauts de ligne en <BR>
return nl2br(htmlentities($valeur,ENT_QUOTES));
 
}
function vers_base($valeur) {
// le seul caractère qui pose vraiment problème est
// l'apostrophe (') ; c'est donc le seul qui est échappé
// par cette fonction
// une solution valable pour toutes les bases consiste à
// l'échapper par lui-même remplacement de ' par ''
return str_replace("'","''",$valeur);
}
function construire_requete($requete) {
 
// récupérer le nombre de paramètre
$nombre_param = func_num_args();
// boucler sur tous les paramètres à partir du deuxième
// (le premier contient la requête de base)
for($i=1;$i<$nombre_param;$i++) {
 
// récupérer la valeur du paramètre
$valeur = func_get_arg($i);
 
// si c'est une chaîne, remplacer ' par ''
if (is_string($valeur)) {
$valeur = str_replace("'","''",$valeur);
}
 
// mettre la valeur à son emplacement %n (n = $i)
$requete = str_replace("%$i",$valeur,$requete);
}
// retourner la requête
return $requete;
}
 
function affiche_msg($message)
{
$message=addslashes($message);
echo "<script language=\"JavaScript\" type=\"text/JavaScript\">\n";
echo "<!--\n";
echo "alert( '$message')\n";
echo "//-->\n";
echo "</script>\n";
}
 
function fl_at($fl_txt){
$rechercher="@";
$remplacer="<a class=\"hackers\" href=\"mailto:support@microsoft.com\"></a><img src=\"squelettes/design/at.gif\" border=\"0\" align=\"middle\" alt=\"at\" /><a class=\"hackers\" href=\"mailto:support@microsoft.com\"></a>";
$fl_txt = str_replace($rechercher,$remplacer,$fl_txt);
return $fl_txt;
}
 
?>