// GET: Admin
        public ActionResult Index()
        {
            var roles       = MemberShipTools.NewRoleManager().Roles.ToList();
            var userManager = MemberShipTools.NewUserManager();
            var users       = userManager.Users.Select(x => new UsersViewModel
            {
                UserId       = x.Id,
                Email        = x.Email,
                Name         = x.Name,
                Surname      = x.Surname,
                UserName     = x.UserName,
                Salary       = x.Salary,
                RegisterDate = x.RegisterDate,
                RoleId       = x.Roles.FirstOrDefault().RoleId,
                RoleName     = roles.FirstOrDefault(y => y.Id == x.Roles.FirstOrDefault().RoleId).Name
            }).ToList();

            List <SelectListItem> RoleList = new List <SelectListItem>();

            roles.ForEach(x => new SelectListItem()
            {
                Text  = x.Name,
                Value = x.Id
            });
            ViewBag.roles = RoleList;
            return(View(users));
        }
        [ValidateAntiForgeryToken] //Güvenlik testleri için
        public async Task <ActionResult> Login(LoginViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var userManager = MemberShipTools.NewUserManager();
            var user        = await userManager.FindAsync(model.Username, model.Password);

            if (user == null)
            {
                ModelState.AddModelError(string.Empty, "Böyle bir kullanıcı bulunamadı");
                return(View(model));
            }
            //Kullanıcı varsa sigin ile oturum açılır
            var authManager = HttpContext.GetOwinContext().Authentication;
            //Authentication işlemini düzenlemek için kullanılır
            var userIdentity = await userManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie); //kimlik oluşturulur

            authManager.SignIn(new AuthenticationProperties
            {
                IsPersistent = model.RememberMe //rememberme seçili ise kalıcı bir giriş oluşturulur
            }, userIdentity);
            return(RedirectToAction("Index", "Home"));
        }
Exemple #3
0
        public async Task <ActionResult> Profil(ProfilePasswordViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            try
            {
                var userStore   = MemberShipTools.NewUserStore();
                var userManager = new UserManager <ApplicationUser>(userStore);
                var user        = userManager.FindById(model.ProfileModel.Id);

                user.Name    = model.ProfileModel.Name;
                user.Surname = model.ProfileModel.Surname;
                if (user.Email != model.ProfileModel.Email)
                {
                    user.Email = model.ProfileModel.Email;
                    if (HttpContext.User.IsInRole("Admin"))
                    {
                        userManager.RemoveFromRole(user.Id, "Admin");
                    }
                    else if (HttpContext.User.IsInRole("User"))
                    {
                        userManager.RemoveFromRole(user.Id, "User");
                    }
                    userManager.AddToRole(user.Id, "Passive");
                    user.ActivationCode = Guid.NewGuid().ToString().Replace("-", "");
                    string siteUrl = Request.Url.Scheme + Uri.SchemeDelimiter + Request.Url.Host + (Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port);

                    await SiteSettings.SendMail(new MailModel
                    {
                        To      = user.Email,
                        Subject = "Personel Yönetimi-Aktivasyon",
                        Message = $"Merhaba {user.Name}{user.Surname}, </br> Sisteme başarı ile kayıt oldunuz. <br/> Hesabınızı aktifleştirmek için <a href='{siteUrl}/Acount/Activation?code={user.ActivationCode}'>Aktivasyon Kodu</a>",
                    });
                }
                await userStore.UpdateAsync(user);

                await userStore.Context.SaveChangesAsync();

                var model1 = new ProfilePasswordViewModel()
                {
                    ProfileModel = new ProfilViewModel
                    {
                        Id       = user.Id,
                        Email    = user.Email,
                        Name     = user.Name,
                        Surname  = user.Surname,
                        UserName = user.UserName
                    }
                };
                ViewBag.sonuc = "Bilgileriniz Güncellendi";
                return(View(model1));
            }
            catch (Exception ex)
            {
                ViewBag.sonuc = ex.Message;
                return(View(model));
            }
        }
