Exemplo n.º 1
0
        public async Task CreateReservation()
        {
            try
            {
                await Task.Run(async() =>
                {
                    //UserResponse user = await _userService.GetUserByEmail(path, _persistenceService.GetPersistenceValueWithKey("email").ToString(), new CancellationToken());
                    UserResponse user = await _userService.GetUserByEmail(path, "*****@*****.**", new CancellationToken());
                    _persistenceService.SetPersistenceValueAndKey("id", user.userId.ToString());
                    if (_userReservationTime != null && _userReservationDate != null && _direction != null)
                    {
                        //set userReservation private variable
                        _userReservation            = new Reservation();
                        _userReservation.Time       = _userReservationTime;
                        _userReservation.Date       = _userReservationDate;
                        _userReservation.Email      = _persistenceService.GetPersistenceValueWithKey("email").ToString();
                        _userReservation.Directions = _direction;

                        //cast userReservation object to Treq object
                        PostReservationRequest Treq = new PostReservationRequest();
                        CastReservationToPostRequestReservation(Treq, user);

                        PostReservationRequestContainer TreqCont = new PostReservationRequestContainer();
                        TreqCont.reservation = Treq;

                        //call API
                        var token    = new CancellationToken();
                        var response = await _reservationService.CreateReservation(path, Treq, token);
                    }
                    else
                    {
                        throw new NullReferenceException("Une donnée est manquante à la complétion de la réservation.");
                    }
                });

                //reset variables
                CancelReservation();
                await _pageService.DisplayAlert("Confirmation", "Réservation créée avec succès!", "OK");

                await _masterNavigationService.NavigateToPage(new HomePage(false));
            }
            catch (Exception e)
            {
                await _pageService.DisplayAlert("Erreur", e.Message, "OK");
            }
        }
Exemplo n.º 2
0
        private void UpdateOnAppearing()
        {
            var response = _persistenceService.GetPersistenceValueWithKey("email");

            if (!response.Equals("error"))
            {
                //bypass login
                SetMasterPage();
            }
        }
Exemplo n.º 3
0
        private async Task <PostUserRequest> RegisterUser()
        {
            PostUserRequest request = new PostUserRequest();

            request = await Task.Run(async() =>
            {
                if (StaticValues.currentUser != null && StaticValues.staticFacebookProfile == null)
                {
                    try
                    {
                        request.email           = StaticValues.currentUser.email;
                        request.firstName       = StaticValues.currentUser.firstName;
                        request.lastName        = StaticValues.currentUser.lastName;
                        CancellationToken token = new CancellationToken();

                        var condition = await _userService.GetUserByEmail(PATH_USERS, request.email, token);
                        if (condition == null)
                        {
                            var response = await _userService.CreateUser(PATH_USERS, request, token);
                        }
                    }
                    catch (Exception e)
                    {
                        //await _pageService.DisplayAlert("Erreur de requête", e.Message, "OK");
                    }
                }
                else if (StaticValues.currentUser == null && StaticValues.staticFacebookProfile != null)
                {
                    try
                    {
                        if (StaticValues.staticFacebookProfile.Email == null && StaticValues.currentUser == null)
                        {
                            _persistenceService.SetPersistenceValueAndKey("email", "*****@*****.**");
                        }

                        request.email           = StaticValues.staticFacebookProfile.Email;
                        request.firstName       = StaticValues.staticFacebookProfile.FirstName;
                        request.lastName        = StaticValues.staticFacebookProfile.LastName;
                        CancellationToken token = new CancellationToken();
                        var condition           = await _userService.GetUserByEmail(PATH_USERS, request.email, token);
                        if (condition == null)
                        {
                            var response = await _userService.CreateUser(PATH_USERS, request, token);
                        }
                    }
                    catch (Exception e)
                    {
                        // await _pageService.DisplayAlert("Erreur de requête", e.Message, "OK");
                    }
                }
                else
                {
                    if (_persistenceService.GetPersistenceValueWithKey("email") == null)
                    {
                        // await _pageService.DisplayAlert("Erreur native", "Impossible d'identifier l'utilisateur correctement.", "OK");
                    }
                }

                return(request);
            });

            return(request);
        }