function getWorkInfo() { global $interface; //Indicate we are showing search results so we don't get hold buttons $interface->assign('displayingSearchResults', true); require_once ROOT_DIR . '/RecordDrivers/GroupedWorkDriver.php'; $id = $_REQUEST['id']; $recordDriver = new GroupedWorkDriver($id); if (isset($_REQUEST['browseCategoryId'])) { require_once ROOT_DIR . '/sys/Browse/BrowseCategory.php'; $browseCategory = new BrowseCategory(); $browseCategory->textId = $_REQUEST['browseCategoryId']; if ($browseCategory->find(true)) { $browseCategory->numTitlesClickedOn++; $browseCategory->update(); } } $interface->assign('recordDriver', $recordDriver); // // if the grouped work consists of only 1 related item, return the record url, otherwise return the grouped-work url $relatedRecords = $recordDriver->getRelatedRecords(); // // long version, for unlikely case that $relatedRecords[0] won't work // if (count($relatedRecords) == 1) { // $onlyRecord = reset($relatedRecords); // $url = $onlyRecord['url']; // } else { // $url = $recordDriver->getLinkUrl(); // } // short version $url = count($relatedRecords) == 1 ? $relatedRecords[0]['url'] : $recordDriver->getLinkUrl(); $escapedId = htmlentities($recordDriver->getPermanentId()); // escape for html $buttonLabel = translate('Add to favorites'); $results = array('title' => "<a href='{$url}'>{$recordDriver->getTitle()}</a>", 'modalBody' => $interface->fetch("GroupedWork/work-details.tpl"), 'modalButtons' => "<span onclick=\"return VuFind.GroupedWork.showSaveToListForm(this, '{$escapedId}');\" class=\"modal-buttons btn btn-primary\" style='float: left'>{$buttonLabel}</span>" . "<a href='{$url}'><span class='modal-buttons btn btn-primary'>More Info</span></a>"); return json_encode($results); }
/** * Updates the displayed Browse Category's Shown Stats. Use near the end of * your actions. */ private function upBrowseCategoryCounter() { if ($this->browseCategory) { $this->browseCategory->numTimesShown += 1; if ($this->subCategories) { // Avoid unneeded sql update calls of subBrowseCategories unset($this->browseCategory->subBrowseCategories); } $this->browseCategory->update(); } }