/**
  * Get all related data to a servidor publico
  */
 public function getServidorProfile($json = true, $servidor_id = false, $viajes = true)
 {
     if ($servidor_id == false && isset(Auth::user()->servidor_id)) {
         $servidorId = Auth::user()->servidor_id;
         $userId = Auth::user()->id;
     } else {
         $servidorId = $servidor_id != false ? $servidor_id : Auth::user()->servidor_id;
         $user = User::where('servidor_id', '=', $servidor_id)->first();
         $userId = $user['id'];
     }
     if (isset($servidorId) && $servidorId > 0) {
         $contact = Servidor::find($servidorId);
         //->first();
         $puesto = Servidor::find($servidorId)->puesto;
         $puesto->remuneracion = Remuneracion::where('id', '=', $puesto->remuneracion_id)->get()->first();
         $cargo = Servidor::find($servidorId)->cargo;
         $unidadAdministrativa = $contact->unidadAdministrativa;
         $numberOfViajes = Viaje::where('servidor_id', '=', $servidorId)->get()->count();
         if ($viajes == true) {
             $viajes = Viaje::where('servidor_id', '=', $servidorId)->get();
             $viajeArray = array();
             foreach ($viajes as $viaje) {
                 $viajeFinal = $viaje;
                 $viajeFinal->tema = $viaje->tema;
                 $viajeFinal->eventos = $viaje->eventos;
                 foreach ($viajeFinal->eventos as $k => $evento) {
                     $viajeFinal->eventos[$k]->pasajes = $evento->pasajes;
                     foreach ($evento->pasajes as $l => $pasaje) {
                         $pasaje->ciudad_origen = City::where('id', '=', $pasaje->ciudad_origen_id)->first();
                         $pasaje->ciudad_destino = City::where('id', '=', $pasaje->ciudad_destino_id)->first();
                         $viajeFinal->eventos[$k]->pasajes[$l]->ciudad_origen = $pasaje->ciudad_origen;
                         $viajeFinal->eventos[$k]->pasajes[$l]->ciudad_destino = $pasaje->ciudad_destino;
                     }
                     $viajeFinal->eventos[$k]->viatico = Viatico::where('id', '=', $evento->viatico_id)->first();
                 }
                 $viajeFinal->tipoComision = $viaje->tipoComision;
                 $viajeFinal->mecanismoOrigen = $viaje->mecanismoOrigen;
                 $viajeFinal->instGenera = $viaje->instGenera;
                 $viajeArray[] = $viajeFinal;
             }
         } else {
             $viajeArray = array();
         }
         $response = array('status' => 'success', 'servidor' => array('contact' => $contact, 'puesto' => $puesto, 'cargo' => $cargo, 'unidadAdministrativa' => $unidadAdministrativa, 'numberOfViajes' => $numberOfViajes, 'viajes' => $viajeArray));
     } else {
         $response = array('status' => 'fail', 'message' => 'Tu perfil como servidor aún no ha sido de alta.');
     }
     if ($json == true) {
         //regresamos respuesta en json
         return Response::json($response);
     } else {
         return $response;
     }
 }
 public function addPicture()
 {
     if (null !== Input::file('picture')) {
         $file = Input::file('picture');
         $destinationPath = public_path() . '/images/servidores/';
         $filename = $file->getClientOriginalName();
         $upload_success = Input::file('picture')->move($destinationPath, $filename);
         if ($upload_success) {
             $servidorId = isset(Auth::user()->servidor_id) ? Auth::user()->servidor_id : null;
             $servidor = Servidor::find($servidorId);
             $servidor->picture_url = '/images/servidores/' . $filename;
             $servidor->save();
             return Redirect::to('/servidor/profile/');
         }
     } else {
         return Redirect::to('/servidor/profile/');
     }
 }