コード例 #1
0
ファイル: HomeController.cs プロジェクト: omrkrgz/Blog.Mvc
        public ActionResult Register(RegisterViewModel model)
        {
            Repository <BlogUser> repo_user  = new Repository <BlogUser>();
            BlogUserManager       blgusrmngr = new BlogUserManager();
            BlogUser controlUsername         = repo_user.Find(x => x.Username == model.Username);
            BlogUser controlMail             = repo_user.Find(x => x.Email == model.Email);

            if (ModelState.IsValid)
            {
                if (controlUsername != null)
                {
                    ModelState.AddModelError("", $"'{model.Username}' kullanıcı adı kullanılıyor");
                    return(View(model));
                }

                if (controlMail != null)
                {
                    ModelState.AddModelError("", $"'{model.Email}' E-posta kullanılıyor");
                    return(View(model));
                }

                blgusrmngr.RegisterUser(model);
                return(RedirectToAction("RegisterTrue"));
            }

            return(View(model));
        }
コード例 #2
0
 public IdentityController(IHttpContextAccessor httpContextAccessor, BlogUserManager userManager, BlogRoleManager roleManager, IUserFactory userFactory)
 {
     _httpContextAccessor = httpContextAccessor;
     _userManager         = userManager;
     _roleManager         = roleManager;
     _userFactory         = userFactory;
 }
コード例 #3
0
 public BlogController(ILogger <BlogController> logger, IPostService postService, IPageService pageService, ICategoryService categoryService, ITagsService tagsService, ICommentService commentService, IPostFactory postFactory, IPageFactory pageFactory, ICategoryFactory categoryFactory, ITagsFactory tagsFactory, BlogUserManager blogUserManager, IUserFactory userFactory, CommentsSettings commentsSettings, ICaptchaService captchaService, IHttpContextAccessor httpContextAccessor, IIPAddressService iPAddressService, IEmailSender emailSender, IJsonSerializer jsonSerializer, IStringLocalizer <BlogController> stringLocalizer, ISpamService spamService, IEventBus eventBus, BasicSettings basicSettings, IDistributedCache distributedCache)
 {
     _logger              = logger;
     _postService         = postService;
     _pageService         = pageService;
     _categoryService     = categoryService;
     _tagsService         = tagsService;
     _commentService      = commentService;
     _postFactory         = postFactory;
     _pageFactory         = pageFactory;
     _categoryFactory     = categoryFactory;
     _tagsFactory         = tagsFactory;
     _blogUserManager     = blogUserManager;
     _userFactory         = userFactory;
     _commentsSettings    = commentsSettings;
     _captchaService      = captchaService;
     _httpContextAccessor = httpContextAccessor;
     _iPAddressService    = iPAddressService;
     _emailSender         = emailSender;
     _jsonSerializer      = jsonSerializer;
     _stringLocalizer     = stringLocalizer;
     _spamService         = spamService;
     _eventBus            = eventBus;
     _basicSettings       = basicSettings;
     _distributedCache    = distributedCache;
 }
コード例 #4
0
 public BlogMLController(IBlogMLImporter blogMLImporter, BlogUserManager blogUserManager, IBlogMLExporter blogMLExporter, IHttpContextAccessor httpContextAccessor)
 {
     _blogMLImporter      = blogMLImporter;
     _blogUserManager     = blogUserManager;
     _blogMLExporter      = blogMLExporter;
     _httpContextAccessor = httpContextAccessor;
 }
コード例 #5
0
 public UserController(BlogUserManager userManager, IUserFactory userFactory, IRoleFactory roleFactory, BlogRoleManager roleManager)
 {
     _userManager = userManager;
     _userFactory = userFactory;
     _roleFactory = roleFactory;
     _roleManager = roleManager;
 }
コード例 #6
0
        public ActionResult Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                BlogUserManager eum = new BlogUserManager();
                BusinessLayerResult <BlogUser> res = eum.RegisterUser(model);

                if (res.Errors.Count > 0)
                {
                    res.Errors.ForEach(x => ModelState.AddModelError("", x.Message));
                    return(View(model));
                }

                OkViewModel notifyObj = new OkViewModel()
                {
                    Title          = "Kayıt Başarılı",
                    RedirecingtUrl = "/Home/Login",
                };
                notifyObj.Items.Add("Lütfen E-posta Adresinize gönderdiğimiz aktivasyon linkine tıklayarak hesabınızı aktif hale getiriniz");
                return(View("Ok", notifyObj));
            }


            return(View(model));
        }
コード例 #7
0
 public AccountController(IHttpContextAccessor httpContextAccessor, BlogUserManager userManager, BlogRoleManager roleManager, IUserFactory userFactory, BlogSignInManager signInManager)
 {
     _httpContextAccessor = httpContextAccessor;
     _userManager         = userManager;
     _roleManager         = roleManager;
     _userFactory         = userFactory;
     _signInManager       = signInManager;
 }
