public async Task <IActionResult> UstawRole(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var user = await _userManager.FindByIdAsync(id.ToString());

            if (user == null)
            {
                return(NotFound());
            }

            var Input = new InputModelSetRoles
            {
                Id            = (int)id,
                Email         = user.email,
                StatusMessage = null
            };

            if (await _userManager.IsInRoleAsync(user, "Klient"))
            {
                ViewBag.Klient = "checked";
            }
            if (await _userManager.IsInRoleAsync(user, "Bibliotekarz"))
            {
                ViewBag.Bibliotekarz = "checked";
            }
            if (await _userManager.IsInRoleAsync(user, "Admin"))
            {
                ViewBag.Admin = "checked";
            }

            return(View(Input));
        }
        public async Task <IActionResult> UstawRole(int id, IFormCollection formCollection)
        {
            bool   KlientCheckbox = false, BibliotekarzCheckbox = false, AdminCheckbox = false;
            string KlientCheckboxValue       = "";
            string BibliotekarzCheckboxValue = "";
            string AdminCheckboxValue        = "";
            var    user = await _userManager.FindByIdAsync(id.ToString());

            if (user == null)
            {
                return(NotFound());
            }

            if (!string.IsNullOrEmpty(formCollection["KlientCheckbox"]))
            {
                KlientCheckbox = true;
            }
            if (!string.IsNullOrEmpty(formCollection["BibliotekarzCheckbox"]))
            {
                BibliotekarzCheckbox = true;
            }
            if (!string.IsNullOrEmpty(formCollection["AdminCheckbox"]))
            {
                AdminCheckbox = true;
            }

            if (KlientCheckbox)
            {
                KlientCheckboxValue = formCollection["KlientCheckbox"];
            }
            if (BibliotekarzCheckbox)
            {
                BibliotekarzCheckboxValue = formCollection["BibliotekarzCheckbox"];
            }
            if (AdminCheckbox)
            {
                AdminCheckboxValue = formCollection["AdminCheckbox"];
            }

            bool IsKlient = await _userManager.IsInRoleAsync(user, "Klient");

            bool IsBibliotekarz = await _userManager.IsInRoleAsync(user, "Bibliotekarz");

            bool IsAdmin = await _userManager.IsInRoleAsync(user, "Admin");

            var KlientRoleId = await _context.Role.FirstOrDefaultAsync(m => m.nazwa == "Klient");

            var BibliotekarzRoleId = await _context.Role.FirstOrDefaultAsync(m => m.nazwa == "Bibliotekarz");

            var AdminRoleId = await _context.Role.FirstOrDefaultAsync(m => m.nazwa == "Admin");


            if (KlientCheckbox != IsKlient)
            {
                if (IsKlient)
                {
                    var user_role = await _context.Uzytkownicy_role.FirstOrDefaultAsync(m => m.id_uzytkownika == user.id_uzytkownika &&
                                                                                        m.id_roli == KlientRoleId.id_roli);

                    _context.Remove(user_role);
                    await _context.SaveChangesAsync();

                    ViewBag.Klient = "";
                }
                else
                {
                    await _userManager.AddToRoleAsync(user, "Klient");

                    await _context.SaveChangesAsync();

                    ViewBag.Klient = "checked";
                }
            }
            else
            {
                if (IsKlient)
                {
                    ViewBag.Klient = "checked";
                }
                else
                {
                    ViewBag.Klient = "";
                }
            }

            if (BibliotekarzCheckbox != IsBibliotekarz)
            {
                if (IsBibliotekarz)
                {
                    var user_role = await _context.Uzytkownicy_role.FirstOrDefaultAsync(m => m.id_uzytkownika == user.id_uzytkownika &&
                                                                                        m.id_roli == BibliotekarzRoleId.id_roli);

                    _context.Remove(user_role);
                    await _context.SaveChangesAsync();

                    ViewBag.Bibliotekarz = "";
                }
                else
                {
                    await _userManager.AddToRoleAsync(user, "Bibliotekarz");

                    await _context.SaveChangesAsync();

                    ViewBag.Bibliotekarz = "checked";
                }
            }
            else
            {
                if (IsBibliotekarz)
                {
                    ViewBag.Bibliotekarz = "checked";
                }
                else
                {
                    ViewBag.Bibliotekarz = "";
                }
            }

            if (AdminCheckbox != IsAdmin)
            {
                if (IsAdmin)
                {
                    var user_role = await _context.Uzytkownicy_role.FirstOrDefaultAsync(m => m.id_uzytkownika == user.id_uzytkownika &&
                                                                                        m.id_roli == AdminRoleId.id_roli);

                    _context.Remove(user_role);
                    await _context.SaveChangesAsync();

                    ViewBag.Admin = "";
                }
                else
                {
                    await _userManager.AddToRoleAsync(user, "Admin");

                    await _context.SaveChangesAsync();

                    ViewBag.Admin = "checked";
                }
            }
            else
            {
                if (IsAdmin)
                {
                    ViewBag.Admin = "checked";
                }
                else
                {
                    ViewBag.Admin = "";
                }
            }

            var Input = new InputModelSetRoles
            {
                Id            = (int)id,
                Email         = user.email,
                StatusMessage = "Zmiana ról przebiegła pomyślnie"
            };

            return(View(Input));
        }