/**
  * @param Veranstaltung $veranstaltung
  * @param int $limit
  * @return array|AenderungsantragKommentar[]
  */
 public static function holeNeueste($veranstaltung, $limit = 0)
 {
     $antrag_ids = array();
     /** @var array|Antrag[] $antraege */
     $antraege = Antrag::model()->findAllByAttributes(array("veranstaltung_id" => $veranstaltung->id));
     foreach ($antraege as $a) {
         $antrag_ids[] = $a->id;
     }
     if (count($antrag_ids) == 0) {
         return array();
     }
     $condition = array("order" => "datum DESC");
     if ($limit > 0) {
         $condition["limit"] = $limit;
     }
     $unsichtbar = $veranstaltung->getAntragUnsichtbarStati();
     $arr = AenderungsantragKommentar::model()->with(array("aenderungsantrag" => array("condition" => "aenderungsantrag.status NOT IN (" . implode(", ", $unsichtbar) . ") AND aenderungsantrag.antrag_id IN (" . implode(", ", $antrag_ids) . ")")))->findAllByAttributes(array("status" => AenderungsantragKommentar::$STATUS_FREI), $condition);
     return $arr;
 }
示例#2
0
 /**
  * @param Veranstaltung $veranstaltung
  * @param int $limit
  * @return array|Antrag[]
  */
 public static function holeNeueste($veranstaltung, $limit = 5)
 {
     $oCriteria = new CDbCriteria();
     $oCriteria->alias = "antrag";
     $oCriteria->addCondition("antrag.veranstaltung_id = " . IntVal($veranstaltung->id));
     $unsichtbar = $veranstaltung->getAntragUnsichtbarStati();
     $unsichtbar[] = IAntrag::$STATUS_MODIFIZIERT;
     $oCriteria->addNotInCondition("antrag.status", $unsichtbar);
     $oCriteria->order = 'antrag.datum_einreichung DESC';
     $dataProvider = new CActiveDataProvider('Antrag', array('criteria' => $oCriteria, 'pagination' => array('pageSize' => IntVal($limit))));
     return $dataProvider->data;
 }
示例#3
0
 /**
  * @param Veranstaltung $veranstaltung
  * @param int $limit
  * @return array|AntragKommentar[]
  */
 public static function holeNeueste($veranstaltung, $limit = 0)
 {
     $condition = array("order" => "datum DESC");
     if ($limit > 0) {
         $condition["limit"] = $limit;
     }
     $unsichtbar = $veranstaltung->getAntragUnsichtbarStati();
     $arr = AntragKommentar::model()->with(array("antrag" => array("condition" => "antrag.status NOT IN (" . implode(", ", $unsichtbar) . ") AND antrag.veranstaltung_id = " . IntVal($veranstaltung->id))))->findAllByAttributes(array("status" => AntragKommentar::$STATUS_FREI), $condition);
     return $arr;
 }