Пример #1
0
 public function renderIndex(\Nethgui\Renderer\Xhtml $renderer)
 {
     $moduleList = $renderer->elementList();
     $templateList = $renderer->elementList();
     $translator = $renderer->getTranslator();
     $renderer->rejectFlag($renderer::INSET_FORM);
     foreach ($this->getModuleSet() as $module) {
         // skip Help module:
         if ($module === $this->getParent()) {
             continue;
         }
         $template = '<a href="%URL">%LABEL</a>';
         $args1 = array('%URL' => $renderer->getModuleUrl($module->getIdentifier()) . '.rst', '%LABEL' => $translator->translate($module, $module->getAttributesProvider()->getTitle()));
         $args2 = array('%URL' => $renderer->getModuleUrl('../Template/' . $module->getIdentifier()) . '.rst', '%LABEL' => $translator->translate($module, $module->getAttributesProvider()->getTitle()));
         $moduleList->insert($renderer->literal(strtr($template, $args1)));
         $templateList->insert($renderer->literal(strtr($template, $args2)));
     }
     return $renderer->columns()->insert($renderer->fieldset()->setAttribute('template', $renderer->translate('Documents'))->insert($moduleList))->insert($renderer->fieldset()->setAttribute('template', $renderer->translate('Templates'))->insert($templateList));
 }
Пример #2
0
 public function renderModuleMenu(\Nethgui\Renderer\Xhtml $view)
 {
     $view->includeFile('Nethgui/Js/jquery.nethgui.controller.js');
     $view->includeFile('Nethgui/Js/jquery.nethgui.navigation.js');
     $rootList = $view->elementList()->setAttribute('wrap', '/');
     foreach ($view['categories'] as $category) {
         // Add category title with fake module
         $rootList->insert($view->panel()->setAttribute('class', 'category')->insert($view->literal($category['title'])->setAttribute('hsc', TRUE)));
         // Add category contents:
         $el = $view->elementList()->setAttribute('class', FALSE);
         foreach ($category['items'] as $item) {
             $el->insert($this->renderMenuItem($view, $item));
         }
         $rootList->insert($el);
     }
     $searchPanel = $view->panel()->setAttribute('class', 'searchPanel ui-corner-all')->insert($view->textInput("search", $view::LABEL_NONE)->setAttribute('placeholder', $view->translate('Search') . "..."))->insert($view->button("Find", $view::BUTTON_SUBMIT)->setAttribute('class', 'Button search'));
     return $view->panel()->setAttribute('class', 'Navigation Flat ' . $view->getClientEventTarget("tags"))->insert($view->form()->setAttribute('method', 'get')->insert($searchPanel)->insert($rootList));
 }
Пример #3
0
 public function testButtonList()
 {
     $this->assertInstanceOf('Nethgui\\Widget\\Xhtml\\ElementList', $this->object->elementList());
 }
Пример #4
0
 /**
  * Generate the table actions button list
  *
  * @param \Nethgui\Renderer\Xhtml $view A parent controller view
  * @return \Nethgui\Renderer\WidgetInterface
  */
 public function renderTableActions(\Nethgui\Renderer\Xhtml $view)
 {
     $tableActions = $view->getModule()->getTableActions();
     $buttonList = $view->elementList()->setAttribute('class', 'Buttonlist')->setAttribute('wrap', 'div/');
     foreach ($tableActions as $tableAction) {
         $actionId = $tableAction->getIdentifier();
         if ($tableAction instanceof Help) {
             $button = $view->button('Help', \Nethgui\Renderer\WidgetFactoryInterface::BUTTON_HELP);
         } else {
             $button = $view->button($actionId, \Nethgui\Renderer\WidgetFactoryInterface::BUTTON_LINK)->setAttribute('value', $view->getModuleUrl($actionId));
         }
         $buttonList->insert($button);
     }
     return $buttonList;
 }