/// <summary>
        /// Abmelden durch Wechsel zur Startansicht (FensterAnmOdReg) und Speichern von Defaultwerten
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void btnAbmelden_wechselZuFensterAnmelden(object sender, RoutedEventArgs e)
        {
            // Sperren der Oberfläche
            SperrenDerAnsicht();

            // UserEinstellungen auf Default zurücksetzen
            bool speichernErfolgreich = false;
            UserEinstellungen einst   = new UserEinstellungen();

            einst.Radius = 50;

            // "Neue" Werte speichern
            speichernErfolgreich = await DatenVerarbeitung.UserEinstellungenSpeichern(einst);

            // Partyliste aus Zwischenspeichern löschen
            IEnumerable <Party> liste = null;

            speichernErfolgreich = await DatenVerarbeitung.PartysSpeichern(liste);

            // Oberfläche entsperren
            EntsperrenDerAnsicht();

            // Wechsel zum Start
            this.Frame.Navigate(typeof(FensterAnmOdReg));
        }
        /// <summary>
        /// Wechsel zur Hauptansicht und Speichern der eingegeben Daten.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void Speichern_DatenSichernUndWechselZuHauptansicht(object sender, RoutedEventArgs e)
        {
            // Sperren der Oberfläche
            SperrenDerAnsicht();

            bool speichernErfolgreich = false;

            UserEinstellungen einst = new UserEinstellungen();

            // Aktueller Wert des Sliders für den Radius
            einst.Radius     = (float)sliderSuchradius.Value;
            einst.GPSErlaubt = toggleSwitchGPSErlaubnis.IsOn;
            // Weitere Einstellungen möglich

            // Speichern der Nutzereinstellungen in einer Datei
            speichernErfolgreich = await DatenVerarbeitung.UserEinstellungenSpeichern(einst);

            // Wechsel zur Hauptansicht und Ausgabe des Erfolgs/Misserfolgs beim Speichern
            if (speichernErfolgreich == true)
            {
                this.Frame.Navigate(typeof(FensterHauptansicht));
            }
            else
            {
                var message = new MessageDialog(Meldungen.UserEinstellungen.SpeicherFehler, "Fehler!");
                await message.ShowAsync();

                this.Frame.Navigate(typeof(FensterHauptansicht));
            }

            // Oberfläche entsperren
            EntsperrenDerAnsicht();
        }
        /// <summary>
        /// Stellt die Erlaubnis für die GPS-Nutzung ein und fragt bei Änderungen nochmal nach.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void toggleSwitchGPSErlaubnis_GPSEinstellen(object sender, RoutedEventArgs e)
        {
            // Oberfläche sperren
            SperrenDerAnsicht();

            UserEinstellungen einst = await DatenVerarbeitung.UserEinstellungenAuslesen();

            var accessStatus = await Geolocator.RequestAccessAsync();

            if (accessStatus == GeolocationAccessStatus.Allowed)
            {
                // Status des ToggleSwitches NACH dem Antippen
                if (toggleSwitchGPSErlaubnis.IsOn == true)
                {
                    einst.GPSErlaubt = true;
                }
                else
                {
                    einst.GPSErlaubt = false;
                }
            }
            else
            {
                einst.GPSErlaubt = false;
                toggleSwitchGPSErlaubnis.IsOn = false; // Da GPS nicht erlaubt
                var message = new MessageDialog(Meldungen.UserEinstellungen.FehlerGPS, "Achtung!");
                await message.ShowAsync();
            }

            // Neue Einstellungen speichern
            await DatenVerarbeitung.UserEinstellungenSpeichern(einst);

            // Oberfläche entsperren
            EntsperrenDerAnsicht();
        }
        /// <summary>
        /// Erstellen des neuen Nutzers und bei Erfolg wechseln zur Hauptansicht.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void Bestaetigen_WechselZuHauptansicht(object sender, RoutedEventArgs e)
        {
            bool status = false;
            bool erfolg = false;
            bool speichernErfolgreich = false;

            // Daten auslesen
            neuerNutzer.Username = textBoxRegNUTZERNAME.Text;
            neuerNutzer.Email    = textBoxRegEMAIL.Text;

            // Oberfläche sperren
            SperrenDerAnsicht();

            if (pwBoxPASSWORT.Password == pwBoxPASSWORTBEST.Password)
            {
                // Speichern des Passworts
                neuerNutzer.Password = pwBoxPASSWORTBEST.Password;
                // Anlegen des neuen Nutzers
                status = await BackEndComUserLogik.CreateUser(neuerNutzer);

                progRingReg.Visibility = Visibility.Collapsed;
                progRingReg.IsActive   = false;

                // Abhängig vom Erfolg/Misserfolg beim Erstellen wird eine Nachricht angezeigt und ggf. die Ansicht gewechselt.
                if (status == true)
                {
                    var message = new MessageDialog(Meldungen.Registrierung.ErfolgEins + neuerNutzer.Email.ToString() + Meldungen.Registrierung.ErfolgZwei, "Nutzer erfolgreich registriert!");
                    await message.ShowAsync();

                    // Speichern der Login-Daten
                    erfolg = await DatenVerarbeitung.LoginSpeichern(neuerNutzer);

                    // UserEinstellungen auf Default zurücksetzen
                    UserEinstellungen einst = new UserEinstellungen();
                    einst.Radius     = 50;
                    einst.GPSErlaubt = false;

                    // "Neue" Werte speichern
                    speichernErfolgreich = await DatenVerarbeitung.UserEinstellungenSpeichern(einst);

                    if (erfolg == true && speichernErfolgreich == true)
                    {
                        // Wechsel zur Hauptansicht
                        this.Frame.Navigate(typeof(FensterHauptansicht));
                    }
                    else
                    {
                        message = new MessageDialog(Meldungen.Registrierung.SpeicherFehler, "Fehler beim Speichern!");
                        await message.ShowAsync();
                    }
                }
                else
                {
                    var message = new MessageDialog(Meldungen.Registrierung.ErstellenFehler, "Fehler beim Erstellen!");
                    await message.ShowAsync();
                }
            }
            else
            {
                var message = new MessageDialog(Meldungen.Registrierung.PasswortFehler, "Passwörter sind nciht identisch!");
                await message.ShowAsync();
            }

            // Entsperren der Oberfläche
            EntsperrenDerAnsicht();
        }
