public async Task NewEvent(ObservableCollection <Invites> namesInvites, string exactDate, TimeSpan timeStart, TimeSpan timeEnd, string eventName, string place, string requirementsNeeded, bool transportEvent, bool foodDrinks, string whichEvent)
        {
            if (UserLoggedIn.User != null)
            {
                using (var c = new HttpClient())
                {
                    try
                    {
                        var jsonRequest = new { email = UserLoggedIn.User, date = exactDate, start = timeStart, end = timeEnd, sortEvent = whichEvent, where = place, name = eventName, foodEnDrinks = foodDrinks, requirements = requirementsNeeded, transport = transportEvent, invites = namesInvites };

                        var         serializedJsonRequest = JsonConvert.SerializeObject(jsonRequest);
                        HttpContent content = new StringContent(serializedJsonRequest, Encoding.UTF8, "application/json");
                        content.Headers.Add("x-access-token", UserLoggedIn.Token);
                        Debug.WriteLine(content);

                        var response = await c.PostAsync(ConnectionLinks.EventsAddress, content);

                        Debug.WriteLine(response);

                        var resultJson = await response.Content.ReadAsStringAsync();

                        var message = JsonConvert.DeserializeObject <ResponseLoginMessage>(resultJson);
                        Debug.WriteLine(message.Success);

                        if (message.Success == "true")
                        {
                            SelectedNamesList.Clear();
                            namesInvites.Clear();
                            IsLoading = false;
                            MessagingCenter.Send(this, Constants.MessagingCenter.NewEventPage.NewEvent);
                        }
                        else
                        {
                            SelectedNamesList.Clear();
                            namesInvites.Clear();
                            IsLoading = false;
                            MessagingCenter.Send(this, Constants.MessagingCenter.NewEventPage.EventError);
                        }
                    }
                    catch (Exception e)
                    {
                        SelectedNamesList.Clear();
                        namesInvites.Clear();
                        IsLoading = false;
                        Debug.WriteLine(e.Message);
                        MessagingCenter.Send(this, Constants.MessagingCenter.NewEventPage.GoneWrong);
                    }
                }
            }
            else
            {
                SelectedNamesList.Clear();
                namesInvites.Clear();
                IsLoading = false;
                MessagingCenter.Send(this, Constants.MessagingCenter.NewEventPage.GoneWrong);
            }
        }
Пример #2
0
        public async Task OrderRoom(ObservableCollection <User> namesInvites, string exactDate, TimeSpan timeStart, TimeSpan timeEnd, string material, string whichRoom)
        {
            if (UserLoggedIn.User != null)
            {
                using (var c = new HttpClient())
                {
                    try
                    {
                        var jsonRequest = new { email = UserLoggedIn.User, date = exactDate, start = timeStart, end = timeEnd, extras = Material, room = whichRoom, persons = namesInvites };

                        var         serializedJsonRequest = JsonConvert.SerializeObject(jsonRequest);
                        HttpContent content = new StringContent(serializedJsonRequest, Encoding.UTF8, "application/json");
                        content.Headers.Add("x-access-token", UserLoggedIn.Token);
                        Debug.WriteLine(content);

                        var response = await c.PostAsync(ConnectionLinks.RoomsAddress, content);

                        Debug.WriteLine(response);

                        var resultJson = await response.Content.ReadAsStringAsync();

                        var message = JsonConvert.DeserializeObject <ResponseLoginMessage>(resultJson);
                        Debug.WriteLine(message.Success);

                        if (message.Success == "true")
                        {
                            SelectedNamesList.Clear();
                            namesInvites.Clear();
                            IsLoading = false;
                            MessagingCenter.Send(this, Constants.MessagingCenter.NewRoomReservationPage.RoomReserved);
                        }
                        else
                        {
                            SelectedNamesList.Clear();
                            namesInvites.Clear();
                            IsLoading = false;
                            MessagingCenter.Send(this, Constants.MessagingCenter.NewRoomReservationPage.ReservedError);
                        }
                    }
                    catch (Exception e)
                    {
                        SelectedNamesList.Clear();
                        namesInvites.Clear();
                        IsLoading = false;
                        Debug.WriteLine(e.Message);
                        MessagingCenter.Send(this, Constants.MessagingCenter.NewRoomReservationPage.GoneWrong);
                    }
                }
            }
            else
            {
                SelectedNamesList.Clear();
                namesInvites.Clear();
                IsLoading = false;
                MessagingCenter.Send(this, Constants.MessagingCenter.NewRoomReservationPage.GoneWrong);
            }
        }
Пример #3
0
        private async void Show()
        {
            IsLoading = true;
            int    day          = Date.Day;
            int    month        = Date.Month;
            int    year         = Date.Year;
            string reservedDate = day + "/" + month + "/" + year;

            Debug.WriteLine(Room);
            Debug.WriteLine(Material);
            Debug.WriteLine(TimeStart);
            Debug.WriteLine(TimeEnd);
            Debug.WriteLine(Date.Day);
            Debug.WriteLine(Date.Month);
            Debug.WriteLine(Date.Year);
            Debug.WriteLine(reservedDate);

            foreach (var name in NamesList)
            {
                if (name.IsSelected)
                {
                    Debug.WriteLine(name.FirstName);
                    Debug.WriteLine(name.LastName);
                    Debug.WriteLine(name.IsSelected);
                    SelectedNamesList.Add(new User()
                    {
                        FirstName = name.FirstName, LastName = name.LastName, Email = name.Email, IsSelected = name.IsSelected
                    });
                }
            }

            for (int i = 0; i < SelectedNamesList.Count; i++)
            {
                Debug.WriteLine("added name: " + SelectedNamesList[i].FirstName);
            }

            if (TimeStart < TimeEnd)
            {
                await OrderRoom(SelectedNamesList, reservedDate, TimeStart, TimeEnd, Material, Room.RoomName);
            }
            else
            {
                IsLoading = false;
                SelectedNamesList.Clear();
                MessagingCenter.Send(this, Constants.MessagingCenter.NewRoomReservationPage.TimeSmaller);
            }
        }
        private async void Show()
        {
            IsLoading = true;
            int    day          = Date.Day;
            int    month        = Date.Month;
            int    year         = Date.Year;
            string reservedDate = day + "/" + month + "/" + year;

            Debug.WriteLine(Name);
            Debug.WriteLine(Where);
            Debug.WriteLine(Requirements);
            Debug.WriteLine(Transport);
            Debug.WriteLine(FoodAndDrinks);
            Debug.WriteLine(SortEvent);
            Debug.WriteLine(TimeStart);
            Debug.WriteLine(TimeEnd);
            Debug.WriteLine(Date.Day);
            Debug.WriteLine(Date.Month);
            Debug.WriteLine(Date.Year);
            Debug.WriteLine(reservedDate);

            foreach (var name in UserList)
            {
                if (name.IsSelected)
                {
                    Debug.WriteLine(name.Email);
                    Debug.WriteLine(name.IsSelected);
                    SelectedNamesList.Add(new Invites()
                    {
                        Email = name.Email, Present = false
                    });
                }
            }

            if (TimeStart < TimeEnd && Where != null && SortEvent != null && Name != null)
            {
                await NewEvent(SelectedNamesList, reservedDate, TimeStart, TimeEnd, Name, Where, Requirements, Transport, FoodAndDrinks, SortEvent);
            }
            else
            {
                IsLoading = false;
                SelectedNamesList.Clear();
                MessagingCenter.Send(this, Constants.MessagingCenter.NewEventPage.TimeSmaller);
            }
        }