예제 #1
0
 private void RefreshButtonClick(object sender, RoutedEventArgs e)
 {
     try
     {
         X509Certificate2 cert = new X509Certificate2(KEYSTORE_PATH, PASSWORD);
         var client            = new EventsPortClient("EventsPortSoap11");
         client.ClientCredentials.ClientCertificate.Certificate   = cert;
         ServicePointManager.ServerCertificateValidationCallback +=
             (mender, certificate, chain, sslPolicyErrors) => true;
         getEventDetailsByIdRequest request = new getEventDetailsByIdRequest();
         request.id = SelectedEvent.Id;
         getEventDetailsByIdResponse response = client.getEventDetailsById(request);
         SelectedEvent.Name        = response.eventDetails.name;
         SelectedEvent.Type        = response.eventDetails.type;
         SelectedEvent.Date        = response.eventDetails.date;
         SelectedEvent.Year        = response.eventDetails.year;
         SelectedEvent.Month       = response.eventDetails.month;
         SelectedEvent.Week        = response.eventDetails.week;
         SelectedEvent.Description = response.eventDetails.description;
         MessageBox.Show("Event updated", "Event info", MessageBoxButton.OK, MessageBoxImage.Information);
     }
     catch (Exception ex)
     {
         System.Console.WriteLine(ex.Message);
     }
 }
예제 #2
0
        private void LoadObjects()
        {
            try
            {
                X509Certificate2 cert = new X509Certificate2(KEYSTORE_PATH, PASSWORD);
                var client            = new EventsPortClient("EventsPortSoap11");
                client.ClientCredentials.ClientCertificate.Certificate   = cert;
                ServicePointManager.ServerCertificateValidationCallback +=
                    (mender, certificate, chain, sslPolicyErrors) => true;

                getAllEventsRequest request = new getAllEventsRequest();
                @event[]            events  = client.getAllEvents(request);

                foreach (@event ev in events)
                {
                    MainWindowVM.Events.Add(new Event(ev));
                }
            }
            catch (Exception e)
            {
                System.Console.WriteLine(e.Message);
            }

            MainWindowVM.Users.Add(new User("admin", "admin", true));
        }
예제 #3
0
        private void ExecutedDeleteEvent(object sender, ExecutedRoutedEventArgs e)
        {
            int   tempIndex = ListBoxAvailableEvents.SelectedIndex;
            Event removed   = AdminWindowVM.Events[tempIndex];

            try
            {
                X509Certificate2 cert = new X509Certificate2(KEYSTORE_PATH, PASSWORD);
                var client            = new EventsPortClient("EventsPortSoap11");
                client.ClientCredentials.ClientCertificate.Certificate   = cert;
                ServicePointManager.ServerCertificateValidationCallback +=
                    (mender, certificate, chain, sslPolicyErrors) => true;
                deleteEventRequest request = new deleteEventRequest();
                request.eventId = removed.Id;
                deleteEventResponse response = client.deleteEvent(request);

                getAllEventsRequest request2 = new getAllEventsRequest();
                @event[]            events   = client.getAllEvents(request2);

                AdminWindowVM.Events.Clear();
                foreach (@event ev in events)
                {
                    AdminWindowVM.Events.Add(new Event(ev));
                }
            }
            catch (Exception ex)
            {
                System.Console.WriteLine(ex.Message);
            }

            if (AdminWindowVM.Events.Count > 0)
            {
                ListBoxAvailableEvents.SelectedIndex = tempIndex - 1;
            }
        }
예제 #4
0
        private void TryLogin()
        {
            try
            {
                var          client  = new EventsPortClient("EventsPortSoap11");
                loginRequest request = new loginRequest();
                request.username = TextBoxLogin.Text;
                request.password = TextBoxPassword.Password;
                loginResponse response = client.login(request);

                if (response.user == null)
                {
                    MessageBox.Show("Incorrect username or password", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    TextBoxPassword.Password = "";
                }
                else
                {
                    LoggedUser   = new User(response.user.username, response.user.password, response.user.admin);
                    DialogResult = true;
                    Close();
                }
            }
            catch (Exception e)
            {
                System.Console.WriteLine(e.Message);
            }
        }
예제 #5
0
 private void PdfButton_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         X509Certificate2 cert = new X509Certificate2(KEYSTORE_PATH, PASSWORD);
         var client            = new EventsPortClient("EventsPortSoap11");
         client.ClientCredentials.ClientCertificate.Certificate   = cert;
         ServicePointManager.ServerCertificateValidationCallback +=
             (mender, certificate, chain, sslPolicyErrors) => true;
         generateEventsPDFRequest  request  = new generateEventsPDFRequest();
         generateEventsPDFResponse response = client.generateEventsPDF(request);
         File.WriteAllBytes("ListOfEvents.pdf", response.content);
         MessageBox.Show("PDF generated", "PDF info", MessageBoxButton.OK, MessageBoxImage.Information);
     }
     catch (Exception ex)
     {
         System.Console.WriteLine(ex.Message);
     }
 }
