public function run($args) { $TESTS_TITEL = [['input' => 'Welche Schäden hat der Aufbau des ?Cotton Club? verursacht?', 'korrigiert' => 'Welche Schäden hat der Aufbau des „Cotton Club“ verursacht?'], ['input' => 'Fortschreibung des Standortkonzepts "Kulturstrand" 2015 ff.', 'korrigiert' => 'Fortschreibung des Standortkonzepts „Kulturstrand“ 2015 ff.']]; $TESTS_DOKUMENT = [['input' => 'Neuer Titel', 'korrigiert' => 'Neuer Titel'], ['input' => 'Hinweis fuer Internet', 'korrigiert' => 'Hinweis für Internet']]; $allesok = true; foreach ($TESTS_TITEL as $test) { $korrektur = RISTools::korrigiereTitelZeichen($test["input"]); if ($korrektur != $test["korrigiert"]) { echo "Fehlerhaft:\n"; echo "- Input: " . $test["input"] . "\n"; echo "- Erwartet: " . $test["korrigiert"] . "\n"; echo "- Tatsächlich: " . $korrektur . "\n"; $allesok = false; } } foreach ($TESTS_DOKUMENT as $test) { $korrektur = RISTools::korrigiereDokumentenTitel($test["input"]); if ($korrektur != $test["korrigiert"]) { echo "Fehlerhaft:\n"; echo "- Input: " . $test["input"] . "\n"; echo "- Erwartet: " . $test["korrigiert"] . "\n"; echo "- Tatsächlich: " . $korrektur . "\n"; $allesok = false; } } if ($allesok) { echo "Alles Ok! 😁\n"; } }
/** * @param bool $kurzfassung * @return string */ public function getName($kurzfassung = false) { if ($kurzfassung) { $betreff = str_replace(["\n", "\r"], [" ", " "], $this->top_betreff); $x = explode(" Antrag Nr.", $betreff); return RISTools::korrigiereTitelZeichen($x[0]); } else { return RISTools::korrigiereTitelZeichen($this->top_betreff); } }
/** * @param bool $kurzfassung * @return string */ public function getName($kurzfassung = false) { $name = RISTools::korrigiereTitelZeichen($this->name); if ($name == " " || trim($name) == "") { return "fraktionslos"; } if ($kurzfassung) { if (in_array($this->id, [3339564, 2988265, 3312425])) { return "Bürgerliche Mitte"; } if ($this->id == 3312427) { return "Freiheitsrechte Transparenz Bürgerbeteiligung"; } if (in_array($this->id, [3312426, 1431959, 33])) { return "Die Grünen / RL"; } } return $name; }
public function actionFraktionantraege($fraktion_id, $limit = 30, $offset = 0) { Header("Content-Type: application/json; charset=UTF-8"); /** @var Fraktion $fraktion */ $fraktion = Fraktion::model()->findByPk($fraktion_id); $strIds = []; foreach ($fraktion->stadtraetInnenFraktionen as $strFrakt) { $strIds[] = $strFrakt->stadtraetIn_id; } $strIds = implode(", ", array_map("IntVal", $strIds)); $SQL = "SELECT a.id FROM antraege a JOIN antraege_stadtraetInnen b ON a.id = b.antrag_id " . "WHERE b.stadtraetIn_id IN ({$strIds}) GROUP BY a.id ORDER BY a.gestellt_am DESC"; if ($limit > 0 || $offset > 0) { $SQL .= " LIMIT " . IntVal($offset) . "," . IntVal($limit); } $antragIds = Yii::app()->db->createCommand($SQL)->queryAll(); $return = []; foreach ($antragIds as $antragId) { /** @var StadtraetInFraktion[] $strs */ $antrag = Antrag::model()->findByPk($antragId); $antragData = ['id' => IntVal($antrag->id), 'typ' => $antrag->antrag_typ, 'betreff' => RISTools::korrigiereTitelZeichen($antrag->betreff), 'gestellt_von' => $antrag->gestellt_von, 'gestellt_am' => $antrag->gestellt_am, 'erledigt_am' => $antrag->erledigt_am, 'bearbeitungsfrist' => $antrag->bearbeitungsfrist, 'registriert_am' => $antrag->registriert_am, 'fristverlaengerung' => $antrag->fristverlaengerung, 'referat' => $antrag->referat_id, 'referent' => $antrag->referent, 'antrags_nr' => $antrag->antrags_nr, 'status' => $antrag->status, 'stadtraetInnen' => [], 'initiatorInnen' => [], 'dokumente' => []]; foreach ($antrag->antraegePersonen as $person) { if ($person->person->stadtraetIn) { $arr = ['id' => $person->person->stadtraetIn->id, 'name' => $person->person->stadtraetIn->name]; } else { $arr = ['id' => null, 'name' => $person->person->name]; } if ($person->typ == AntragPerson::$TYP_GESTELLT_VON) { $antragData['stadtraetInnen'][] = $arr; } if ($person->typ == AntragPerson::$TYP_INITIATORIN) { $antragData['initiatorInnen'][] = $arr; } } foreach ($antrag->dokumente as $dokument) { $antragData['dokumente'][] = ['id' => IntVal($dokument->id), 'pdf' => $dokument->getOriginalLink(), 'datum' => $dokument->datum_dokument, 'titel' => $dokument->name_title]; } $return[] = $antragData; } echo json_encode($return); Yii::app()->end(); }
/** * @param Solarium\QueryType\Update\Query\Query $update */ private function solrIndex_antrag_do($update) { if (!$this->antrag) { return; } $max_datum = ""; /** @var RISSolrDocument $doc */ $doc = $update->createDocument(); $doc->id = "Document:" . $this->id; $doc->text = RISSolrHelper::string_cleanup(RISTools::korrigiereTitelZeichen($this->antrag->betreff) . " " . $this->text_pdf); $doc->text_ocr = RISSolrHelper::string_cleanup($this->text_ocr_corrected); $doc->dokument_name = RISSolrHelper::string_cleanup($this->name); $doc->dokument_url = $this->url; $doc->antrag_nr = $this->antrag->antrags_nr; $doc->antrag_wahlperiode = $this->antrag->wahlperiode; $doc->antrag_typ = $this->antrag->typ; $doc->antrag_ba = $this->antrag->ba_nr; $doc->antrag_id = $this->antrag->id; $doc->antrag_betreff = RISSolrHelper::string_cleanup($this->antrag->betreff); $doc->referat_id = $this->antrag->referat_id; $antrag_erstellt = $aenderungs_datum = []; if (preg_match("/^[0-9]{4}\\-[0-9]{2}\\-[0-9]{2}\$/", $this->antrag->gestellt_am)) { $antrag_erstellt[] = RISSolrHelper::mysql2solrDate($this->antrag->gestellt_am . " 12:00:00"); $aenderungs_datum[] = RISSolrHelper::mysql2solrDate($this->antrag->gestellt_am . " 12:00:00"); $max_datum = $this->antrag->gestellt_am . " 12:00:00"; } $geo = []; $dokument_bas = []; $dokument_bas[] = $this->antrag->ba_nr > 0 ? $this->antrag->ba_nr : 0; foreach ($this->orte as $ort) { if ($ort->ort->to_hide == 0) { $geo[] = $ort->ort->lat . "," . $ort->ort->lon; if ($ort->ort->ba_nr > 0 && !in_array($ort->ort->ba_nr, $dokument_bas)) { $dokument_bas[] = $ort->ort->ba_nr; } } } $doc->geo = $geo; $doc->dokument_bas = $dokument_bas; /** @var array|RISAenderung[] $aenderungen */ $aenderungen = RISAenderung::model()->findAllByAttributes(["ris_id" => $this->antrag_id], ["order" => "datum DESC"]); foreach ($aenderungen as $o) { $aenderungs_datum[] = RISSolrHelper::mysql2solrDate($o->datum); $max_datum = $o->datum; } $doc->antrag_erstellt = $antrag_erstellt; $doc->aenderungs_datum = $aenderungs_datum; $doc->antrag_gestellt_von = RISSolrHelper::string_cleanup($this->antrag->gestellt_von . " " . $this->antrag->initiatorInnen); if ($max_datum != "") { $doc->sort_datum = RISSolrHelper::mysql2solrDate($max_datum); } $update->addDocuments([$doc]); }
$x = explode("Beschluss:", $dokument->text_pdf); if (count($x) > 1) { echo " (" . CHtml::encode(trim($x[1])) . ")"; } echo "</li>\n"; } foreach ($antraege as $ant) { if (is_object($ant)) { /** @var Antrag $ant */ if (in_array($ant->id, $antrag_ids)) { continue; } $antrag_ids[] = $ant->id; echo "<li>Verwandter Antrag: " . CHtml::link($ant->getName(true), $ant->getLink()) . "</li>\n"; } else { echo "<li>Verwandter Antrag: " . CHtml::encode(RISTools::korrigiereTitelZeichen($ant)) . "</li>\n"; } } echo "</ul>"; } echo "</li>"; $geo = $ergebnis->get_geo(); foreach ($geo as $g) { $geodata[] = array(FloatVal($g->lat), FloatVal($g->lon), $ergebnis->top_nr . ": " . $ergebnis->getName(true)); } } ?> </ol> <script> $(function () { var geodata = <?php
/** * @param bool $kurzfassung * @return string */ public function getName($kurzfassung = false) { if ($kurzfassung) { $betreff = str_replace(["\n", "\r"], [" ", " "], $this->betreff); $x = explode(" Antrag Nr.", $betreff); $x = explode(" Änderungsantrag ", $x[0]); $x = explode("<strong>Antrag: </strong>", $x[0]); $x = explode(" Empfehlung Nr.", $x[0]); $x = explode(" BA-Antrags-", $x[0]); return RISTools::korrigiereTitelZeichen($x[0]); } else { return RISTools::korrigiereTitelZeichen($this->betreff); } }