/** * Creates a new model. * If creation is successful, the browser will be redirected to the 'view' page. */ public function actionCreate() { $model = new Reservas(); // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); if (isset($_POST['Reservas'])) { $model->attributes = $_POST['Reservas']; if ($model->save()) { $this->redirect(array('view', 'id' => $model->id)); } } $this->render('create', array('model' => $model)); $this->renderPartial('/site/buscarsalida'); }
public function executeReservarPelicula(sfWebRequest $request) { if ($request->hasParameter('id')) { //$this->corroborarHorario(); $peli = $request->getParameter('id'); if (!empty($peli) && $this->peliculaLibre($peli)) { $Socio_id = $this->getUser()->getAttribute('id'); //consulto si ya tiene reservas hechas $ver = ReservasQuery::create(); $ver->filterBySocioId($Socio_id)->filterByExpiroReserva(false)->filterByAlquilada(false)->find(); $cant = $ver->count() + 1; $this->cant = $cant; //si tiene menos de 3 peliculas reservadas sin alquilar if ($cant <= 4) { //creo la nueva reserva y le ingreso los datos $reserva = new Reservas(); $reserva->setSocioId($Socio_id); $reserva->setPeliculaId($peli); $reserva->setFechaReserva(date('d-m-Y')); $reserva->setHoraReserva(time('H:i:s')); $reserva->setExpiroReserva(false); $reserva->setAlquilada(false); $reserva->save(); //guardo la reserva y mando mje $this->mje = "Pelicula Reservada con exito!"; //creo un objeto Pelicula $act_peli = new Pelicula(); //busco la pelicula reservada para cambiar el estado $consulta = PeliculaQuery::create()->filterById($peli)->find(); //obtengo la pelicula buscada $act_peli = $consulta->getFirst(); //le cambio el estado $act_peli->setEstado(2); //guardo el cambio $act_peli->save(); if ($cant == 4) { $this->mje = "Pelicula reservada con Exito!\n Alcanzó el limite de reservas por favor alquile\n o cancele las reservas para poder reservar \n nuevas peliculas, gracias."; } } else { $this->mje = "Pelicula No Reservada, superó\n el maximo de reservas posibles!"; return sfView::ERROR; } } else { //Si el id que viene es null o vacio o erroneo $this->mje = "Error de identificacion de pelicula!\n No existe o ya esta reservada o alquilada!"; return sfView::ERROR; } } else { return $this->redirect('@homepage'); //vuelvo a cargar el home } }