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