public void GetAllInProgressTrips()
        {
            var response = httpClient.GetAsync("api/CampingTrips").Result;

            var content = response.Content;

            var jsonContent = content.ReadAsStringAsync().Result;

            var trips = JsonConvert.DeserializeObject <List <CampingTrip> >(jsonContent);

            var campingTrips = new ObservableCollection <TripsInProgress>();

            if (trips != null)
            {
                foreach (var trip in trips)
                {
                    var campingtrip = new CampingTripInfo()
                    {
                        Place             = trip.Place,
                        DepartureDate     = trip.DepartureDate,
                        ArrivalDate       = trip.ArrivalDate,
                        CountOfMembers    = trip.CountOfMembers,
                        MinAge            = trip.MinAge,
                        MaxAge            = trip.MaxAge,
                        MinCountOfMembers = trip.MinCountOfMembers,
                        MaxCountOfMembers = trip.MaxCountOfMembers,
                        Direction         = trip.Direction,
                        HasGuide          = trip.HasGuide,
                        HasPhotographer   = trip.HasPhotographer,
                        ID          = trip.ID,
                        PriceOfTrip = trip.PriceOfTrip
                    };
                    if (trip.TypeOfTrip == Kanch.DataModel.TypeOfCampingTrip.Campaign)
                    {
                        campingtrip.TypeOfTrip = ProfileComponents.DataModel.TypeOfCampingTrip.Campaign;
                    }
                    else if (trip.TypeOfTrip == Kanch.DataModel.TypeOfCampingTrip.CampingTrip)
                    {
                        campingtrip.TypeOfTrip = ProfileComponents.DataModel.TypeOfCampingTrip.CampingTrip;
                    }
                    else
                    {
                        campingtrip.TypeOfTrip = ProfileComponents.DataModel.TypeOfCampingTrip.Excursion;
                    }
                    if (trip.Food != null)
                    {
                        campingtrip.Food = new ObservableCollection <FoodInfo>();
                        foreach (var food in trip.Food)
                        {
                            campingtrip.Food.Add(new FoodInfo()
                            {
                                Name            = food.Name,
                                Measure         = food.Measure,
                                MeasurementUnit = food.MeasurementUnit
                            });
                        }
                    }

                    var tripInProgress = new TripsInProgress();

                    tripInProgress.CampingTrip = campingtrip;

                    this.TripsInProgress.Add(tripInProgress);
                }
            }
        }
        public void GetAllTripsUserIsJoined()
        {
            var tokenResponse = tokenClient.RequestRefreshTokenAsync(ConfigurationSettings.AppSettings["refreshToken"]).Result;

            httpClient.SetBearerToken(tokenResponse.AccessToken);
            var response = httpClient.GetAsync($"api/MembersOfCampingTrip/{user.Id}").Result;

            var content = response.Content;

            var jsonContent = content.ReadAsStringAsync().Result;

            var tripIds = JsonConvert.DeserializeObject <List <string> >(jsonContent);



            var campingTrips = new ObservableCollection <TripsInProgress>();

            if (tripIds != null)
            {
                foreach (var tripId in tripIds)
                {
                    var tripResponse    = httpClient.GetAsync($"api/CampingTrips/{tripId}").Result;
                    var tripContent     = tripResponse.Content;
                    var tripJsonContent = tripContent.ReadAsStringAsync().Result;
                    var trip            = JsonConvert.DeserializeObject <CampingTrip>(tripJsonContent);


                    var campingtrip = new CampingTripInfo()
                    {
                        Place             = trip.Place,
                        DepartureDate     = trip.DepartureDate,
                        ArrivalDate       = trip.ArrivalDate,
                        CountOfMembers    = trip.CountOfMembers,
                        MinAge            = trip.MinAge,
                        MaxAge            = trip.MaxAge,
                        MinCountOfMembers = trip.MinCountOfMembers,
                        MaxCountOfMembers = trip.MaxCountOfMembers,
                        Direction         = trip.Direction,
                        HasGuide          = trip.HasGuide,
                        HasPhotographer   = trip.HasPhotographer,
                        PriceOfTrip       = trip.PriceOfTrip,
                        ID = trip.ID
                    };
                    if (trip.TypeOfTrip == Kanch.DataModel.TypeOfCampingTrip.Campaign)
                    {
                        campingtrip.TypeOfTrip = ProfileComponents.DataModel.TypeOfCampingTrip.Campaign;
                    }
                    else if (trip.TypeOfTrip == Kanch.DataModel.TypeOfCampingTrip.CampingTrip)
                    {
                        campingtrip.TypeOfTrip = ProfileComponents.DataModel.TypeOfCampingTrip.CampingTrip;
                    }
                    else
                    {
                        campingtrip.TypeOfTrip = ProfileComponents.DataModel.TypeOfCampingTrip.Excursion;
                    }
                    if (trip.Food != null)
                    {
                        campingtrip.Food = new ObservableCollection <FoodInfo>();
                        foreach (var food in trip.Food)
                        {
                            campingtrip.Food.Add(new FoodInfo()
                            {
                                Name            = food.Name,
                                Measure         = food.Measure,
                                MeasurementUnit = food.MeasurementUnit
                            });
                        }
                    }

                    campingtrip.MembersOfCampingTrip = new ObservableCollection <UserInfo>();
                    campingtrip.IAmJoined            = true;

                    var tripInProgress = new TripsInProgress();

                    tripInProgress.CampingTrip   = campingtrip;
                    tripInProgress.RefuseCommand = new Command(Refuse);

                    this.TripsInProgress.Add(tripInProgress);
                }
            }
        }
        public void GetAllInProgressTrips()
        {
            var tokenResponse = tokenClient.RequestRefreshTokenAsync(ConfigurationManager.AppSettings["refreshToken"]).Result;

            httpClient.SetBearerToken(tokenResponse.AccessToken);
            var response = httpClient.GetAsync("api/CampingTrips").Result;

            var content = response.Content;

            var jsonContent = content.ReadAsStringAsync().Result;

            var trips = JsonConvert.DeserializeObject <List <CampingTrip> >(jsonContent);

            var campingTrips = new ObservableCollection <TripsInProgress>();

            if (trips != null)
            {
                foreach (var trip in trips)
                {
                    var zeroTime = new DateTime(1, 1, 1);

                    var span = DateTime.Now - this.user.DateOfBirth;

                    var userAge = (zeroTime + span).Year - 1;

                    if (userAge >= trip.MinAge && userAge <= trip.MaxAge)
                    {
                        var campingtrip = new CampingTripInfo()
                        {
                            Place             = trip.Place,
                            DepartureDate     = trip.DepartureDate,
                            ArrivalDate       = trip.ArrivalDate,
                            CountOfMembers    = trip.CountOfMembers,
                            MinAge            = trip.MinAge,
                            MaxAge            = trip.MaxAge,
                            MinCountOfMembers = trip.MinCountOfMembers,
                            MaxCountOfMembers = trip.MaxCountOfMembers,
                            Direction         = trip.Direction,
                            HasGuide          = trip.HasGuide,
                            HasPhotographer   = trip.HasPhotographer,
                            PriceOfTrip       = trip.PriceOfTrip,
                            ID = trip.ID
                        };
                        if (trip.TypeOfTrip == Kanch.DataModel.TypeOfCampingTrip.Campaign)
                        {
                            campingtrip.TypeOfTrip = ProfileComponents.DataModel.TypeOfCampingTrip.Campaign;
                        }
                        else if (trip.TypeOfTrip == Kanch.DataModel.TypeOfCampingTrip.CampingTrip)
                        {
                            campingtrip.TypeOfTrip = ProfileComponents.DataModel.TypeOfCampingTrip.CampingTrip;
                        }
                        else
                        {
                            campingtrip.TypeOfTrip = ProfileComponents.DataModel.TypeOfCampingTrip.Excursion;
                        }
                        if (trip.Food != null)
                        {
                            campingtrip.Food = new ObservableCollection <FoodInfo>();
                            foreach (var food in trip.Food)
                            {
                                campingtrip.Food.Add(new FoodInfo()
                                {
                                    Name            = food.Name,
                                    Measure         = food.Measure,
                                    MeasurementUnit = food.MeasurementUnit
                                });
                            }
                        }

                        campingtrip.MembersOfCampingTrip = new ObservableCollection <UserInfo>();

                        if (trip.MembersOfCampingTrip != null)
                        {
                            foreach (var member in trip.MembersOfCampingTrip)
                            {
                                if (member.Id == this.user.Id)
                                {
                                    campingtrip.IAmJoined = true;
                                }
                                campingtrip.MembersOfCampingTrip.Add(new UserInfo
                                {
                                    Id = member.Id
                                });
                            }
                        }

                        if (trip.CountOfMembers >= trip.MaxCountOfMembers)
                        {
                            campingtrip.CanIJoin = false;
                        }


                        if (!campingtrip.IAmJoined)
                        {
                            campingtrip.CanIJoin = true;
                        }

                        var tripInProgress = new TripsInProgress();

                        tripInProgress.CampingTrip   = campingtrip;
                        tripInProgress.JoinCommand   = new Command(Join);
                        tripInProgress.RefuseCommand = new Command(Refuse);

                        this.TripsInProgress.Add(tripInProgress);
                    }
                }
            }
        }