private void LogoutButton_Click(object sender, RoutedEventArgs e)
        {
            var sendEmployee = new ProgramParams();

            sendEmployee.FoundEmployee = employee.FoundEmployee;
            this.Frame.Navigate(typeof(LoginPage), sendEmployee);
        }
        private void Manage_Employee(object sender, RoutedEventArgs e)
        {
            var sendEmployee = new ProgramParams();

            sendEmployee.FoundEmployee = employee.FoundEmployee;
            Content.Navigate(typeof(EmployeeList), sendEmployee);
        }
        private void HomeButton_Click(object sender, RoutedEventArgs e)
        {
            var sendEmployee = new ProgramParams();

            sendEmployee.FoundEmployee = employee.FoundEmployee;
            Content.Navigate(typeof(ProfilePage), sendEmployee);
        }
Beispiel #4
0
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);
            var currentEmployee = (ProgramParams)e.Parameter;

            employee = currentEmployee;
        }
Beispiel #5
0
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);
            ProgramParams employee = (ProgramParams)e.Parameter;

            currentEmployee = employee.FoundEmployee;
        }
        private void PTO_Click(object sender, RoutedEventArgs e)
        {
            var sendEmployee = new ProgramParams();

            sendEmployee.FoundEmployee = employee.FoundEmployee;
            if (employee.FoundEmployee.IsAdmin || employee.FoundEmployee.IsManager)
            {
                Content.Navigate(typeof(ManagePTO), sendEmployee);
            }
            else
            {
                Content.Navigate(typeof(PTORequest), sendEmployee);
            }
        }
        private void Schedule_Click(object sender, RoutedEventArgs e)
        {
            var sendEmployee = new ProgramParams();

            sendEmployee.FoundEmployee = employee.FoundEmployee;
            if (employee.FoundEmployee.IsManager || employee.FoundEmployee.IsAdmin)
            {
                Content.Navigate(typeof(EditSchedule), sendEmployee);
            }
            else
            {
                Content.Navigate(typeof(ViewSchedule), sendEmployee);
            }
        }
        private void Clock_Click(object sender, RoutedEventArgs e)
        {
            var sendEmployee = new ProgramParams();

            sendEmployee.FoundEmployee = employee.FoundEmployee;
            if (employee.FoundEmployee.IsAdmin)
            {
                Content.Navigate(typeof(ClockLogs), sendEmployee);
            }
            else
            {
                Content.Navigate(typeof(EmployeeClock), sendEmployee);
            }
        }
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            //Receive employee
            base.OnNavigatedTo(e);
            var currentEmployee = (ProgramParams)e.Parameter;

            //Update global variable
            employee = currentEmployee;

            Content.Navigate(typeof(ProfilePage), employee);

            //Update menu for employee
            if (currentEmployee.FoundEmployee.IsAdmin)
            {
                Manage_Employees.Visibility = Visibility.Visible;
            }
            else
            {
                Manage_Employees.Visibility = Visibility.Collapsed;
            }
            if (currentEmployee.FoundEmployee.IsAdmin)
            {
                Clock_Title.Content = Clock_Title.Content = "Clock Logs";
            }
            else
            {
                Clock_Title.Content = "Clock In/Out";
            }
            if (currentEmployee.FoundEmployee.IsAdmin || currentEmployee.FoundEmployee.IsManager)
            {
                Calendar_Title.Content = "Edit Schedule";
                PTO_Title.Content      = "Manage PTO";
            }
            else
            {
                Calendar_Title.Content = "View Schedule";
                PTO_Title.Content      = "PTO Request";
            }
        }
Beispiel #10
0
        async void performCodeExchangeAsync(string code, string code_verifier)
        {
            // Builds the Token request
            string tokenRequestBody = string.Format("code={0}&redirect_uri={1}&client_id={2}&code_verifier={3}&scope=&grant_type=authorization_code",
                                                    code,
                                                    System.Uri.EscapeDataString(redirectURI),
                                                    clientID,
                                                    code_verifier
                                                    );
            StringContent content = new StringContent(tokenRequestBody, Encoding.UTF8, "application/x-www-form-urlencoded");

            // Performs the authorization code exchange.
            HttpClientHandler handler = new HttpClientHandler();

            handler.AllowAutoRedirect = true;
            HttpClient client = new HttpClient(handler);

            // output(Environment.NewLine + "Exchanging code for tokens...");
            HttpResponseMessage response = await client.PostAsync(tokenEndpoint, content);

            string responseString = await response.Content.ReadAsStringAsync();

            //  output(responseString);

            if (!response.IsSuccessStatusCode)
            {
                output("Authorization code exchange failed.");
                return;
            }

            // Sets the Authentication header of our HTTP client using the acquired access token.
            JsonObject tokens      = JsonObject.Parse(responseString);
            string     accessToken = tokens.GetNamedString("access_token");

            client.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", accessToken);

            // Makes a call to the Userinfo endpoint, and prints the results.
            output("Making API Call to Userinfo...");
            HttpResponseMessage userinfoResponse = client.GetAsync(userInfoEndpoint).Result;
            string userinfoResponseContent       = await userinfoResponse.Content.ReadAsStringAsync();

            //Get email from JSON
            JObject employeeInfo = JObject.Parse(userinfoResponseContent);

            employeeEmail = (string)employeeInfo["email"];

            //CheckIfEmployeeExists();

            //ReadFile();
            employeeFile = await storageFolder.CreateFileAsync("testEmployeeFileWrite.json", Windows.Storage.CreationCollisionOption.OpenIfExists);

            string employeeListTemp = await Windows.Storage.FileIO.ReadTextAsync(employeeFile);

            //Check for empty file
            if (employeeListTemp == "")
            {
                Employee sendEmployee = new Employee();
                sendEmployee.IsAdmin      = true;
                sendEmployee.EmailAddress = employeeEmail;
                var employeeParameter = new ProgramParams();
                employeeParameter.FoundEmployee = sendEmployee;
                this.Frame.Navigate(typeof(FirstTimeSetup), employeeParameter);
                employeeExists = false;
            }
            else
            {
                //Check if employee already exists
                JObject employeeChecker = JObject.Parse(employeeListTemp);

                //If employee does not exist
                try
                {
                    if (employeeChecker[employeeEmail] == null)
                    {
                        employeeExists = false;
                    }
                    else
                    {
                        employeeExists = true;
                    }
                }
                catch { employeeExists = false; }
            }
            if (employeeExists)
            {
                string employeeListString = await Windows.Storage.FileIO.ReadTextAsync(employeeFile);

                JObject employeeList = JObject.Parse(employeeListString);

                JObject employeeTarget = (JObject)employeeList[employeeEmail];
                string  EmployeeJSON   = employeeTarget.ToString();

                var      employeeParameter = new ProgramParams();
                Employee foundEmployee     = new Employee();
                Newtonsoft.Json.JsonConvert.PopulateObject(EmployeeJSON, foundEmployee);
                employeeParameter.FoundEmployee = foundEmployee;

                this.Frame.Navigate(typeof(PayrollSystem), employeeParameter);
            }
            else
            {
                Error.Text = "Employee does not exist";
            }
        }