Exemple #1
0
             case BAZ_LISTE_RSS:
                 $output .= baz_liste_rss();
                 break;
             case BAZ_VOIR_FLUX_RSS:
                 exit(baz_afficher_flux_rss());
                 break;
         }
     } else {
         $output .= baz_liste_rss();
     }
     break;
 case BAZ_VOIR_SAISIR:
     if (isset($_GET[BAZ_VARIABLE_ACTION])) {
         switch ($_GET[BAZ_VARIABLE_ACTION]) {
             case BAZ_ACTION_SUPPRESSION:
                 $output .= baz_suppression($_GET['id_fiche']);
                 break;
             case BAZ_ACTION_PUBLIER:
                 $output .= publier_fiche(1) . baz_voir_fiche(1, $GLOBALS['_BAZAR_']['id_fiche']);
                 break;
             case BAZ_ACTION_PAS_PUBLIER:
                 $output .= publier_fiche(0) . baz_voir_fiche(1, $GLOBALS['_BAZAR_']['id_fiche']);
                 break;
             default:
                 $output .= baz_formulaire($_GET[BAZ_VARIABLE_ACTION]);
                 break;
         }
     } else {
         $_GET[BAZ_VARIABLE_ACTION] = BAZ_CHOISIR_TYPE_FICHE;
         $output .= baz_formulaire($_GET[BAZ_VARIABLE_ACTION]);
     }