Exemple #4
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            RouteConfig.RegisterRoutes(RouteTable.Routes);

            var roleManager = MemberShipTools.NewRoleManager();

            if (!roleManager.RoleExists("Admin"))
            {
                roleManager.Create(new ApplicationRole()
                {
                    Name        = "Admin",
                    Description = "Site Yöneticisi"
                });
            }
            if (!roleManager.RoleExists("User"))
            {
                roleManager.Create(new ApplicationRole()
                {
                    Name        = "User",
                    Description = "Standart kayıtlı üye"
                });
            }
            if (!roleManager.RoleExists("Banned"))
            {
                roleManager.Create(new ApplicationRole()
                {
                    Name        = "Banned",
                    Description = "Yasaklı Üye"
                });
            }
        }
Exemple #5
0
        public async Task <ActionResult> UpdatePassword(ProfilePasswordViewModel model)
        {
            if (model.PasswordModel.NewPassword != model.PasswordModel.NewPasswordConfirm)
            {
                ModelState.AddModelError(string.Empty, "Şifreler Uyuşmuyor");
                return(View("Profil", model));
            }
            try
            {
                var userStore   = MemberShipTools.NewUserStore();
                var userManager = new UserManager <ApplicationUser>(userStore);
                var user        = userManager.FindById(model.ProfileModel.Id);
                user = userManager.Find(user.UserName, model.PasswordModel.OldPassword);
                if (user == null)
                {
                    ModelState.AddModelError(string.Empty, "Mevcut şifreniz doğru değil");
                    return(View("Profil", "Acount", model));
                }

                await userStore.SetPasswordHashAsync(user, userManager.PasswordHasher.HashPassword(model.PasswordModel.NewPassword));

                await userStore.UpdateAsync(user);

                await userStore.Context.SaveChangesAsync();

                HttpContext.GetOwinContext().Authentication.SignOut();
                return(RedirectToAction("Profil"));
            }
            catch (Exception ex)
            {
                ViewBag.sonuc = "Güncelleştirme hatalı" + ex.Message;
                return(View("Profil", "Acount", model));
            }
        }
        public async Task <ActionResult> Profil(ProfilePasswordViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            try
            {
                var userStore   = MemberShipTools.NewUserStore();
                var userManager = new UserManager <AppUser>(userStore);
                var user        = userManager.FindById(model.ProfileModel.Id);
                user.Ad    = model.ProfileModel.Ad;
                user.Soyad = model.ProfileModel.Soyad;
                if (user.Email != model.ProfileModel.Email)
                {
                    user.Email = model.ProfileModel.Email;
                    if (HttpContext.User.IsInRole("Admin"))
                    {
                        userManager.RemoveFromRole(user.Id, "Admin");
                    }
                    else if (HttpContext.User.IsInRole("User"))
                    {
                        userManager.RemoveFromRole(user.Id, "User");
                    }
                    userManager.AddToRole(user.Id, "Passive");
                    user.ActivationCode = Guid.NewGuid().ToString().Replace("-", "");
                    string siteUrl = Request.Url.Scheme + Uri.SchemeDelimiter + Request.Url.Host +
                                     (Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port);
                    await SiteSettings.SendMail(new MailViewModel
                    {
                        Kime  = user.Email,
                        Konu  = "Personel Yönetimi - Aktivasyon",
                        Mesaj =
                            $"Merhaba {user.Ad} {user.Soyad} <br/>Email adresinizi <b>değiştirdiğiniz</b> için hesabınızı tekrar aktif etmelisiniz. <a href='{siteUrl}/Hesap/Activation?code={user.ActivationCode}'>Aktivasyon Kodu</a>"
                    });
                }
                await userStore.UpdateAsync(user);

                await userStore.Context.SaveChangesAsync();

                var model1 = new ProfilePasswordViewModel()
                {
                    ProfileModel = new ProfileViewModel
                    {
                        Id          = user.Id,
                        Email       = user.Email,
                        Ad          = user.Ad,
                        Soyad       = user.Soyad,
                        KullaniciAd = user.UserName
                    }
                };
                ViewBag.sonuc = "Bilgileriniz güncelleşmiştir";
                return(View(model1));
            }
            catch (Exception ex)
            {
                ViewBag.sonuc = ex.Message;
                return(View(model));
            }
        }
        public async Task <ActionResult> UpdatePassword(ProfilePasswordViewModel model)
        {
            if (model.PasswordModel.YeniSifre != model.PasswordModel.SifreTekrar)
            {
                ModelState.AddModelError(string.Empty, "Şifreler uyuşmuyor");
                return(View("Profil", model));
            }
            try
            {
                var userStore   = MemberShipTools.NewUserStore();
                var userManager = new UserManager <AppUser>(userStore);
                var user        = userManager.FindById(model.ProfileModel.Id);
                user = userManager.Find(user.UserName, model.PasswordModel.EskiSifre);
                if (user == null)
                {
                    ModelState.AddModelError(string.Empty, "Mevcut şifreniz yanlış girilmiştir");
                    return(View("Profil", model));
                }
                await userStore.SetPasswordHashAsync(user, userManager.PasswordHasher.HashPassword(model.PasswordModel.YeniSifre));

                await userStore.UpdateAsync(user);

                await userStore.Context.SaveChangesAsync();

                HttpContext.GetOwinContext().Authentication.SignOut();
                return(RedirectToAction("Profil"));
            }
            catch (Exception ex)
            {
                ViewBag.sonuc = "Güncelleşme işleminde bir hata oluştu. " + ex.Message;
                return(View("Profil", model));
            }
        }
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            var roleManager = MemberShipTools.NewRoleManager();
            if (!roleManager.RoleExists("Admin"))
            {
                roleManager.Create(new ApplicationRole()
                {
                    Name = "Admin",
                    Description = "Sistem Yöneticisi"
                });
            
            }
            if (!roleManager.RoleExists("User"))
            {
                roleManager.Create(new ApplicationRole()
                {
                    Name = "User",
                    Description = "Sistem Kullanıcısı"
                });

            }
            if (!roleManager.RoleExists("Passive"))
            {
                roleManager.Create(new ApplicationRole()
                {
                    Name = "Passive",
                    Description = "E-mail Aktivasyonu Gerekli"
                });

            }
        }
        public async Task <ActionResult> Login(LoginViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var userManager = MemberShipTools.NewUserManager();
            var user        = await userManager.FindAsync(model.KullaniciAd, model.Sifre);

            if (user == null)
            {
                ModelState.AddModelError(string.Empty, "Böyle bir kullanıcı bulunamadı");
                return(View(model));
            }
            var authManager  = HttpContext.GetOwinContext().Authentication;
            var userIdentity = await userManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie);

            authManager.SignIn(new AuthenticationProperties
            {
                IsPersistent = true
            }, userIdentity);


            return(RedirectToAction("Index", "Home"));
        }
