Exemplo n.º 1
0
 public CreateRondePage(GebruikerV2 gebruikersInfo)
 {
     InitializeComponent();
     checkConnectivity();
     btnCreate.Clicked += btnCreate_cliked;
     GebruikersInfo     = gebruikersInfo;
 }
Exemplo n.º 2
0
        double avgSeconds = 0;                                   //Houd gemiddelde laptijd bij.

        #endregion

        public ActivityPage(EtappesRonde parEtappe, GebruikerV2 parGebruikersInfo)
        {
            InitializeComponent();
            btnStoppen.Clicked += btnStoppen_clicked;

            etappe         = parEtappe;
            gebruikersInfo = parGebruikersInfo;
            totalLaps      = etappe.Laps;

            isRacing         = false;
            passedCheckpoint = false;
            isChecking       = true;

            this.Title = etappe.EtappeNaam;

            checkAcknowledgementAsync();
        }
        public RondeOverzichtPage(GebruikerV2 gebruikersInfo)
        {
            //Kleuren instellen voor navbar
            NavigationPage.SetHasBackButton(this, true);
            Color Blauw = Color.FromHex("#015D99");

            ((NavigationPage)Application.Current.MainPage).BarBackgroundColor = Blauw;
            ((NavigationPage)Application.Current.MainPage).BarTextColor       = Color.White;

            GebruikersInfo = gebruikersInfo;
            InitializeComponent();
            lvwRondes.ItemSelected += LvwRondes_ItemSelected;

            btnCreate.Clicked    += btnCreate_Clicked;
            btnDeelnemen.Clicked += btnDeelnemen_Clicked;
            btnRefresh.Clicked   += BtnRefresh_Clicked;
            btnLogOut.Clicked    += BtnLogOut_Clicked;

            LoadRondesAsync(GebruikersInfo.GebruikerId);
        }
        public static async Task <GebruikerV2> CheckLogin(GoogleLogin googleLogin)
        {
            string url = $"{_BASEURI}?code={_FUNCTIONKEY}";

            using (HttpClient client = GetHttpClient())
            {
                try
                {
                    HttpClient httpClient = GetHttpClient();
                    //httpClient.DefaultRequestHeaders.Add("email", googleLogin.email);
                    //httpClient.DefaultRequestHeaders.Add("gebruikersnaam", googleLogin.name);
                    string data    = JsonConvert.SerializeObject(googleLogin);
                    var    request = new HttpRequestMessage
                    {
                        Method     = HttpMethod.Get,
                        RequestUri = new Uri(url),
                        Content    = new StringContent(data, Encoding.UTF8, "application/json"),
                    };

                    var response = await client.SendAsync(request).ConfigureAwait(false);

                    response.EnsureSuccessStatusCode();

                    var responseBody = await response.Content.ReadAsStringAsync().ConfigureAwait(false);


                    //string json = await client.GetStringAsync(url);
                    GebruikerV2 gebruikerInfo = JsonConvert.DeserializeObject <GebruikerV2>(Convert.ToString(responseBody));
                    return(gebruikerInfo);
                }
                catch (Exception ex)
                {
                    return(null);
                    //throw ex;
                }
            }
        }
Exemplo n.º 5
0
        public DeelnemersOverzichtPage(RondesGebruiker rondeInfo, GebruikerV2 gebruikersInfo)
        {
            RondeInfo      = rondeInfo;
            GebruikersInfo = gebruikersInfo;

            checkConnectivity();
            InitializeComponent();


            if (GebruikersInfo.GebruikerId == RondeInfo.Admin)
            {
                //Kleuren instellen voor navbar
                NavigationPage.SetHasBackButton(this, true);
                Color fireRed = Color.FromHex("#B22222");
                ((NavigationPage)Application.Current.MainPage).BarBackgroundColor = fireRed;
                ((NavigationPage)Application.Current.MainPage).BarTextColor       = Color.White;
                btnRefresh.TextColor   = fireRed;
                btnRefresh.BorderColor = fireRed;
                admin = true;
            }
            else
            {
                //Kleuren instellen voor navbar
                //NavigationPage.SetHasBackButton(this, true);
                Color Blauw = Color.FromHex("#015D99");
                ((NavigationPage)Application.Current.MainPage).BarBackgroundColor = Blauw;
                ((NavigationPage)Application.Current.MainPage).BarTextColor       = Color.White;
                btnRefresh.TextColor   = Blauw;
                btnRefresh.BorderColor = Blauw;
                admin = false;
            }


            btnRefresh.Clicked += BtnRefresh_Clicked;

            LoadDeelnemersAsync();
        }
