Scroll_ThreadController Klassenreferenz

Controller fuer die Verwaltung von Threads. Mehr ...

Klassendiagramm für Scroll_ThreadController:

Dsao_Controller_Action

Aufstellung aller Elemente

Öffentliche Methoden

 preDispatch ()
 Vor dem Dispatchen auszuführende Routinen.
 showAction ()
 Zeigt einen Thread an.


Ausführliche Beschreibung

Controller fuer die Verwaltung von Threads.

Autor:
DSAo-Md

http://www.gnu.org/licenses/gpl-3.0.html GNU Public License

Version:
SVN: $Id: ThreadController.php 512 2009-06-19 08:11:48Z saviola777 $

Definiert in Zeile 9 der Datei ThreadController.php.


Dokumentation der Elementfunktionen

Scroll_ThreadController::showAction (  ) 

Zeigt einen Thread an.

Rückgabe:
void

Definiert in Zeile 21 der Datei ThreadController.php.

Benutzt Dsao_Controller_Action::_getModel(), Dsao_Controller_Action::getHelper(), Dsao_Controller_Action::getLog(), Dsao_Controller_Action::getUri(), Dsao_Controller_Action::getUser() und Dsao_Controller_Action::getView().

00022   {
00023     // Thread-ID aus URI
00024     $idThread = $this->getUri()->id;
00025 
00026     $thread = $this->_getModel()
00027           ->fetchThread($idThread, $this->getUser()->getId());
00028 
00029     // Falls keine Thread-ID uebergeben wurde oder Benutzer nicht an Thread
00030     // beteiligt, Fehlermeldung ausgeben
00031     if (!$thread->getThreads())
00032     {
00033       // Nicht zur History hinzufügen, Fehlermeldung ausgeben und kein Template
00034       // anzeigen
00035       $this->getHelper('history')->setAddToHistory(false);
00036       $this->getLog()->err('scroll_thread_show_error_invalid_thread_id');
00037       $this->getView()->addTemplate(false);
00038 
00039       return;
00040     }
00041 
00042     // Falls ungelesene Schriftrollen vorhanden sind
00043     if (!$thread->isRead())
00044     {
00045       // Token
00046       if (!$this->getHelper('SessionToken')->hasValidToken())
00047       {
00048         return;
00049       }
00050 
00051       // Als gelesen markieren
00052       $thread->markRead($this->getUser()->getId());
00053     }
00054 
00055     // Schriftrolle kopieren
00056     $scrollThreadAnswer = clone $thread->getScroll($idThread);
00057 
00058     // Daten fuer Formular vorbereiten
00059     $scrollThreadAnswer->content      = null;
00060     $scrollThreadAnswer->nameRecipient = $scrollThreadAnswer
00061       ->getOtherUser($this->getUser()->getId())->username;
00062     $scrollThreadAnswer->subject      = $scrollThreadAnswer->subject;
00063     $scrollThreadAnswer->idThread     = $scrollThreadAnswer->id;
00064 
00065     $this->getView()->assign(array
00066       (
00067         'scrollThread'        => $thread->toArrayDecoded(),
00068         'scrollThreadAnswer'  => $scrollThreadAnswer
00069       ));
00070   }


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei:

Erzeugt am Fri Sep 18 19:04:13 2009 für DSA online - Morgendaemmerung von  doxygen 1.5.7.1