Exemplo n.º 1
0
 private bool Kayıtlı(Kullanıcı kullanıcı)
 {
     if (kullanıcı.IsRegistered())
     {
         return(true);
     }
     return(false);
 }
Exemplo n.º 2
0
 protected virtual KullanıcıModel ListeİçinKullanıcıModelHazırla(Kullanıcı kullanıcı)
 {
     return(new KullanıcıModel
     {
         Id = kullanıcı.Id,
         Email = kullanıcı.IsRegistered() ? kullanıcı.Email : "Ziyaretçi",
         KullanıcıAdı = kullanıcı.KullanıcıAdı,
         Adı = kullanıcı.TamAdAl(),
         Şirket = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.Şirket),
         Tel = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.Tel),
         PostaKodu = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.PostaKodu),
         KullanıcıRolAdları = KullanıcıRolAdlarıAl(kullanıcı.KullanıcıRolleri.ToList()),
         Aktif = kullanıcı.Aktif,
         OluşturulmaTarihi = _tarihYardımcısı.KullanıcıZamanınaDönüştür(kullanıcı.ŞuTarihdeOluşturuldu, DateTimeKind.Utc),
         SonİşlemTarihi = _tarihYardımcısı.KullanıcıZamanınaDönüştür(kullanıcı.SonİşlemTarihi, DateTimeKind.Utc),
     });
 }
