Exemplo n.º 1
0
 /**
  * Update a list of Orden entities
  */
 public function updateListAction()
 {
     if ($this->request->hasArgument('data')) {
         $ordenlist = $this->request->getArgument('data');
     }
     if (empty($ordenlist)) {
         $this->throwStatus(400, 'Required data arguemnts not provided', null);
     }
     foreach ($ordenlist as $uuid => $orden) {
         if (isset($uuid) && !empty($uuid)) {
             $ordenObj = $this->ordenRepository->findByIdentifier($uuid);
             $ordenObj->setOrden($orden['orden']);
             $ordenObj->setOrdo($orden['ordo']);
             $ordenObj->setSymbol($orden['symbol']);
             $ordenObj->setGraphik($orden['graphik']);
             $ordenstypUUID = $orden['ordenstyp'];
             $ordenstyp = $this->ordenstypRepository->findByIdentifier($ordenstypUUID);
             $ordenObj->setOrdenstyp($ordenstyp);
         } else {
             $this->throwStatus(400, 'Required uUID not provided', null);
         }
         $this->ordenRepository->update($ordenObj);
     }
     $this->persistenceManager->persistAll();
     $this->throwStatus(200, null, null);
 }
Exemplo n.º 2
0
 /**
  * Delete an Ordenstyp entity
  */
 public function deleteAction()
 {
     if ($this->request->hasArgument('uUID')) {
         $uuid = $this->request->getArgument('uUID');
     }
     if (empty($uuid)) {
         $this->throwStatus(400, 'Required uUID not provided', null);
     }
     $ordens = count($this->ordenRepository->findByOrdenstyp($uuid));
     if ($ordens == 0) {
         $ordenstypObj = $this->ordenstypRepository->findByIdentifier($uuid);
         if (!is_object($ordenstypObj)) {
             $this->throwStatus(400, 'Entity Ordenstyp not available', null);
         }
         $this->ordenstypRepository->remove($ordenstypObj);
         $this->throwStatus(200, null, null);
     } else {
         $this->throwStatus(400, 'Due to dependencies Ordenstyp entity could not be deleted', null);
     }
 }
 /**
  * @return array $reponse The list of all Kloster in json format
  */
 public function klosterListAllAction()
 {
     if ($this->personen === null) {
         $this->logger->log('Personendatenbank ist nicht verfügbar.');
         exit;
     }
     $this->klosterRepository->setDefaultOrderings(['uid' => \TYPO3\Flow\Persistence\QueryInterface::ORDER_ASCENDING]);
     $klosters = $this->klosterRepository->findAll();
     if (!empty($klosters)) {
         $klosterArr = [];
         $klosterstandorte = [];
         $klosterorden = [];
         $standort_ordenArr = [];
         foreach ($klosters as $k => $kloster) {
             $sql_uid = $kloster->getUid();
             $klosterArr[$k]['sql_uid'] = $sql_uid;
             $kloster_id = $kloster->getKloster_id();
             $klosterArr[$k]['kloster_id'] = $kloster_id;
             $klosterName = $kloster->getKloster();
             $klosterArr[$k]['kloster'] = $klosterName;
             $patrozinium = $kloster->getPatrozinium();
             $klosterArr[$k]['patrozinium'] = $patrozinium;
             $bemerkung_kloster = $kloster->getBemerkung();
             $klosterArr[$k]['bemerkung_kloster'] = $bemerkung_kloster;
             $text_gs_band = $kloster->getText_gs_band();
             $klosterArr[$k]['text_gs_band'] = $text_gs_band;
             $band_seite = $kloster->getBand_seite();
             $klosterArr[$k]['band_seite'] = $band_seite;
             /** @var \Subugoe\GermaniaSacra\Domain\Model\Bearbeitungsstatus $bearbeitungsstatusObj */
             $bearbeitungsstatusObj = $kloster->getBearbeitungsstatus();
             $bearbeitungsstatus = $bearbeitungsstatusObj->getName();
             $klosterArr[$k]['bearbeitungsstatus'] = $bearbeitungsstatus;
             /** @var \Subugoe\GermaniaSacra\Domain\Model\Personallistenstatus $personallistenstatusObj */
             $personallistenstatusObj = $kloster->getPersonallistenstatus();
             $personallistenstatus = $personallistenstatusObj->getName();
             $klosterArr[$k]['personallistenstatus'] = $personallistenstatus;
             $klosterArr[$k]['typ'] = 'kloster';
             $klosterArr[$k]['id'] = (string) $kloster->getKloster_id();
             /** @var \Subugoe\GermaniaSacra\Domain\Model\Band $band */
             $band = $kloster->getBand();
             if (is_object($band) && $band->getNummer() !== 'keine Angabe') {
                 $klosterArr[$k]['band_id'] = $band->getUid();
                 $klosterArr[$k]['band_nummer'] = $band->getNummer();
                 $klosterArr[$k]['band_titel'] = $band->getTitel();
                 $klosterArr[$k]['band_kurztitel'] = $band->getKurztitel();
                 $klosterArr[$k]['band_sortierung'] = $band->getSortierung();
                 $bandSortName = str_pad($band->getSortierung(), 4, "0", STR_PAD_LEFT) . '####' . $band->getNummer() . ' ' . $band->getKurztitel();
                 $klosterArr[$k]['band_facet'][] = $bandSortName;
                 $klosterArr[$k]['band_facet'][] = 'hat_band';
                 $band_facet = $klosterArr[$k]['band_facet'];
                 $bandHasUrls = $band->getBandHasUrls();
                 foreach ($bandHasUrls as $bandHasUrl) {
                     /** @var \Subugoe\GermaniaSacra\Domain\Model\Url $urlObj */
                     $urlObj = $bandHasUrl->getUrl();
                     $bandUrl = $urlObj->getUrl();
                     $urlTypObj = $urlObj->getUrltyp();
                     $urlTyp = trim($urlTypObj->getName());
                     if ($urlTyp == "Handle") {
                         $klosterArr[$k]['band_url'] = $bandUrl;
                     }
                     if ($urlTyp == "Findpage") {
                         $klosterArr[$k]['band_url_seitengenau'] = $bandUrl;
                     }
                 }
             }
             $klosterHasUrls = $kloster->getKlosterHasUrls();
             if (isset($klosterHasUrls) && !empty($klosterHasUrls)) {
                 foreach ($klosterHasUrls as $klosterHasUrl) {
                     /** @var \Subugoe\GermaniaSacra\Domain\Model\Url $urlObj */
                     $urlObj = $klosterHasUrl->getUrl();
                     $klosterUrl = $urlObj->getUrl();
                     if ($klosterUrl !== 'keine Angabe') {
                         $urlTypObj = $urlObj->getUrltyp();
                         $urlTyp = $urlTypObj->getName();
                         if ($urlTyp == "Wikipedia") {
                             $url_wikipedia = rawurldecode($klosterUrl);
                             $klosterArr[$k]['url_wikipedia'] = $url_wikipedia;
                         } elseif ($urlTyp == "Quelle") {
                             $url_quelle = rawurldecode($klosterUrl);
                             $klosterArr[$k]['url_quelle'] = $url_quelle;
                             $url_quelle_titel = $urlObj->getBemerkung();
                             $klosterArr[$k]['url_quelle_titel'] = $url_quelle_titel;
                         } else {
                             $url = rawurldecode($klosterUrl);
                             $klosterArr[$k]['url'] = $url;
                             $url_bemerkung = $urlObj->getBemerkung();
                             $klosterArr[$k]['url_bemerkung'] = $url_bemerkung;
                             $klosterArr[$k]['url_typ'] = $urlTyp;
                             $url_relation = 'kloster';
                             $klosterArr[$k]['url_relation'] = $url_relation;
                         }
                         if ($urlTyp == "GND") {
                             $components = explode("/gnd/", $klosterUrl);
                             if (count($components) > 1) {
                                 $gnd = $components[1];
                                 $klosterArr[$k]['gnd'] = $gnd;
                             }
                         }
                     }
                 }
             }
             $klosterHasLiteraturs = $kloster->getKlosterHasLiteraturs();
             $citekey = [];
             $beschreibung = [];
             foreach ($klosterHasLiteraturs as $l => $klosterHasLiteratur) {
                 $literaturObj = $klosterHasLiteratur->getLiteratur();
                 $ck = $literaturObj->getCitekey();
                 if (!empty($ck)) {
                     $citekey[] = $ck;
                     $klosterArr[$k]['literatur_citekey'][$l] = $ck;
                 } else {
                     $klosterArr[$k]['literatur_citekey'][$l] = '';
                 }
                 $be = $literaturObj->getBeschreibung();
                 if (!empty($be)) {
                     $beschreibung[] = $be;
                     $klosterArr[$k]['literatur_beschreibung'][$l] = $be;
                 } else {
                     $klosterArr[$k]['literatur_beschreibung'][$l] = '';
                 }
             }
             $standortuidArr = [];
             $koordinatenArr = [];
             $koordinaten_institutionengenauArr = [];
             $gruenderArr = [];
             $von_vonArr = [];
             $von_bisArr = [];
             $von_verbalArr = [];
             $vonArr = [];
             $bis_vonArr = [];
             $bis_bisArr = [];
             $bis_verbalArr = [];
             $bisArr = [];
             $ortArr = [];
             $ortuidArr = [];
             $wuestungArr = [];
             $landArr = [];
             $ist_in_deutschlandArr = [];
             $bistumuidArr = [];
             $bistumArr = [];
             $kirchenprovinzArr = [];
             $ist_erzbistumArr = [];
             $bemerkung_standortArr = [];
             $kloster_standort_jahr50 = [];
             $start = self::MIN_YEAR;
             $klosterstandorts = $kloster->getKlosterstandorts();
             foreach ($klosterstandorts as $i => $klosterstandort) {
                 /** @var /** @var \Subugoe\GermaniaSacra\Domain\Model\Ort $ortObj */
                 $ortObj = $klosterstandort->getOrt();
                 if (is_object($ortObj)) {
                     $standortuid = $klosterstandort->getUid();
                     if (!empty($standortuid)) {
                         $standortuidArr[] = $standortuid;
                         $klosterstandorte[$k][$i]['id'] = 'kloster-standort-' . $standortuid;
                     }
                     $klosterstandorte[$k][$i]['sql_uid'] = $kloster_id;
                     $klosterstandorte[$k][$i]['kloster_id'] = $kloster_id;
                     $klosterstandorte[$k][$i]['typ'] = 'kloster-standort';
                     $breite = $klosterstandort->getBreite();
                     $laenge = $klosterstandort->getLaenge();
                     if (!empty($breite) && !empty($laenge)) {
                         $koordinatenArr[] = $breite . "," . $laenge;
                         $koordinaten_institutionengenauArr[] = true;
                         $klosterstandorte[$k][$i]['koordinaten_institutionengenau'] = true;
                     } else {
                         $ortObj = $klosterstandort->getOrt();
                         $breite = $ortObj->getBreite();
                         $laenge = $ortObj->getLaenge();
                         $koordinatenArr[] = $breite . "," . $laenge;
                         $koordinaten_institutionengenauArr[] = false;
                         $klosterstandorte[$k][$i]['koordinaten_institutionengenau'] = false;
                     }
                     $klosterstandorte[$k][$i]['koordinaten'] = $breite . "," . $laenge;
                     $bemerkung_standort = $klosterstandort->getBemerkung_standort();
                     if (!empty($bemerkung_standort)) {
                         $bemerkung_standortArr[] = $bemerkung_standort;
                         $klosterstandorte[$k][$i]['bemerkung_standort'] = $bemerkung_standort;
                     } else {
                         $bemerkung_standortArr[] = '';
                         $klosterstandorte[$k][$i]['bemerkung_standort'] = '';
                     }
                     unset($bemerkung_standort);
                     $gruender = $klosterstandort->getGruender();
                     if (!empty($gruender)) {
                         $gruenderArr[] = $gruender;
                         $klosterstandorte[$k][$i]['gruender'] = $gruender;
                     } else {
                         $klosterstandorte[$k][$i]['gruender'] = '';
                     }
                     $von_von = $klosterstandort->getVon_von();
                     if (!empty($von_von)) {
                         $von_vonArr[] = $von_von;
                     }
                     $von_bis = $klosterstandort->getVon_bis();
                     if (!empty($von_bis)) {
                         $von_bisArr[] = $von_bis;
                     } else {
                         if (!empty($von_von)) {
                             $von_bisArr[] = $von_von;
                             $von_bis = $von_von;
                         } else {
                             $von_vonArr[] = self::DISTANT_PAST;
                             $von_von = self::DISTANT_PAST;
                             $von_bisArr[] = self::DISTANT_PAST;
                             $von_bis = self::DISTANT_PAST;
                         }
                     }
                     $von_verbal = $klosterstandort->getVon_verbal();
                     if (!empty($von_verbal)) {
                         $von_verbalArr[] = $von_verbal;
                     } else {
                         if (!empty($von_von)) {
                             if ($von_von != self::DISTANT_PAST && $von_von != self::DISTANT_FUTURE) {
                                 $von_verbalArr[] = (string) $von_von;
                                 $von_verbal = (string) $von_von;
                             } else {
                                 $von_verbalArr[] = '';
                                 $von_verbal = '';
                             }
                         } else {
                             $von_verbalArr[] = '';
                             $von_verbal = '';
                         }
                     }
                     $vonArr[] = intval($von_von);
                     $klosterstandorte[$k][$i]['standort_von_von'] = $von_von;
                     $klosterstandorte[$k][$i]['standort_von_bis'] = $von_bis;
                     if (!empty($von_verbal)) {
                         $klosterstandorte[$k][$i]['standort_von_verbal'] = $von_verbal;
                     } else {
                         $klosterstandorte[$k][$i]['standort_von_verbal'] = '';
                     }
                     $bis_von = $klosterstandort->getBis_von();
                     $bis_bis = $klosterstandort->getBis_bis();
                     if (!empty($bis_von)) {
                         $bis_vonArr[] = $bis_von;
                         if (empty($bis_bis)) {
                             $bis_bis = $bis_von;
                             $bis_bisArr[] = $bis_von;
                         } else {
                             $bis_bisArr[] = $bis_bis;
                         }
                     } else {
                         if (!empty($bis_bis)) {
                             $bis_vonArr[] = $von_von;
                             $bis_von = $von_von;
                         } else {
                             $bis_vonArr[] = self::DISTANT_PAST;
                             $bis_bisArr[] = self::DISTANT_FUTURE;
                             $bis_von = self::DISTANT_PAST;
                             $bis_bis = self::DISTANT_FUTURE;
                         }
                     }
                     $bis_verbal = $klosterstandort->getBis_verbal();
                     if (!empty($bis_verbal)) {
                         $bis_verbalArr[] = $bis_verbal;
                     } else {
                         if (!empty($bis_von)) {
                             if ($bis_von != self::DISTANT_PAST && $bis_von != self::DISTANT_FUTURE) {
                                 if ($von_von != $bis_von) {
                                     $bis_verbalArr[] = (string) $bis_von;
                                     $bis_verbal = (string) $bis_von;
                                 }
                             } else {
                                 $bis_verbalArr[] = '';
                                 $bis_verbal = '';
                             }
                         } else {
                             $bis_verbalArr[] = '';
                             $bis_verbal = '';
                         }
                     }
                     $bisArr[] = intval($bis_bis);
                     $klosterstandorte[$k][$i]['standort_bis_von'] = $bis_von;
                     $klosterstandorte[$k][$i]['standort_bis_bis'] = $bis_bis;
                     if (!empty($bis_verbal)) {
                         $klosterstandorte[$k][$i]['standort_bis_verbal'] = $bis_verbal;
                     } else {
                         $klosterstandorte[$k][$i]['standort_bis_verbal'] = '';
                     }
                     $ortObj = $klosterstandort->getOrt();
                     if (is_object($ortObj)) {
                         $klosterstandorte[$k][$i]['ort'] = $ortObj->getOrt();
                         $klosterstandorte[$k][$i]['wuestung'] = $ortObj->getWuestung();
                         $ort = $ortObj->getOrt();
                         if (!empty($ort)) {
                             $ortArr[] = $ort;
                             $klosterstandorte[$k][$i]['ort'] = $ort;
                         }
                         $ortuid = $ortObj->getUid();
                         if (!empty($ortuid)) {
                             $ortuidArr[] = $ortuid;
                             $klosterstandorte[$k][$i]['ort_uid'] = $ortuid;
                         }
                         $wuestung = $ortObj->getWuestung();
                         if ($wuestung) {
                             $wuestungArr[] = $wuestung;
                             $klosterstandorte[$k][$i]['wuestung'] = $wuestung;
                         } else {
                             $wuestungArr[] = '';
                             $klosterstandorte[$k][$i]['wuestung'] = '';
                         }
                         $landObj = $ortObj->getLand();
                         if (is_object($landObj)) {
                             $land = $landObj->getLand();
                             if (!empty($land)) {
                                 $landArr[] = $land;
                                 $klosterstandorte[$k][$i]['land'] = $land;
                             }
                             $ist_in_deutschland = $landObj->getIst_in_deutschland();
                             if (!empty($ist_in_deutschland)) {
                                 $ist_in_deutschlandArr[] = $ist_in_deutschland;
                                 $klosterstandorte[$k][$i]['ist_in_deutschland'] = $ist_in_deutschland;
                             }
                             $ortGeonameArr = [];
                             $ortUrls = $ortObj->getOrtHasUrls();
                             foreach ($ortUrls as $ortUrl) {
                                 $ortUrlObj = $ortUrl->getUrl();
                                 $ortUrl = $ortUrlObj->getUrl();
                                 $ortUrlTypObj = $ortUrlObj->getUrltyp();
                                 $ortUrlTyp = $ortUrlTypObj->getName();
                                 if ($ortUrlTyp == "Geonames") {
                                     $geoname = explode('geonames.org/', $ortUrl)[1];
                                     $ortGeonameArr[] = $geoname;
                                     $klosterstandorte[$k][$i]['geonames'] = $geoname;
                                 }
                             }
                         }
                         $bistumObj = $ortObj->getBistum();
                         if (is_object($bistumObj) && $bistumObj->getBistum() !== 'keine Angabe') {
                             $bistumuid = $bistumObj->getUid();
                             $bistumuidArr[] = $bistumuid;
                             $klosterstandorte[$k][$i]['bistum_uid'] = $bistumuid;
                             $bistum = $bistumObj->getBistum();
                             if (!empty($bistum)) {
                                 $bistumArr[] = $bistum;
                                 $klosterstandorte[$k][$i]['bistum'] = $bistum;
                             } else {
                                 $bistumArr[] = '';
                                 $klosterstandorte[$k][$i]['bistum'] = '';
                             }
                             $kirchenprovinz = $bistumObj->getKirchenprovinz();
                             $kirchenprovinzArr[] = $kirchenprovinz;
                             $klosterstandorte[$k][$i]['kirchenprovinz'] = $kirchenprovinz;
                             $ist_erzbistum = $bistumObj->getIst_erzbistum();
                             if ($ist_erzbistum) {
                                 $ist_erzbistumArr[] = $ist_erzbistum;
                                 $klosterstandorte[$k][$i]['ist_erzbistum'] = $ist_erzbistum;
                             } else {
                                 $ist_erzbistumArr[] = '';
                                 $klosterstandorte[$k][$i]['ist_erzbistum'] = '';
                             }
                             $bistumHasUrls = $bistumObj->getBistumHasUrls();
                             foreach ($bistumHasUrls as $bistumHasUrl) {
                                 $urlObj = $bistumHasUrl->getUrl();
                                 $bistumUrl = $urlObj->getUrl();
                                 $urlTypObj = $urlObj->getUrltyp();
                                 $urlTyp = $urlTypObj->getName();
                                 if ($urlTyp == "Wikipedia") {
                                     $klosterArr[$k]['bistum_wikipedia'] = rawurldecode($bistumUrl);
                                     $klosterstandorte[$k][$i]['bistum_wikipedia'] = rawurldecode($bistumUrl);
                                 } elseif ($urlTyp == "GND") {
                                     $components = explode("/gnd/", $bistumUrl);
                                     if (count($components) > 1) {
                                         $klosterArr[$k]['bistum_gnd'] = $components[1];
                                         $klosterstandorte[$k][$i]['bistum_gnd'] = $components[1];
                                     }
                                 }
                             }
                         } else {
                             $bistumArr[] = '';
                             $klosterstandorte[$k][$i]['bistum'] = '';
                             $ist_erzbistumArr[] = '';
                             $klosterstandorte[$k][$i]['ist_erzbistum'] = '';
                         }
                     }
                     $klosterstandort_von = intval($klosterstandorte[$k][$i]['standort_von_von']);
                     $klosterstandort_bis = intval($klosterstandorte[$k][$i]['standort_bis_bis']);
                     $standort_jahr50 = [];
                     $start = self::MIN_YEAR;
                     while ($start < self::MAX_YEAR) {
                         if ($klosterstandort_von < $start + self::YEAR_STEP && $start <= $klosterstandort_bis) {
                             $standort_jahr50[$start] = true;
                             $kloster_standort_jahr50[] = $start;
                         }
                         $start += self::YEAR_STEP;
                     }
                     if (is_array($standort_jahr50) && !empty($standort_jahr50)) {
                         $klosterstandorte[$k][$i]['standort_jahr50'] = array_keys($standort_jahr50);
                         $klosterstandorte[$k][$i]['jahr50'] = array_keys($standort_jahr50);
                     }
                     unset($standort_jahr50);
                 }
             }
             $ordenuidArr = [];
             $ordenArr = [];
             $ordenbemerkungArr = [];
             $ordoArr = [];
             $klosterstatusArr = [];
             $ordenstypArr = [];
             $ordengraphikArr = [];
             $ordensymbolArr = [];
             $ko_von_vonArr = [];
             $ko_von_bisArr = [];
             $ko_von_verbalArr = [];
             $ko_bis_vonArr = [];
             $ko_bis_bisArr = [];
             $ko_bis_verbalArr = [];
             $ordenFacetArr = [];
             $kloster_orden_jahr50 = [];
             $start = self::MIN_YEAR;
             $klosterordens = $kloster->getKlosterordens();
             foreach ($klosterordens as $i => $ko) {
                 $ordenuid = $ko->getUid();
                 $orden = $ko->getOrden();
                 $bemerkung = $ko->getBemerkung();
                 $ordenUUID = $orden->getUUID();
                 $ordenObj = $this->ordenRepository->findByIdentifier($ordenUUID);
                 $ordo = $ordenObj->getOrdo();
                 $ordenstyp = $ordenObj->getOrdenstyp();
                 $graphikdatei = explode('.png', $ordenObj->getGraphik());
                 $graphik = $graphikdatei[0];
                 $symbol = $ordenObj->getSymbol();
                 $klosterstatus = $ko->getKlosterstatus();
                 if (!empty($ordenuid)) {
                     $ordenuidArr[] = $ordenuid;
                     $klosterorden[$k][$i]['id'] = 'kloster-orden-' . $ordenuid;
                 }
                 if (!empty($orden)) {
                     $ordenArr[] = $orden;
                     $klosterorden[$k][$i]['orden'] = $orden;
                 }
                 if (!empty($bemerkung)) {
                     $ordenbemerkungArr[] = $bemerkung;
                     $klosterorden[$k][$i]['bemerkung_orden'] = $bemerkung;
                 }
                 if (!empty($ordo)) {
                     $ordoArr[] = $ordo;
                     $klosterorden[$k][$i]['orden_ordo'] = $ordo;
                 }
                 if (!empty($klosterstatus)) {
                     $klosterstatusArr[] = $klosterstatus;
                     $klosterorden[$k][$i]['kloster_status'] = $klosterstatus;
                 }
                 if (!empty($ordenstyp)) {
                     $ordenstypArr[] = $ordenstyp;
                     $klosterorden[$k][$i]['orden_typ'] = $ordenstyp;
                 }
                 if (!empty($graphik)) {
                     $ordengraphikArr[] = $graphik;
                     $klosterorden[$k][$i]['orden_graphik'] = $graphik;
                 }
                 if (!empty($symbol)) {
                     $ordensymbolArr[] = $symbol;
                     $klosterorden[$k][$i]['orden_symbol'] = $symbol;
                 }
                 $klosterorden[$k][$i]['kloster_id'] = $kloster_id;
                 $klosterorden[$k][$i]['typ'] = 'kloster-orden';
                 $klosterorden[$k][$i]['sql_uid'] = $ordenuid;
                 if (isset($orden) && $orden != 'evangelisches Kloster/Stift' && $orden != 'Reformiertes Stift (calvinistisch)') {
                     $klosterorden[$k][$i]['orden_facet'] = $orden;
                     $ordenFacetArr[] = $orden;
                 }
                 $ko_von_von = $ko->getVon_von();
                 if (!empty($ko_von_von)) {
                     $ko_von_vonArr[] = $ko_von_von;
                 }
                 $ko_von_bis = $ko->getVon_bis();
                 if (!empty($ko_von_bis)) {
                     $ko_von_bisArr[] = $ko_von_bis;
                 } else {
                     if (!empty($ko_von_von)) {
                         $ko_von_bisArr[] = $ko_von_von;
                         $ko_von_bis = $ko_von_von;
                     } else {
                         $ko_von_vonArr[] = self::DISTANT_PAST;
                         $ko_von_von = self::DISTANT_PAST;
                         $ko_von_bisArr[] = self::DISTANT_PAST;
                         $ko_von_bis = self::DISTANT_PAST;
                     }
                 }
                 $ko_von_verbal = $ko->getVon_verbal();
                 if (!empty($ko_von_verbal)) {
                     $ko_von_verbalArr[] = $ko_von_verbal;
                 } else {
                     if (!empty($ko_von_von)) {
                         if ($ko_von_von != self::DISTANT_PAST && $ko_von_von != self::DISTANT_FUTURE) {
                             $ko_von_verbalArr[] = (string) $ko_von_von;
                             $ko_von_verbal = (string) $ko_von_von;
                         } else {
                             $ko_von_verbalArr[] = '';
                             $ko_von_verbal = '';
                         }
                     } else {
                         $ko_von_verbalArr[] = '';
                         $ko_von_verbal = '';
                     }
                 }
                 $klosterorden[$k][$i]['orden_von_von'] = $ko_von_von;
                 $klosterorden[$k][$i]['orden_von_bis'] = $ko_von_bis;
                 if (!empty($ko_von_verbal)) {
                     $klosterorden[$k][$i]['orden_von_verbal'] = $ko_von_verbal;
                 } else {
                     $klosterorden[$k][$i]['orden_von_verbal'] = '';
                 }
                 $ko_bis_von = $ko->getBis_von();
                 $ko_bis_bis = $ko->getBis_bis();
                 if (!empty($ko_bis_von)) {
                     $ko_bis_vonArr[] = $ko_bis_von;
                     if (empty($ko_bis_bis)) {
                         $ko_bis_bis = $ko_bis_von;
                         $ko_bis_bisArr[] = $ko_bis_von;
                     } else {
                         $ko_bis_bisArr[] = $ko_bis_bis;
                     }
                 } else {
                     if (!empty($ko_bis_bis)) {
                         $ko_bis_vonArr[] = $ko_von_von;
                         $ko_bis_von = $ko_von_von;
                     } else {
                         $ko_bis_vonArr[] = self::DISTANT_PAST;
                         $ko_bis_bisArr[] = self::DISTANT_FUTURE;
                         $ko_bis_von = self::DISTANT_PAST;
                         $ko_bis_bis = self::DISTANT_FUTURE;
                     }
                 }
                 $ko_bis_verbal = $ko->getBis_verbal();
                 if (!empty($ko_bis_verbal)) {
                     $ko_bis_verbalArr[] = $ko_bis_verbal;
                 } else {
                     if (!empty($ko_bis_von)) {
                         if ($ko_bis_von != self::DISTANT_PAST && $ko_bis_von != self::DISTANT_FUTURE) {
                             $ko_bis_verbalArr[] = (string) $ko_bis_von;
                             $ko_bis_verbal = (string) $ko_bis_von;
                         } else {
                             $ko_bis_verbalArr[] = '';
                             $ko_bis_verbal = '';
                         }
                     } else {
                         $ko_bis_verbalArr[] = '';
                         $ko_bis_verbal = '';
                     }
                 }
                 $klosterorden[$k][$i]['orden_bis_von'] = $ko_bis_von;
                 $klosterorden[$k][$i]['orden_bis_bis'] = $ko_bis_bis;
                 if (!empty($ko_bis_verbal)) {
                     $klosterorden[$k][$i]['orden_bis_verbal'] = $ko_bis_verbal;
                 } else {
                     $klosterorden[$k][$i]['orden_bis_verbal'] = '';
                 }
                 $ordengndArr = [];
                 $ordenwikipediaArr = [];
                 $ordenHasUrls = $ordenObj->getOrdenHasUrls();
                 foreach ($ordenHasUrls as $ordenHasUrl) {
                     $urlObj = $ordenHasUrl->getUrl();
                     $ordenUrl = $urlObj->getUrl();
                     $urlTypObj = $urlObj->getUrltyp();
                     $urlTyp = $urlTypObj->getName();
                     if ($urlTyp == "Wikipedia") {
                         $ordenwikipediaArr[] = rawurldecode($ordenUrl);
                         $klosterorden[$k][$i]['orden_wikipedia'] = rawurldecode($ordenUrl);
                     } elseif ($urlTyp == "GND") {
                         $components = explode("/gnd/", $ordenUrl);
                         if (count($components) > 1) {
                             $ordengndArr[] = $components[1];
                             $klosterorden[$k][$i]['orden_gnd'] = $components[1];
                         }
                     }
                 }
                 $klosterorden_von = intval($klosterorden[$k][$i]['orden_von_von']);
                 $klosterorden_bis = intval($klosterorden[$k][$i]['orden_bis_bis']);
                 $orden_jahr50 = [];
                 $start = self::MIN_YEAR;
                 while ($start < self::MAX_YEAR) {
                     if ($klosterorden_von < $start + self::YEAR_STEP && $start <= $klosterorden_bis) {
                         $orden_jahr50[$start] = true;
                         $kloster_orden_jahr50[] = $start;
                     }
                     $start += self::YEAR_STEP;
                 }
                 if (is_array($orden_jahr50) && !empty($orden_jahr50)) {
                     $klosterorden[$k][$i]['orden_jahr50'] = array_keys($orden_jahr50);
                     $klosterorden[$k][$i]['jahr50'] = array_keys($orden_jahr50);
                 }
                 unset($orden_jahr50);
             }
             if (array_key_exists($sql_uid, $this->personen)) {
                 $personenArr = $this->personen[$sql_uid];
                 $person_nameArr = [];
                 $person_namensalternativenArr = [];
                 $person_gsoArr = [];
                 $person_gndArr = [];
                 $person_bezeichnungArr = [];
                 $person_bezeichnung_pluralArr = [];
                 $person_anmerkungArr = [];
                 $person_von_verbalArr = [];
                 $person_vonArr = [];
                 $person_bis_verbalArr = [];
                 $person_bisArr = [];
                 $person_office_idArr = [];
                 foreach ($personenArr as $value) {
                     $person_nameArr[] = (string) $value['person_name'];
                     $person_namensalternativenArr[] = (string) $value['person_namensalternativen'];
                     $person_gsoArr[] = (string) $value['person_gso'];
                     $person_gndArr[] = (string) $value['person_gnd'];
                     $person_bezeichnungArr[] = (string) $value['person_bezeichnung'];
                     $person_bezeichnung_pluralArr[] = (string) $value['person_bezeichnung_plural'];
                     $person_anmerkungArr[] = (string) $value['person_anmerkung'];
                     $person_von_verbalArr[] = (string) $value['person_von_verbal'];
                     $person_vonArr[] = intval($value['person_von']);
                     $person_bis_verbalArr[] = (string) $value['person_bis_verbal'];
                     $person_bisArr[] = intval($value['person_bis']);
                     $person_office_idArr[] = (string) $value['person_office_id'];
                 }
             }
             $standortOrdenCount = 1;
             if (isset($klosterorden[$k])) {
                 foreach ($klosterorden[$k] as $m => $myorden) {
                     if (isset($klosterstandorte[$k])) {
                         foreach ($klosterstandorte[$k] as $n => $mystandort) {
                             if ($myorden['orden_von_von'] <= $mystandort['standort_bis_bis'] && $mystandort['standort_von_von'] <= $myorden['orden_bis_bis']) {
                                 $standort_ordenArr[$k][$m][$n]['kloster_id'] = (string) $sql_uid;
                                 $standort_ordenArr[$k][$m][$n]['id'] = 'standort-orden-' . (string) $sql_uid . '-' . (string) $standortOrdenCount;
                                 $standort_ordenArr[$k][$m][$n]['sql_uid'] = (string) $sql_uid;
                                 $standort_ordenArr[$k][$m][$n]['typ'] = 'standort-orden';
                                 $standort_ordenArr[$k][$m][$n]['patrozinium'] = $patrozinium;
                                 $standort_ordenArr[$k][$m][$n]['kloster'] = $kloster;
                                 $standort_ordenArr[$k][$m][$n]['bemerkung_kloster'] = $bemerkung_kloster;
                                 $standort_ordenArr[$k][$m][$n]['text_gs_band'] = $text_gs_band;
                                 $standort_ordenArr[$k][$m][$n]['band_seite'] = $band_seite;
                                 if (isset($band_facet) && !empty($band_facet)) {
                                     $standort_ordenArr[$k][$m][$n]['band_facet'] = $band_facet;
                                 }
                                 $standort_ordenArr[$k][$m][$n]['bearbeitungsstatus'] = $bearbeitungsstatus;
                                 $standort_ordenArr[$k][$m][$n]['personallistenstatus'] = $personallistenstatus;
                                 $standort_ordenArr[$k][$m][$n]['koordinaten'] = $mystandort['koordinaten'];
                                 $standort_ordenArr[$k][$m][$n]['koordinaten_institutionengenau'] = $mystandort['koordinaten_institutionengenau'];
                                 $standort_ordenArr[$k][$m][$n]['standort_von_von'] = $mystandort['standort_von_von'];
                                 $standort_ordenArr[$k][$m][$n]['standort_von_bis'] = $mystandort['standort_von_bis'];
                                 if (!empty($mystandort['standort_von_verbal'])) {
                                     $standort_ordenArr[$k][$m][$n]['standort_von_verbal'] = $mystandort['standort_von_verbal'];
                                 } else {
                                     $standort_ordenArr[$k][$m][$n]['standort_von_verbal'] = '';
                                 }
                                 $standort_ordenArr[$k][$m][$n]['standort_bis_von'] = $mystandort['standort_bis_von'];
                                 $standort_ordenArr[$k][$m][$n]['standort_bis_bis'] = $mystandort['standort_bis_bis'];
                                 if (!empty($mystandort['standort_bis_verbal'])) {
                                     $standort_ordenArr[$k][$m][$n]['standort_bis_verbal'] = $mystandort['standort_bis_verbal'];
                                 } else {
                                     $standort_ordenArr[$k][$m][$n]['standort_bis_verbal'] = '';
                                 }
                                 $standort_ordenArr[$k][$m][$n]['standort_uid'] = explode('-', $mystandort['id'])[2];
                                 if (!empty($mystandort['gruender'])) {
                                     $standort_ordenArr[$k][$m][$n]['gruender'] = $mystandort['gruender'];
                                 } else {
                                     $standort_ordenArr[$k][$m][$n]['gruender'] = '';
                                 }
                                 if (!empty($mystandort['bemerkung_standort'])) {
                                     $standort_ordenArr[$k][$m][$n]['bemerkung_standort'] = $mystandort['bemerkung_standort'];
                                 } else {
                                     $standort_ordenArr[$k][$m][$n]['bemerkung_standort'] = '';
                                 }
                                 if (!empty($mystandort['ort'])) {
                                     $standort_ordenArr[$k][$m][$n]['ort'] = $mystandort['ort'];
                                 }
                                 if (!empty($mystandort['land'])) {
                                     $standort_ordenArr[$k][$m][$n]['land'] = $mystandort['land'];
                                 }
                                 if (!empty($mystandort['ort_uid'])) {
                                     $standort_ordenArr[$k][$m][$n]['ort_uid'] = $mystandort['ort_uid'];
                                 }
                                 if (!empty($mystandort['ist_in_deutschland'])) {
                                     $standort_ordenArr[$k][$m][$n]['ist_in_deutschland'] = $mystandort['ist_in_deutschland'];
                                 }
                                 if (!empty($mystandort['geonames'])) {
                                     $standort_ordenArr[$k][$m][$n]['geonames'] = $mystandort['geonames'];
                                 }
                                 if (!empty($mystandort['wuestung'])) {
                                     $standort_ordenArr[$k][$m][$n]['wuestung'] = $mystandort['wuestung'];
                                 }
                                 if (!empty($mystandort['bistum'])) {
                                     $standort_ordenArr[$k][$m][$n]['bistum'] = $mystandort['bistum'];
                                 }
                                 if (!empty($mystandort['ist_erzbistum'])) {
                                     $standort_ordenArr[$k][$m][$n]['ist_erzbistum'] = $mystandort['ist_erzbistum'];
                                 } else {
                                     $standort_ordenArr[$k][$m][$n]['ist_erzbistum'] = '';
                                 }
                                 if (!empty($mystandort['bistum_gnd'])) {
                                     $standort_ordenArr[$k][$m][$n]['bistum_gnd'] = $mystandort['bistum_gnd'];
                                 }
                                 if (!empty($mystandort['bistum_wikipedia'])) {
                                     $standort_ordenArr[$k][$m][$n]['bistum_wikipedia'] = $mystandort['bistum_wikipedia'];
                                 }
                                 if (!empty($mystandort['bistum_uid'])) {
                                     $standort_ordenArr[$k][$m][$n]['bistum_uid'] = $mystandort['bistum_uid'];
                                 }
                                 if (!empty($mystandort['kirchenprovinz'])) {
                                     $standort_ordenArr[$k][$m][$n]['kirchenprovinz'] = $mystandort['kirchenprovinz'];
                                 }
                                 $standort_ordenArr[$k][$m][$n]['orden'] = $myorden['orden'];
                                 if (!empty($myorden['orden_ordo'])) {
                                     $standort_ordenArr[$k][$m][$n]['orden_ordo'] = $myorden['orden_ordo'];
                                 }
                                 $standort_ordenArr[$k][$m][$n]['orden_typ'] = $myorden['orden_typ'];
                                 if (isset($myorden['orden_facet']) && !empty($myorden['orden_facet'])) {
                                     $standort_ordenArr[$k][$m][$n]['orden_facet'] = $myorden['orden_facet'];
                                 }
                                 $standort_ordenArr[$k][$m][$n]['orden_von_von'] = $myorden['orden_von_von'];
                                 $standort_ordenArr[$k][$m][$n]['orden_von_bis'] = $myorden['orden_von_bis'];
                                 if (!empty($myorden['orden_von_verbal'])) {
                                     $standort_ordenArr[$k][$m][$n]['orden_von_verbal'] = $myorden['orden_von_verbal'];
                                 } else {
                                     $standort_ordenArr[$k][$m][$n]['orden_von_verbal'] = '';
                                 }
                                 $standort_ordenArr[$k][$m][$n]['orden_bis_von'] = $myorden['orden_bis_von'];
                                 $standort_ordenArr[$k][$m][$n]['orden_bis_bis'] = $myorden['orden_bis_bis'];
                                 if (!empty($myorden['orden_bis_verbal'])) {
                                     $standort_ordenArr[$k][$m][$n]['orden_bis_verbal'] = $myorden['orden_bis_verbal'];
                                 } else {
                                     $standort_ordenArr[$k][$m][$n]['orden_bis_verbal'] = '';
                                 }
                                 $standort_ordenArr[$k][$m][$n]['kloster_orden_uid'] = explode('-', $myorden['id'])[2];
                                 if (!empty($myorden['orden_gnd'])) {
                                     $standort_ordenArr[$k][$m][$n]['orden_gnd'] = $myorden['orden_gnd'];
                                 }
                                 if (!empty($myorden['orden_wikipedia'])) {
                                     $standort_ordenArr[$k][$m][$n]['orden_wikipedia'] = $myorden['orden_wikipedia'];
                                 }
                                 if (!empty($myorden['orden_graphik'])) {
                                     $standort_ordenArr[$k][$m][$n]['orden_graphik'] = $myorden['orden_graphik'];
                                 }
                                 if (!empty($myorden['orden_symbol'])) {
                                     $standort_ordenArr[$k][$m][$n]['orden_symbol'] = $myorden['orden_symbol'];
                                 }
                                 if (!empty($myorden['kloster_status'])) {
                                     $standort_ordenArr[$k][$m][$n]['kloster_status'] = $myorden['kloster_status'];
                                 }
                                 if (!empty($myorden['bemerkung_orden'])) {
                                     $standort_ordenArr[$k][$m][$n]['bemerkung_orden'] = $myorden['bemerkung_orden'];
                                 }
                                 if (!empty($klosterArr[$k]['literatur_citekey'])) {
                                     $standort_ordenArr[$k][$m][$n]['literatur_citekey'] = $klosterArr[$k]['literatur_citekey'];
                                 } else {
                                     $standort_ordenArr[$k][$m][$n]['literatur_citekey'] = '';
                                 }
                                 if (!empty($klosterArr[$k]['literatur_beschreibung'])) {
                                     $standort_ordenArr[$k][$m][$n]['literatur_beschreibung'] = $klosterArr[$k]['literatur_beschreibung'];
                                 } else {
                                     $standort_ordenArr[$k][$m][$n]['literatur_beschreibung'] = '';
                                 }
                                 if (!empty($url_wikipedia)) {
                                     $standort_ordenArr[$k][$m][$n]['url_wikipedia'] = $url_wikipedia;
                                 }
                                 if (!empty($url)) {
                                     $standort_ordenArr[$k][$m][$n]['url'] = $url;
                                     $standort_ordenArr[$k][$m][$n]['url_typ'] = $urlTyp;
                                     $standort_ordenArr[$k][$m][$n]['url_bemerkung'] = $url_bemerkung;
                                     $standort_ordenArr[$k][$m][$n]['url_relation'] = $url_relation;
                                 }
                                 if (!empty($url_quelle)) {
                                     $standort_ordenArr[$k][$m][$n]['url_quelle'] = $url_quelle;
                                     $standort_ordenArr[$k][$m][$n]['url_quelle_titel'] = $url_quelle_titel;
                                 }
                                 if (!empty($gnd)) {
                                     $standort_ordenArr[$k][$m][$n]['gnd'] = $gnd;
                                 }
                                 $standort_ordenArr[$k][$m][$n]['orden_standort_von'] = max($myorden['orden_von_von'], $mystandort['standort_von_von']);
                                 $standort_ordenArr[$k][$m][$n]['orden_standort_bis'] = min($myorden['orden_bis_bis'], $mystandort['standort_bis_bis']);
                                 $orden_standort_jahr50 = [];
                                 $start = self::MIN_YEAR;
                                 while ($start < self::MAX_YEAR) {
                                     if ($standort_ordenArr[$k][$m][$n]['orden_standort_von'] < $start + self::YEAR_STEP && $start <= $standort_ordenArr[$k][$m][$n]['orden_standort_bis']) {
                                         $orden_standort_jahr50[$start] = true;
                                     }
                                     $start += self::YEAR_STEP;
                                 }
                                 if (is_array($orden_standort_jahr50) && !empty($orden_standort_jahr50)) {
                                     $standort_ordenArr[$k][$m][$n]['orden_standort_jahr50'] = array_keys($orden_standort_jahr50);
                                 }
                                 unset($orden_standort_jahr50);
                                 $orden_jahr50 = [];
                                 $start = self::MIN_YEAR;
                                 while ($start < self::MAX_YEAR) {
                                     if ($myorden['orden_von_von'] < $start + self::YEAR_STEP && $start <= $myorden['orden_bis_bis']) {
                                         $orden_jahr50[$start] = true;
                                     }
                                     $start += self::YEAR_STEP;
                                 }
                                 $standort_ordenArr[$k][$m][$n]['orden_jahr50'] = array_keys($orden_jahr50);
                                 $standort_jahr50 = [];
                                 $start = self::MIN_YEAR;
                                 while ($start < self::MAX_YEAR) {
                                     if ($mystandort['standort_von_von'] < $start + self::YEAR_STEP && $start <= $mystandort['standort_bis_bis']) {
                                         $standort_jahr50[$start] = true;
                                     }
                                     $start += self::YEAR_STEP;
                                 }
                                 if (is_array($standort_jahr50) && !empty($standort_jahr50)) {
                                     $standort_ordenArr[$k][$m][$n]['standort_jahr50'] = array_keys($standort_jahr50);
                                 }
                                 $standort_ordenArr[$k][$m][$n]['jahr50'] = array_merge(array_keys($orden_jahr50), array_keys($standort_jahr50));
                                 unset($orden_jahr50);
                                 unset($standort_jahr50);
                                 $standortOrdenCount++;
                                 if (isset($band_facet)) {
                                     unset($band_facet);
                                 }
                             }
                         }
                     }
                 }
             }
             if (isset($person_nameArr) && !empty($person_nameArr)) {
                 $klosterArr[$k]['person_name'] = $person_nameArr;
             }
             unset($person_nameArr);
             if (isset($person_namensalternativenArr) && !empty($person_namensalternativenArr)) {
                 $klosterArr[$k]['person_namensalternativen'] = $person_namensalternativenArr;
             }
             unset($person_namensalternativenArr);
             if (isset($person_gsoArr) && !empty($person_gsoArr)) {
                 $klosterArr[$k]['person_gso'] = $person_gsoArr;
             }
             unset($person_gsoArr);
             if (isset($person_gndArr) && !empty($person_gndArr)) {
                 $klosterArr[$k]['person_gnd'] = $person_gndArr;
             }
             unset($person_gndArr);
             if (isset($person_bezeichnungArr) && !empty($person_bezeichnungArr)) {
                 $klosterArr[$k]['person_bezeichnung'] = $person_bezeichnungArr;
             }
             unset($person_bezeichnungArr);
             if (isset($person_bezeichnung_pluralArr) && !empty($person_bezeichnung_pluralArr)) {
                 $klosterArr[$k]['person_bezeichnung_plural'] = $person_bezeichnung_pluralArr;
             }
             unset($person_bezeichnung_pluralArr);
             if (isset($person_anmerkungArr) && !empty($person_anmerkungArr)) {
                 $klosterArr[$k]['person_anmerkung'] = $person_anmerkungArr;
             }
             unset($person_anmerkungArr);
             if (isset($person_von_verbalArr) && !empty($person_von_verbalArr)) {
                 $klosterArr[$k]['person_von_verbal'] = $person_von_verbalArr;
             }
             unset($person_von_verbalArr);
             if (isset($person_vonArr) && !empty($person_vonArr)) {
                 $klosterArr[$k]['person_von'] = $person_vonArr;
             }
             unset($person_vonArr);
             if (isset($person_bis_verbalArr) && !empty($person_bis_verbalArr)) {
                 $klosterArr[$k]['person_bis_verbal'] = $person_bis_verbalArr;
             }
             unset($person_bis_verbalArr);
             if (isset($person_bisArr) && !empty($person_bisArr)) {
                 $klosterArr[$k]['person_bis'] = $person_bisArr;
             }
             unset($person_bisArr);
             if (isset($person_office_idArr) && !empty($person_office_idArr)) {
                 $klosterArr[$k]['person_office_id'] = $person_office_idArr;
             }
             unset($person_office_idArr);
             if (isset($standortuidArr) && !empty($standortuidArr)) {
                 $klosterArr[$k]['standort_uid'] = $standortuidArr;
             }
             if (isset($koordinatenArr) && !empty($koordinatenArr)) {
                 $klosterArr[$k]['koordinaten'] = $koordinatenArr;
             }
             if (isset($koordinaten_institutionengenauArr) && !empty($koordinaten_institutionengenauArr)) {
                 $klosterArr[$k]['koordinaten_institutionengenau'] = $koordinaten_institutionengenauArr;
             }
             if (isset($gruenderArr) && !empty($gruenderArr)) {
                 $klosterArr[$k]['gruender'] = $gruenderArr;
             } else {
                 $klosterArr[$k]['gruender'] = '';
             }
             if (isset($von_vonArr) && !empty($von_vonArr)) {
                 $klosterArr[$k]['standort_von_von'] = $von_vonArr;
             }
             if (isset($von_bisArr) && !empty($von_bisArr)) {
                 $klosterArr[$k]['standort_von_bis'] = $von_bisArr;
             }
             if (isset($von_verbalArr) && !empty($von_verbalArr)) {
                 $klosterArr[$k]['standort_von_verbal'] = $von_verbalArr;
             } else {
                 $klosterArr[$k]['standort_von_verbal'] = '';
             }
             if (isset($vonArr) && !empty($vonArr)) {
                 $klosterArr[$k]['von'] = min($vonArr);
             }
             if (isset($bis_vonArr) && !empty($bis_vonArr)) {
                 $klosterArr[$k]['standort_bis_von'] = $bis_vonArr;
             }
             if (isset($bis_bisArr) && !empty($bis_bisArr)) {
                 $klosterArr[$k]['standort_bis_bis'] = $bis_bisArr;
             }
             if (isset($bis_verbalArr) && !empty($bis_verbalArr)) {
                 $klosterArr[$k]['standort_bis_verbal'] = $bis_verbalArr;
             } else {
                 $klosterArr[$k]['standort_bis_verbal'] = '';
             }
             if (isset($bemerkung_standortArr) && !empty($bemerkung_standortArr)) {
                 $klosterArr[$k]['bemerkung_standort'] = $bemerkung_standortArr;
             } else {
                 $klosterArr[$k]['bemerkung_standort'] = '';
             }
             if (isset($bisArr) && !empty($bisArr)) {
                 $klosterArr[$k]['bis'] = min($bisArr);
             }
             if (isset($ortArr) && !empty($ortArr)) {
                 $klosterArr[$k]['ort'] = $ortArr;
                 if (count($ortArr > 0)) {
                     $klosterArr[$k]['ort_sort'] = $ortArr[0];
                 }
             }
             if (isset($ortuidArr) && !empty($ortuidArr)) {
                 $klosterArr[$k]['ort_uid'] = $ortuidArr;
             }
             if (isset($wuestungArr) && !empty($wuestungArr)) {
                 $klosterArr[$k]['wuestung'] = $wuestungArr;
             } else {
                 $klosterArr[$k]['wuestung'] = '';
             }
             if (isset($landArr) && !empty($landArr)) {
                 $klosterArr[$k]['land'] = $landArr;
             }
             if (isset($ist_in_deutschlandArr) && !empty($ist_in_deutschlandArr)) {
                 $klosterArr[$k]['ist_in_deutschland'] = $ist_in_deutschlandArr;
             }
             if (isset($ortGeonameArr) && !empty($ortGeonameArr)) {
                 $klosterArr[$k]['geonames'] = $ortGeonameArr;
             }
             if (isset($bistumuidArr) && !empty($bistumuidArr)) {
                 $klosterArr[$k]['bistum_uid'] = $bistumuidArr;
             }
             if (isset($bistumArr) && !empty($bistumArr)) {
                 $klosterArr[$k]['bistum'] = $bistumArr;
             } else {
                 $klosterArr[$k]['bistum'] = '';
             }
             if (isset($kirchenprovinzArr) && !empty($kirchenprovinzArr)) {
                 $klosterArr[$k]['kirchenprovinz'] = $kirchenprovinzArr;
             }
             if (isset($ist_erzbistumArr) && !empty($ist_erzbistumArr)) {
                 $klosterArr[$k]['ist_erzbistum'] = $ist_erzbistumArr;
             } else {
                 $klosterArr[$k]['ist_erzbistum'] = '';
             }
             if (isset($ordenuidArr) && !empty($ordenuidArr)) {
                 $klosterArr[$k]['kloster_orden_uid'] = $ordenuidArr;
             }
             if (isset($ordenArr) && !empty($ordenArr)) {
                 $klosterArr[$k]['orden'] = $ordenArr;
             }
             if (isset($ordenbemerkungArr) && !empty($ordenbemerkungArr)) {
                 $klosterArr[$k]['bemerkung_orden'] = $ordenbemerkungArr;
             }
             if (isset($ordoArr) && !empty($ordoArr)) {
                 $klosterArr[$k]['orden_ordo'] = $ordoArr;
             }
             if (isset($klosterstatusArr) && !empty($klosterstatusArr)) {
                 $klosterArr[$k]['kloster_status'] = $klosterstatusArr;
             }
             if (isset($ordenstypArr) && !empty($ordenstypArr)) {
                 $klosterArr[$k]['orden_typ'] = $ordenstypArr;
             }
             if (isset($ordenstypArr) && !empty($ordenstypArr)) {
                 $klosterArr[$k]['orden_facet'] = $ordenFacetArr;
             }
             if (isset($ko_von_vonArr) && !empty($ko_von_vonArr)) {
                 $klosterArr[$k]['orden_von_von'] = $ko_von_vonArr;
             }
             if (isset($ko_von_bisArr) && !empty($ko_von_bisArr)) {
                 $klosterArr[$k]['orden_von_bis'] = $ko_von_bisArr;
             }
             if (isset($ko_von_verbalArr) && !empty($ko_von_verbalArr)) {
                 $klosterArr[$k]['orden_von_verbal'] = $ko_von_verbalArr;
             } else {
                 $klosterArr[$k]['orden_von_verbal'] = '';
             }
             if (isset($ko_bis_vonArr) && !empty($ko_bis_vonArr)) {
                 $klosterArr[$k]['orden_bis_von'] = $ko_bis_vonArr;
             }
             if (isset($ko_bis_bisArr) && !empty($ko_bis_bisArr)) {
                 $klosterArr[$k]['orden_bis_bis'] = $ko_bis_bisArr;
             }
             if (isset($ko_bis_verbalArr) && !empty($ko_bis_verbalArr)) {
                 $klosterArr[$k]['orden_bis_verbal'] = $ko_bis_verbalArr;
             } else {
                 $klosterArr[$k]['orden_bis_verbal'] = '';
             }
             if (isset($ordengraphikArr) && !empty($ordengraphikArr)) {
                 $klosterArr[$k]['orden_graphik'] = $ordengraphikArr;
             }
             if (isset($ordensymbolArr) && !empty($ordensymbolArr)) {
                 $klosterArr[$k]['orden_symbol'] = $ordensymbolArr;
             }
             if (isset($ordengndArr) && !empty($ordengndArr)) {
                 $klosterArr[$k]['orden_gnd'] = $ordengndArr;
             }
             if (isset($ordenwikipediaArr) && !empty($ordenwikipediaArr)) {
                 $klosterArr[$k]['orden_wikipedia'] = $ordenwikipediaArr;
             }
             $klosterArr[$k]['standort_jahr50'] = $kloster_standort_jahr50;
             $klosterArr[$k]['orden_jahr50'] = $kloster_orden_jahr50;
             $kloster_jahr50 = array_merge($kloster_standort_jahr50, $kloster_orden_jahr50);
             $klosterArr[$k]['jahr50'] = $kloster_jahr50;
         }
         return [$klosterArr, $klosterstandorte, $klosterorden, $standort_ordenArr];
     } else {
         $this->logger->log('Database seems to be empty.');
         exit;
     }
 }
 /**
  * Import Klosterorden table into the FLOW domain_model tabel subugoe_germaniasacra_domain_klosterorden_band
  * @return int
  */
 public function importKlosterordenAction()
 {
     if ($this->logger) {
         $start = microtime(true);
     }
     /** @var \Doctrine\DBAL\Connection $sqlConnection */
     $sqlConnection = $this->entityManager->getConnection();
     $sql = 'SELECT * FROM Klosterorden ORDER BY ID_KlosterOrden ASC';
     $klosterordens = $sqlConnection->fetchAll($sql);
     $klosterstatusArr = [];
     if (isset($klosterordens) and is_array($klosterordens)) {
         $nKlosterorden = 0;
         foreach ($klosterordens as $klosterorden) {
             $uid = $klosterorden['ID_KlosterOrden'];
             $kloster = $klosterorden['Klosternummer'];
             $orden = $klosterorden['Orden'];
             if (isset($kloster) && !empty($kloster) && (isset($orden) && !empty($orden))) {
                 $klosterObject = $this->klosterRepository->findOneByUid($kloster);
                 $ordenObject = $this->ordenRepository->findOneByUid($orden);
                 if (is_object($klosterObject) && $klosterObject !== null && (is_object($ordenObject) && $ordenObject !== null)) {
                     if (!isset($klosterorden['Klosterstatus']) || empty($klosterorden['Klosterstatus'])) {
                         $klosterorden['Klosterstatus'] = "keine Angabe";
                     }
                     $klosterstatus = $klosterorden['Klosterstatus'];
                     if (!in_array($klosterstatus, $klosterstatusArr)) {
                         array_push($klosterstatusArr, $klosterstatus);
                         $klosterstatusObject = new Klosterstatus();
                         $klosterstatusObject->setStatus($klosterstatus);
                         $this->klosterstatusRepository->add($klosterstatusObject);
                         $this->persistenceManager->persistAll();
                         $klosterstatusUUID = $klosterstatusObject->getUUID();
                         $klosterstatusObject = $this->klosterstatusRepository->findByIdentifier($klosterstatusUUID);
                     } else {
                         $klosterstatusObject = $this->klosterstatusRepository->findOneByStatus($klosterstatus);
                     }
                     $von_von = $klosterorden['von_von'];
                     $von_bis = $klosterorden['von_bis'];
                     $von_verbal = $klosterorden['verbal_von'];
                     $bis_von = $klosterorden['bis_von'];
                     $bis_bis = $klosterorden['bis_bis'];
                     $bis_verbal = $klosterorden['verbal_bis'];
                     $bemerkung = $klosterorden['interne_Anmerkungen'];
                     $klosterordenObject = new Klosterorden();
                     $klosterordenObject->setUid($uid);
                     $klosterordenObject->setKloster($klosterObject);
                     $klosterordenObject->setOrden($ordenObject);
                     $klosterordenObject->setKlosterstatus($klosterstatusObject);
                     $klosterordenObject->setVon_von($von_von);
                     $klosterordenObject->setVon_bis($von_bis);
                     $klosterordenObject->setVon_verbal($von_verbal);
                     $klosterordenObject->setBis_von($bis_von);
                     $klosterordenObject->setBis_bis($bis_bis);
                     $klosterordenObject->setBis_verbal($bis_verbal);
                     $klosterordenObject->setBemerkung($bemerkung);
                     $this->klosterordenRepository->add($klosterordenObject);
                     $this->persistenceManager->persistAll();
                 }
                 $nKlosterorden++;
             } else {
                 if ($klosterObject === null) {
                     $this->importExportLogger->log('Entweder ist das Feld Klosternummer in Klosterordentabelle leer oder das Klosterobject in der Klostertabelle für das Kloster mit der Id = ' . $kloster . ' wurde nicht gefunden.', LOG_ERR);
                 }
                 if ($ordenObject === null) {
                     $this->importExportLogger->log('Entweder ist das Feld Orden in Klosterordentabelle leer oder das Ordenobject in der Ordentabelle für den Orden mit der Id = ' . $orden . ' wurde nicht gefunden.', LOG_ERR);
                 }
             }
         }
         if ($this->logger) {
             $end = microtime(true);
             $time = number_format($end - $start, 2);
             $this->logger->log('Klosterorden import completed in ' . round($time / 60, 2) . ' minutes.');
         }
         return $nKlosterorden;
     }
 }
