public function editarreservaAction() { $id_reserva = $this->getParam('id_reserva'); // recibo de formulario if ($id_reserva) { $reserva = $id_reserva; } else { //primero entra aca if (!$this->_getParam('id')) { return $this->_redirect('/administrador/verreservas'); } else { // editarreserva/ID/1 $reserva = $this->_getParam('id'); } } $formulario = new Application_Form_Editarreserva(); if ($this->getRequest()->isPost()) { if ($formulario->isValid($this->_getAllParams())) { $modelo = new Application_Model_DbTable_Reservas(); /* Traer Datos desde Formulario */ $estado = $formulario->getValue('tipoestado'); $email = $formulario->getValue('email'); $nombre_cliente = $formulario->getValue('nombre_cliente'); $fecha_reserva = $formulario->getValue('fecha_reserva'); //Conversion Estado: if ($estado == 1) { $nombreestado = 'Pendiente'; $msn = 'Su Reserva Se encuentra en Espera, le rogamos pueda ser paciente, le comunicaremos lo antes posible su confirmacion'; } if ($estado == 2) { $nombreestado = 'Aprobada'; // si es aprobada $msn = 'Se Ruego Confirmar el Horario a Reservar, por este mismo medio.'; } if ($estado == 3) { $nombreestado = 'Rechazada'; $msn = 'Su reserva Fue rechazada, debido a una sobredemanda para ese Dia '; } /* Conversion de Fecha */ $date = $fecha_reserva; $dia = explode("-", $date, 3); $year = $dia[0]; $month = (string) (int) $dia[1]; $day = (string) (int) $dia[2]; $dias = array("domingo", "lunes", "martes", "miércoles", "jueves", "viernes", "sábado"); $tomadia = $dias[intval(date("w", mktime(0, 0, 0, $month, $day, $year)))]; $meses = array("", "enero", "febrero", "marzo", "abril", "mayo", "junio", "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre"); $dia_reserva = $tomadia . ", " . $day . " de " . $meses[$month] . " de " . $year; /* FIN Conversion de Fecha */ //Envio de Email para dar a conocer el cambio de estado de la reserva $asunto = 'Estado de su reserva en Capicua Restobar'; $mensaje = 'Estimado(a): ' . $nombre_cliente . ' </br> La Reserva para el Dia:' . $dia_reserva . ' fue ' . $nombreestado . '.' . '</br>' . $msn; $config = array('ssl' => 'tls', 'port' => 587, 'auth' => 'login', 'username' => '*****@*****.**', 'password' => 'capicuarestobar'); $smtpConnection = new Zend_Mail_Transport_Smtp('smtp.gmail.com', $config); $mail = new Zend_Mail('utf-8'); $mail->setSubject($asunto); $mail->setFrom('*****@*****.**', 'Administracion Capicua Restobar'); $mail->addTo($email); $mail->setBodyHtml($mensaje); $mail->send($smtpConnection); $modelo->cambiarestadoreserva($estado, $reserva); return $this->_redirect('/administrador/verreservas/'); } } $modelo = new Application_Model_DbTable_Reservas(); $datosreserva = $modelo->mostrarunareserva($reserva); foreach ($datosreserva as $datos) { $nombre = $datos->nombre; $personas = $datos->cantidad_personas; $email = $datos->email; $observacion = $datos->observacion; $fecha_reserva = $datos->fecha_reserva; $fecha_realizacion = $datos->fecha_realizacion; $id_estado_reserva = $datos->id_estado_reserva; } $formulario->populate(array('nombre_cliente' => $nombre, 'personas' => $personas, 'observacion' => $observacion, 'email' => $email, 'fecha_reserva' => $fecha_reserva, 'fecha_realizacion' => $fecha_realizacion, 'tipoestado' => $id_estado_reserva)); $formulario->getElement('id_reserva')->setValue($reserva); $this->view->form = $formulario; }