Exemple #10
0
        public async Task <ActionResult> Activation(string code)
        {
            var userStore   = MemberShipTools.NewUserStore();
            var userManager = new UserManager <ApplicationUser>(userStore);
            var sonuc       = userStore.Context.Set <ApplicationUser>().FirstOrDefault(x => x.ActivationCode == code);

            if (sonuc == null)
            {
                ViewBag.sonuc = "Aktivasyon işlemi Başarısız";
                return(View());
            }
            sonuc.EmailConfirmed = true;
            await userStore.UpdateAsync(sonuc);

            await userStore.Context.SaveChangesAsync();

            userManager.RemoveFromRole(sonuc.Id, "Passive");
            userManager.AddToRole(sonuc.Id, "User");

            ViewBag.sonuc = $"Merhaba{sonuc.Name} {sonuc.Surname}<br/> Aktivasyon işleminiz başarılı";

            await SiteSettings.SendMail(new MailModel()
            {
                To      = sonuc.Email,
                Message = ViewBag.sonuc.ToString(),
                Subject = "Aktivasyon",
                Bcc     = "*****@*****.**"
            });

            return(View());
        }
Exemple #11
0
        public async Task <ActionResult> ChangePassword(ChangePasswordViewModel model)
        {
            if (!ModelState.IsValid)
            {
                ModelState.AddModelError(string.Empty, "Mevcut şifre yanlış...");
                return(RedirectToAction("MyProfile"));
            }

            var userStore   = MemberShipTools.NewUserStore();
            var userManager = new UserManager <ApplicationUser>(userStore);

            var userName = userManager.FindById(HttpContext.User.Identity.GetUserId()).UserName;

            var user = userManager.Find(userName, model.OldPassword);

            if (user == null)
            {
                ModelState.AddModelError(string.Empty, "Mevcut şifre yanlış...");
                return(RedirectToAction("MyProfile"));
            }

            //yeni passwordu sifrele ve güncelle:
            await userStore.SetPasswordHashAsync(user, userManager.PasswordHasher.HashPassword(model.Password));

            await userStore.UpdateAsync(user);

            await userStore.Context.SaveChangesAsync();

            return(RedirectToAction("Logout"));
        }
        public async Task <ActionResult> UpdatePassword(ProfileViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            try
            {
                var userStore   = MemberShipTools.NewUserStore();
                var userManager = new UserManager <ApplicationUser>(userStore);
                var user        = userManager.FindById(model.Id);
                user = userManager.Find(user.UserName, model.OldPassword);
                if (user == null)
                {
                    ModelState.AddModelError(string.Empty, "Mevcut Şifreniz yanlış girilmiştir");
                    return(View("Profil", model));
                }
                await userStore.SetPasswordHashAsync(user, userManager.PasswordHasher.HashPassword(model.NewPassword));

                await userStore.UpdateAsync(user);

                await userStore.Context.SaveChangesAsync();

                HttpContext.GetOwinContext().Authentication.SignOut();
                return(View());
            }
            catch (Exception ex)
            {
                ViewBag.sonuc = "Hata oluştu" + ex.Message;
                return(View("Profil", model));
            }
        }