Exemplo n.º 5
0
 /** Update a Kloster entity
  **/
 public function updateAction()
 {
     // Update Kloster
     if ($this->request->hasArgument('uUID')) {
         $uuid = $this->request->getArgument('uUID');
     }
     if (empty($uuid)) {
         $this->throwStatus(400, 'Required uUID not provided', null);
     }
     $kloster = $this->klosterRepository->findByIdentifier($uuid);
     if (!is_object($kloster)) {
         $this->throwStatus(400, 'Entity Kloster not available', null);
     }
     $bearbeitungsstatus_uuid = $this->request->getArgument('bearbeitungsstatus');
     $bearbeitungsstatus = $this->bearbeitungsstatusRepository->findByIdentifier($bearbeitungsstatus_uuid);
     $role = array_keys($this->securityContext->getAccount()->getRoles())[0];
     if (trim($role) == 'Flow.Login:Hiwi') {
         if (is_object($bearbeitungsstatus)) {
             $bearbeitungsstatusName = $bearbeitungsstatus->getName();
         }
         if (isset($bearbeitungsstatusName) && !empty($bearbeitungsstatusName)) {
             if (trim($bearbeitungsstatusName) == 'Online') {
                 $this->throwStatus(400, 'You are not allowed to set a Kloster entry online', null);
             }
         }
     }
     $kloster->setKloster($this->request->getArgument('kloster_name'));
     $kloster->setPatrozinium($this->request->getArgument('patrozinium'));
     $kloster->setBemerkung($this->request->getArgument('bemerkung'));
     $kloster->setBand_seite($this->request->getArgument('band_seite'));
     $kloster->setText_gs_band($this->request->getArgument('text_gs_band'));
     $kloster->setBearbeitungsstand($this->request->getArgument('bearbeitungsstand'));
     $kloster->setBearbeitungsstatus($bearbeitungsstatus);
     $bearbeiter = $this->bearbeiterObj;
     $kloster->setBearbeiter($bearbeiter);
     if ($this->request->hasArgument('band')) {
         $band_uuid = $this->request->getArgument('band');
         $band = $this->bandRepository->findByIdentifier($band_uuid);
         $kloster->setBand($band);
     }
     $this->klosterRepository->update($kloster);
     // Update Klosterstandort
     if ($this->request->hasArgument('ort')) {
         $ortArr = $this->request->getArgument('ort');
     }
     if ($this->request->hasArgument('bistum')) {
         $bistumArr = $this->request->getArgument('bistum');
     }
     $gruenderArr = $this->request->getArgument('gruender');
     $breiteArr = $this->request->getArgument('breite');
     $laengeArr = $this->request->getArgument('laenge');
     $bemerkung_standortArr = $this->request->getArgument('bemerkung_standort');
     $bemerkungArr = $this->request->getArgument('standort_interne_bemerkung');
     $von_vonArr = $this->request->getArgument('von_von');
     $von_bisArr = $this->request->getArgument('von_bis');
     $von_verbalArr = $this->request->getArgument('von_verbal');
     $bis_vonArr = $this->request->getArgument('bis_von');
     $bis_bisArr = $this->request->getArgument('bis_bis');
     $bis_verbalArr = $this->request->getArgument('bis_verbal');
     if ($this->request->hasArgument('wuestung')) {
         $wuestungArr = $this->request->getArgument('wuestung');
     }
     $klosterstandortNumber = count($ortArr);
     $klosterstandortArr = [];
     for ($i = 0; $i < $klosterstandortNumber; $i++) {
         $klosterstandortArr[$i]['kloster'] = $uuid;
         if (!empty($ortArr[$i])) {
             $klosterstandortArr[$i]['ort'] = $ortArr[$i];
         }
         if (!empty($bistumArr[$i])) {
             $klosterstandortArr[$i]['bistum'] = $bistumArr[$i];
         }
         $klosterstandortArr[$i]['gruender'] = $gruenderArr[$i];
         $klosterstandortArr[$i]['breite'] = $breiteArr[$i];
         $klosterstandortArr[$i]['laenge'] = $laengeArr[$i];
         $klosterstandortArr[$i]['bemerkung_standort'] = $bemerkung_standortArr[$i];
         $klosterstandortArr[$i]['bemerkung'] = $bemerkungArr[$i];
         $klosterstandortArr[$i]['von_von'] = $von_vonArr[$i];
         $klosterstandortArr[$i]['von_bis'] = $von_bisArr[$i];
         $klosterstandortArr[$i]['von_verbal'] = $von_verbalArr[$i];
         $klosterstandortArr[$i]['bis_von'] = $bis_vonArr[$i];
         $klosterstandortArr[$i]['bis_bis'] = $bis_bisArr[$i];
         $klosterstandortArr[$i]['bis_verbal'] = $bis_verbalArr[$i];
         if (isset($wuestungArr[$i]) && !empty($wuestungArr[$i])) {
             $klosterstandortArr[$i]['wuestung'] = 1;
         } else {
             $klosterstandortArr[$i]['wuestung'] = 0;
         }
     }
     if (isset($klosterstandortArr) && !empty($klosterstandortArr) && is_array($klosterstandortArr)) {
         $klosterstandorts = $kloster->getKlosterstandorts();
         foreach ($klosterstandorts as $i => $klosterstandort) {
             $this->klosterstandortRepository->remove($klosterstandort);
         }
         $lastKlosterstandortId = $this->getLastKlosterstandortIdAction();
         foreach ($klosterstandortArr as $ko) {
             $klosterstandort = new Klosterstandort();
             $kloster_uuid = $ko['kloster'];
             $kloster = $this->klosterRepository->findByIdentifier($kloster_uuid);
             $klosterstandort->setUid(++$lastKlosterstandortId);
             $klosterstandort->setKloster($kloster);
             if (!empty($ko['ort'])) {
                 $ort_uuid = $ko['ort'];
                 $ort = $this->ortRepository->findByIdentifier($ort_uuid);
                 $klosterstandort->setOrt($ort);
             }
             $klosterstandort->setGruender($ko['gruender']);
             $klosterstandort->setBreite($ko['breite']);
             $klosterstandort->setLaenge($ko['laenge']);
             $klosterstandort->setVon_von($ko['von_von']);
             $klosterstandort->setVon_bis($ko['von_bis']);
             $klosterstandort->setVon_verbal($ko['von_verbal']);
             $klosterstandort->setBis_von($ko['bis_von']);
             $klosterstandort->setBis_bis($ko['bis_bis']);
             $klosterstandort->setBis_verbal($ko['bis_verbal']);
             $klosterstandort->setBemerkung_standort($ko['bemerkung_standort']);
             $klosterstandort->setBemerkung($ko['bemerkung']);
             $this->klosterstandortRepository->add($klosterstandort);
             if (isset($ort) && is_object($ort)) {
                 $ort->setWuestung($ko['wuestung']);
             }
             if (!empty($ko['bistum'])) {
                 $bistumObject = $this->bistumRepository->findByIdentifier($ko['bistum']);
                 if (is_object($bistumObject) && isset($ort) && is_object($ort)) {
                     $ort->setBistum($bistumObject);
                 }
             }
             if (isset($ort) && is_object($ort)) {
                 $this->ortRepository->update($ort);
             }
         }
     }
     // Update Orden
     $ordenArr = $this->request->getArgument('orden');
     $klosterstatusArr = $this->request->getArgument('klosterstatus');
     $bemerkung_ordenArr = $this->request->getArgument('bemerkung_orden');
     $orden_von_vonArr = $this->request->getArgument('orden_von_von');
     $orden_von_bisArr = $this->request->getArgument('orden_von_bis');
     $orden_von_verbalArr = $this->request->getArgument('orden_von_verbal');
     $orden_bis_vonArr = $this->request->getArgument('orden_bis_von');
     $orden_bis_bisArr = $this->request->getArgument('orden_bis_bis');
     $orden_bis_verbalArr = $this->request->getArgument('orden_bis_verbal');
     $klosterordenNumber = count($ordenArr);
     $klosterordenArr = [];
     for ($i = 0; $i < $klosterordenNumber; $i++) {
         $klosterordenArr[$i]['kloster'] = $uuid;
         $klosterordenArr[$i]['orden'] = $ordenArr[$i];
         $klosterordenArr[$i]['klosterstatus'] = $klosterstatusArr[$i];
         $klosterordenArr[$i]['bemerkung_orden'] = $bemerkung_ordenArr[$i];
         $klosterordenArr[$i]['orden_von_von'] = $orden_von_vonArr[$i];
         $klosterordenArr[$i]['orden_von_bis'] = $orden_von_bisArr[$i];
         $klosterordenArr[$i]['orden_von_verbal'] = $orden_von_verbalArr[$i];
         $klosterordenArr[$i]['orden_bis_von'] = $orden_bis_vonArr[$i];
         $klosterordenArr[$i]['orden_bis_bis'] = $orden_bis_bisArr[$i];
         $klosterordenArr[$i]['orden_bis_verbal'] = $orden_bis_verbalArr[$i];
     }
     if (isset($klosterordenArr) && !empty($klosterordenArr) && is_array($klosterordenArr)) {
         $klosterordens = $kloster->getKlosterordens();
         foreach ($klosterordens as $i => $klosterorden) {
             $this->klosterordenRepository->remove($klosterorden);
         }
         $lastKlosterordentId = $this->getLastKlosterordenIdAction();
         foreach ($klosterordenArr as $ko) {
             $klosterorden = new Klosterorden();
             $kloster_uuid = $ko['kloster'];
             $kloster = $this->klosterRepository->findByIdentifier($kloster_uuid);
             $klosterorden->setUid(++$lastKlosterordentId);
             $klosterorden->setKloster($kloster);
             $klosterorden->setVon_von($ko['orden_von_von']);
             $klosterorden->setVon_bis($ko['orden_von_bis']);
             $klosterorden->setVon_verbal($ko['orden_von_verbal']);
             $klosterorden->setBis_von($ko['orden_bis_von']);
             $klosterorden->setBis_bis($ko['orden_bis_bis']);
             $klosterorden->setBis_verbal($ko['orden_bis_verbal']);
             $orden_uuid = $ko['orden'];
             $orden = $this->ordenRepository->findByIdentifier($orden_uuid);
             $klosterorden->setOrden($orden);
             $klosterstatus_uuid = $ko['klosterstatus'];
             $klosterstatus = $this->klosterstatusRepository->findByIdentifier($klosterstatus_uuid);
             $klosterorden->setKlosterstatus($klosterstatus);
             $klosterorden->setBemerkung($ko['bemerkung_orden']);
             $this->klosterordenRepository->add($klosterorden);
         }
     }
     // Update literatur
     $literaturs = $kloster->getKlosterHasLiteraturs();
     if (!empty($literaturs)) {
         foreach ($literaturs as $literatur) {
             $this->klosterHasLiteraturRepository->remove($literatur);
         }
     }
     if ($this->request->hasArgument('literatur')) {
         $literaturArr = $this->request->getArgument('literatur');
         if ($this->request->hasArgument('fundstelle')) {
             $fundstelleArr = $this->request->getArgument('fundstelle');
         }
         if (isset($literaturArr) && !empty($literaturArr) && is_array($literaturArr)) {
             foreach ($literaturArr as $k => $lit) {
                 if (isset($lit) && !empty($lit)) {
                     $lit = trim($lit);
                     $fundstelle = trim($fundstelleArr[$k]);
                     if (!empty($fundstelle)) {
                         $literatur = $this->literaturRepository->findByProperties(['citekey' => $lit, 'beschreibung' => $fundstelle]);
                         if (count($literatur) > 0) {
                             $litUUID = $literatur->getFirst()->getUUID();
                             if (!empty($litUUID)) {
                                 $literatur = $this->literaturRepository->findByIdentifier($litUUID);
                             }
                         } else {
                             $literatur = new Literatur();
                             $literatur->setCitekey($lit);
                             $literatur->setBeschreibung($fundstelle);
                             $this->literaturRepository->add($literatur);
                             $litUUID = $literatur->getUUID();
                         }
                         if (is_object($kloster) && is_object($literatur)) {
                             $klosterHasLiteratur = new KlosterHasLiteratur();
                             $klosterHasLiteratur->setKloster($kloster);
                             $klosterHasLiteratur->setLiteratur($literatur);
                             $this->klosterHasLiteraturRepository->add($klosterHasLiteratur);
                         }
                     }
                 }
             }
         }
     }
     // Fetch Kloster Urls
     $klosterHasUrls = $kloster->getKlosterHasUrls();
     $klosterHasGND = false;
     // Update GND if set
     if ($this->request->hasArgument('gnd')) {
         $gnd = $this->request->getArgument('gnd');
         if ($this->request->hasArgument('gnd_label')) {
             $gnd_label = $this->request->getArgument('gnd_label');
         }
         if (empty($gnd_label)) {
             $gndid = str_replace('http://d-nb.info/gnd/', '', trim($gnd));
             $gnd_label = $kloster . ' [' . $gndid . ']';
         }
         if (isset($gnd) && !empty($gnd)) {
             foreach ($klosterHasUrls as $i => $klosterHasUrl) {
                 $urlObj = $klosterHasUrl->getUrl();
                 $urlTypObj = $urlObj->getUrltyp();
                 if (is_object($urlTypObj)) {
                     $urlTyp = $urlTypObj->getName();
                     if ($urlTyp == "GND") {
                         $urlObj->setUrl($gnd);
                         if (!empty($gnd_label)) {
                             $urlObj->setBemerkung($gnd_label);
                         }
                         $this->urlRepository->update($urlObj);
                         $klosterHasGND = true;
                     }
                 }
             }
             if (!$klosterHasGND) {
                 $url = new Url();
                 $url->setUrl($gnd);
                 if (!empty($gnd_label)) {
                     $url->setBemerkung($gnd_label);
                 }
                 $urlTypObj = $this->urltypRepository->findOneByName('GND');
                 $url->setUrltyp($urlTypObj);
                 $this->urlRepository->add($url);
                 $urlUUID = $url->getUUID();
                 $urlObj = $this->urlRepository->findByIdentifier($urlUUID);
                 $klosterhasurl = new KlosterHasUrl();
                 $klosterhasurl->setKloster($kloster);
                 $klosterhasurl->setUrl($urlObj);
                 $this->klosterHasUrlRepository->add($klosterhasurl);
             }
         }
     }
     //Update Wikipedia if set
     $klosterHasWiki = false;
     if ($this->request->hasArgument('wikipedia')) {
         $wikipedia = $this->request->getArgument('wikipedia');
         if ($this->request->hasArgument('wikipedia_label')) {
             $wikipedia_label = $this->request->getArgument('wikipedia_label');
         }
         if (empty($wikipedia_label)) {
             $wikipedia_label = str_replace('http://de.wikipedia.org/wiki/', '', trim($wikipedia));
             $wikipedia_label = str_replace('_', ' ', $wikipedia_label);
             $wikipedia_label = rawurldecode($wikipedia_label);
         }
         if (isset($wikipedia) && !empty($wikipedia)) {
             foreach ($klosterHasUrls as $i => $klosterHasUrl) {
                 $urlObj = $klosterHasUrl->getUrl();
                 $url = $urlObj->getUrl();
                 $urlTypObj = $urlObj->getUrltyp();
                 if (is_object($urlTypObj)) {
                     $urlTyp = $urlTypObj->getName();
                     if ($urlTyp == "Wikipedia") {
                         $urlObj->setUrl($wikipedia);
                         if (!empty($wikipedia_label)) {
                             $urlObj->setBemerkung($wikipedia_label);
                         }
                         $this->urlRepository->update($urlObj);
                         $klosterHasWiki = true;
                     }
                 }
             }
             if (!$klosterHasWiki) {
                 $url = new Url();
                 $url->setUrl($wikipedia);
                 if (!empty($wikipedia_label)) {
                     $url->setBemerkung($wikipedia_label);
                 }
                 $urlTypObj = $this->urltypRepository->findOneByName('Wikipedia');
                 $url->setUrltyp($urlTypObj);
                 $this->urlRepository->add($url);
                 $urlUUID = $url->getUUID();
                 $urlObj = $this->urlRepository->findByIdentifier($urlUUID);
                 $klosterhasurl = new KlosterHasUrl();
                 $klosterhasurl->setKloster($kloster);
                 $klosterhasurl->setUrl($urlObj);
                 $this->klosterHasUrlRepository->add($klosterhasurl);
             }
         }
     }
     // Add Url if set
     if ($this->request->hasArgument('url')) {
         $urlArr = $this->request->getArgument('url');
         if (isset($urlArr) && !empty($urlArr)) {
             if ($this->request->hasArgument('url_typ')) {
                 $urlTypArr = $this->request->getArgument('url_typ');
             }
             if ($this->request->hasArgument('links_label')) {
                 $linksLabelArr = $this->request->getArgument('links_label');
             }
             if (isset($klosterHasUrls) && $klosterHasUrls !== []) {
                 foreach ($klosterHasUrls as $i => $klosterHasUrl) {
                     $urlObj = $klosterHasUrl->getUrl();
                     $urlTypObj = $urlObj->getUrltyp();
                     if (is_object($urlTypObj)) {
                         $urlTyp = $urlTypObj->getName();
                     }
                     if (isset($urlTyp) && ($urlTyp != "Wikipedia" && $urlTyp != "GND")) {
                         $this->klosterHasUrlRepository->remove($klosterHasUrl);
                         $this->urlRepository->remove($urlObj);
                     }
                 }
             }
             foreach ($urlArr as $k => $url) {
                 if (!empty($url)) {
                     $urlObj = new Url();
                     $urlObj->setUrl($url);
                     if (isset($urlTypArr[$k]) && !empty($urlTypArr[$k])) {
                         $urlTypObj = $this->urltypRepository->findByIdentifier($urlTypArr[$k]);
                         $urlTyp = $urlTypObj->getName();
                         $urlObj->setUrltyp($urlTypObj);
                     }
                     if (isset($linksLabelArr[$k]) && !empty($linksLabelArr[$k])) {
                         $urlObj->setBemerkung($linksLabelArr[$k]);
                     } else {
                         $urlObj->setBemerkung($urlTyp);
                     }
                     $this->urlRepository->add($urlObj);
                     $klosterhasurlObj = new KlosterHasUrl();
                     $klosterhasurlObj->setKloster($kloster);
                     $klosterhasurlObj->setUrl($urlObj);
                     $this->klosterHasUrlRepository->add($klosterhasurlObj);
                 }
             }
         }
     }
     $this->throwStatus(200, null, null);
 }