Ejemplo n.º 1
0
 function getSlice()
 {
     // TODO:: ------------------- .' AND revision='.$this->revision
     $art = new rex_article();
     $art->setArticleId($this->getArticleId());
     $art->setClang($this->getClang());
     $art->getSlice = $this->getId();
     $art->setEval(true);
     return @$art->replaceLinks($art->getArticle());
 }
Ejemplo n.º 2
0
        echo '
            <div class="rex-cnt-bdy">
            ';
        if ($mode == 'edit') {
            // ------------------------------------------ START: MODULE EDITIEREN/ADDEN ETC.
            echo '
                  <!-- *** OUTPUT OF ARTICLE-CONTENT-EDIT-MODE - START *** -->
                  <div class="rex-cnt-editmode">
                  ';
            $CONT = new rex_article();
            $CONT->message = $message;
            $CONT->setArticleId($article_id);
            $CONT->setSliceId($slice_id);
            $CONT->setMode($mode);
            $CONT->setCLang($clang);
            $CONT->setEval(TRUE);
            $CONT->setFunction($function);
            eval("?>" . $CONT->getArticle($ctype));
            echo '
                  </div>
                  <!-- *** OUTPUT OF ARTICLE-CONTENT-EDIT-MODE - END *** -->
                  ';
            // ------------------------------------------ END: MODULE EDITIEREN/ADDEN ETC.
        } elseif ($mode == 'meta') {
            // ------------------------------------------ START: META VIEW
            echo '
    	  <div class="rex-cnt-metamode">
          <form action="index.php" method="post" enctype="multipart/form-data" id="REX_FORM">
            <fieldset>
              <legend class="rex-lgnd">' . $I18N->msg('general') . '</legend>
/**
 * Generiert alle *.article u. *.content Dateien eines Artikels/einer Kategorie
 *
 * @param $id ArtikelId des Artikels, der generiert werden soll
 * @param $refreshall Boolean Bei True wird der Inhalte auch komplett neu generiert, bei False nur die Metainfos
 * 
 * @return TRUE bei Erfolg, FALSE wenn eine ungütlige article_id übergeben wird
 */
function rex_generateArticle($id, $refreshall = true)
{
    global $REX, $I18N;
    // artikel generieren
    // vorraussetzung: articel steht schon in der datenbank
    //
    // -> infos schreiben -> abhaengig von clang
    // --> artikel infos / einzelartikel metadaten
    // --> artikel content / einzelartikel content
    // --> listen generieren // wenn startpage = 1
    // ---> artikel liste
    // ---> category liste
    foreach ($REX['CLANG'] as $clang => $clang_name) {
        $CONT = new rex_article();
        $CONT->setCLang($clang);
        $CONT->getContentAsQuery();
        // Content aus Datenbank holen, no cache
        $CONT->setEval(FALSE);
        // Content nicht ausführen, damit in Cachedatei gespeichert werden kann
        if (!$CONT->setArticleId($id)) {
            return FALSE;
        }
        // ----------------------- generiere generated/articles/xx.article
        $MSG = rex_generateArticleMeta($id, $clang);
        if ($MSG === FALSE) {
            return FALSE;
        }
        if ($refreshall) {
            // ----------------------- generiere generated/articles/xx.content
            $MSG = rex_generateArticleContent($id, $clang);
            if ($MSG === FALSE) {
                return FALSE;
            }
        }
        // ----- EXTENSION POINT
        $MSG = rex_register_extension_point('CLANG_ARTICLE_GENERATED', '', array('id' => $id, 'clang' => $clang, 'article' => $CONT));
        if ($MSG != '') {
            echo rex_warning($MSG);
        }
        // --------------------------------------------------- Listen generieren
        if ($CONT->getValue("startpage") == 1) {
            rex_generateLists($id);
            rex_generateLists($CONT->getValue("re_id"));
        } else {
            rex_generateLists($CONT->getValue("re_id"));
        }
    }
    // ----- EXTENSION POINT
    $MSG = rex_register_extension_point('ARTICLE_GENERATED', '', array('id' => $id));
    return TRUE;
}