public function showByCapabilityAction() { if ($this->getRequest()->getParam('download', false)) { $this->getResponse()->setHeader('Content-disposition', 'attachment; filename=json.txt'); } $inputFilter = $this->_helper->FilterLoader(); $params = Surfnet_Search_Parameters::create()->setLimit($inputFilter->results)->setOffset($inputFilter->startIndex)->setSortByField($inputFilter->sort)->setSortDirection($inputFilter->dir); $service = new Portal_Service_GadgetDefinition(); $results = $service->searchCountByCapabililty($params); $this->view->gridConfig = $this->_helper->gridSetup($inputFilter); $this->view->ResultSet = $results->getResults(); $this->view->startIndex = $results->getParameters()->getOffset(); $this->view->recordsReturned = $results->getResultCount(); $this->view->totalRecords = $results->getTotalCount(); }
public function save($data, $overwrite = false) { if (isset($data['id']) && !$overwrite) { $id = (int) $data['id']; $gadgetDefinitionService = new Portal_Service_GadgetDefinition(); $gadgetDefinition = $gadgetDefinitionService->fetchById($id); } else { $gadgetDefinition = new Portal_Model_GadgetDefinition(); } $gadgetDefinition->populate($data); $form = new Portal_Form_GadgetDefinition(); if (!$form->isValid($gadgetDefinition->toArray())) { $formErrors = $form->getErrors(); $modelErrors = array(); foreach ($formErrors as $fieldName => $fieldErrors) { foreach ($fieldErrors as $fieldError) { switch ($fieldError) { case 'isEmpty': $error = 'Field is obligatory, but no input given'; break; default: $error = $fieldError; } if (!isset($modelErrors[$fieldName])) { $modelErrors[$fieldName] = array(); } $modelErrors[$fieldName][] = $error; } } $gadgetDefinition->errors = $modelErrors; return $gadgetDefinition; } $mapper = new Portal_Model_Mapper_GadgetDefinition(new Portal_Model_DbTable_GadgetDefinition()); $mapper->save($gadgetDefinition); return $gadgetDefinition; }
public function promoteAction() { $service = new Portal_Service_GadgetDefinition(); $gadgetDefinition = $service->promoteCustomToNonCustom((int) $this->_getParam('id')); if (empty($gadgetDefinition->errors)) { $this->_redirect($this->view->url(array('action' => 'list-custom', 'id' => null))); } else { $this->view->gadgetDefinition = $gadgetDefinition; } }