Ejemplo n.º 1
0
 function render($id, $article, $root)
 {
     try {
         $d = $article->findDocument();
     } catch (Strass_Db_Table_NotFound $e) {
         $d = null;
     }
     $s = $root->addSection($article->slug, $this->view->lienArticle($article));
     $s->addFlags('article');
     $s->addChild($this->view->vignetteIndividu($article->findAuteur())->addFlags('mini'));
     if ($d) {
         $s->addFlags('document', $d->suffixe);
         $s->addChild($this->view->vignetteDocument($d)->addFlags('nolabel'));
         $l = $s->addList()->addFlags('infos');
         $l->addItem()->addFlags('telechargement')->addLink($d->getUri(), "Télécharger");
         $l->addItem("Format " . strtoupper($d->suffixe))->addFlags('format');
         $l->addItem(wtk_format_size($d->getTaille()))->addFlags('taille');
     } else {
         $contenu = $s->addSection()->addFlags('contenu');
         $t = $contenu->addText(wtk_first_lines($article->getBoulet() . "\n\n" . $article->article));
         $tw = $t->getTextWiki();
         $tw->setRenderConf('Xhtml', 'image', 'base', $article->getDossier());
         $contenu->addParagraph($this->view->signature($article), ".")->addFlags('signature');
         $lien = $this->view->lienArticle($article, 'Lire la suite…');
         $contenu->addParagraph($lien)->addFlags('suite');
     }
 }
Ejemplo n.º 2
0
 public function document($document)
 {
     $s = new Wtk_Section(null, $document->titre);
     $s->addFlags('document', $document->suffixe);
     $s->addChild($this->view->vignetteDocument($document)->addFlags('nolabel'));
     $l = $s->addList()->addFlags('infos');
     $l->addItem()->addFlags('telechargement')->addLink($document->getUri(), "Télécharger");
     if ($document->auteur) {
         $l->addItem("Par " . $document->auteur)->addFlags('auteur');
     }
     $l->addItem("Publié le " . strftime("%x", strtotime($document->date)))->addFlags('date');
     $l->addItem("Format " . strtoupper($document->suffixe))->addFlags('format');
     $l->addItem(wtk_format_size($document->getTaille()))->addFlags('taille');
     if ($document->description) {
         $s->addSection('description')->addText($document->description);
     }
     return $s;
 }