assertPermission('toplevelview/edit'); $tabs = $this->getTabs(); if ($name = $this->getParam('name')) { $tabs->add( 'tiles', array( 'title' => $this->translate('Tiles'), 'url' => Url::fromPath('toplevelview/show', array( 'name' => $name )) ) ); $tabs->add( 'index', array( 'title' => $this->translate('Edit'), 'url' => Url::fromPath('toplevelview/edit', array( 'name' => $name )) ) ); } $action = $this->getRequest()->getActionName(); if ($tab = $tabs->get($action)) { $tab->setActive(); } } public function indexAction() { $action = $this->getRequest()->getActionName(); if ($action === 'add') { $this->view->title = sprintf( '%s Top Level View', $this->translate('Add') ); $view = new ViewConfig(); $view->setConfigDir(); } elseif ($action === 'clone') { $name = $this->params->getRequired('name'); $this->view->title = sprintf( '%s Top Level View', $this->translate('Clone') ); $view = clone ViewConfig::loadByName($name); } else { $this->view->name = $name = $this->params->getRequired('name'); $this->view->title = sprintf( '%s Top Level View: %s', $this->translate('Edit'), $this->params->getRequired('name') ); $view = ViewConfig::loadByName($name); } $this->view->form = $form = new EditForm(); $view->setFormat(ViewConfig::FORMAT_YAML); $form->setViewConfig($view); $form->handleRequest(); $this->setViewScript('edit/index'); } public function addAction() { $this->indexAction(); } public function cloneAction() { $this->indexAction(); } }