Ejemplo n.º 1
0
 function view_collection()
 {
     if (!isset($this->_data) || !$this->loadData()) {
         $this->dataError();
         sendBack();
     }
     $dataset = $this->_uses[$this->modeltype];
     $model = $this->newModel($dataset);
     $title = $model->getTitle();
     $s_data = array();
     $this->setSearch('datasetsSearch', 'useDefault', $s_data);
     $this->search->setSearchFields($dataset);
     $this->search->setSearchData($s_data, $errors);
     $collection = new DataObjectCollection($model, $this->_schema . '.' . $dataset->name . '_overview');
     $collection->setTitle($title);
     $this->setTemplateName('view_collection');
     parent::index($collection);
     $this->view->set('title', 'Viewing ' . $title);
     $sidebar = new SidebarController($this->view);
     $actions = array();
     $actions['viewall'] = array('link' => array('modules' => $this->_modules, 'controller' => $this->name, 'action' => 'index'), 'tag' => 'View All Datasets');
     $actions['viewthis'] = array('link' => array('modules' => $this->_modules, 'controller' => $this->name, 'action' => 'view', $dataset->idField => $dataset->{$dataset->idField}), 'tag' => 'Edit Dataset Definition');
     $actions['newdata'] = array('link' => array('modules' => $this->_modules, 'controller' => $this->name, 'action' => 'edit_data', 'dataset_id' => $dataset->{$dataset->idField}), 'tag' => 'new ' . $title);
     $actions['listreports'] = array('link' => array('module' => 'reporting', 'controller' => 'reports', 'action' => 'index', 'tablename' => $this->getViewname($dataset->name)), 'tag' => 'list_reports');
     $sidebar->addList('Actions', $actions);
     $this->sidebarRelatedItems($sidebar, $dataset);
     $this->view->register('sidebar', $sidebar);
     $this->view->set('sidebar', $sidebar);
     $this->view->set('clickaction', 'edit_data');
     $this->view->set('linkdata', array('dataset_id' => $dataset->{$dataset->idField}));
 }