Exemple #1
0
 public function testInsert()
 {
     $menu = new Menu('Help');
     $menu->insertMenu(0, 'Help contents');
     $menu->insertSeparator(1);
     $menu->insertAction(2, 'Check for updates');
     $menu->insertSeparator(3);
     $menu->insertAction(4, 'About');
     $menu->insert(1, array(new MenuSeparator(), 'install' => new MenuAction('Install new software'), new MenuAction('Installation details')));
     $this->assertEquals(8, count($menu));
     $this->assertEquals('Help contents', $menu->itemAt(0)->label);
     $this->assertEquals('Installation details', $menu->itemAt(3)->label);
     $this->assertEquals('About', $menu->itemAt(7)->label);
     $this->assertEquals(2, $menu->getOffset('install'));
 }
Exemple #2
0
function Add()
{
    $results = array();
    $results['pageTitle'] = "Новая запись";
    $results['formAction'] = "add";
    if (isset($_POST['saveChanges'])) {
        // Пользователь получает форму редактирования статьи: сохраняем новую статью
        $article = new Menu();
        $article->storeFormValues($_POST);
        $article->insert();
        //! @todo Проверка в запись БД (Добавить return)
        header("Location: index.php?menu=view&status=changesSaved");
    } elseif (isset($_POST['cancel'])) {
        // Пользователь сбросид результаты редактирования: возвращаемся к списку статей
        header("Location: index.php?menu=view");
    } else {
        // Пользователь еще не получил форму редактирования: выводим форму
        $results['article'] = new Menu();
        $results['article']->id_parent = $_GET['id'];
        $results['admin'] = true;
        $results['script'] = "admin/editMenu";
        require $setting["SCRIPT_PATH"] . $setting["TEMPLATE_PATH"] . "/include/page.php";
    }
}
 public function agregarModificar()
 {
     $eItem = new Menu();
     if ($this->_request->isPost()) {
         Zend_Loader::loadClass('Zend_Filter_StripTags');
         $filter = new Zend_Filter_StripTags();
         $id = $this->_request->getPost('id');
         $item = trim($filter->filter($this->_request->getPost('item')));
         $destino = trim($filter->filter($this->_request->getPost('destino')));
         $posicion = trim($filter->filter($this->_request->getPost('posicion')));
         $privado = trim($filter->filter($this->_request->getPost('privado')));
         $estado = trim($filter->filter($this->_request->getPost('estado')));
         if ($item != '' && $destino != '' && $estado != '') {
             $data = array('item' => $item, 'destino' => $destino, 'posicion' => $posicion, 'privado' => $privado, 'estado' => $estado, 'id_sitio' => $this->session->sitio->id);
             if ((int) $id > 0) {
                 $where = ' id=' . (int) $id;
                 $eItem->update($data, $where);
             } else {
                 $eItem->insert($data);
             }
             $this->_redirect('/admin/menu/');
             return;
         }
     } else {
         $id = (int) $this->_request->getParam('id', 0);
     }
     if (is_numeric($id) && $id > 0) {
         #verificar que el item exista para no mostrar error
         $this->view->item = $eItem->fetchRow('id=' . $id);
     } else {
         $this->view->item = new stdClass();
         $this->view->item->id = null;
         $this->view->item->item = '';
         $this->view->item->destino = '';
         $this->view->item->posicion = '';
         $this->view->item->privado = '0';
         $this->view->item->estado = '0';
         if ($this->view->pagina) {
             $this->view->item->item = $this->view->pagina->titulo;
             $this->view->item->destino = '/frontend/paginas/ver/id/' . $this->view->pagina->id;
         }
     }
     return;
 }