/** baz_gestion_formulaire() affiche le listing des formulaires et permet de les modifier
*
*   @return  string    le code HTML
*/
function baz_gestion_formulaire()
{
    $res = '';
    //titre
    if ($GLOBALS['_BAZAR_']['affiche_menu'] == "0") {
        $res .= '<h2 class="titre_gestion_formulaire">' . BAZ_GESTION_FORMULAIRE . '</h2>' . "\n";
    }
    // il y a un formulaire a modifier
    if (isset($_GET['action_formulaire']) && $_GET['action_formulaire'] == 'modif') {
        //on verifie que la page en question est bien une PageWiki de type formulaire
        if ($GLOBALS['wiki']->GetTripleValue($_GET['idformulaire'], 'http://outils-reseaux.org/_vocabulary/type', '', '') == 'formulaire') {
            $valjson = $GLOBALS['wiki']->LoadPage($_GET['idformulaire']);
            $valeurs_formulaire = json_decode($valjson["body"], true);
            $valeurs_formulaire = array_map("utf8_decode", $valeurs_formulaire);
            $res .= baz_formulaire_des_formulaires('modif_v', $valeurs_formulaire);
        } else {
            return '<div class="error_box">' . BAZ_PAGEWIKI_PAS_FORMULAIRE . '</div>';
        }
        //il y a un nouveau formulaire a saisir
    } elseif (isset($_GET['action_formulaire']) && $_GET['action_formulaire'] == 'new') {
        $res .= baz_formulaire_des_formulaires('new_v');
        //il y a des donnees pour ajouter un nouveau formulaire
    } elseif (isset($_GET['action_formulaire']) && $_GET['action_formulaire'] == 'new_v') {
        unset($_POST["valider"]);
        //on genere un NomWiki a partir du titre du formulaire
        $nomwikiformulaire = genere_nom_wiki('Formulaire ' . $_POST["bn_label_nature"]);
        //on encode en utf-8 pour reussir a encoder en json
        $valeurs_formulaire = array_map("utf8_encode", $_POST);
        //on sauve les valeurs du formulaire dans une PageWiki, pour garder l'historique
        $GLOBALS["wiki"]->SavePage($nomwikiformulaire, json_encode($valeurs_formulaire));
        //on cree un triple pour specifier que la PageWiki creee est un formulaire
        $GLOBALS["wiki"]->InsertTriple($nomwikiformulaire, 'http://outils-reseaux.org/_vocabulary/type', 'formulaire', '', '');
        $res .= '<div class="info_box">' . BAZ_NOUVEAU_FORMULAIRE_ENREGISTRE . '</div>' . "\n";
        //il y a des donnees pour modifier un formulaire
    } elseif (isset($_GET['action_formulaire']) && $_GET['action_formulaire'] == 'modif_v' && baz_a_le_droit('saisie_formulaire')) {
        unset($_POST["valider"]);
        //on encode en utf-8 pour reussir a encoder en json
        $valeurs_formulaire = array_map("utf8_encode", $_POST);
        //on sauve les valeurs du formulaire dans une PageWiki, pour garder l'historique
        $GLOBALS["wiki"]->SavePage($_POST['idformulaire'], json_encode($valeurs_formulaire));
        $res .= '<div class="info_box">' . BAZ_FORMULAIRE_MODIFIE . '</div>' . "\n";
        // il y a un id de formulaire a supprimer
    } elseif (isset($_GET['action_formulaire']) && $_GET['action_formulaire'] == 'delete' && baz_a_le_droit('saisie_formulaire')) {
        //suppression de la PageWiki du formulaire et de son triple associe
        $GLOBALS["wiki"]->DeleteOrphanedPage($_GET['idformulaire']);
        $GLOBALS["wiki"]->DeleteTriple($_GET['idformulaire'], 'http://outils-reseaux.org/_vocabulary/type', NULL, '', '');
        //suppression des fiches associees au formulaire
        $tab_fiches_a_supprimer = baz_requete_recherche_fiches('', '', $_GET['idformulaire'], '', 1, '', '');
        foreach ($tab_fiches_a_supprimer as $fiche) {
            $valeurs_fiche = json_decode($fiche[0], true);
            baz_suppression($valeurs_fiche['id_fiche']);
        }
        $res .= '<div class="info_box">' . BAZ_FORMULAIRE_ET_FICHES_SUPPRIMES . '</div>' . "\n";
    }
    // affichage de la liste des templates a modifier ou supprimer (on l'affiche dans tous les cas, sauf cas de modif de formulaire)
    if (!isset($_GET['action_formulaire']) || $_GET['action_formulaire'] != 'modif' && $_GET['action_formulaire'] != 'new') {
        $tab_formulaires = baz_valeurs_tous_les_formulaires($GLOBALS['_BAZAR_']['categorie_nature']);
        if (count($tab_formulaires) > 0) {
            $res .= '<div class="info_box">' . BAZ_INTRO_MODIFIER_FORMULAIRE . '</div>' . "\n";
            $liste = '';
            $type_formulaire = '';
            foreach ($tab_formulaires as $type_fiche => $formulaire) {
                $res .= '<h3 class="titre_categorie_fiche">' . $type_fiche . '</h3>' . "\n";
                $res .= '<ul class="BAZ_liste">' . "\n";
                foreach ($formulaire as $nomwiki => $ligne) {
                    $lien_formulaire = $GLOBALS['wiki']->href('', $GLOBALS['wiki']->GetPageTag(), BAZ_VARIABLE_VOIR . '=' . BAZ_VOIR_FORMULAIRE . '&amp;idformulaire=' . $nomwiki);
                    $res .= '<li>' . "\n";
                    if (baz_a_le_droit('saisie_formulaire')) {
                        $res .= '<a class="BAZ_lien_supprimer" href="' . $lien_formulaire . '&amp;action_formulaire=delete" onclick="javascript:return confirm(\'' . BAZ_CONFIRM_SUPPRIMER_FORMULAIRE . ' ?\');"></a>' . "\n";
                    }
                    if (baz_a_le_droit('saisie_formulaire')) {
                        $res .= '<a class="BAZ_lien_modifier" href="' . $lien_formulaire . '&amp;action_formulaire=modif">' . $ligne['bn_label_nature'] . '</a>' . "\n";
                    } else {
                        $res .= $ligne['bn_label_nature'] . "\n";
                    }
                    $res .= '</li>' . "\n";
                }
                $res .= '</ul>' . "\n";
            }
        } else {
            $res .= '<div class="info_box">' . BAZ_PAS_DE_FORMULAIRES_TROUVES . '</div>' . "\n";
        }
        //ajout du lien pour creer un nouveau formulaire
        if (baz_a_le_droit('saisie_formulaire')) {
            $res .= '<a class="BAZ_lien_nouveau" href="' . $GLOBALS['wiki']->href('', $GLOBALS['wiki']->GetPageTag(), BAZ_VARIABLE_VOIR . '=' . BAZ_VOIR_FORMULAIRE . '&action_formulaire=new') . '">' . BAZ_NOUVEAU_FORMULAIRE . '</a>' . "\n";
        }
    }
    return $res;
}
Exemple #3
0
     switch ($GLOBALS['params']['action']) {
         case BAZ_LISTE_RSS:
             $output .= baz_liste_rss();
             break;
         case BAZ_VOIR_FLUX_RSS:
             exit(baz_afficher_flux_rss());
             break;
         default:
             $output .= baz_liste_rss();
             break;
     }
     break;
 case BAZ_VOIR_SAISIR:
     switch ($GLOBALS['params']['action']) {
         case BAZ_ACTION_SUPPRESSION:
             $output .= baz_suppression($_REQUEST['id_fiche']);
             break;
         case BAZ_ACTION_PUBLIER:
             $output .= publier_fiche(1) . baz_voir_fiche(1, $_REQUEST['id_fiche']);
             break;
         case BAZ_ACTION_PAS_PUBLIER:
             $output .= publier_fiche(0) . baz_voir_fiche(1, $_REQUEST['id_fiche']);
             break;
         case BAZ_ACTION_NOUVEAU:
             // Affichage du formulaire du saisie d'une' fiche
             $output .= baz_formulaire(BAZ_ACTION_NOUVEAU);
             break;
         case BAZ_ACTION_MODIFIER:
             // Affichage du formulaire de modification d'une fiche
             $output .= baz_formulaire(BAZ_ACTION_MODIFIER);
             break;