Exemple #13
0
        public async Task <ActionResult> EditUser(UsersViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var roles       = MemberShipTools.NewRoleManager().Roles.ToList();
            var userStore   = MemberShipTools.NewUserStore();
            var userManager = new UserManager <ApplicationUser>(userStore);
            var user        = userManager.FindById(model.userId);

            if (user == null)
            {
                return(View("Index"));
            }
            user.UserName = model.Username;
            user.Name     = model.Name;
            user.Surname  = model.Surname;
            user.Email    = model.Email;
            user.Salary   = model.Salary;

            if (model.RoleId != user.Roles.ToList().First().RoleId)
            {
                var yeniRoleName = roles.First(x => x.Id == model.RoleId).Name;
                userManager.AddToRole(model.userId, yeniRoleName);
                var eskiRoleName = roles.First(x => x.Id == user.Roles.ToList().First().RoleId).Name;
                userManager.RemoveFromRole(model.userId, eskiRoleName);
            }
            //await userManager.DeleteAsync(user);//--kullanici silme
            await userStore.UpdateAsync(user);

            await userStore.Context.SaveChangesAsync();

            return(RedirectToAction("EditUser", new { id = model.userId }));
        }
        public async Task <ActionResult> Profile(ProfilePasswordViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            try
            {
                var userStore   = MemberShipTools.NewUserStore();
                var userManager = new UserManager <ApplicationUser>(userStore);
                var user        = userManager.FindById(model.ProfileViewModel.Id);
                user.Name    = model.ProfileViewModel.Name;
                user.Surname = model.ProfileViewModel.Surname;
                if (user.Email != model.ProfileViewModel.Email)
                {
                    user.Email = model.ProfileViewModel.Email;//aktivasyon gerekli
                    if (HttpContext.User.IsInRole("Admin"))
                    {
                        userManager.RemoveFromRole(user.Id, "Admin");
                    }
                    else if (HttpContext.User.IsInRole("User"))
                    {
                        userManager.RemoveFromRole(user.Id, "User");
                    }
                    userManager.AddToRole(user.Id, "Passive");
                    user.ActivationCode = Guid.NewGuid().ToString().Replace("-", "");
                    string siteUrl = Request.Url.Scheme + Uri.SchemeDelimiter + Request.Url.Host + (Request.Url.IsDefaultPort ? "" : ":" + Request.Url.Port);
                    await SiteSettings.SendMail(new MailViewModel
                    {
                        To      = user.Email,
                        Subject = "Personel Yönetimi - Aktivasyon",
                        Message = $"Merhaba{user.Name} {user.Surname}<br/>Email adresinizi<b>değiştirdiğiniz.</b> için hesabınızı tekrar aktif etmelisiniz.<a href='{siteUrl}/Account/Activation?code={user.ActivationCode}'>Aktivasyon İçin Tıklayınız.</a>"
                    });

                    HttpContext.GetOwinContext().Authentication.SignOut();
                }
                await userStore.UpdateAsync(user);

                await userStore.Context.SaveChangesAsync();

                var model1 = new ProfilePasswordViewModel()
                {
                    ProfileViewModel = new ProfileViewModel
                    {
                        Id       = user.Id,
                        Email    = user.Email,
                        Surname  = user.Surname,
                        Name     = user.Name,
                        Username = user.UserName
                    }
                };
                ViewBag.sonuc = "<b>Bilgileriniz Güncellenmiştir.</b>";
                return(View(model1));
            }
            catch (Exception ex)
            {
                ViewBag.sonuc = ex.Message;
                return(View(model));
            }
        }
