/** * Crea un Controlador para el menu * */ public function create() { //Datos del select $perfiles = new Perfil(); $this->perfiles = $perfiles->find('order: nombre'); $menus = new Menus(); $this->menus = $menus->find('order: nombre'); /** * Se verifica si el usuario envio el form (submit) y si ademas * dentro del array POST existe uno llamado "controllers" * el cual aplica la autocarga de objeto para guardar los * datos enviado por POST utilizando autocarga de objeto */ if (Input::hasPost('controllers')) { /** * se le pasa al modelo por constructor los datos del form y ActiveRecord recoge esos datos * y los asocia al campo correspondiente siempre y cuando se utilice la convención * model.campo */ $controller = new Controlador(Input::post('controllers')); //En caso que falle la operación if (!$controller->save()) { Flash::error('Falló Operación'); //se hacen persistente los datos en el formulario $this->controllers = Input::post('controllers'); /** * NOTA: para que la autocarga aplique de forma correcta, es necesario que llame a la variable de instancia * igual como esta el model de la vista, en este caso el model es "controllers" */ } } }
public function getMenuAction() { $fid = $this->request->getPost('fid'); $data = ''; $Menus = Menus::find(array("fid='" . $fid . "'")); $MLang = $this->inc->getLang('menus'); foreach ($Menus as $val) { $data[] = array('id' => $val->id, 'title' => $MLang->_($val->title)); } echo json_encode($data); }
/** * Eliminar un menu * * @param int $id */ public function del($id = null) { $menus = new Menus(); if ($id) { //Buscando el Objeto a Borrar $menu = $menus->find($id); if (!$menu->delete()) { Flash::error('Falló Operación'); } } //enrutando al index para listar los menus Router::redirect('admin/menus/'); }
public function permAction() { $Lang = $this->inc->getLang('menus'); $html = ''; $permArr = $this->splitPerm($this->request->getPost('perm')); $actionM = MenuAction::find(); $menu1 = Menus::find('fid=0'); foreach ($menu1 as $m1) { $ck = isset($permArr[$m1->id]) ? 'checked' : ''; $title1 = $Lang->_($m1->title); $html .= '<div id="oneMenuPerm" class="perm">'; $html .= ' <span class="text1"><input type="checkbox" value="' . $m1->id . '" ' . $ck . ' /></span>'; $html .= ' <span>[<a href="#">-</a>] ' . $title1 . '</span>'; $html .= '</div>'; $menu2 = Menus::find('fid=' . $m1->id); foreach ($menu2 as $m2) { $ck = isset($permArr[$m2->id]) ? 'checked' : ''; $title2 = $Lang->_($m2->title); $html .= '<div id="twoMenuPerm" class="perm">'; $html .= ' <span class="text2"><input type="checkbox" value="' . $m2->id . '" ' . $ck . ' /></span>'; $html .= ' <span>[<a href="#">-</a>] ' . $title2 . '</span>'; $html .= '</div>'; $menu3 = Menus::find('fid=' . $m2->id); foreach ($menu3 as $m3) { $ck = isset($permArr[$m3->id]) ? 'checked' : ''; $title3 = $Lang->_($m3->title); $html .= '<div id="threeMenuPerm" class="perm perm_action">'; $html .= ' <span class="text3"><input type="checkbox" name="threeMenuPerm" value="' . $m3->id . '" ' . $ck . ' /></span>'; $html .= ' <span>[<a href="#">-</a>] ' . $title3 . '</span>'; $html .= ' <span id="actionPerm_' . $m3->id . '"> ( '; foreach ($actionM as $val) { if (intval($m3->perm) & intval($val->perm)) { $ck = @$permArr[$m3->id] & intval($val->perm) ? 'checked' : ''; $name = $Lang->_($val->name); $html .= '<span><input type="checkbox" value="' . $val->perm . '" ' . $ck . ' /></span><span class="text">' . $name . '</span>'; } } $html .= ')</span>'; $html .= '</div>'; } } } $this->view->setVar('menusHtml', $html); $this->view->pick("system/admin/perm"); }
public function menuitems($menuid) { $menu = Menus::find($menuid); $menuitems = $menu->menuitems; $this->layout->content = View::make('laracms/views/menus/menuitems')->with('menuitems', $menuitems)->with('menu', $menu); }
}, 1); Event::listen('backend.header.create', function () { return array('laracms/extends/backend/header'); }, 1); Event::listen('laracms.pages.all', function ($params) { return Pages::all(); }, 1); Event::listen('laracms.main.content', function ($params) { return Config::get('cms.controller.content'); }, 1); Event::listen('laracms.pages.last', function ($params) { return Pages::orderby('created_at', 'desc')->first(); }, 1); Event::listen('laracms.menus.specific', function ($params) { $specific = Cache::remember('laracms_specific_menu_' . $params['menuid'], 60, function () use($params) { $menu = Menus::find($params['menuid']); $it = $menu->menuitems; $items = array(); $content = Event::fire('laracms.collect.content.types'); foreach ($it as $k => $ti) { $items[$k] = $ti; $subs = array(); if ($ti->model != '') { $model = $ti->model; foreach ($content as $ptype) { foreach ($ptype as $ctype) { if ($model == $ctype['model']) { $slug = $ctype['slug']; } } }
public function getMenus() { $Lang = $this->inc->getLang('menus'); $permArr = $this->session->get('Admin'); $Cname = $this->dispatcher->getControllerName(); $FID = $this->getFID($Cname); $M1 = 0; $M2 = 0; $One = Menus::find(array("fid = :fid:", 'bind' => array('fid' => '0'), 'order' => 'sort')); foreach ($One as $val1) { if (isset($permArr['perm_s'][$val1->url])) { $data[$M1] = array('id' => $val1->id, 'title' => $Lang->_($val1->title), 'url' => $val1->url, 'ico' => $val1->ico); $Two = Menus::find(array("fid = :fid:", 'bind' => array('fid' => $val1->id), 'order' => 'sort')); foreach ($Two as $val2) { if (isset($permArr['perm_s'][$val2->url])) { if ($val1->id == $FID['FID1']) { $data[$M1]['menus'][$M2] = array('id' => $val2->id, 'title' => $Lang->_($val2->title), 'url' => $val2->url, 'ico' => $val2->ico); $three = Menus::find(array("fid = :fid:", 'bind' => array('fid' => $val2->id), 'order' => 'sort')); foreach ($three as $val3) { if (isset($permArr['perm_s'][$val3->url])) { $data[$M1]['menus'][$M2]['menus'][] = array('id' => $val3->id, 'title' => $Lang->_($val3->title), 'url' => $val3->url, 'ico' => $val3->ico); } } } else { $data[$M1]['menus'] = FALSE; } $M2++; } } $M1++; } } $this->Ctitle = $Lang->_($FID['Ctitle']); $action = $this->actionMenus($permArr['perm_s'][$Cname], $Cname, $Lang); return array('Date' => $data, 'FID' => $FID, 'Ctitle' => $this->Ctitle, 'action' => $action); }
public function getMenuAction() { $fid = $this->request->getPost('fid'); $data = ''; $Menus = Menus::find(array("fid='" . $fid . "'")); $MLang = $this->inc->getLang('menus'); foreach ($Menus as $val) { $data[] = array('id' => $val->id, 'title' => $MLang->_($val->title)); } return $this->response->setJsonContent($data); }