コード例 #1
0
 /**
  * Initializes the controller before invoking an action method.
  *
  */
 public function initializeAction()
 {
     if ($this->securityContext->canBeInitialized()) {
         $account = $this->securityContext->getAccount();
         $this->bearbeiterObj = $this->bearbeiterRepository->findOneByAccount($account);
     }
     $this->cacheInterface = $this->cacheManager->getCache('GermaniaSacra_GermaniaCache');
 }
コード例 #2
0
 /**
  * Creats a file to be checked be cronjob before exporting the data
  */
 public function dataexportAction()
 {
     $dumpDirectory = $this->dataImport->dumpDirectory;
     $executeDumpExportFile = $dumpDirectory . self::executeExportDump;
     if (!file_exists($executeDumpExportFile) && ($fileHandle = fopen($executeDumpExportFile, "w"))) {
         $txt = '';
         if ($this->securityContext->canBeInitialized()) {
             if ($account = $this->securityContext->getAccount()) {
                 $jobOwner = $this->bearbeiterRepository->findOneByAccount($account);
                 $txt = 'Dieser Export wurde angelegt von ' . $jobOwner;
             }
         }
         fwrite($fileHandle, $txt);
         fclose($fileHandle);
         $currentTimeMinutes = date('i');
         $minutesFraction = substr($currentTimeMinutes, 1, 1);
         $nextImportDumpExecution = 10 - $minutesFraction;
         echo 'Die nächste Veröffentlichung wird in ' . $nextImportDumpExecution . ' Minuten durchgeführt.' . '<br>';
         echo 'Sie dauert ca. 5 Minuten.' . '<br>';
     } elseif (file_exists($executeDumpExportFile)) {
         echo "Die Veröffentlichung ist bereits vorgemerkt.";
     } else {
         echo "Der Veröffentlichung-Job konnte leider nicht angelegt werden.";
     }
     exit;
 }
コード例 #3
0
 /**
  * Creats a file to be checked be cronjob before importing the data
  */
 public function dataimportAction()
 {
     $executeDumpImportFile = $this->dumpDirectory . self::executeImportDump;
     if (!file_exists($executeDumpImportFile) && ($fileHandle = fopen($executeDumpImportFile, "w"))) {
         $txt = '';
         if ($this->securityContext->canBeInitialized()) {
             if ($account = $this->securityContext->getAccount()) {
                 $jobOwner = $this->bearbeiterRepository->findOneByAccount($account);
                 $txt = 'Dieser Import wurde angelegt von ' . $jobOwner;
             }
         }
         fwrite($fileHandle, $txt);
         fclose($fileHandle);
         $currentTimeMinutes = date('i');
         $nextImportDumpExecution = 60 - $currentTimeMinutes;
         echo 'Der nächste Import wird in ' . $nextImportDumpExecution . ' Minuten durchgeführt.' . '<br>';
         echo 'Er dauert ca. 1 Stunde.' . '<br>';
     } elseif (file_exists($executeDumpImportFile)) {
         echo "Der Import ist bereits vorgemerkt.";
     } else {
         echo "Der Import-Job konnte leider nicht angelegt werden.";
     }
     exit;
 }
