Exemplo n.º 1
0
function modifier($id, $lang, $titre, $chapo, $description, $postscriptum, $ligne, $parent, $urlsuiv, $urlreecrite)
{
    $dossier = new Dossier();
    $dossierdesc = new Dossierdesc();
    $dossier->charger($id);
    $res = $dossierdesc->charger($id, $lang);
    if (!$res) {
        CacheBase::getCache()->reset_cache();
        $temp = new Dossierdesc();
        $temp->dossier = $dossier->id;
        $temp->lang = $lang;
        $lastid = $temp->add();
        $dossierdesc = new Dossierdesc();
        $dossierdesc->charger_id($lastid);
    }
    $parent_tmp = $dossier->parent;
    if ($parent != $parent_tmp) {
        $trouve = 0;
        $test = chemin_dos($parent);
        for ($i = 0; $i < count($test); $i++) {
            if ($test[$i]->dossier == $id) {
                $trouve = 1;
                break;
            }
        }
        if (!$trouve) {
            $dossier->parent = $parent;
            $dossier->classement = $dossier->prochain_classement();
        }
    }
    $dossierdesc->titre = $titre;
    $dossierdesc->chapo = $chapo;
    $dossierdesc->description = $description;
    $dossierdesc->postscriptum = $postscriptum;
    if ($ligne != "") {
        $dossier->ligne = 1;
    } else {
        $dossier->ligne = 0;
    }
    $dossier->maj();
    $dossierdesc->maj();
    if ($parent_tmp != $parent) {
        $queryclass = "select * from {$dossier->table} where parent={$parent_tmp} order by classement";
        $resclass = mysql_query($queryclass);
        if (mysql_num_rows($resclass) > 0) {
            $i = 1;
            while ($rowclass = mysql_fetch_object($resclass)) {
                $rub = new Dossier();
                $rub->charger($rowclass->id);
                $rub->classement = $i;
                $rub->maj();
                $i++;
            }
        }
    }
    $dossierdesc->reecrire($urlreecrite);
    ActionsModules::instance()->appel_module("moddos", $dossier);
    if ($urlsuiv) {
        redirige("listdos.php?parent=" . $dossier->parent);
    } else {
        redirige($_SERVER['PHP_SELF'] . "?id=" . $dossier->id . "&lang=" . $lang);
    }
}
 public function modify($lang, $parent, $online, $title, $chapo, $description, $postscriptum, $urlsuiv, $rewriteurl, $images, $documents, $tab)
 {
     if ($this->id == '') {
         throw new TheliaAdminException("Folder not found", TheliaAdminException::FOLDER_NOT_FOUND);
     }
     $dossierdesc = new Dossierdesc($this->id, $lang);
     if ($dossierdesc->id == '') {
         CacheBase::getCache()->reset_cache();
         $dossierdesc->dossier = $this->id;
         $dossierdesc->lang = $lang;
         $dossierdesc->id = $dossierdesc->add();
     }
     $this->oldParent = $this->parent;
     if ($this->parent != $parent) {
         $this->checkOrder($parent);
     }
     $this->parent = $parent;
     $this->ligne = $online == 'on' ? 1 : 0;
     $dossierdesc->chapo = str_replace("\n", "<br />", $chapo);
     $dossierdesc->titre = $title;
     $dossierdesc->postscriptum = $postscriptum;
     $dossierdesc->description = $description;
     $this->maj();
     $dossierdesc->maj();
     $dossierdesc->reecrire($rewriteurl);
     $this->setLang($lang);
     $this->updateImage($images);
     $this->getImageFile()->ajouter("photo", array("jpg", "gif", "png", "jpeg"), "uploadimage");
     $this->updateDocuments($documents);
     $this->getDocumentFile()->ajouter("document_", array(), "uploaddocument");
     ActionsModules::instance()->appel_module("moddos", $this);
     if ($urlsuiv) {
         redirige('listdos.php?parent=' . $this->dossier);
     } else {
         redirige('dossier_modifier.php?id=' . $this->id . '&tab=' . $tab . '&lang=' . $lang);
     }
 }