/** * @param Aenderungsantrag $aenderungsantrag * @param int $kommentar_id */ private function performAnzeigeActions($aenderungsantrag, $kommentar_id) { if (AntiXSS::isTokenSet("komm_del")) { /** @var AenderungsantragKommentar $komm */ $komm = AenderungsantragKommentar::model()->findByPk(AntiXSS::getTokenVal("komm_del")); if ($komm->aenderungsantrag_id == $aenderungsantrag->id && $komm->kannLoeschen(Yii::app()->user) && $komm->status == IKommentar::$STATUS_FREI) { $komm->status = IKommentar::$STATUS_GELOESCHT; $komm->save(); Yii::app()->user->setFlash("success", "Der Kommentar wurde gelöscht."); $benachrichtigt = array(); foreach ($aenderungsantrag->antrag->veranstaltung->veranstaltungsreihe->veranstaltungsreihenAbos as $abo) { if ($abo->kommentare && !in_array($abo->person_id, $benachrichtigt)) { $abo->person->benachrichtigenKommentar($komm); $benachrichtigt[] = $abo->person_id; } } } else { Yii::app()->user->setFlash("error", "Kommentar nicht gefunden oder keine Berechtigung."); } } if (AntiXSS::isTokenSet("komm_freischalten") && $kommentar_id > 0) { /** @var AenderungsantragKommentar $komm */ $komm = AenderungsantragKommentar::model()->findByPk($kommentar_id); if ($komm->aenderungsantrag_id == $aenderungsantrag->id && $komm->status == IKommentar::$STATUS_NICHT_FREI && $aenderungsantrag->antrag->veranstaltung->isAdminCurUser()) { $komm->status = IKommentar::$STATUS_FREI; $komm->save(); Yii::app()->user->setFlash("success", "Der Kommentar wurde freigeschaltet."); } else { Yii::app()->user->setFlash("error", "Kommentar nicht gefunden oder keine Berechtigung."); } } if (AntiXSS::isTokenSet("komm_nicht_freischalten") && $kommentar_id > 0) { /** @var AenderungsantragKommentar $komm */ $komm = AenderungsantragKommentar::model()->findByPk($kommentar_id); if ($komm->aenderungsantrag_id == $aenderungsantrag->id && $komm->status == IKommentar::$STATUS_NICHT_FREI && $aenderungsantrag->antrag->veranstaltung->isAdminCurUser()) { $komm->status = IKommentar::$STATUS_GELOESCHT; $komm->save(); Yii::app()->user->setFlash("success", "Der Kommentar wurde gelöscht."); } else { Yii::app()->user->setFlash("error", "Kommentar nicht gefunden oder keine Berechtigung."); } } if (AntiXSS::isTokenSet("mag") && $this->veranstaltung->getPolicyUnterstuetzen()->checkAenderungsantragSubmit()) { $userid = Yii::app()->user->getState("person_id"); foreach ($aenderungsantrag->aenderungsantragUnterstuetzerInnen as $unt) { if ($unt->unterstuetzerIn_id == $userid) { $unt->delete(); } } $unt = new AenderungsantragUnterstuetzerInnen(); $unt->aenderungsantrag_id = $aenderungsantrag->id; $unt->unterstuetzerIn_id = $userid; $unt->rolle = "mag"; $unt->kommentar = ""; if ($unt->save()) { Yii::app()->user->setFlash("success", "Du unterstützt diesen Änderungsantrag nun."); } else { Yii::app()->user->setFlash("error", "Ein (seltsamer) Fehler ist aufgetreten."); } $this->redirect($this->createUrl("aenderungsantrag/anzeige", array("antrag_id" => $aenderungsantrag->antrag_id, "aenderungsantrag_id" => $aenderungsantrag->id))); } if (AntiXSS::isTokenSet("magnicht") && $this->veranstaltung->getPolicyUnterstuetzen()->checkAenderungsantragSubmit()) { $userid = Yii::app()->user->getState("person_id"); foreach ($aenderungsantrag->aenderungsantragUnterstuetzerInnen as $unt) { if ($unt->unterstuetzerIn_id == $userid) { $unt->delete(); } } $unt = new AenderungsantragUnterstuetzerInnen(); $unt->aenderungsantrag_id = $aenderungsantrag->id; $unt->unterstuetzerIn_id = $userid; $unt->rolle = "magnicht"; $unt->kommentar = ""; $unt->save(); if ($unt->save()) { Yii::app()->user->setFlash("success", "Du lehnst diesen Änderungsantrag nun ab."); } else { Yii::app()->user->setFlash("error", "Ein (seltsamer) Fehler ist aufgetreten."); } $this->redirect($this->createUrl("aenderungsantrag/anzeige", array("antrag_id" => $aenderungsantrag->antrag_id, "aenderungsantrag_id" => $aenderungsantrag->id))); } if (AntiXSS::isTokenSet("dochnicht") && $this->veranstaltung->getPolicyUnterstuetzen()->checkAenderungsantragSubmit()) { $userid = Yii::app()->user->getState("person_id"); foreach ($aenderungsantrag->aenderungsantragUnterstuetzerInnen as $unt) { if ($unt->unterstuetzerIn_id == $userid) { $unt->delete(); } } Yii::app()->user->setFlash("success", "Du stehst diesem Änderungsantrag wieder neutral gegenüber."); $this->redirect($this->createUrl("aenderungsantrag/anzeige", array("antrag_id" => $aenderungsantrag->antrag_id, "aenderungsantrag_id" => $aenderungsantrag->id))); } }