/** * Devuelve la lista de usuarios que pertenecen al grupo que pasa como parametro. * @param id_grupo, identificador del grupo. * @return array, lista de objetos de tipo usuario. * @version 17-02-09, 07-04-09 * @author Ana Martín */ public static function getAllUsuarios($id_grupo) { $c = UsuarioPeer::getCriterioNoBorrado(UsuarioPeer::FECHA_BORRADO); $c->add(UsuarioGrupoPeer::ID_GRUPO, $id_grupo); $c->addJoin(UsuarioGrupoPeer::ID_USUARIO, UsuarioPeer::ID_USUARIO); $c->addAscendingOrderBycolumn(UsuarioPeer::USUARIO); $lista = UsuarioGrupoPeer::doSelectJoinUsuario($c); $lista_usuarios = array(); foreach ($lista as $usuario_grupo) { $usuario = $usuario_grupo->getUsuario(); if ($usuario instanceof Usuario) { $lista_usuarios[] = $usuario; } } // print_r($lista_usuarios); return $lista_usuarios; }
/** * If this collection has already been initialized with * an identical criteria, it returns the collection. * Otherwise if this Grupo is new, it will return * an empty collection; or if this Grupo has previously * been saved, it will retrieve related UsuarioGrupos from storage. * * This method is protected by default in order to keep the public * api reasonable. You can provide public methods for those you * actually need in Grupo. */ public function getUsuarioGruposJoinUsuario($criteria = null, $con = null, $join_behavior = Criteria::LEFT_JOIN) { if ($criteria === null) { $criteria = new Criteria(GrupoPeer::DATABASE_NAME); } elseif ($criteria instanceof Criteria) { $criteria = clone $criteria; } if ($this->collUsuarioGrupos === null) { if ($this->isNew()) { $this->collUsuarioGrupos = array(); } else { $criteria->add(UsuarioGrupoPeer::ID_GRUPO, $this->id_grupo); $this->collUsuarioGrupos = UsuarioGrupoPeer::doSelectJoinUsuario($criteria, $con, $join_behavior); } } else { // the following code is to determine if a new query is // called for. If the criteria is the same as the last // one, just return the collection. $criteria->add(UsuarioGrupoPeer::ID_GRUPO, $this->id_grupo); if (!isset($this->lastUsuarioGrupoCriteria) || !$this->lastUsuarioGrupoCriteria->equals($criteria)) { $this->collUsuarioGrupos = UsuarioGrupoPeer::doSelectJoinUsuario($criteria, $con, $join_behavior); } } $this->lastUsuarioGrupoCriteria = $criteria; return $this->collUsuarioGrupos; }