/** * Show a group */ public function showAction() { $this->assertPermission('config/authentication/groups/show'); $groupName = $this->params->getRequired('group'); $backend = $this->getUserGroupBackend($this->params->getRequired('backend')); $group = $backend->select(array('group_name', 'created_at', 'last_modified'))->where('group_name', $groupName)->fetchRow(); if ($group === false) { $this->httpNotFound(sprintf($this->translate('Group "%s" not found'), $groupName)); } $members = $backend->select()->from('group_membership', array('user_name'))->where('group_name', $groupName); $filterEditor = Widget::create('filterEditor')->setQuery($members)->setSearchColumns(array('user'))->preserveParams('limit', 'sort', 'dir', 'view', 'backend', 'group')->ignoreParams('page')->handleRequest($this->getRequest()); $members->applyFilter($filterEditor->getFilter()); $this->setupFilterControl($filterEditor); $this->setupPaginationControl($members); $this->setupLimitControl(); $this->setupSortControl(array('user_name' => $this->translate('Username'), 'created_at' => $this->translate('Created at'), 'last_modified' => $this->translate('Last modified')), $members); $this->view->group = $group; $this->view->backend = $backend; $this->view->members = $members; $this->createShowTabs($backend->getName(), $groupName)->activate('group/show'); if ($this->hasPermission('config/authentication/groups/edit') && $backend instanceof Reducible) { $removeForm = new Form(); $removeForm->setUidDisabled(); $removeForm->setAction(Url::fromPath('group/removemember', array('backend' => $backend->getName(), 'group' => $groupName))); $removeForm->addElement('hidden', 'user_name', array('isArray' => true, 'decorators' => array('ViewHelper'))); $removeForm->addElement('hidden', 'redirect', array('value' => Url::fromPath('group/show', array('backend' => $backend->getName(), 'group' => $groupName)), 'decorators' => array('ViewHelper'))); $removeForm->addElement('button', 'btn_submit', array('escape' => false, 'type' => 'submit', 'class' => 'link-like', 'value' => 'btn_submit', 'decorators' => array('ViewHelper'), 'label' => $this->view->icon('trash'), 'title' => $this->translate('Remove this member'))); $this->view->removeForm = $removeForm; } }
/** * List all shared navigation items */ public function sharedAction() { $this->assertPermission('config/application/navigation'); $config = Config::app('navigation'); $config->getConfigObject()->setKeyColumn('name'); $query = $config->select(); $removeForm = new Form(); $removeForm->setUidDisabled(); $removeForm->setAction(Url::fromPath('navigation/unshare')); $removeForm->addElement('hidden', 'name', array('decorators' => array('ViewHelper'))); $removeForm->addElement('hidden', 'redirect', array('value' => Url::fromPath('navigation/shared'), 'decorators' => array('ViewHelper'))); $removeForm->addElement('button', 'btn_submit', array('escape' => false, 'type' => 'submit', 'class' => 'link-like spinner', 'value' => 'btn_submit', 'decorators' => array('ViewHelper'), 'label' => $this->view->icon('trash'), 'title' => $this->translate('Unshare this navigation item'))); $this->view->removeForm = $removeForm; $this->view->types = $this->listItemTypes(); $this->view->items = $query; $this->getTabs()->add('navigation/shared', array('title' => $this->translate('List and configure shared navigation items'), 'label' => $this->translate('Shared Navigation'), 'url' => 'navigation/shared'))->activate('navigation/shared'); $this->setupSortControl(array('type' => $this->translate('Type'), 'owner' => $this->translate('Owner'), 'name' => $this->translate('Shared Navigation')), $query); }
/** * Render this widget * * @return string The HTML of the widget as a string */ public function render() { $view = $this->view(); $form = new Form(); $form->setAttrib('class', 'inline'); $form->setMethod('GET'); $form->setAction(Url::fromPath('/filter')); $form->setTokenDisabled(); $form->addElement('text', 'query', array('name' => 'query', 'placeholder' => 'Add filter')); $query = $form->getElement('query')->setDecorators(array('ViewHelper')); $badges = new FilterBadgeRenderer($this->initialFilter); return '<div class="pull-right">' . $badges->render($view) . '</div>' . $form; $html = str_replace('{{FORM}}', $form->render($view), self::$TPL); $html = '<div class="input-append">' . $html . '</div>'; return str_replace('{{BADGES}}', $badges->render($view), $html); }
/** * Render the form for removing a dashboard elemetn * * @return string The html representation of the form */ protected function getRemoveForm() { // TODO: temporarily disabled, should point to a form asking for confirmal return ''; $removeUrl = Url::fromPath('/dashboard/removecomponent', array('pane' => $this->pane->getName(), 'component' => $this->getTitle())); $form = new Form(); $form->setMethod('POST'); $form->setAttrib('class', 'inline'); $form->setAction($removeUrl); $form->addElement(new Zend_Form_Element_Button('remove_pane_btn', array('class' => 'link-like pull-right', 'type' => 'submit', 'label' => 'x'))); return $form; }
/** * Renders this widget via the given view and returns the * HTML as a string * * @return string */ public function render() { $form = new Form(); $form->setAttrib('class', 'inline'); $form->setMethod('GET'); $form->setTokenDisabled(); $form->setName($this->name); $form->addElement('select', 'sort', array('label' => 'Sort By', 'multiOptions' => $this->sortFields, 'class' => 'autosubmit')); $form->addElement('select', 'dir', array('multiOptions' => array('desc' => 'Desc', 'asc' => 'Asc'), 'class' => 'autosubmit')); $sort = $form->getElement('sort')->setDecorators(array('ViewHelper')); $dir = $form->getElement('dir')->setDecorators(array('ViewHelper')); // $form->enableAutoSubmit(array('sort', 'dir')); // $form->addElement($this->createFallbackSubmitButton()); if ($this->request) { $form->setAction($this->request->getRequestUri()); $form->populate($this->request->getParams()); } return $form; }