Exemple #15
0
        public async Task <ActionResult> RecoverPassword(string email)
        {
            var userStore   = MemberShipTools.NewUserStore();
            var userManager = new UserManager <ApplicationUser>(userStore);
            var sonuc       = userStore.Context.Set <ApplicationUser>().FirstOrDefault(x => x.Email == email);

            if (sonuc == null)
            {
                ViewBag.sonuc = "E mail Adresiniz sisteme kayıtlı değil";
                return(View());
            }
            var randompass = Guid.NewGuid().ToString().Replace("-", "").Substring(0, 6);
            await userStore.SetPasswordHashAsync(sonuc, userManager.PasswordHasher.HashPassword(randompass));

            await userStore.UpdateAsync(sonuc);

            await userStore.Context.SaveChangesAsync();

            await SiteSettings.SendMail(new MailModel()
            {
                To      = sonuc.Email,
                Subject = "Şifreniz Değişti",
                Message = $"Merhaba {sonuc.Name}{sonuc.Surname} <br/> Yeni Şifreniz:<b>{randompass}</b>"
            });

            ViewBag.sonuc = "E mail adresinize yeni şifreniz gönderilmiştir";
            return(View());
        }
Exemple #16
0
        public async Task <ActionResult> Login(LoginViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var userManager = MemberShipTools.NewUserManager();

            var user = await userManager.FindAsync(model.UserName, model.Password);

            if (user == null)
            {
                ModelState.AddModelError(string.Empty, "Böyle bir kullanıcı bulunamadı!");
                return(View(model));
            }
            else
            {
                //kullanıcıyı bulduysa giris yap cıkıs yap (sign in, sign out islemleri için hazır metodların bulunduğu AuthenticationManager nesnesine ihtiyac vardır.
                var authManager  = HttpContext.GetOwinContext().Authentication;
                var userIdentity = await userManager.CreateIdentityAsync(user, DefaultAuthenticationTypes.ApplicationCookie);


                authManager.SignIn(new AuthenticationProperties()
                {
                    IsPersistent = model.RememberMe
                }, userIdentity);

                return(RedirectToAction("Index", "Home"));
            }
        }
        // GET: Admin
        public ActionResult Index()
        {
            var roles       = MemberShipTools.NewRoleManager().Roles.ToList();
            var userManager = MemberShipTools.NewUserManager();
            var users       = userManager.Users.ToList().Select(x => new UsersViewModel
            {
                Email        = x.Email,
                Name         = x.Name,
                RegisterDate = x.RegistryDate,
                Salary       = x.Salary,
                SurName      = x.Surname,
                UserId       = x.Id,
                UserName     = x.UserName,
                RoleId       = x.Roles.FirstOrDefault().RoleId,
                RoleName     = roles.FirstOrDefault(y => y.Id == userManager.FindById(x.Id).Roles.FirstOrDefault().RoleId).Name
            }).ToList();

            //List<SelectListItem> rolist = new List<SelectListItem>();
            //roles.ForEach(x => new SelectListItem()
            //{
            //    Text=x.Name,
            //    Value=x.Id
            //});
            //ViewBag.roles = rolist;

            return(View(users));
        }
        public async Task <ActionResult> Register(RegisterViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var userManager = MemberShipTools.NewUserManager();

            var checkUser = userManager.FindByName(model.TCNo);



            if (checkUser != null)
            {
                ModelState.AddModelError(string.Empty, "Bu TC No sistemde kayıtlı");
                return(View(model));
            }

            checkUser = userManager.FindByEmail(model.Email);
            if (checkUser != null)
            {
                ModelState.AddModelError(string.Empty, "Bu mail adresi sistemde kayıtlı");
                return(View(model));
            }

            var user = new Kullanici()
            {
                Ad       = model.Ad,
                Soyad    = model.Soyad,
                Email    = model.Email,
                UserName = model.TCNo,
            };

            var response = userManager.Create(user, model.Sifre);

            if (response.Succeeded)
            {
                if (userManager.Users.ToList().Count() == 1)
                {
                    userManager.AddToRole(user.Id, "Admin");
                }
                else
                {
                    userManager.AddToRole(user.Id, "Passive");
                }
                return(RedirectToAction("Login", "Hesap"));
            }
            else
            {
                ModelState.AddModelError(string.Empty, "Kayıt işleminde bir hata oluiştu");
                return(View(model));
            }
        }
        public ActionResult Profile()
        {
            var userManager = MemberShipTools.NewUserManager();
            var id          = HttpContext.User.Identity.GetUserId();
            var user        = userManager.FindById(id);

            ProfileViewModel model = new ProfileViewModel()
            {
                Email   = user.Email,
                Name    = user.Name,
                Surname = user.Surname,
            };

            return(View(model));
        }
