public virtual GirişModel GirişModelHazırla()
        {
            var model = new GirişModel();

            model.KullanıcıAdlarıEtkin = _kullanıcıAyarları.KullanıcıAdlarıEtkin;
            return(model);
        }
Example #2
0
        public virtual ActionResult Giriş(GirişModel model, string dönenUrl, bool captchaDoğrulandı)
        {
            /*
             * //CAPTCHA doğrula
             * if (_captchaSettings.Enabled && _captchaSettings.ShowOnLoginPage && !captchaValid)
             * {
             *  ModelState.AddModelError("", _captchaSettings.GetWrongCaptchaMessage(_localizationService));
             * }
             */
            if (ModelState.IsValid)
            {
                if (_kullanıcıAyarları.KullanıcıAdlarıEtkin && model.KullanıcıAdı != null)
                {
                    model.KullanıcıAdı = model.KullanıcıAdı.Trim();
                }
                var girişSonucu =
                    _kullanıcıKayıtServisi.KullanıcıDoğrula(
                        _kullanıcıAyarları.KullanıcıAdlarıEtkin ? model.KullanıcıAdı : model.Email, model.Şifre);
                switch (girişSonucu)
                {
                case KullanıcıGirişSonuçları.Başarılı:
                {
                    var kullanıcı = _kullanıcıAyarları.KullanıcıAdlarıEtkin
                                ? _kullanıcıServisi.KullanıcıAlSistemAdı(model.KullanıcıAdı)
                                : _kullanıcıServisi.KullanıcıAlEmail(model.Email);

                    //yeni kullanıcı olarak giriş yapıldı
                    _kimlikDoğrulamaServisi.Giriş(kullanıcı, model.BeniHatırla);

                    //olay
                    _olayYayınlayıcı.Yayınla(new KullanıcıBağlandıOlayı(kullanıcı));

                    //log ekle
                    //_kullanıcıAktiviteServisi.AktiviteEkle(kullanıcı, "GenelSite.Login", _localizationService.GetResource("ActivityLog.PublicStore.Login"));

                    if (String.IsNullOrEmpty(dönenUrl) || !Url.IsLocalUrl(dönenUrl))
                    {
                        return(RedirectToRoute("HomePage"));
                    }

                    return(Redirect(dönenUrl));
                }

                case KullanıcıGirişSonuçları.KullanıcıMevcutDeğil:
                    ModelState.AddModelError("", "Kullanıcı bulunamadı");
                    break;

                case KullanıcıGirişSonuçları.Silindi:
                    ModelState.AddModelError("", "Kullanıcı silindi");
                    break;

                case KullanıcıGirişSonuçları.AktifDeğil:
                    ModelState.AddModelError("", "Kullanıcı aktifleştirilmedi");
                    break;

                case KullanıcıGirişSonuçları.KayıtlıDeğil:
                    ModelState.AddModelError("", "Kullanıcı henüz kayıtlı değil");
                    break;

                case KullanıcıGirişSonuçları.Kilitlendi:
                    ModelState.AddModelError("", "Kullanıcı kilitlendi");
                    break;

                case KullanıcıGirişSonuçları.HatalıŞifre:
                default:
                    ModelState.AddModelError("", "Hatalı şifre");
                    break;
                }
            }

            //If we got this far, something failed, redisplay form
            model = _kullanıcıModelFabrikası.GirişModelHazırla();
            return(View(model));
        }