Example #5
0
        /// <summary>
        /// Hier werden die Daten vom Nutzer validiert. Entweder ändert sich die Anzeige (korrekte Daten) oder der Nutzer erhält eine Nachricht,
        /// dass die eingegeben Daten falsch sind.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void Anmelden_WechselZuHauptansicht(object sender, RoutedEventArgs e)
        {
            bool korrekteEingabe          = false;
            bool speichernErfolgreich     = false;
            bool einstellungenErfolgreich = false;

            // UserEinstellungen auf Default zurücksetzen
            UserEinstellungen einst = new UserEinstellungen();

            einst.Radius     = 50;
            einst.GPSErlaubt = false;

            // "Neue" Werte speichern
            speichernErfolgreich = await DatenVerarbeitung.UserEinstellungenSpeichern(einst);

            // Partyliste aus Zwischenspeichern löschen
            IEnumerable <Party> liste = null;

            speichernErfolgreich = await DatenVerarbeitung.PartysSpeichern(liste);

            anmeldung.Username = txtBoxAnmNUTZERNAME.Text;
            anmeldung.Email    = txtBlAnmEMAIL.Text;
            anmeldung.Password = pwBoxPASSWORT.Password;

            // Sperren der Ansicht
            SperrenDerAnsicht();

            korrekteEingabe = await DatenVerarbeitung.LoginUeberpruefen(anmeldung);

            if (korrekteEingabe == true)
            {
                // Speichern der Anmeldedaten in eine Textdatei
                speichernErfolgreich = await DatenVerarbeitung.LoginSpeichern(anmeldung);

                // Default-Radius für Suchumfeld in Datei speichern
                einstellungenErfolgreich = await DatenVerarbeitung.UserEinstellungenSpeichern(einst);

                if (speichernErfolgreich == true && einstellungenErfolgreich == true)
                {
                    // Wenn alles erfolgreich gespeichert wurde
                    progressRingAnmeldung.Visibility = Visibility.Collapsed;
                    progressRingAnmeldung.IsActive   = false;
                    var message = new MessageDialog(Meldungen.Anmeldung.Erfolg, "Erfolg!");
                    await message.ShowAsync();

                    this.Frame.Navigate(typeof(FensterHauptansicht));
                }
                else
                {
                    var message = new MessageDialog(Meldungen.Anmeldung.UnbekannterFehler, "Unbekannter Fehler!");
                    await message.ShowAsync();
                }
            }
            else
            {
                var message = new MessageDialog(Meldungen.Anmeldung.Misserfolg, "Fehler bei der Anmeldung!");
                await message.ShowAsync();
            }

            // Oberfläche entsperren
            EntsperrenDerAnsicht();
        }