Exemple #20
0
        protected List <SelectListItem> GetRoleList()
        {
            var data = new List <SelectListItem>();

            MemberShipTools.NewRoleStore().Roles
            .ToList()
            .ForEach(x =>
            {
                data.Add(new SelectListItem()
                {
                    Text  = $"{x.Name}",
                    Value = x.Id
                });
            });
            return(data);
        }
Exemple #21
0
        protected List <SelectListItem> GetUserList()
        {
            var data = new List <SelectListItem>();

            MemberShipTools.NewUserStore().Users
            .ToList()
            .ForEach(x =>
            {
                data.Add(new SelectListItem()
                {
                    Text  = $"{x.Ad} {x.Soyad}",
                    Value = x.Id
                });
            });
            return(data);
        }
Exemple #22
0
        public ActionResult Profil()
        {
            var userManager = MemberShipTools.NewUserManager();
            var user        = userManager.FindById(HttpContext.GetOwinContext().Authentication.User.Identity.GetUserId());
            var model       = new ProfilePasswordViewModel()
            {
                ProfileModel = new ProfilViewModel {
                    Id       = user.Id,
                    Email    = user.Email,
                    Name     = user.Name,
                    Surname  = user.Surname,
                    UserName = user.UserName
                }
            };

            return(View(model));
        }
Exemple #23
0
        public ActionResult EditUser(string id)
        {
            if (id == null)
            {
                RedirectToAction("Index");
            }

            var roles = MemberShipTools.NewRoleManager().Roles.ToList();


            List <SelectListItem> rolList = new List <SelectListItem>();

            roles.ForEach(x => new SelectListItem()
            {
                Text  = x.Name,
                Value = x.Id
            });
            ViewBag.roles = rolList;


            var userManager = MemberShipTools.NewUserManager();
            var user        = userManager.FindById(id);

            if (user == null)
            {
                return(RedirectToAction("Index"));
            }


            var model = new UsersViewModel()
            {
                UserName     = user.UserName,
                Email        = user.Email,
                Name         = user.Name,
                Surname      = user.Surname,
                RegisterDate = user.RegisterDate,
                RoleId       = user.Roles.ToList().FirstOrDefault().RoleId,
                RoleName     = roles.FirstOrDefault(y => y.Id == userManager.FindById(user.Id).Roles.FirstOrDefault().RoleId).Name,
                Salary       = user.Salary,
                UserId       = user.Id
            };

            return(View(model));
        }
Exemple #24
0
        // GET: Admin
        public ActionResult Index()
        {
            var roles       = MemberShipTools.NewRoleManager().Roles.ToList();
            var userManager = MemberShipTools.NewUserManager();
            var users       = userManager.Users.ToList().Select(x => new UsersViewModel
            {
                userId       = x.Id,
                Name         = x.Name,
                Surname      = x.Surname,
                Email        = x.Email,
                Username     = x.UserName,
                RegisterDate = x.RegiterDate,
                Salary       = x.Salary,
                RoleId       = x.Roles.FirstOrDefault().RoleId,
                RoleName     = roles.FirstOrDefault(y => y.Id == userManager.FindById(x.Id).Roles.FirstOrDefault().RoleId).Name
            }).ToList();

            return(View(users));
        }
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            var roleManager = MemberShipTools.NewRoleManager();

            if (!roleManager.RoleExists("Admin"))
            {
                roleManager.Create(new ApplicationRole()
                {
                    Name        = "Admin",
                    Description = "Site Yöneticisi"
                });
            }
            if (!roleManager.RoleExists("Musteri"))
            {
                roleManager.Create(new ApplicationRole()
                {
                    Name        = "Musteri",
                    Description = "Uygulama Müşterisi"
                });
            }
            if (!roleManager.RoleExists("Operator"))
            {
                roleManager.Create(new ApplicationRole()
                {
                    Name        = "Operator",
                    Description = "Uygulama yöneticisi"
                });
            }
            if (!roleManager.RoleExists("Teknisyen"))
            {
                roleManager.Create(new ApplicationRole()
                {
                    Name        = "Teknisyen",
                    Description = "Teknisyenler, Tamirciler, Yetkili servisler"
                });
            }
        }
