예제 #1
0
        public async Task <ActionResult> OnGetAsync(string handler)
        {
            _settingClient = new SettingsClient();
            // ------- request cookie ---------------------
            var    cookieValue = Request.Cookies["MyCookieId"];
            string _pass       = await _settingClient.GetPasswordAsync();

            if (cookieValue == null || cookieValue != _pass)
            {
                return(RedirectToPage("/LoginPage", "Settings"));
            }
            // --------------------------------------------
            StorageDuration = await _settingClient.GetStorageDurationAsync();

            WelcomeMessage = await _settingClient.GetWelcomeTextAsync();

            Password = await _settingClient.GetPasswordAsync();

            var type = await _settingClient.GetNfcReaderTypesAsync();

            SelectedType = type.ToString();

            NfcReaderTypes = new List <SelectListItem>();

            NfcReaderTypes.Add(new SelectListItem
            {
                Value = Core.NfcReaderType.RC522.ToString(),
                Text  = Core.NfcReaderType.RC522.ToString()
            });

            NfcReaderTypes.Add(new SelectListItem
            {
                Value = Core.NfcReaderType.uFr.ToString(),
                Text  = Core.NfcReaderType.uFr.ToString()
            });


            if (handler == null)
            {
                return(RedirectToPage("/LoginPage", "Settings"));
            }

            return(Page());
        }
예제 #2
0
        public async Task <IActionResult> OnGetAsync(string handler)
        {
            var    cookieValue = Request.Cookies["MyCookieId"];
            string _pass       = await _sc.GetPasswordAsync();

            if (cookieValue == null || cookieValue != _pass)
            {
                return(RedirectToPage("/LoginPage", "WriteTag"));
            }

            return(Page());
        }
예제 #3
0
        public async Task <ActionResult> OnPostAsync(string handler)
        {
            _settingClient = new SettingsClient();
            // ------- request cookie ---------------------
            var    cookieValue = Request.Cookies["MyCookieId"];
            string _pass       = await _settingClient.GetPasswordAsync();

            if (cookieValue == null || cookieValue != _pass)
            {
                return(RedirectToPage("/LoginPage", "Settings"));
            }
            // --------------------------------------------
            try
            {
                await _settingClient.PostPasswordAsync(Password);

                await _settingClient.PostStorageDurationAsync(StorageDuration);

                await _settingClient.PostWelcomeTextAsync(WelcomeMessage);

                await _settingClient.PostNfcReaderTypeAsync((APIService.NfcReaderType) Enum.Parse(typeof(APIService.NfcReaderType), SelectedType));
            }
            catch (ApiException <ProblemDetails> ex)
            {
                ModelState.AddModelError("ApiException", ex.Result.Detail);
            }

            NfcReaderTypes = new List <SelectListItem>();

            NfcReaderTypes.Add(new SelectListItem
            {
                Value = Core.NfcReaderType.RC522.ToString(),
                Text  = Core.NfcReaderType.RC522.ToString()
            });

            NfcReaderTypes.Add(new SelectListItem
            {
                Value = Core.NfcReaderType.uFr.ToString(),
                Text  = Core.NfcReaderType.uFr.ToString()
            });

            var type = await _settingClient.GetNfcReaderTypesAsync();

            SelectedType = type.ToString();

            LabelTextSuccess = "Einstellungen erfolgreich gespeichert!";

            return(Page());
        }
예제 #4
0
        public async Task <ActionResult> OnGetAsync(string handler)
        {
            // ------- request cookie ---------------------
            var    cookieValue = Request.Cookies["MyCookieId"];
            string _pass       = await _settingsClient.GetPasswordAsync();

            // --------------------------------------------
            if (handler == null || cookieValue == null || cookieValue != _pass)
            {
                return(RedirectToPage("/LoginPage", "Index"));
            }

            ViewData["Message"] = "Personal Data";

            //await PrepareDb();
            PeopleOverview = await _pc.GetAllPersonsAsync();

            foreach (var person in PeopleOverview)
            {
                person.PhoneNumber = PhoneNumberFormatter.FormatPhoneNumber(person.PhoneNumber);
            }

            return(Page());
        }
예제 #5
0
        public async Task <ActionResult> OnPostAsync(string handler)
        {
            _settingClient = new SettingsClient();

            _password = await _settingClient.GetPasswordAsync();

            // ------------- set cookie ----------------------
            CookieOptions option = new CookieOptions
            {
                Path        = "/",
                HttpOnly    = false,
                IsEssential = true,
                Expires     = DateTime.Now.AddMinutes(15)
            };

            Response.Cookies.Append("MyCookieId", $"{_password}", option);
            // ---- using Microsoft.AspNetCore.Http ----------

            if (Password == _password)
            {
                if (LastPage == "Index")
                {
                    return(RedirectToPage("/RegistrationOverview", handler));
                }
                else if (LastPage == "Settings")
                {
                    return(RedirectToPage("/SettingsPage", handler));
                }
                else if (LastPage == "WriteTag")
                {
                    return(RedirectToPage("/WriteTagPage", handler));
                }
            }

            LabelTextWrongPassword = "******";

            return(Page());
        }
예제 #6
0
        public async Task <ActionResult> OnGetAsync(string handler)
        {
            LastPage = handler;
            // ------- request cookie ---------------------
            _settingClient = new SettingsClient();
            var    cookieValue = Request.Cookies["MyCookieId"];
            string _pass;

            try
            {
                _pass = await _settingClient.GetPasswordAsync();
            }
            catch (Exception)
            {
                return(RedirectToPage("/LoginPage", handler));
            }

            // --------------------------------------------
            if (handler == null || cookieValue == null || cookieValue != _pass)
            {
                return(Page());
            }
            if (cookieValue == _pass)
            {
                if (LastPage == "Index")
                {
                    return(RedirectToPage("/RegistrationOverview", handler));
                }
                else if (LastPage == "Settings")
                {
                    return(RedirectToPage("/SettingsPage", handler));
                }
            }

            return(Page());
        }