public function submit_create_reporte_cn()
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4) {
             // Validate the info, create rules for the inputs
             $attributes = array('idprogramacion_reporte_cn' => 'Programaciones No Concluidas', 'archivo' => 'Documento adjunto', 'idot_retiro' => 'OT de Baja de Equipo');
             $messages = array();
             $rules = array('idprogramacion_reporte_cn' => 'required', 'archivo' => 'required|max:15360', 'idot_retiro' => 'required');
             // Run the validation rules on the inputs from the form
             $validator = Validator::make(Input::all(), $rules, $messages, $attributes);
             // If the validator fails, redirect back to the form
             if ($validator->fails()) {
                 return Redirect::to('reporte_cn/create_reporte_cn')->withErrors($validator)->withInput(Input::all());
             } else {
                 if (!(Input::get('idreporte_etes1') == Input::get('idreporte_etes2') && Input::get('idreporte_etes1') != '' || Input::get('idreporte_etes1') == Input::get('idreporte_etes3') && Input::get('idreporte_etes1') != '' || Input::get('idreporte_etes1') == Input::get('idreporte_etes4') && Input::get('idreporte_etes1') != '' || Input::get('idreporte_etes1') == Input::get('idreporte_etes5') && Input::get('idreporte_etes1') != '' || Input::get('idreporte_etes2') == Input::get('idreporte_etes3') && Input::get('idreporte_etes2') != '' || Input::get('idreporte_etes2') == Input::get('idreporte_etes4') && Input::get('idreporte_etes2') != '' || Input::get('idreporte_etes2') == Input::get('idreporte_etes5') && Input::get('idreporte_etes3') != '' || Input::get('idreporte_etes3') == Input::get('idreporte_etes4') && Input::get('idreporte_etes3') != '' || Input::get('idreporte_etes3') == Input::get('idreporte_etes5') && Input::get('idreporte_etes3') != '' || Input::get('idreporte_etes4') == Input::get('idreporte_etes5') && Input::get('idreporte_etes4') != '')) {
                     switch (Input::get('idtipo_reporte')) {
                         case 1:
                             $abreviatura = "NS";
                             break;
                         case 2:
                             $abreviatura = "NI";
                             break;
                         case 3:
                             $abreviatura = "NP";
                             break;
                     }
                     $rutaDestino = '';
                     $nombreArchivo = '';
                     if (Input::hasFile('archivo')) {
                         $archivo = Input::file('archivo');
                         $rutaDestino = 'uploads/documentos/planeamiento/reporteCN/';
                         $nombreArchivo = $archivo->getClientOriginalName();
                         $nombreArchivoEncriptado = Str::random(27) . '.' . pathinfo($nombreArchivo, PATHINFO_EXTENSION);
                         $uploadSuccess = $archivo->move($rutaDestino, $nombreArchivoEncriptado);
                     }
                     $correlativo = $this->getCorrelativeReportNumber($abreviatura);
                     $anho = date('y');
                     $reporte_cn = new ReporteCN();
                     $reporte_cn->numero_reporte_abreviatura = $abreviatura;
                     $reporte_cn->numero_reporte_correlativo = $correlativo;
                     $reporte_cn->numero_reporte_anho = $anho;
                     $reporte_cn->url = $rutaDestino;
                     $reporte_cn->nombre_archivo = $nombreArchivo;
                     $reporte_cn->nombre_archivo_encriptado = $nombreArchivoEncriptado;
                     $reporte_cn->idot_retiro = Input::get('idot_retiro');
                     $reporte_cn->idprogramacion_reporte_cn = Input::get('idprogramacion_reporte_cn');
                     if (Input::get('idreporte_etes1') != '') {
                         $reporte_cn->idreporte_etes1 = Input::get('idreporte_etes1');
                     }
                     if (Input::get('idreporte_etes2') != '') {
                         $reporte_cn->idreporte_etes2 = Input::get('idreporte_etes2');
                     }
                     if (Input::get('idreporte_etes3') != '') {
                         $reporte_cn->idreporte_etes3 = Input::get('idreporte_etes3');
                     }
                     if (Input::get('idreporte_etes4') != '') {
                         $reporte_cn->idreporte_etes4 = Input::get('idreporte_etes4');
                     }
                     if (Input::get('idreporte_etes5') != '') {
                         $reporte_cn->idreporte_etes5 = Input::get('idreporte_etes5');
                     }
                     $reporte_cn->save();
                     $programacion_reporte_cn = ProgramacionReporteCN::find(Input::get('idprogramacion_reporte_cn'));
                     $programacion_reporte_cn->idestado_programacion_reportes = 2;
                     $programacion_reporte_cn->save();
                     Session::flash('message', 'Se registró correctamente el Reporte para Certificado de Necesidad.');
                     return Redirect::to('reporte_cn/create_reporte_cn');
                 } else {
                     Session::flash('error', 'Existen dos o más Reportes ETES repetidos.');
                     return Redirect::to('reporte_cn/create_reporte_cn')->withInput(Input::all());
                 }
             }
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }