public function store()
 {
     $rules = array('nombres' => 'required', 'apellido_pat' => 'required', 'apellido_mat' => 'required', 'num_documento' => 'required', 'fecha_nacimiento' => 'required', 'email' => 'required');
     $validator = \Validator::make(Input::all(), $rules);
     if ($validator->passes()) {
         $postulante = new \Postulante();
         $postulante->nombres = Input::get('nombres');
         $postulante->apellido_pat = Input::get('apellido_pat');
         $postulante->apellido_mat = Input::get('apellido_mat');
         $postulante->num_documento = Input::get('num_documento');
         $postulante->fecha_nacimiento = date('Y-m-d', strtotime(Input::get('fecha_nacimiento')));
         $postulante->email = Input::get('email');
         $postulante->direccion = Input::get('direccion');
         $postulante->telefono = Input::get('telefono');
         $postulante->celular = Input::get('celular');
         $postulante->idtipo_identificacion = 1;
         $postulante->centro_estudio_trabajo = Input::get('centro_estudio_trabajo');
         $postulante->ciclo_grado = Input::get('ciclo_grado');
         $postulante->carrera = Input::get('carrera');
         $postulante->experiencia = Input::get('experiencia');
         $postulante->aprendizaje = Input::get('aprendizaje');
         $postulante->motivacion = Input::get('motivacion');
         $postulante->aporte = Input::get('aporte');
         $postulante->expectativas = Input::get('expectativas');
         $postulante->save();
         $periodo_actual = \Periodo::getPeriodoActual()->first();
         $postulantexperiodo = new \PostulantesPeriodo();
         $postulantexperiodo->idpostulantes = $postulante->idpostulantes;
         $postulantexperiodo->idperiodos = $periodo_actual->idperiodos;
         $postulantexperiodo->idfases = 1;
         $postulantexperiodo->save();
         return Response::json(['success' => 1], 200);
     } else {
         return Response::json($validator->messages(), 200);
     }
 }
 public function render_view_postulante($id = null)
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         $data["permisos"] = Session::get('permisos');
         if (in_array('side_nueva_convocatoria', $data["permisos"]) && $id) {
             $postulante_periodo = PostulantesPeriodo::searchPostulantePeriodoById($id)->get();
             $postulante_periodo = $postulante_periodo[0];
             $data["idperiodo"] = $postulante_periodo->idperiodos;
             $data["postulante_info"] = Postulante::searchPostulanteById($postulante_periodo->idpostulantes)->get();
             if ($data["postulante_info"]->isEmpty()) {
                 Session::flash('error', 'No se encontró la convocatoria.');
                 return Redirect::to('convocatorias/list_convocatoria');
             }
             $data["postulante_info"] = $data["postulante_info"][0];
             return View::make('convocatorias/viewPostulante', $data);
         } else {
             // Llamo a la función para registrar el log de auditoria
             $descripcion_log = "Se intentó acceder a la ruta '" . Request::path() . "' por el método '" . Request::method() . "'";
             Helpers::registrarLog(10, $descripcion_log);
             Session::flash('error', 'Usted no tiene permisos para realizar dicha acción.');
             return Redirect::to('/dashboard');
         }
     } else {
         return View::make('error/error');
     }
 }