Subversion Repositories Sites.obs-saisons.fr

Rev

Rev 5 | Blame | Compare with Previous | Last modification | View Log | RSS feed

<?

// 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;
}

?>