コード例 #8
0
 public CommentController(ICommentService commentService, ICommentFactory commentFactory, BlogUserManager userManager, IHttpContextAccessor httpContextAccessor, IGuidGenerator guidGenerator, IIPAddressService iPAddressService)
 {
     _commentService      = commentService;
     _commentFactory      = commentFactory;
     _userManager         = userManager;
     _httpContextAccessor = httpContextAccessor;
     _guidGenerator       = guidGenerator;
     _iPAddressService    = iPAddressService;
 }
コード例 #9
0
        public AccountController(ILogger <AccountController> logger, BlogUserManager blogUserManager, BlogSignInManager signInManager, IEmailSender emailSender, IOptionsSnapshot <BlogOptions> blogOptions, AdvancedSettings advancedSettings)
        {
            _logger        = logger;
            _userManager   = blogUserManager;
            _signInManager = signInManager;
            _emailSender   = emailSender;

            _blogOptions      = blogOptions.Value;
            _advancedSettings = advancedSettings;
        }
コード例 #10
0
 public UserController(
     BlogDbContext blogDbContext,
     BlogUserManager userManager,
     ILoggerFactory loggerFactory)
     : base(loggerFactory)
 {
     this.blogDbContext = blogDbContext;
     this.userManager   = userManager;
     //this.signInManager = signInManager;
     this.logger = loggerFactory.CreateLogger <UserController>();
 }
コード例 #11
0
 public BlogMLExporter(ILogger <BlogMLExporter> logger, IPostService postService, IPageService pageService, ICategoryService categoryService, ITagsService tagsService, ICommentService commentService, ISlugService slugService, BlogUserManager userManager, BasicSettings basicSettings)
 {
     _logger          = logger;
     _postService     = postService;
     _pageService     = pageService;
     _categoryService = categoryService;
     _tagsService     = tagsService;
     _commentService  = commentService;
     _slugService     = slugService;
     _userManager     = userManager;
     _basicSettings   = basicSettings;
 }
コード例 #12
0
        public AccountController(
            BlogSignInManager signInManager,
            BlogUserManager userManager,
            IMailSender mailSender,
            ILoggerFactory loggerFactory)
            : base(loggerFactory)
        {
            this.signInManager = signInManager;
            this.userManager   = userManager;
            this.mailSender    = mailSender;

            this.logger = loggerFactory.CreateLogger <AccountController>();
        }
コード例 #13
0
 public UsersController(
     IBlogPostRepository postRepository,
     IBlogUserRepository userRepository,
     IBlogCategoryRepository categoryRepository,
     IBlogTagRepository tagRepository,
     BlogUserManager userManager,
     ILoggerFactory loggerFactory)
     : base(loggerFactory)
 {
     this.postRepository     = postRepository;
     this.userRepository     = userRepository;
     this.categoryRepository = categoryRepository;
     this.tagRepository      = tagRepository;
     this.userManager        = userManager;
     logger = loggerFactory.CreateLogger <UsersController>();
 }
コード例 #14
0
        public static List <UserViewModel> GetViewUser(BlogUserManager userManager)
        {
            var tempUsers = userManager.Users.ToList();

            int i             = 0;
            var tempBlogUsers = tempUsers.Select(x => new UserViewModel
            {
                Id    = i++,
                Email = x.Email,
                Roles = (userManager.GetRoles(x.Id).ToList().Count() == 0)? new List <string>()
                {
                    "none"
                }: userManager.GetRoles(x.Id).ToList(),
            }).ToList();

            return(tempBlogUsers);
        }
コード例 #15
0
        public ActionResult DeleteProfile()
        {
            BlogUserManager eum = new BlogUserManager();
            BusinessLayerResult <BlogUser> res = eum.RemoveUserById(SessionManager.User.Id);

            if (res.Errors.Count > 0)
            {
                ErrorViewModel ErrorNotifyObj = new ErrorViewModel()
                {
                    Items          = res.Errors,
                    Title          = "Profil Silinemedi",
                    RedirecingtUrl = "/Home/ShowProfile"
                };
                return(View("Error", ErrorNotifyObj));
            }
            Session.Clear();
            return(RedirectToAction("Index"));
        }
コード例 #16
0
        public ActionResult Login(LoginViewModel model)
        {
            if (ModelState.IsValid)
            {
                BlogUserManager bom = new BlogUserManager();
                BusinessLayerResult <BlogUser> result = bom.LoginUser(model);

                if (result.Errors.Count > 0)
                {
                    result.Errors.ForEach(x => ModelState.AddModelError("", x.Message));
                    return(View(model));
                }

                Session["login"] = result.Result;
                return(RedirectToAction("Index"));
            }

            return(View(model));
        }