Exemplo n.º 6
0
        public EtappeOverzichtPage(RondesGebruiker rondeInfo, GebruikerV2 gebruikersInfo)
        {
            checkConnectivity();
            RondeInfo      = rondeInfo;
            GebruikersInfo = gebruikersInfo;

            InitializeComponent();

            //UserControls
            btnInvite.Clicked  += BtnInvite_Clicked;
            btnStoppen.Clicked += BtnStoppen_Clicked;
            btnRefresh.Clicked += BtnRefresh_Clicked;

            //AdminControls
            btnCreateEtappe.Clicked      += BtnCreateEtappe_Clicked;
            btnInviteAdmin.Clicked       += BtnInviteAdmin_Clicked;
            btnVerwijder.Clicked         += BtnVerwijder_Clicked;
            lvwEtappesAdmin.ItemSelected += LvwEtappesAdmin_ItemSelected;

            btnDeelnemers.Clicked += BtnDeelnemers_Clicked;

            if (GebruikersInfo.GebruikerId == RondeInfo.Admin)
            {
                //Kleuren instellen voor navbar
                NavigationPage.SetHasBackButton(this, true);
                Color fireRed = Color.FromHex("#B22222");
                ((NavigationPage)Application.Current.MainPage).BarBackgroundColor = fireRed;
                ((NavigationPage)Application.Current.MainPage).BarTextColor       = Color.White;

                //AdminControls tonen
                btnCreateEtappe.IsVisible = true;
                btnInviteAdmin.IsVisible  = true;
                btnVerwijder.IsVisible    = true;
                lvwEtappesAdmin.IsVisible = true;

                //AdminColors
                btnDeelnemers.TextColor      = fireRed;
                btnDeelnemers.BorderColor    = fireRed;
                btnRefresh.TextColor         = fireRed;
                btnRefresh.BorderColor       = fireRed;
                btnCreateEtappe.TextColor    = fireRed;
                btnCreateEtappe.BorderColor  = fireRed;
                btnInviteAdmin.TextColor     = fireRed;
                btnInviteAdmin.BorderColor   = fireRed;
                btnVerwijder.BackgroundColor = fireRed;
                lblNoData.TextColor          = fireRed;

                //UserControls niet tonen
                btnStoppen.IsVisible      = false;
                btnInvite.IsVisible       = false;
                grdUserStanding.IsVisible = false;
                lvwEtappes.IsVisible      = false;
            }
            else
            {
                //Kleuren instellen voor navbar
                //NavigationPage.SetHasBackButton(this, true);
                Color Blauw = Color.FromHex("#015D99");
                ((NavigationPage)Application.Current.MainPage).BarBackgroundColor = Blauw;
                ((NavigationPage)Application.Current.MainPage).BarTextColor       = Color.White;
            }

            LoadEtappesAsync();

            LoadTitle();
        }
        private void BtnLogin_Clicked(object sender, EventArgs e)
        {
            checkConnectivity();

            var authenticator = new OAuth2Authenticator
                                (
                "623999391750-8cep3ajgrnh26gdnmlbjq3376im2gcui.apps.googleusercontent.com",
                "email profile",
                new System.Uri("https://accounts.google.com/o/oauth2/auth"),
                new System.Uri("https://localhost:44312/signin-google")
                                );

            authenticator.AllowCancel = true;

            var presenter = new Xamarin.Auth.Presenters.OAuthLoginPresenter();

            presenter.Login(authenticator);

            authenticator.Completed += async(senders, obj) =>
            {
                if (obj.IsAuthenticated)
                {
                    Debug.WriteLine("Dit doet iets");
                    var clientData = new HttpClient();

                    //call google api to fetch logged in user profile info
                    token = obj.Account.Properties["access_token"];
                    var resData = await clientData.GetAsync("https://www.googleapis.com/oauth2/v3/userinfo?access_token=" + obj.Account.Properties["access_token"]);

                    var jsonData = await resData.Content.ReadAsStringAsync();

                    //deserlize the jsondata and intilize in GoogleAuthClass
                    GoogleLogin googleObject = JsonConvert.DeserializeObject <GoogleLogin>(jsonData);

                    //you can access following property after login
                    string email = googleObject.email;
                    string name  = googleObject.name;

                    GebruikerV2 gebruikerInfo = await LoginRepository.CheckLogin(googleObject);

                    if (gebruikerInfo != null)
                    {
                        Navigation.PushAsync(new RondeOverzichtPage(gebruikerInfo));
                        Debug.WriteLine("-----------------------------------------------------------------------------------------");
                        Debug.WriteLine($"Email:{gebruikerInfo.Email}, Gebruikersnaam: {gebruikerInfo.name}, GebruikersId: {gebruikerInfo.GebruikerId}");
                        Debug.WriteLine("-----------------------------------------------------------------------------------------");
                    }
                    else
                    {
                        Navigation.PopAsync();
                        Debug.WriteLine("-----------------------------------------------------------------------------------------");
                        Debug.WriteLine("Failed for some reason");
                        Debug.WriteLine("-----------------------------------------------------------------------------------------");
                    }
                }
                else
                {
                    //Authentication fail
                    //write the code to handle when auth failed
                    //De gebruiker wordt al terug naar de login pagina gestuurd als het inloggen mislukt is
                }
            };
            authenticator.Error += onAuthError;
        }