/** * Updates a program by given oid. If there is no oid * it will invoke the create method. Will also assign * related events and venues. * @param object $mainframe The Joomla specific page object * @return bean DetailPageModel */ protected function update($mainframe) { global $logger; $logger->debug(get_class($this) . "::update()"); $bean = $this->getBeanFromRequest(); $service = $this->getEventService(); $model = new DetailPageModel(); // is this a new event if ($bean->getOid() == null) { $logger->debug("No event id found."); return $this->create($mainframe); } // Update the venue $updated = $service->updateEvent('Program', $bean); // Populate the page model $model->setDetail($updated); $model->setOptions($this->getDetailOptions()); return $model; }
/** * Returns the populated detail page model * @param object $mainframe The Joomla specific page object * @return bean the detail page model bean */ protected function setDetailModel($mainframe) { global $logger; $logger->debug(get_class($this) . "::setDetailModel()"); $model = new DetailPageModel(); $cs = $this->getCategoryService(); if (!isset($_REQUEST['oid'])) { return $this->setSummaryModel($mainframe); } $detail = $cs->getCategoryById($_REQUEST['oid']); $model->setDetail($detail); $model->setOptions($this->getDetailOptions()); return $model; }
/** * Returns the populated detail page model * @param object $mainframe The Joomla specific page object * @return bean the detail page model bean */ private function setDetailModel($mainframe) { global $logger; $logger->debug(get_class($this) . "::setDetailModel()"); $model = new DetailPageModel(); $service = $this->getPersonService(); if (!isset($_REQUEST['oid'])) { return $this->setSummaryModel($mainframe); } $detail = $service->getPersonById('Artist', $_REQUEST['oid']); $model->setDetail($detail); $model->setOptions($this->getDetailOptions()); return $model; }
/** * Returns a DetailPageModel bean for the given oid * * @access private * @param int/string the oid for the target venue * @return bean DetailPageModel */ protected function setDetailModel($oid) { global $logger; $logger->debug(get_class($this) . "::setDetailModel({$oid})"); if ($oid == null) { trigger_error("Missing required OID.", E_USER_ERROR); return; } $es = $this->getEventService(); $dpm = new DetailPageModel(); $bean = $es->getEventById('Exhibition', $oid); $dpm->setDetail($bean); $artists = $bean->getArtists(); $options = $this->getDetailOptions(); $options['artifact'] = $this->getArtifactOptions($artists); $dpm->setOptions($options); return $dpm; }