Beispiel #1
0
 function resetMoreDetailsToDefault()
 {
     $library = new Library();
     $libraryId = $_REQUEST['id'];
     $library->libraryId = $libraryId;
     if ($library->find(true)) {
         $library->clearMoreDetailsOptions();
         $defaultOptions = array();
         require_once ROOT_DIR . '/RecordDrivers/Interface.php';
         $defaultMoreDetailsOptions = RecordInterface::getDefaultMoreDetailsOptions();
         $i = 0;
         foreach ($defaultMoreDetailsOptions as $source => $defaultState) {
             $optionObj = new LibraryMoreDetails();
             $optionObj->libraryId = $libraryId;
             $optionObj->collapseByDefault = $defaultState == 'closed';
             $optionObj->source = $source;
             $optionObj->weight = $i++;
             $defaultOptions[] = $optionObj;
         }
         $library->moreDetailsOptions = $defaultOptions;
         $library->update();
         $_REQUEST['objectAction'] = 'edit';
     }
     $structure = $this->getObjectStructure();
     header("Location: /Admin/Libraries?objectAction=edit&id=" . $libraryId);
 }
Beispiel #2
0
 public function filterAndSortMoreDetailsOptions($allOptions)
 {
     global $library;
     global $locationSingleton;
     $activeLocation = $locationSingleton->getActiveLocation();
     $useDefault = true;
     if ($library && count($library->moreDetailsOptions) > 0) {
         $moreDetailsFilters = array();
         $useDefault = false;
         /** @var LibraryMoreDetails $option */
         foreach ($library->moreDetailsOptions as $option) {
             $moreDetailsFilters[$option->source] = $option->collapseByDefault ? 'closed' : 'open';
         }
     }
     if ($activeLocation && count($activeLocation->moreDetailsOptions) > 0) {
         $moreDetailsFilters = array();
         $useDefault = false;
         /** @var LocationMoreDetails $option */
         foreach ($activeLocation->moreDetailsOptions as $option) {
             $moreDetailsFilters[$option->source] = $option->collapseByDefault ? 'closed' : 'open';
         }
     }
     if ($useDefault) {
         $moreDetailsFilters = RecordInterface::getDefaultMoreDetailsOptions();
     }
     $filteredMoreDetailsOptions = array();
     foreach ($moreDetailsFilters as $option => $initialState) {
         if (array_key_exists($option, $allOptions)) {
             $detailOptions = $allOptions[$option];
             $detailOptions['openByDefault'] = $initialState == 'open';
             $filteredMoreDetailsOptions[$option] = $detailOptions;
         }
     }
     return $filteredMoreDetailsOptions;
 }