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;
}
Beispiel #2
0
/*                                                                                   */
/*      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;
    }
Beispiel #3
0
                $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;
    }
}
Beispiel #4
0
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);
}