コード例 #17
0
        public ActionResult EditProfile()
        {
            BlogUserManager eum = new BlogUserManager();

            BusinessLayerResult <BlogUser> res = eum.GetUserById(SessionManager.User.Id);

            if (res.Errors.Count > 0)
            {
                ErrorViewModel errornotifyObj = new ErrorViewModel()
                {
                    Title = "Hata Oluştu",
                    Items = res.Errors
                };
                return(View("Error", errornotifyObj));
            }


            return(View(res.Result));
        }
コード例 #18
0
        public ActionResult EditProfile(BlogUser model, HttpPostedFileBase ProfileImage)
        {
            ModelState.Remove("ModifierUserName");

            if (ModelState.IsValid)
            {
                if (ProfileImage != null &&
                    (ProfileImage.ContentType == "image/jpeg" ||
                     ProfileImage.ContentType == "image/jpg" ||
                     ProfileImage.ContentType == "image/png"))
                {
                    string filename = $"user_{model.Id}.{ProfileImage.ContentType.Split('/')[1]}";

                    ProfileImage.SaveAs(Server.MapPath($"~/images/{filename}"));
                    model.ProfileImageName = filename;
                }



                BlogUserManager eum = new BlogUserManager();
                BusinessLayerResult <BlogUser> res = eum.UpdateProfile(model);


                if (res.Errors.Count > 0)
                {
                    ErrorViewModel errorNotifyObj = new ErrorViewModel()
                    {
                        Items          = res.Errors,
                        Title          = "Profil Güncellenemedi",
                        RedirecingtUrl = "/Home/EditProfile"
                    };
                    return(View("Error", errorNotifyObj));
                }


                SessionManager.Set <BlogUser>("login", res.Result);
                return(RedirectToAction("ShowProfile"));
            }
            return(View(model));
        }
コード例 #19
0
        public ActionResult Login(LoginViewModel model)
        {
            if (ModelState.IsValid)
            {
                BlogUserManager eum = new BlogUserManager();
                BusinessLayerResult <BlogUser> res = eum.LoginUser(model);

                if (res.Errors.Count > 0)
                {
                    if (res.Errors.Find(x => x.Code == ErrorMessageCode.UserIsNotActive) != null)
                    {
                        ViewBag.SetLink = "https://Home/Activate/1234-4567-7890";
                    }

                    res.Errors.ForEach(x => ModelState.AddModelError("", x.Message));
                    return(View(model));
                }

                SessionManager.Set <BlogUser>("login", res.Result);
                return(RedirectToAction("Index"));
            }

            return(View(model));
        }
コード例 #20
0
        public ActionResult UserActive(Guid id)
        {
            BlogUserManager eum = new BlogUserManager();
            BusinessLayerResult <BlogUser> res = eum.ActivateUser(id);

            if (res.Errors.Count > 0)
            {
                ErrorViewModel errornotifyObj = new ErrorViewModel()
                {
                    Title = "Geçersiz İşlem",
                    Items = res.Errors
                };
                return(View("Error", errornotifyObj));
            }
            OkViewModel OknotifyObj = new OkViewModel()
            {
                Title          = "Hesap Aktifleştirildi",
                RedirecingtUrl = "/Home/Login",
            };

            OknotifyObj.Items.Add("Hesabınız aktifleştirildi artık not paylaşabilir ve beğenme yapabilirsiniz");

            return(View("Ok", OknotifyObj));
        }
コード例 #21
0
 public LoginModel(BlogUserManager userManager,
                   ILogger <LoginModel> logger)
 {
     _userManager = userManager;
     _logger      = logger;
 }
コード例 #22
0
 public RegisterModel(BlogUserManager userManager,
                      ILogger <RegisterModel> logger)
 {
     _userManager = userManager;
     _logger      = logger;
 }
コード例 #23
0
 public HttpApiPermissionActionFilter(BlogRoleManager roleManager, BlogUserManager userManager)
 {
     _roleManager = roleManager;
     _userManager = userManager;
 }
コード例 #24
0
 public UserProfileWidgetView(BlogUserManager userManager)
 {
     _userManager = userManager;
 }
コード例 #25
0
 public UsersController(BlogUserManager userManager, IUsersResource user, IErrorSignaler errorSignaler)
 {
     UserManager = userManager;
     _user = user;
     _errorSignaler = errorSignaler;
 }
コード例 #26
0
 public BlogDbRepository()
 {
     _ctx = new BlogIdentityDbContext();
     _userManager = new BlogUserManager(new BlogUserStore(_ctx));
     _roleManager = new BlogRoleManager(new RoleStore<BlogRole>(_ctx));
 }