コード例 #1
0
ファイル: actions.class.php プロジェクト: kcornejo/usac
 public function executeAcceso(sfWebRequest $request)
 {
     $id = $request->getParameter('id');
     $defaults = array();
     $Menu = MenuQuery::create()->usePerfilMenuQuery()->filterByPerfilId($id)->endUse()->find();
     foreach ($Menu as $fila) {
         $defaults['Menu'][] = $fila->getId();
     }
     $this->form = new AccesoForm($defaults);
     if ($request->isMethod('POST')) {
         $this->form->bind($request->getParameter('acceso'));
         if ($this->form->isValid()) {
             $valores = $this->form->getValues();
             PerfilMenuQuery::create()->findByPerfilId($id)->delete();
             foreach ($valores['Menu'] as $fila) {
                 $PerfilMenu = new PerfilMenu();
                 $PerfilMenu->setPerfilId($id);
                 $PerfilMenu->setMenuId($fila);
                 $PerfilMenu->save();
             }
             $idUsuario = $this->getUser()->getAttribute('usuario', null, 'seguridad');
             $html = Usuario::generaArbol($idUsuario);
             $this->getUser()->setAttribute('menu', $html, 'seguridad');
             $this->getUser()->setFlash('exito', 'Asignacion de Menús realizado correcamente.');
             $this->redirect('perfil/index');
         }
     }
     $this->id = $id;
 }
コード例 #2
0
ファイル: WebUser.php プロジェクト: jolopez17/testcantv
 public function buildMenu()
 {
     if (Yii::app()->user->isGuest) {
         return array(array('label' => 'Iniciar Sesión', 'url' => array('/site/login')));
     }
     $in = array();
     $inicio = 0;
     $perfiles_menus = PerfilMenu::model()->findAll('id_perfil_sistema=?', array(Yii::app()->user->id_perfil_sistema));
     foreach ($perfiles_menus as $perfil_menu) {
         $in[] = $perfil_menu->id_menu_sistema;
         $inicio++;
     }
     return $this->concatenatedToBuildMenu($in, 0);
 }
コード例 #3
0
ファイル: BaseMenu.php プロジェクト: kcornejo/usac
 /**
  * @param	PerfilMenu $perfilMenu The perfilMenu object to add.
  */
 protected function doAddPerfilMenu($perfilMenu)
 {
     $this->collPerfilMenus[] = $perfilMenu;
     $perfilMenu->setMenu($this);
 }
コード例 #4
0
ファイル: BasePerfilMenuPeer.php プロジェクト: kcornejo/usac
 /**
  * Adds an object to the instance pool.
  *
  * Propel keeps cached copies of objects in an instance pool when they are retrieved
  * from the database.  In some cases -- especially when you override doSelect*()
  * methods in your stub classes -- you may need to explicitly add objects
  * to the cache in order to ensure that the same objects are always returned by doSelect*()
  * and retrieveByPK*() calls.
  *
  * @param      PerfilMenu $obj A PerfilMenu object.
  * @param      string $key (optional) key to use for instance map (for performance boost if key was already calculated externally).
  */
 public static function addInstanceToPool($obj, $key = null)
 {
     if (Propel::isInstancePoolingEnabled()) {
         if ($key === null) {
             $key = (string) $obj->getId();
         }
         // if key === null
         PerfilMenuPeer::$instances[$key] = $obj;
     }
 }
コード例 #5
0
ファイル: BasePerfilQuery.php プロジェクト: kcornejo/usac
 /**
  * Filter the query by a related PerfilMenu object
  *
  * @param   PerfilMenu|PropelObjectCollection $perfilMenu  the related object to use as filter
  * @param     string $comparison Operator to use for the column comparison, defaults to Criteria::EQUAL
  *
  * @return   PerfilQuery The current query, for fluid interface
  * @throws   PropelException - if the provided filter is invalid.
  */
 public function filterByPerfilMenu($perfilMenu, $comparison = null)
 {
     if ($perfilMenu instanceof PerfilMenu) {
         return $this->addUsingAlias(PerfilPeer::ID, $perfilMenu->getPerfilId(), $comparison);
     } elseif ($perfilMenu instanceof PropelObjectCollection) {
         return $this->usePerfilMenuQuery()->filterByPrimaryKeys($perfilMenu->getPrimaryKeys())->endUse();
     } else {
         throw new PropelException('filterByPerfilMenu() only accepts arguments of type PerfilMenu or PropelCollection');
     }
 }
コード例 #6
0
ファイル: BasePerfilMenuQuery.php プロジェクト: kcornejo/usac
 /**
  * Exclude object from result
  *
  * @param   PerfilMenu $perfilMenu Object to remove from the list of results
  *
  * @return PerfilMenuQuery The current query, for fluid interface
  */
 public function prune($perfilMenu = null)
 {
     if ($perfilMenu) {
         $this->addUsingAlias(PerfilMenuPeer::ID, $perfilMenu->getId(), Criteria::NOT_EQUAL);
     }
     return $this;
 }