/**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate()
 {
     $model = new Carrera();
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['Carrera'])) {
         $model->attributes = $_POST['Carrera'];
         if ($model->save()) {
             $this->redirect(array('view', 'id' => $model->IdCarrera));
         }
     }
     $this->render('create', array('model' => $model));
 }
 public function actionCrearCarrera()
 {
     date_default_timezone_set('America/Tegucigalpa');
     $model = new Carrera();
     // Uncomment the following line if AJAX validation is needed
     // $this->performAjaxValidation($model);
     if (isset($_POST['NombreCarrera'])) {
         $model->NombreCarrera = $_POST['NombreCarrera'];
         $model->TipoCarrera_idTipoCarrera = $_POST['TipoCarreraId'];
         $model->Activo = 1;
         $model->CreadoPor = Yii::app()->user->name;
         $model->FechaCreacion = date('Y-m-d H:i:s');
         if ($model->save()) {
             Yii::app()->user->setFlash("success", "<strong>Excelente! </strong> Se ha creado una nueva carrera llamada <strong>" . $model->NombreCarrera . "</strong>");
             $this->redirect(Yii::app()->request->urlReferrer . "#Carreras");
         }
     }
 }
 public function executeAprobarCarrera(sfWebRequest $request)
 {
     date_default_timezone_set("America/Guayaquil");
     $this->forward404Unless($solicitud_carrera = Doctrine_Core::getTable('solicitud_carrera')->find(array($request->getParameter('id'))), sprintf('Los datos solicitados no existen (%s).', $request->getParameter('id')));
     $numero = $request->getParameter('vehiculo');
     $veh = Doctrine_Query::create()->from('vehiculo v')->where('v.numero = ?', $numero);
     $vehiculo = $veh->fetchOne();
     if ($vehiculo) {
         $carreras = Doctrine_Core::getTable('carrera')->createQuery('c')->where('c.estado=?', 'espera')->execute();
         $vehiculoActivo = false;
         foreach ($carreras as $carrera) {
             if ($carrera->getVehiculo()->getId() == $vehiculo->getId()) {
                 $vehiculoActivo = true;
                 break;
             }
         }
         if (!$vehiculoActivo) {
             $tiempo = $request->getParameter('tiempo');
             if (Operaciones::is_Entero($tiempo)) {
                 $solicitud_carrera->setTiempo($tiempo);
                 $solicitud_carrera->setEstado('aprobada');
                 $solicitud_carrera->save();
                 $carrera = new Carrera();
                 $carrera->setCalidad(-1);
                 $carrera->setSfGuardUser($this->getUser()->getGuardUser());
                 $carrera->setCodigo($solicitud_carrera->getCodigo());
                 $carrera->setVehiculo($vehiculo);
                 $carrera->setTiempo($tiempo);
                 $carrera->setTiempoAtencion('-1');
                 $carrera->setDetalle($solicitud_carrera->getDetalle());
                 date_default_timezone_set("America/Guayaquil");
                 $carrera->setFecha(date("Y-m-d"));
                 $carrera->setHora(date("H:i:s"));
                 $carrera->setEstado("espera");
                 $carrera->save();
             } else {
                 $this->getUser()->setFlash('error', 'El tiempo de espera se debe especificar con un número entero positivo.', true);
             }
         } else {
             $this->getUser()->setFlash('error', 'El vehiculo : ["' . $vehiculo . '"] se encuentra ocupado.', true);
         }
     } else {
         $this->getUser()->setFlash('error', 'El vehiculo : ["' . $numero . '"] al que hace referencia no existe.', true);
     }
     $this->redirect('carrera/gestion');
 }