function substitdossier($texte) { global $id_dossier; $tdossier = new Dossier(); $tdossierdesc = new Dossierdesc(); $url = ""; if ($id_dossier) { if ($tdossier->charger($id_dossier)) { $tdossierdesc->charger($tdossier->id); $url = $tdossierdesc->getUrl(); } } $racine = new Dossier(); $racine->charger($tdossier->id); while ($racine->parent) { $racine->charger($racine->parent); } $texte = str_replace("#DOSSIER_URL", $url, $texte); $texte = str_replace("#DOSSIER_CHAPO", "{$tdossierdesc->chapo}", $texte); $texte = str_replace("#DOSSIER_DESCRIPTION", "{$tdossierdesc->description}", $texte); $texte = str_replace("#DOSSIER_POSTSCRIPTUM", "{$tdossierdesc->postscriptum}", $texte); $texte = str_replace("#DOSSIER_ID", "{$tdossier->id}", $texte); $texte = str_replace("#DOSSIER_NOM", "{$tdossierdesc->titre}", $texte); $texte = str_replace("#DOSSIER_PARENT", "{$tdossier->parent}", $texte); $texte = str_replace("#DOSSIER_RACINE", "{$racine->id}", $texte); return $texte; }
/* */ /* You should have received a copy of the GNU General Public License */ /* along with this program. If not, see <http://www.gnu.org/licenses/>. */ /* */ /*************************************************************************************/ require_once __DIR__ . "/../pre.php"; require_once __DIR__ . "/../auth.php"; require_once __DIR__ . "/../../fonctions/divers.php"; if (!est_autorise("acces_contenu")) { exit; } header('Content-Type: text/html; charset=utf-8'); list($modif, $id) = explode("_", lireParam("id", "string")); if (strstr($modif, "dos") !== false) { $obj = new Dossier(); $obj->charger($id); $objdesc = new Dossierdesc(); $objdesc->charger($obj->id); $point_entree = "moddcont"; $champ_parent = "parent"; } else { if (strstr($modif, "cont") !== false) { $obj = new Contenu(); $obj->charger($id); $objdesc = new Contenudesc(); $objdesc->charger($obj->id); $point_entree = "moddos"; $champ_parent = "dossier"; } else { exit; }
$reecriture->actif = 0; $reecriture->maj(); $reecriture_new = new Reecriture(); $reecriture_new->url = $reecriture->url; $reecriture_new->fond = 'nexisteplus'; $reecriture_new->param = $reecriture->param . '&ancienfond=' . $reecriture->fond; $reecriture_new->actif = 1; $reecriture_new->lang = $reecriture->lang; $reecriture_new->add(); } break; case 'dossier': preg_match("#id_dossier=([0-9]+)([^[0-9]])*#", $a->param, $match); $id = $match[1]; $dossier = new Dossier(); if (!$dossier->charger($id)) { $reecriture = new Reecriture(); $reecriture->charger($a->url); $reecriture->actif = 0; $reecriture->maj(); $reecriture_new = new Reecriture(); $reecriture_new->url = $reecriture->url; $reecriture_new->fond = 'nexisteplus'; $reecriture_new->param = $reecriture->param . '&ancienfond=' . $reecriture->fond; $reecriture_new->actif = 1; $reecriture_new->lang = $reecriture->lang; $reecriture_new->add(); } break; } }
function boucleChemindos($texte, $args) { global $id_dossier; // récupération des arguments $dossier = lireTag($args, "dossier", "int"); $profondeur = lireTag($args, "profondeur", "int"); $niveau = lireTag($args, "niveau", "int"); if ($dossier == "") { return ""; } $res = ""; $tdossier = new Dossier(); $tdossier->charger($dossier); $tdossierdesc = new Dossierdesc(); $i = 0; if (!$tdossier->parent) { return ""; } $dostab = ""; $tmp = new Dossier(); $tmp->charger($tdossier->parent); $dostab[$i] = new Dossier(); $dostab[$i++] = $tmp; while ($tmp->parent != 0) { $tmp = new Dossier(); $tmp->charger($dostab[$i - 1]->parent); $dostab[$i] = new Dossier(); $dostab[$i++] = $tmp; } $compt = 0; for ($i = count($dostab) - 1; $i >= 0; $i--) { if ($profondeur != "" && $compt == $profondeur) { break; } if ($niveau != "" && $niveau != $compt + 1) { $compt++; continue; } $tdossierdesc->charger($dostab[$i]->id); $temp = str_replace("#ID", $dostab[$i]->id, $texte); $temp = str_replace("#TITRE", "{$tdossierdesc->titre}", $temp); $temp = str_replace("#URL", $tdossierdesc->getUrl(), $temp); $temp = str_replace("#REWRITEURL", $tdossierdesc->getUrl(), $temp); $compt++; $res .= $temp; } return $res; }
function ajouter($parent, $lang, $titre, $chapo, $description, $postscriptum, $ligne) { $dossier = new Dossier(); $dossier->parent = $parent; if ($ligne != "") { $dossier->ligne = 1; } else { $dossier->ligne = 0; } if ($parent == "") { $parent = 0; } $lastid = $dossier->add(); $dossier->charger($lastid); $dossier->maj(); $dossierdesc = new Dossierdesc(); $dossierdesc->dossier = $lastid; $dossierdesc->lang = $lang; $dossierdesc->titre = $titre; $dossierdesc->chapo = $chapo; $dossierdesc->description = $description; $dossierdesc->postscriptum = $postscriptum; $dossierdesc->add(); $dossierdesc->reecrire(); ActionsModules::instance()->appel_module("ajoutdos", $dossier); redirige($_SERVER['PHP_SELF'] . "?id=" . $lastid . "&lang=" . $lang); }