예제 #6
0
        private void ModifyEventButtonClick(object sender, RoutedEventArgs e)
        {
            try
            {
                X509Certificate2 cert = new X509Certificate2(KEYSTORE_PATH, PASSWORD);
                var client            = new EventsPortClient("EventsPortSoap11");
                client.ClientCredentials.ClientCertificate.Certificate   = cert;
                ServicePointManager.ServerCertificateValidationCallback +=
                    (mender, certificate, chain, sslPolicyErrors) => true;
                modifyEventRequest request = new modifyEventRequest();
                request.@event      = new @event();
                [email protected]   = SelectedEvent.Id;
                [email protected] = TextBoxName.Text;
                type type = SelectedEvent.Type;
                Enum.TryParse <type>(TextBoxType.Text, out type);
                [email protected] = type;
                [email protected] = DatePickerReleaseDate.SelectedDate.Value;
                int week = 0;
                Int32.TryParse(TextBoxWeek.Text, out week);
                [email protected] = week;
                int month = 0;
                Int32.TryParse(TextBoxMonth.Text, out month);
                [email protected] = month;
                int year = 0;
                Int32.TryParse(TextBoxYear.Text, out year);
                [email protected]        = year;
                [email protected] = TextBoxDescription.Text;
                modifyEventResponse response = client.modifyEvent(request);

                getAllEventsRequest request2 = new getAllEventsRequest();
                @event[]            events   = client.getAllEvents(request2);

                AdminWindowVM.Events.Clear();
                foreach (@event ev in events)
                {
                    AdminWindowVM.Events.Add(new Event(ev));
                }
            }
            catch (Exception ex)
            {
                System.Console.WriteLine(ex.Message);
            }
        }
예제 #7
0
        private void TryRegister()
        {
            if (TextBoxRegisterPassword.Text != TextBoxRepeatPassword.Password)
            {
                MessageBox.Show("Passwords do not match", "Password error", MessageBoxButton.OK, MessageBoxImage.Warning);
                ClearPassword();
            }
            else
            {
                try
                {
                    var             client  = new EventsPortClient("EventsPortSoap11");
                    registerRequest request = new registerRequest();
                    request.username = TextBoxRegisterLogin.Text;
                    request.password = TextBoxRegisterPassword.Text;
                    registerResponse response = client.register(request);

                    if (response.status == opStatusCode.FAULT)
                    {
                        MessageBox.Show("User with that username already exists", "Username taken", MessageBoxButton.OK, MessageBoxImage.Error);
                        ClearPassword();
                    }
                    else if (response.status == opStatusCode.OK)
                    {
                        RegisteredUser = new User
                        {
                            Username = TextBoxRegisterLogin.Text,
                            IsAdmin  = false,
                            Password = TextBoxRegisterPassword.Text
                        };
                        DialogResult = true;
                        MessageBox.Show("Account successfully created", "Registration success", MessageBoxButton.OK, MessageBoxImage.Information);
                        Close();
                    }
                }
                catch (Exception e)
                {
                    System.Console.WriteLine(e.Message);
                }
            }
        }
예제 #8
0
        private void FilterAvailableEventsViaService()
        {
            try
            {
                X509Certificate2 cert = new X509Certificate2(KEYSTORE_PATH, PASSWORD);
                var client            = new EventsPortClient("EventsPortSoap11");
                client.ClientCredentials.ClientCertificate.Certificate   = cert;
                ServicePointManager.ServerCertificateValidationCallback +=
                    (mender, certificate, chain, sslPolicyErrors) => true;

                switch (ComboBoxSearchType.SelectedIndex)
                {
                case 0:
                {
                    getAllEventsRequest request = new getAllEventsRequest();
                    @event[]            events  = client.getAllEvents(request);
                    MainWindowVM.Events.Clear();
                    foreach (@event ev in events)
                    {
                        MainWindowVM.Events.Add(new Event(ev));
                    }
                    break;
                }

                case 1:
                {
                    CollectionViewSource.GetDefaultView(ListOfAvailableEvents.ItemsSource).Filter = FilterNameEvent;
                    break;
                }

                case 2:
                {
                    DateTime searchedDate;
                    if (!DateTime.TryParseExact(UserSearchTextBox.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out searchedDate))
                    {
                        break;
                    }
                    getEventsByDateRequest request = new getEventsByDateRequest();
                    request.date = searchedDate;
                    @event[] events = client.getEventsByDate(request);

                    MainWindowVM.Events.Clear();
                    foreach (@event ev in events)
                    {
                        MainWindowVM.Events.Add(new Event(ev));
                    }
                    break;
                }

                case 3:
                {
                    int week;
                    if (!Int32.TryParse(UserSearchTextBox.Text, out week))
                    {
                        break;
                    }
                    getEventsByWeekRequest request = new getEventsByWeekRequest();
                    request.week = week;
                    @event[] events = client.getEventsByWeek(request);

                    MainWindowVM.Events.Clear();
                    foreach (@event ev in events)
                    {
                        MainWindowVM.Events.Add(new Event(ev));
                    }
                    break;
                }

                default:
                {
                    CollectionViewSource.GetDefaultView(ListOfAvailableEvents.ItemsSource).Filter = null;
                    break;
                }
                }
            }
            catch (Exception ex)
            {
                System.Console.WriteLine(ex.Message);
            }
        }