コード例 #4
0
 /**
  * Return the options to fill the select fields in Kloster edit form
  * @FLOW\SkipCsrfProtection
  * @return array $response select options as JSON
  */
 public function getOptionsAction()
 {
     // Bearbeitungsstatus data
     $bearbeitungsstatusArr = [];
     $this->bearbeitungsstatusRepository->setDefaultOrderings(['name' => \TYPO3\Flow\Persistence\QueryInterface::ORDER_ASCENDING]);
     $bearbeitungsstatuses = $this->bearbeitungsstatusRepository->findAll();
     foreach ($bearbeitungsstatuses as $bearbeitungsstatus) {
         $bearbeitungsstatusArr[$bearbeitungsstatus->getUUID()] = $bearbeitungsstatus->getName();
     }
     // Personallistenstatus data
     $personallistenstatusArr = [];
     $personallistenstatuses = $this->personallistenstatusRepository->findAll();
     foreach ($personallistenstatuses as $personallistenstatus) {
         $personallistenstatusArr[$personallistenstatus->getUUID()] = $personallistenstatus->getName();
     }
     // Band data
     $bandArr = [];
     $this->bandRepository->setDefaultOrderings(['sortierung' => \TYPO3\Flow\Persistence\QueryInterface::ORDER_ASCENDING]);
     $bands = $this->bandRepository->findAll();
     foreach ($bands as $band) {
         $bandNummerTitel = $band->getNummer() . '-' . $band->getTitel();
         $bandArr[$band->getUUID()] = $bandNummerTitel;
     }
     // Literature data for select box
     $literaturArr = $this->getLiteraturAction();
     // Bistum data for select box
     $bistumArr = [];
     $this->bistumRepository->setDefaultOrderings(['bistum' => \TYPO3\Flow\Persistence\QueryInterface::ORDER_ASCENDING]);
     $bistums = $this->bistumRepository->findAll();
     foreach ($bistums as $bistum) {
         if ($bistum->getBistum() != 'keine Angabe') {
             $bistumArr[$bistum->getUUID()] = $bistum->getBistum();
         } else {
             $bistumArr[$bistum->getUUID()] = '––';
         }
     }
     // Orden data for select box
     $ordenArr = [];
     $this->ordenRepository->setDefaultOrderings(['orden' => \TYPO3\Flow\Persistence\QueryInterface::ORDER_ASCENDING]);
     $ordens = $this->ordenRepository->findAll();
     foreach ($ordens as $orden) {
         $ordenArr[$orden->getUUID()] = $orden->getOrden();
     }
     // Ordenstyp data for select box
     $ordenstypArr = [];
     $this->ordenstypRepository->setDefaultOrderings(['ordenstyp' => \TYPO3\Flow\Persistence\QueryInterface::ORDER_ASCENDING]);
     $ordenstyps = $this->ordenstypRepository->findAll();
     foreach ($ordenstyps as $ordenstyp) {
         $ordenstypArr[$ordenstyp->getUUID()] = $ordenstyp->getOrdenstyp();
     }
     // Klosterstatus data for select box
     $klosterstatusArr = [];
     $this->klosterstatusRepository->setDefaultOrderings(['status' => \TYPO3\Flow\Persistence\QueryInterface::ORDER_ASCENDING]);
     $klosterstatuses = $this->klosterstatusRepository->findAll();
     foreach ($klosterstatuses as $klosterstatus) {
         if ($klosterstatus->getStatus() != 'keine Angabe') {
             $klosterstatusArr[$klosterstatus->getUUID()] = $klosterstatus->getStatus();
         } else {
             $klosterstatusArr[$klosterstatus->getUUID()] = '––';
         }
     }
     // Bearbeiter data for select box
     $bearbeiterArr = [];
     $this->bearbeiterRepository->setDefaultOrderings(['bearbeiter' => \TYPO3\Flow\Persistence\QueryInterface::ORDER_ASCENDING]);
     $bearbeiters = $this->bearbeiterRepository->findAll();
     foreach ($bearbeiters as $bearbeiter) {
         $bearbeiterArr[$bearbeiter->getUUID()] = $bearbeiter->getBearbeiter();
     }
     // URL-Typ data for select box
     $urltypArr = [];
     $this->urltypRepository->setDefaultOrderings(['name' => \TYPO3\Flow\Persistence\QueryInterface::ORDER_ASCENDING]);
     $urltyps = $this->urltypRepository->findAll();
     foreach ($urltyps as $urltyp) {
         if ($urltyp->getName() != 'GND' && $urltyp->getName() != 'Wikipedia') {
             $urltypArr[$urltyp->getUUID()] = $urltyp->getName();
         }
     }
     // Land data for select box
     $landArr = [];
     $this->landRepository->setDefaultOrderings(['land' => \TYPO3\Flow\Persistence\QueryInterface::ORDER_ASCENDING]);
     $lands = $this->landRepository->findAll();
     foreach ($lands as $land) {
         $landArr[$land->getUUID()] = $land->getLand();
     }
     // Bearbeiter roles
     $roleArr = [];
     foreach ($this->roleRepository->findAll()->toArray() as $role) {
         if (stristr($role->getIdentifier(), 'Flow.Login')) {
             $roleValues = explode(':', $role->getIdentifier());
             $roleArr[$role->getIdentifier()] = $roleValues[1];
         }
     }
     $response = [];
     $response['bearbeitungsstatus'] = $bearbeitungsstatusArr;
     $response['personallistenstatus'] = $personallistenstatusArr;
     $response['band'] = $bandArr;
     $response['literatur'] = $literaturArr;
     $response['bistum'] = $bistumArr;
     $response['orden'] = $ordenArr;
     $response['ordenstyp'] = $ordenstypArr;
     $response['klosterstatus'] = $klosterstatusArr;
     $response['bearbeiter'] = $bearbeiterArr;
     $response['url_typ'] = $urltypArr;
     $response['land'] = $landArr;
     $response['role'] = $roleArr;
     $getOptions = json_encode($response);
     return $getOptions;
 }