Exemplo n.º 1
0
 public function addCodigos()
 {
     $jpopid = $_POST["usuario"];
     $jpop = $this->juradoPopularMapper->findById($jpopid);
     $this->view->setVariable("juradoPop", $jpop);
     $errors = array();
     if ($jpop == NULL) {
         throw new Exception("No existe el usuario " . $jpopid);
     }
     $pincho1 = $_POST["pincho1"];
     $pincho2 = $_POST["pincho2"];
     $pincho3 = $_POST["pincho3"];
     if ($pincho1 != $pincho2 && $pincho1 != $pincho3 && $pincho2 != $pincho3) {
         $idPincho1 = $this->codigoMapper->findById($pincho1);
         $idPincho2 = $this->codigoMapper->findById($pincho2);
         $idPincho3 = $this->codigoMapper->findById($pincho3);
         if ($idPincho1 != NULL && $idPincho1->getUsado() == 0) {
             if ($idPincho2 != NULL && $idPincho2->getUsado() == 0) {
                 if ($idPincho3 != NULL && $idPincho3->getUsado() == 0) {
                     $idPincho1->setUsado(1);
                     $idPincho2->setUsado(1);
                     $idPincho3->setUsado(1);
                     try {
                         $this->codigoMapper->update($idPincho1, $jpop);
                         $this->codigoMapper->update($idPincho2, $jpop);
                         $this->codigoMapper->update($idPincho3, $jpop);
                         $est1 = $this->establecimientoMapper->findById($idPincho1->getEstablecimiento());
                         $est2 = $this->establecimientoMapper->findById($idPincho2->getEstablecimiento());
                         $est3 = $this->establecimientoMapper->findById($idPincho3->getEstablecimiento());
                         $pincho1 = Pincho::findByEstablecimiento($est1);
                         $pincho2 = Pincho::findByEstablecimiento($est2);
                         $pincho3 = Pincho::findByEstablecimiento($est3);
                         $isP1 = $this->codigoMapper->isProbado($jpop, $pincho1);
                         $isP2 = $this->codigoMapper->isProbado($jpop, $pincho2);
                         $isP3 = $this->codigoMapper->isProbado($jpop, $pincho3);
                         if ($isP1 == NULL) {
                             $this->codigoMapper->insertProbados($jpop, $pincho1);
                         }
                         if ($isP2 == NULL) {
                             if ($pincho1->getId() != $pincho2->getId()) {
                                 $this->codigoMapper->insertProbados($jpop, $pincho2);
                             }
                         }
                         if ($isP3 == NULL) {
                             if ($pincho2->getId() != $pincho3->getId() && $pincho1->getId() != $pincho3->getId()) {
                                 $this->codigoMapper->insertProbados($jpop, $pincho3);
                             }
                         }
                         $this->view->setVariable("pincho1", $pincho1);
                         $this->view->setVariable("pincho2", $pincho2);
                         $this->view->setVariable("pincho3", $pincho3);
                         $this->view->setVariable("codigo1", $idPincho1);
                         $this->view->setVariable("codigo2", $idPincho2);
                         $this->view->setVariable("codigo3", $idPincho3);
                         $this->view->setVariable("jPop", $jpop);
                         $this->view->setFlash("Codigos introducidos correctamente");
                         $this->view->render("juradoPopular", "votaPopular");
                     } catch (ValidationException $ex) {
                         $errors = $ex->getErrors();
                         $this->view->setVariable("errors", $errors);
                     }
                 } else {
                     $errors["pincho3"] = "El pincho 3 o no existe o esta usado";
                     $this->view->setVariable("errors", $errors);
                     $this->view->render("juradoPopular", "introCodigos");
                 }
             } else {
                 $errors["pincho2"] = "El pincho 2 o no existe o esta usado";
                 $this->view->setVariable("errors", $errors);
                 $this->view->render("juradoPopular", "introCodigos");
             }
         } else {
             $errors["pincho1"] = "El pincho 1 o no existe o esta usado";
             $this->view->setVariable("errors", $errors);
             $this->view->render("juradoPopular", "introCodigos");
         }
     } else {
         $errors["pincho"] = "Los codigos tienen que ser distintos";
         $this->view->setVariable("errors", $errors);
         $this->view->render("juradoPopular", "introCodigos");
     }
 }