public function crearGrupo($idSeccion, Encuesta_Model_Grupo $grupo) { $tablaSeccion = $this->tablaSeccion; $select = $tablaSeccion->select()->from($tablaSeccion)->where("idSeccion = ?", $idSeccion); $seccion = $tablaSeccion->fetchRow($select); $tablaGrupo = $this->tablaGrupo; $select = $tablaGrupo->select()->from($tablaGrupo)->where("hash = ?", $grupo->getHash()); $rowGrupo = $tablaGrupo->fetchRow($select); $existe = false; if (!is_null($rowGrupo)) { $existe = true; } if ($existe) { return $rowGrupo->idGrupo; } else { $seccion->elementos++; $seccion->save(); $grupo->setOrden($seccion->elementos); $tablaGrupo->insert($grupo->toArray()); $modelGrupo = $this->obtenerGrupoHash($grupo->getHash()); return $modelGrupo->getIdGrupo(); } }
public function altaAction() { // action body $request = $this->getRequest(); $formulario = new Encuesta_Form_AltaGrupo(); //$idEncuesta = $this->getParam("idEncuesta"); $idSeccion = $this->getParam("idSeccion"); if ($request->isGet()) { if (!is_null($idSeccion)) { $seccion = $this->seccionDAO->obtenerSeccion($idSeccion); //->obtenerSeccionId($idEncuesta, $idSeccion); $this->view->formulario = $formulario; $this->view->seccion = $seccion; } else { $this->_helper->redirector->gotoSimple("index", "index", "encuesta"); } } else { if ($request->isPost()) { if ($formulario->isValid($request->getPost())) { $datos = $formulario->getValues(); //$datos["idSeccion"] = $idSeccion; $grupo = new Encuesta_Model_Grupo($datos); $grupo->setIdSeccion($idSeccion); $grupo->setFecha(date("Y-m-d H:i:s", time())); $grupo->setElementos("0"); $grupo->setHash($grupo->getHash()); //$grupo->setElementos("0"); $idGrupo = $this->grupoDAO->crearGrupo($grupo); //$this->grupoDAO->crearGrupo($grupo); if ($grupo->getTipo() == "AB") { $this->_helper->redirector->gotoSimple("index", "index", "encuesta"); } else { $this->_helper->redirector->gotoSimple("opciones", "grupo", "encuesta", array("idGrupo" => $idGrupo)); } //$this->_helper->redirector->gotoSimple("index", "seccion", "encuesta", array("idSeccion" => $idSeccion)); } } } }