Exemple #26
0
        public async Task <ActionResult> Register(RegisterViewModel model)
        {
            //eğer view tarafında form kurallı bir bicimde doldurulmadıysa direk modeli viewe geri döner. aşağıdaki islemleri yapmaz.
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            //Kullanıcı kayıt islemleri yapılacak.
            //var userStore = new UserStore<ApplicationUser>(new BlogContext())
            var userManager = MemberShipTools.NewUserManager();
            var checkuser   = userManager.FindByName(model.UserName);

            if (checkuser != null)
            {
                ModelState.AddModelError(string.Empty, "Bu kullanıcı zaten kayıtlıdır!");
                return(View(model));
            }

            var user = new ApplicationUser
            {
                Name     = model.Name,
                Surname  = model.Surname,
                UserName = model.UserName,
                Email    = model.Email,
            };

            var sonuc = await userManager.CreateAsync(user, model.Password);

            if (sonuc.Succeeded)
            {
                //eğer basarılı ise kullanıcı kaydedilmistir. Kullanıcıya role atayabiliriz.
                await userManager.AddToRoleAsync(user.Id, "User");

                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                ModelState.AddModelError(string.Empty, "Kullanıcı kayıt isleminde hata oluştu");
                return(View(model));
            }
        }
Exemple #27
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            RouteConfig.RegisterRoutes(RouteTable.Routes);

            var roller = Enum.GetNames(typeof(IdentityRoles));

            var roleManager = MemberShipTools.NewRoleManager();

            foreach (var rol in roller)
            {
                if (!roleManager.RoleExists(rol))
                {
                    roleManager.Create(new Role()
                    {
                        Name = rol
                    });
                }
            }
        }
Exemple #28
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            RouteConfig.RegisterRoutes(RouteTable.Routes);

            //Site için role tanımlamaları yapılıyor:
            var roleManager = MemberShipTools.NewRoleManager();

            if (!roleManager.RoleExists("Admin"))
            {
                ApplicationRole rol = new ApplicationRole()
                {
                    Name        = "Admin",
                    Description = "Site Yöneticisi"
                };

                roleManager.Create(rol);
            }

            if (!roleManager.RoleExists("User"))
            {
                ApplicationRole rol = new ApplicationRole()
                {
                    Name        = "User",
                    Description = "Üye"
                };

                roleManager.Create(rol);
            }

            if (!roleManager.RoleExists("Banned"))
            {
                ApplicationRole rol = new ApplicationRole()
                {
                    Name        = "Banned",
                    Description = "Yasaklı Üye"
                };

                roleManager.Create(rol);
            }
        }
        public async Task <ActionResult> Profile(ProfileViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var userStore   = MemberShipTools.NewUserStore();
            var userManager = new UserManager <ApplicationUser>(userStore);
            var user        = userManager.FindById(HttpContext.User.Identity.GetUserId());

            user.Email   = model.Email;
            user.Name    = model.Name;
            user.Surname = model.Surname;



            await userStore.UpdateAsync(user);

            await userStore.Context.SaveChangesAsync();

            return(RedirectToAction("Profile"));
        }
        public static void Seed()
        {
            const string roleName    = "Admin";
            var          roleManager = MemberShipTools.NewRoleManager();
            var          role        = roleManager.FindByName(roleName);

            if (role == null)
            {
                role = new Rol()
                {
                    Name = "Admin", Aciklama = "Site Yöneticisi"
                };
                roleManager.Create(role);
            }
            const string roleName2 = "User";

            role = roleManager.FindByName(roleName2);
            if (role == null)
            {
                role = new Rol()
                {
                    Name = "User"
                };
                roleManager.Create(role);
            }
            const string roleName3 = "Passive";

            role = roleManager.FindByName(roleName3);
            if (role == null)
            {
                role = new Rol()
                {
                    Name = "Passive"
                };
                roleManager.Create(role);
            }
        }