Exemplo n.º 3
0
        protected virtual void KullanıcıModelHazırla(KullanıcıModel model, Kullanıcı kullanıcı, bool özellikleriDışla)
        {
            var tümSiteler = _siteServisi.TümSiteler();

            if (kullanıcı != null)
            {
                model.Id = kullanıcı.Id;
                if (!özellikleriDışla)
                {
                    model.Email        = kullanıcı.Email;
                    model.KullanıcıAdı = kullanıcı.KullanıcıAdı;
                    model.AdminYorumu  = kullanıcı.AdminYorumu;
                    model.Aktif        = kullanıcı.Aktif;

                    if (kullanıcı.KayıtOlduSiteId == 0 || tümSiteler.All(s => s.Id != kullanıcı.KayıtOlduSiteId))
                    {
                        model.SitedeKayıtlı = string.Empty;
                    }
                    else
                    {
                        model.SitedeKayıtlı = tümSiteler.First(s => s.Id == kullanıcı.KayıtOlduSiteId).Adı;
                    }


                    model.OluşturulmaTarihi     = _tarihYardımcısı.KullanıcıZamanınaDönüştür(kullanıcı.ŞuTarihdeOluşturuldu, DateTimeKind.Utc);
                    model.SonİşlemTarihi        = _tarihYardımcısı.KullanıcıZamanınaDönüştür(kullanıcı.SonİşlemTarihi, DateTimeKind.Utc);
                    model.SonIpAdresi           = kullanıcı.SonIPAdresi;
                    model.SonZiyaretEdilenSayfa = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.SonZiyaretEdilenSayfa);

                    model.SeçiliKullanıcıRolIdleri = kullanıcı.KullanıcıRolleri.Select(cr => cr.Id).ToList();

                    //abonelik
                    if (!String.IsNullOrEmpty(kullanıcı.Email))
                    {
                        var abonelikKayıtlarıSiteId = new List <int>();
                        foreach (var site in tümSiteler)
                        {
                            var bültenAbonelikKaydı = _bültenAbonelikServisi
                                                      .BültenAboneliğiAlEmailVeSiteId(kullanıcı.Email, site.Id);
                            if (bültenAbonelikKaydı != null)
                            {
                                abonelikKayıtlarıSiteId.Add(site.Id);
                            }
                            model.SeçiliAbonleikKayıtları = abonelikKayıtlarıSiteId.ToArray();
                        }
                    }

                    //form fields
                    model.Adı          = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.Adı);
                    model.Soyadı       = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.Soyadı);
                    model.Cinsiyet     = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.Cinsiyet);
                    model.DoğumGünü    = kullanıcı.ÖznitelikAl <DateTime?>(SistemKullanıcıÖznitelikAdları.DoğumTarihi);
                    model.Şirket       = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.Şirket);
                    model.SokakAdresi  = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.SokakAdresi1);
                    model.SokakAdresi2 = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.SokakAdresi2);
                    model.PostaKodu    = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.PostaKodu);
                    model.Şehir        = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.Şehir);
                    model.ÜlkeId       = kullanıcı.ÖznitelikAl <int>(SistemKullanıcıÖznitelikAdları.ÜlkeId);
                    model.Tel          = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.Tel);
                    model.Faks         = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.Fax);
                }
            }

            model.KullanıcıAdlarıEtkin = _kullanıcıAyarları.KullanıcıAdlarıEtkin;
            //model. = _tarihYardımcısı.iz;

            //kullanıcı öznitelikleri
            //KullanıcıÖznitelikModelHazırla(model, kullanıcı);

            model.CinsiyetEtkin     = _kullanıcıAyarları.CinsiyetEtkin;
            model.DoğumGünüEtkin    = _kullanıcıAyarları.DoğumTarihiEtkin;
            model.ŞirketEtkin       = _kullanıcıAyarları.ŞirketEtkin;
            model.SokakAdresiEtkin  = _kullanıcıAyarları.SokakAdresiEtkin;
            model.SokakAdresi2Etkin = _kullanıcıAyarları.SokakAdresi2Etkin;
            model.PostaKoduEtkin    = _kullanıcıAyarları.PostaKoduEtkin;
            model.ŞehirEtkin        = _kullanıcıAyarları.ŞehirEtkin;
            model.ÜlkeEtkin         = _kullanıcıAyarları.ÜlkeEtkin;
            model.TelEtkin          = _kullanıcıAyarları.TelEtkin;
            model.FaksEtkin         = _kullanıcıAyarları.FaksEtkin;

            //ülkeler
            if (_kullanıcıAyarları.ÜlkeEtkin)
            {
                model.KullanılabilirÜlkeler.Add(new SelectListItem {
                    Text = "Ülke seçiniz", Value = "0"
                });
                foreach (var c in _ülkeServisi.TümÜlkeleriAl(gizliOlanıGöster: true))
                {
                    model.KullanılabilirÜlkeler.Add(new SelectListItem
                    {
                        Text     = c.Adı,
                        Value    = c.Id.ToString(),
                        Selected = c.Id == model.ÜlkeId
                    });
                }
            }

            //abonelik kayıtları
            model.AbonelikKayıtlarıKullanılabilirSiteler = tümSiteler
                                                           .Select(s => new KullanıcıModel.SiteModel()
            {
                Id = s.Id, Adı = s.Adı
            })
                                                           .ToList();

            //kullanıcı rolleri
            var tümRoller = _kullanıcıServisi.TümKullanıcıRolleriniAl(true);
            var adminRolü = tümRoller.FirstOrDefault(c => c.SistemAdı == SistemKullanıcıRolAdları.Kayıtlı);

            if (kullanıcı == null && adminRolü != null)
            {
                model.SeçiliKullanıcıRolIdleri.Add(adminRolü.Id);
            }
            foreach (var rol in tümRoller)
            {
                model.KullanılabilirKullanıcıRolleri.Add(new SelectListItem
                {
                    Text     = rol.Adı,
                    Value    = rol.Id.ToString(),
                    Selected = model.SeçiliKullanıcıRolIdleri.Contains(rol.Id)
                });
            }

            //ödül puanı
            if (kullanıcı != null)
            {
                //model.ÖdülPuanıGeçmişiniGörüntüle = _rewardPointsSettings.Enabled;
                model.ÖdülPuanıDeğeriEkle = 0;
                model.ÖdülPuanıMesajıEkle = "Ödül puanı mesajı...";

                //siteler
                foreach (var store in tümSiteler)
                {
                    model.ÖdülPuanıKullanılabilirSiteler.Add(new SelectListItem
                    {
                        Text     = store.Adı,
                        Value    = store.Id.ToString(),
                        Selected = (store.Id == _siteContext.MevcutSite.Id)
                    });
                }
            }
            else
            {
                model.ÖdülPuanıGeçmişiniGörüntüle = false;
            }
            //harici yetkilendirme kayıtları
            if (kullanıcı != null)
            {
                model.İlişkilendirilmişHariciKimlikDoğrulamaKayıtları = İlişkilendirilmişHariciKimlikDoğrulamaKayıtlarınıAl(kullanıcı);
            }

            model.HoşgeldinizMesajıGönderimiEtkin = _kullanıcıAyarları.KullanıcıKayıtTipi == KullanıcıKayıtTipi.YöneticiOnayı &&
                                                    kullanıcı != null &&
                                                    kullanıcı.IsRegistered();

            model.AktivasyonMesajıGönderimiEtkin = _kullanıcıAyarları.KullanıcıKayıtTipi == KullanıcıKayıtTipi.EmailDoğrulaması &&
                                                   kullanıcı != null &&
                                                   kullanıcı.IsRegistered() &&
                                                   !kullanıcı.Aktif;
        }
        public virtual Kullanıcı KimliğiDoğrulananKullanıcı()
        {
            if (_önebellekKullanıcı != null)
            {
                return(_önebellekKullanıcı);
            }

            var authenticateResult = _httpContextAccessor.HttpContext.AuthenticateAsync(ÇerezYetkilendirmeVarsayılanları.AuthenticationScheme).Result;

            if (!authenticateResult.Succeeded)
            {
                return(null);
            }

            Kullanıcı kullanıcı = null;

            if (_kullanıcıAyarları.KullanıcıAdlarıEtkin)
            {
                var usernameClaim = authenticateResult.Principal.FindFirst(claim => claim.Type == ClaimTypes.Name &&
                                                                           claim.Issuer.Equals(ÇerezYetkilendirmeVarsayılanları.ClaimsIssuer, StringComparison.InvariantCultureIgnoreCase));
                if (usernameClaim != null)
                {
                    kullanıcı = _kullanıcıServisi.KullanıcıAlKullanıcıAdı(usernameClaim.Value);
                }
            }
            else
            {
                var emailClaim = authenticateResult.Principal.FindFirst(claim => claim.Type == ClaimTypes.Email &&
                                                                        claim.Issuer.Equals(ÇerezYetkilendirmeVarsayılanları.ClaimsIssuer, StringComparison.InvariantCultureIgnoreCase));
                if (emailClaim != null)
                {
                    kullanıcı = _kullanıcıServisi.KullanıcıAlEmail(emailClaim.Value);
                }
            }
            if (kullanıcı == null || !kullanıcı.Aktif || kullanıcı.GirişGerekli || kullanıcı.Silindi || !kullanıcı.IsRegistered())
            {
                return(null);
            }

            _önebellekKullanıcı = kullanıcı;

            return(_önebellekKullanıcı);
        }