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 $langfassung * @return string */ public function getName($langfassung = false) { $name = RISTools::korrigiereDokumentenTitel($this->name); $name_titel = RISTools::korrigiereDokumentenTitel($this->name_title); if ($langfassung) { if ($name == "Deckblatt VV") { return "Deckblatt (Vollversammlung)"; } } else { $name = preg_replace("/^[ 0-9\\.]{6,8}/siu", "", $name); if ($name_titel == "Antwortschreiben") { return "Antwortschreiben"; } if (preg_match("/^Antwortschreiben .*/siu", $name_titel)) { return "Antwortschreiben"; } if (preg_match("/^Antwort \\d{2}\\-/siu", $name_titel)) { return "Antwortschreiben"; } if (strlen($name) > 255) { if ($name_titel == "Antwortschreiben") { return "Antwortschreiben"; } if (preg_match("/^Antwortschreiben .*/siu", $name_titel)) { return "Antwortschreiben"; } if (preg_match("/^Antwort \\d{2}\\-/siu", $name_titel)) { return "Antwortschreiben"; } return "Dokument"; } if (strlen($name) > 20 && $this->antrag && strlen($this->antrag->getName()) <= 255 && levenshtein($name, $this->antrag->getName()) < 4) { return "Dokument"; } $name = preg_replace("/ Nr\\. [0-9-]{5} \\/ [A-Z] [0-9]+\$/siu", "", $name); if (preg_match("/^Antwortschreiben .*/siu", $name)) { return "Antwortschreiben"; } if (preg_match("/^Antwort \\d{2}\\-/siu", $name)) { return "Antwortschreiben"; } } return $name; }