Ejemplo n.º 1
0
        public IList <TemaAçıklayıcı> TemalarıAl()
        {
            if (_temaAçıklayıcı == null)
            {
                var temaKlasörü = new DirectoryInfo(GenelYardımcı.MapPath(TemalarınYolu));
                _temaAçıklayıcı = new List <TemaAçıklayıcı>();
                foreach (var açıklamaDosyası in temaKlasörü.GetFiles(TemaAçıklamasıDosyaAdı, SearchOption.AllDirectories))
                {
                    var text = File.ReadAllText(açıklamaDosyası.FullName);
                    if (string.IsNullOrEmpty(text))
                    {
                        continue;
                    }

                    var temaAçıklayıcı = YazıdanTemaAçıklayıcıAl(text);

                    if (string.IsNullOrEmpty(temaAçıklayıcı?.SistemAdı))
                    {
                        throw new Exception($"'{açıklamaDosyası.FullName}' tema açıklayıcısında sistem adı mevcut değil");
                    }

                    _temaAçıklayıcı.Add(temaAçıklayıcı);
                }
            }

            return(_temaAçıklayıcı);
        }
        public virtual İşlem İşlemEkle(Kullanıcı kullanıcı, string sistemAnahtarKelimleri, string yorum, params object[] yorumDeğerleri)
        {
            if (kullanıcı == null)
            {
                return(null);
            }

            var işlemTipleri = TümÖnbelleklenenİşlemTipleriAl();
            var işlemTipi    = işlemTipleri.ToList().Find(at => at.SistemAnahtarKelimeleri == sistemAnahtarKelimleri);

            if (işlemTipi == null || !işlemTipi.Etkin)
            {
                return(null);
            }

            yorum = GenelYardımcı.BoşKontrol(yorum);
            yorum = string.Format(yorum, yorumDeğerleri);
            yorum = GenelYardımcı.MaksimumUzunlukKontrol(yorum, 4000);



            var işlem = new İşlem();

            işlem.İşlemTipiId       = işlemTipi.Id;
            işlem.Kullanıcı         = kullanıcı;
            işlem.Yorum             = yorum;
            işlem.OluşturulmaTarihi = DateTime.UtcNow;
            işlem.IpAdresi          = _webYardımcısı.MevcutIpAdresiAl();

            _işlemDepo.Ekle(işlem);

            return(işlem);
        }
        public static string GetLocalizedEnum <T>(this T enumValue, ILocalizationService localizationService, int languageId)
            where T : struct
        {
            if (localizationService == null)
            {
                throw new ArgumentNullException(nameof(localizationService));
            }

            if (!typeof(T).IsEnum)
            {
                throw new ArgumentException("T must be an enumerated type");
            }

            //localized value
            var resourceName = $"Enums.{typeof(T)}.{enumValue}";
            var result       = localizationService.GetResource(resourceName, languageId, false, "", true);

            //set default value if required
            if (string.IsNullOrEmpty(result))
            {
                result = GenelYardımcı.EnumDönüştür(enumValue.ToString());
            }

            return(result);
        }
        public static TPropType ÖznitelikAl <TPropType>(this TemelVarlık varlık,
                                                        string key, IGenelÖznitelikServisi genelÖznitelikServisi, int siteId = 0)
        {
            if (varlık == null)
            {
                throw new ArgumentNullException("varlık");
            }

            string keyGroup = varlık.GetUnproxiedEntityType().Name;

            var props = genelÖznitelikServisi.VarlıkİçinÖznitelikleriAl(varlık.Id, keyGroup);

            if (props == null)
            {
                return(default(TPropType));
            }
            props = props.Where(x => x.SiteId == siteId).ToList();
            if (!props.Any())
            {
                return(default(TPropType));
            }

            var prop = props.FirstOrDefault(ga =>
                                            ga.Key.Equals(key, StringComparison.InvariantCultureIgnoreCase));

            if (prop == null || string.IsNullOrEmpty(prop.Value))
            {
                return(default(TPropType));
            }

            return(GenelYardımcı.To <TPropType>(prop.Value));
        }
Ejemplo n.º 5
0
        private static Assembly DosyaÇözücü(FileInfo dosya)
        {
            if (dosya.Directory == null || dosya.Directory.Parent == null)
            {
                throw new InvalidOperationException(dosya.Name + " dosyası için eklenti dizini, izin verilen uygulama klasör hiyerarşisinin dışındaki bir klasördedir.");
            }

            FileInfo gölgeKopyaDosyası;

            if (GenelYardımcı.GüvenSeviyesiAl() != AspNetHostingPermissionLevel.Unrestricted)
            {
                //Tüm eklentilerin ~/Eklentiler/bin/ dizinine kopyalanması gereklidir.
                //Bunların hepsi web.config'de statik olarak probingPaths'in ayarlanmasına bağlıdır

                //Orta güvenilirlikte çalışıyorken, özel bin klasörüne kopyalanır
                var gölgeKopyaDosyaKlasörü = Directory.CreateDirectory(_gölgeKopyaKlasörü.FullName);
                gölgeKopyaDosyası = OrtaGüveniBaşlat(dosya, gölgeKopyaDosyaKlasörü);
            }
            else
            {
                var klasör = AppDomain.CurrentDomain.DynamicDirectory;
                Debug.WriteLine(dosya.FullName + " to " + klasör);
                //Tam güven içerisinde çalışıyorken, standart dinamik klasöre kopyalanır
                gölgeKopyaDosyası = TamGüveniBaşlat(dosya, new DirectoryInfo(klasör));
            }

            //Şimdi eklenti tanımını kaydedebiliriz
            var gölgeKopyaAssembly = Assembly.Load(AssemblyName.GetAssemblyName(gölgeKopyaDosyası.FullName));

            //BuildManager'e referans ekleniyor
            Debug.WriteLine("BuildManager'e ekleniyor: '{0}'", gölgeKopyaAssembly.FullName);
            BuildManager.AddReferencedAssembly(gölgeKopyaAssembly);

            return(gölgeKopyaAssembly);
        }
Ejemplo n.º 6
0
        public virtual void Yükle(string fizikselYol)
        {
            string dosyaYolu = GenelYardımcı.MapPath(fizikselYol);
            string içerik    = File.ReadAllText(dosyaYolu);

            if (!String.IsNullOrEmpty(içerik))
            {
                using (var sr = new StringReader(içerik))
                {
                    using (var xr = XmlReader.Create(sr,
                                                     new XmlReaderSettings {
                        CloseInput = true,
                        IgnoreWhitespace = true,
                        IgnoreComments = true,
                        IgnoreProcessingInstructions = true
                    }))
                    {
                        var doc = new XmlDocument();
                        doc.Load(xr);
                        if ((doc.DocumentElement != null) && doc.HasChildNodes)
                        {
                            XmlNode xmlRootNode = doc.DocumentElement.FirstChild;
                            Iterate(RootNode, xmlRootNode);
                        }
                    }
                }
            }
        }
Ejemplo n.º 7
0
        public virtual void EmailHesabıEkle(EmailHesabı emailHesabı)
        {
            if (emailHesabı == null)
            {
                throw new ArgumentNullException("emailHesabı");
            }

            emailHesabı.Email          = GenelYardımcı.BoşKontrol(emailHesabı.Email);
            emailHesabı.GörüntülenenAd = GenelYardımcı.BoşKontrol(emailHesabı.GörüntülenenAd);
            emailHesabı.Host           = GenelYardımcı.BoşKontrol(emailHesabı.Host);
            emailHesabı.KullanıcıAdı   = GenelYardımcı.BoşKontrol(emailHesabı.KullanıcıAdı);
            emailHesabı.Şifre          = GenelYardımcı.BoşKontrol(emailHesabı.Şifre);

            emailHesabı.Email          = emailHesabı.Email.Trim();
            emailHesabı.GörüntülenenAd = emailHesabı.GörüntülenenAd.Trim();
            emailHesabı.Host           = emailHesabı.Host.Trim();
            emailHesabı.KullanıcıAdı   = emailHesabı.KullanıcıAdı.Trim();
            emailHesabı.Şifre          = emailHesabı.Şifre.Trim();

            emailHesabı.Email          = GenelYardımcı.MaksimumUzunlukKontrol(emailHesabı.Email, 255);
            emailHesabı.GörüntülenenAd = GenelYardımcı.MaksimumUzunlukKontrol(emailHesabı.GörüntülenenAd, 255);
            emailHesabı.Host           = GenelYardımcı.MaksimumUzunlukKontrol(emailHesabı.Host, 255);
            emailHesabı.KullanıcıAdı   = GenelYardımcı.MaksimumUzunlukKontrol(emailHesabı.KullanıcıAdı, 255);
            emailHesabı.Şifre          = GenelYardımcı.MaksimumUzunlukKontrol(emailHesabı.Şifre, 255);

            _emailDepo.Ekle(emailHesabı);
            _olayYayınlayıcı.OlayEklendi(emailHesabı);
        }
Ejemplo n.º 8
0
        public IServiceProvider ConfigureServices(IServiceCollection services, IConfigurationRoot configuration)
        {
            var typeFinder            = new WebAppTypeFinder();
            var startupConfigurations = typeFinder.FindClassesOfType <IStartup>();

            var instances = startupConfigurations
                            .Where(startup => EklentiYönetici.EklentiBul(startup)?.Kuruldu ?? true) //ignore not installed plugins
                            .Select(startup => (IStartup)Activator.CreateInstance(startup))
                            .OrderBy(startup => startup.Order);

            //configure services
            foreach (var instance in instances)
            {
                instance.ConfigureServices(services, configuration);
            }

            AddAutoMapper(services, typeFinder);

            var nopConfig = services.BuildServiceProvider().GetService <Config>();

            RegisterDependencies(nopConfig, services, typeFinder);

            if (!nopConfig.IgnoreStartupTasks)
            {
                RunStartupTasks(typeFinder);
            }

            AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
            AppDomain.CurrentDomain.SetData("DataDirectory", GenelYardımcı.MapPath("~/App_Data/"));

            return(_serviceProvider);
        }
Ejemplo n.º 9
0
        public virtual Xls XlsEkle(byte[] xlsBinary, string mimeTipi, string seoDosyaAdı,
                                   string altÖznitelik = null, string başlıkÖznitelik = null,
                                   bool Yeni           = true, bool BinaryDoğrula = true)
        {
            mimeTipi = GenelYardımcı.BoşKontrol(mimeTipi);
            mimeTipi = GenelYardımcı.MaksimumUzunlukKontrol(mimeTipi, 20);

            seoDosyaAdı = GenelYardımcı.MaksimumUzunlukKontrol(seoDosyaAdı, 100);

            /*
             * if (BinaryDoğrula)
             *  xlsBinary = ResimDoğrula(resimBinary, mimeTipi);
             */
            var xls = new Xls
            {
                XlsBinary       = new byte[0],
                MimeTipi        = mimeTipi,
                SeoDosyaAdı     = seoDosyaAdı,
                AltÖznitelik    = altÖznitelik,
                BaşlıkÖznitelik = başlıkÖznitelik,
                Yeni            = Yeni,
            };

            DosyayaXlsKaydet(xls.Id, xlsBinary, mimeTipi);
            return(xls);
        }
Ejemplo n.º 10
0
        public static void EklentileriKaldırıldıOlarakİşaretle(string sistemAdı)
        {
            if (String.IsNullOrEmpty(sistemAdı))
            {
                throw new ArgumentNullException("sistemAdı");
            }

            var dosyaYolu = GenelYardımcı.MapPath(KuruluEklentilerYolu);

            if (!File.Exists(dosyaYolu))
            {
                using (File.Create(dosyaYolu))
                {
                    //Dosyayı oluşturduktan sonra kapatmak için 'using' özelliğini kullanıyoruz
                }
            }


            var  kuruluEklentiSistemAdları    = EklentiDosyasıAyrıştırıcı.KuruluEklentiDosyalarınıAyrıştır(KuruluEklentilerDosyaYolunuAl());
            bool zatenKuruluOlarakİşaretlendi = kuruluEklentiSistemAdları
                                                .FirstOrDefault(x => x.Equals(sistemAdı, StringComparison.InvariantCultureIgnoreCase)) != null;

            if (zatenKuruluOlarakİşaretlendi)
            {
                kuruluEklentiSistemAdları.Remove(sistemAdı);
            }
            EklentiDosyasıAyrıştırıcı.KuruluEklentiDosyasınıKaydet(kuruluEklentiSistemAdları, dosyaYolu);
        }
Ejemplo n.º 11
0
        public virtual T AyarAlKey <T>(string key, T varsayılanDeğer = default(T),
                                       int SiteId = 0, bool paylaşılanDeğerYoksaYükle = false)
        {
            if (String.IsNullOrEmpty(key))
            {
                return(varsayılanDeğer);
            }

            var ayarlar = ÖnbellektekiTümAyarlarıAl();

            key = key.Trim().ToLowerInvariant();
            if (ayarlar.ContainsKey(key))
            {
                var settingsByKey = ayarlar[key];
                var ayar          = settingsByKey.FirstOrDefault(x => x.SiteId == SiteId);

                //paylaşılan değeri yükle?
                if (ayar == null && SiteId > 0 && paylaşılanDeğerYoksaYükle)
                {
                    ayar = settingsByKey.FirstOrDefault(x => x.SiteId == 0);
                }

                if (ayar != null)
                {
                    return(GenelYardımcı.To <T>(ayar.Değer));
                }
            }

            return(varsayılanDeğer);
        }
Ejemplo n.º 12
0
        protected virtual BrowscapXmlHelper GetBrowscapXmlHelper()
        {
            if (Singleton <BrowscapXmlHelper> .Instance != null)
            {
                return(Singleton <BrowscapXmlHelper> .Instance);
            }

            //no database created
            if (String.IsNullOrEmpty(_ayar.UserAgentStringsPath))
            {
                return(null);
            }

            //prevent multi loading data
            lock (_kilitleyici)
            {
                //data can be loaded while we waited
                if (Singleton <BrowscapXmlHelper> .Instance != null)
                {
                    return(Singleton <BrowscapXmlHelper> .Instance);
                }

                var userAgentStringsPath            = GenelYardımcı.MapPath(_ayar.UserAgentStringsPath);
                var crawlerOnlyUserAgentStringsPath = string.IsNullOrEmpty(_ayar.CrawlerOnlyUserAgentStringsPath) ? string.Empty : GenelYardımcı.MapPath(_ayar.CrawlerOnlyUserAgentStringsPath);

                var browscapXmlHelper = new BrowscapXmlHelper(userAgentStringsPath, crawlerOnlyUserAgentStringsPath);
                Singleton <BrowscapXmlHelper> .Instance = browscapXmlHelper;

                return(Singleton <BrowscapXmlHelper> .Instance);
            }
        }
Ejemplo n.º 13
0
        public static void EklentilerinTümüKaldırıldıOlarakİşaretle()
        {
            var dosyaYolu = GenelYardımcı.MapPath(KuruluEklentilerYolu);

            if (File.Exists(dosyaYolu))
            {
                File.Delete(dosyaYolu);
            }
        }
Ejemplo n.º 14
0
        public virtual int BildirimGönder(MesajTeması mesajTeması, EmailHesabı emailHesabı, IEnumerable <Token> tokens, string emailAdresine, string isime, string ekDosyaYolu = null, string ekDosyaAdı = null, string emailAdresineCevap = null, string ismeCevap = null, string emailAdresinden = null, string isimden = null, string konu = null)
        {
            if (mesajTeması == null)
            {
                throw new ArgumentNullException("mesajTeması");
            }

            if (emailHesabı == null)
            {
                throw new ArgumentNullException("emailHesabı");
            }

            var bcc = mesajTeması.BccEmailAdresleri;

            if (String.IsNullOrEmpty(konu))
            {
                konu = mesajTeması.Konu;
            }
            var gövde = mesajTeması.Gövde;

            //Replace subject and body tokens

            /*
             * var subjectReplaced = _tokenizer.Replace(konu, tokens, false);
             * var bodyReplaced = _tokenizer.Replace(gövde, tokens, true);
             */
            //limit name length
            isime = GenelYardımcı.MaksimumUzunlukKontrol(isime, 300);

            var email = new BekleyenMail
            {
                Öncelik                = BekleyenMailÖnceliği.Yüksek,
                Kimden                 = !string.IsNullOrEmpty(emailAdresinden) ? emailAdresinden : emailHesabı.Email,
                KimdenAd               = !string.IsNullOrEmpty(isimden) ? isimden : emailHesabı.GörüntülenenAd,
                Kime                   = emailAdresine,
                KimeAd                 = isime,
                Yanıtla                = emailAdresineCevap,
                YanıtlaAd              = ismeCevap,
                CC                     = string.Empty,
                Bcc                    = bcc,
                Konu                   = konu,  //tokenizer
                Gövde                  = gövde, //tokenizer
                EkDosyaYolu            = ekDosyaYolu,
                EkDosyaAdı             = ekDosyaAdı,
                EkYüklemeId            = mesajTeması.EkİndirmeId,
                OluşturulmaTarihi      = DateTime.UtcNow,
                EmailHesapId           = emailHesabı.Id,
                ŞuTarihdenÖnceGönderme = !mesajTeması.GöndermedenÖnceGeciktir.HasValue ? null
                    : (DateTime?)(DateTime.UtcNow + TimeSpan.FromHours(mesajTeması.GecikmePeriodu.Saatler(mesajTeması.GöndermedenÖnceGeciktir.Value)))
            };

            _bekleyenMailServisi.BekleyenMailEkle(email);
            return(email.Id);
        }
Ejemplo n.º 15
0
        protected virtual void ResimThumbSil(Resim resim)
        {
            string filtre          = string.Format("{0}*.*", resim.Id.ToString("0000000"));
            var    thumbKlasörYolu = GenelYardımcı.MapPath("~/content/images/thumbs");

            string[] mevcutDosyalar = Directory.GetFiles(thumbKlasörYolu, filtre, SearchOption.AllDirectories);
            foreach (string mevcutDosyaAdı in mevcutDosyalar)
            {
                var thumbDosyaYolu = ThumbYoluAl(mevcutDosyaAdı);
                File.Delete(thumbDosyaYolu);
            }
        }
        public virtual void ÖznitelikKaydet <TPropType>(TemelVarlık varlık, string key, TPropType değer, int siteId = 0)
        {
            if (varlık == null)
            {
                throw new ArgumentNullException("varlık");
            }

            if (key == null)
            {
                throw new ArgumentNullException("key");
            }

            string keyGroup = varlık.GetUnproxiedEntityType().Name;

            var props = VarlıkİçinÖznitelikleriAl(varlık.Id, keyGroup)
                        .Where(x => x.SiteId == siteId)
                        .ToList();
            var prop = props.FirstOrDefault(ga =>
                                            ga.Key.Equals(key, StringComparison.InvariantCultureIgnoreCase));

            var değerStr = GenelYardımcı.To <string>(değer);

            if (prop != null)
            {
                if (string.IsNullOrWhiteSpace(değerStr))
                {
                    //sil
                    ÖznitelikSil(prop);
                }
                else
                {
                    //güncelle
                    prop.Value = değerStr;
                    ÖznitelikGüncelle(prop);
                }
            }
            else
            {
                if (!string.IsNullOrWhiteSpace(değerStr))
                {
                    //insert
                    prop = new GenelÖznitelik
                    {
                        VarlıkId = varlık.Id,
                        Key      = key,
                        KeyGroup = keyGroup,
                        Value    = değerStr,
                        SiteId   = siteId,
                    };
                    ÖznitelikEkle(prop);
                }
            }
        }
Ejemplo n.º 17
0
        protected virtual Font FontAl(string fontDosyaAdı)
        {
            if (fontDosyaAdı == null)
            {
                throw new ArgumentNullException("fontFileName");
            }

            string fontYolu = Path.Combine(GenelYardımcı.MapPath("~/App_Data/Pdf/"), fontDosyaAdı);
            var    baseFont = BaseFont.CreateFont(fontYolu, "windows-1254", BaseFont.EMBEDDED);
            var    font     = new Font(baseFont, 10, Font.NORMAL);

            return(font);
        }
        public virtual void AyarlarıKaydet(DataAyarları settings)
        {
            Singleton <DataAyarları> .Instance = settings ?? throw new ArgumentNullException(nameof(settings));
            var filePath = GenelYardımcı.MapPath(DataAyarlarıDosyaYolu);

            if (!File.Exists(filePath))
            {
                using (File.Create(filePath)) { }
            }
            var text = JsonConvert.SerializeObject(Singleton <DataAyarları> .Instance, Formatting.Indented);

            File.WriteAllText(filePath, text);
        }
Ejemplo n.º 19
0
        public BültenAboneliği BültenAboneliğiAlEmailVeSiteId(string email, int siteId)
        {
            if (!GenelYardımcı.GeçerliMail(email))
            {
                return(null);
            }
            email = email.Trim();
            var bültenAbonelikleri = from nls in _abonelikDepo.Tablo
                                     where nls.Email == email && nls.SiteId == siteId
                                     orderby nls.Id
                                     select nls;

            return(bültenAbonelikleri.FirstOrDefault());
        }
Ejemplo n.º 20
0
 public void BültenAboneliğiEkle(BültenAboneliği bültenAboneliği, bool abonelikOlayıYayınla = true)
 {
     if (bültenAboneliği == null)
     {
         throw new ArgumentNullException("bültenAboneliği");
     }
     bültenAboneliği.Email = GenelYardımcı.AboneMailAdresindenEminOl(bültenAboneliği.Email);
     _abonelikDepo.Ekle(bültenAboneliği);
     if (bültenAboneliği.Aktif)
     {
         AbonelikOlayıYayınla(bültenAboneliği, true, abonelikOlayıYayınla);
     }
     _olayYayınlayıcı.OlayEklendi(bültenAboneliği);
 }
Ejemplo n.º 21
0
        public virtual DataAyarları AyarlarıYükle(string dosyaYolu = null)
        {
            if (String.IsNullOrEmpty(dosyaYolu))
            {
                dosyaYolu = Path.Combine(GenelYardımcı.MapPath("~/App_Data/"), dosyaadı);
            }
            if (File.Exists(dosyaYolu))
            {
                string text = File.ReadAllText(dosyaYolu);
                return(AyarlarıAyrıştır(text));
            }

            return(new DataAyarları());
        }
Ejemplo n.º 22
0
        public virtual void VeritabanıBaşlatıcıyıAyarla()
        {
            var DoğrulananTablolar = new[] { "Kullanıcılar", "İndirim", "Sipariş" };

            //custom commands (stored procedures, indexes)

            var özelKomutlar = new List <string>();

            özelKomutlar.AddRange(KomutlarıAyrıştır(GenelYardımcı.MapPath("~/App_Data/Install/SqlServer.Indexes.sql"), false));
            özelKomutlar.AddRange(KomutlarıAyrıştır(GenelYardımcı.MapPath("~/App_Data/Install/SqlServer.StoredProcedures.sql"), false));

            var başlatıcı = new CreateTablesIfNotExist <TSObjectContext>(DoğrulananTablolar, özelKomutlar.ToArray());

            Database.SetInitializer(başlatıcı);
        }
Ejemplo n.º 23
0
        protected void SetWorkingCulture()
        {
            if (!DataAyarlarıYardımcısı.DatabaseYüklendi())
            {
                return;
            }

            //ignore static resources
            var webHelper = EngineContext.Current.Resolve <IWebYardımcısı>();

            if (webHelper.SabitKaynak(this.Request))
            {
                return;
            }

            //keep alive page requested (we ignore it to prevent creation of guest customer records)
            string keepAliveUrl = string.Format("{0}keepalive/index", webHelper.SiteKonumuAl());

            if (webHelper.SayfanınUrlsiniAl(false).StartsWith(keepAliveUrl, StringComparison.InvariantCultureIgnoreCase))
            {
                return;
            }


            if (webHelper.SayfanınUrlsiniAl(false).StartsWith(string.Format("{0}Yönetim", webHelper.SiteKonumuAl()),
                                                              StringComparison.InvariantCultureIgnoreCase))
            {
                //admin area


                //always set culture to 'en-US'
                //we set culture of admin area to 'en-US' because current implementation of Telerik grid
                //doesn't work well in other cultures
                //e.g., editing decimal value in russian culture
                GenelYardımcı.TelerikKültürAyarla();
            }
            else
            {
                //public store

                /*
                 * var workContext = EngineContext.Current.Resolve<IWorkContext>();
                 * var culture = new CultureInfo(workContext.WorkingLanguage.LanguageCulture);
                 * Thread.CurrentThread.CurrentCulture = culture;
                 * Thread.CurrentThread.CurrentUICulture = culture;
                 */
            }
        }
Ejemplo n.º 24
0
        public virtual Resim ResimGüncelle(int resimId, byte[] resimBinary, string mimeTipi,
                                           string seoDosyaAdı, string altÖznitelik = null, string başlıkÖznitelik = null,
                                           bool Yeni = true, bool BinaryDoğrula = true)
        {
            mimeTipi = GenelYardımcı.BoşKontrol(mimeTipi);
            mimeTipi = GenelYardımcı.MaksimumUzunlukKontrol(mimeTipi, 20);

            seoDosyaAdı = GenelYardımcı.MaksimumUzunlukKontrol(seoDosyaAdı, 100);

            if (BinaryDoğrula)
            {
                resimBinary = ResimDoğrula(resimBinary, mimeTipi);
            }

            var resim = ResimAlId(resimId);

            if (resim == null)
            {
                return(null);
            }

            //Bir resim değiştirildiyse eski thumb sil
            if (seoDosyaAdı != resim.SeoDosyaAdı)
            {
                ResimThumbSil(resim);
            }

            resim.ResimBinary     = this.VeritabanındaDepola ? resimBinary : new byte[0];
            resim.MimeTipi        = mimeTipi;
            resim.SeoDosyaAdı     = seoDosyaAdı;
            resim.AltÖznitelik    = altÖznitelik;
            resim.BaşlıkÖznitelik = başlıkÖznitelik;
            resim.Yeni            = Yeni;

            _resimDepo.Güncelle(resim);

            if (!this.VeritabanındaDepola)
            {
                DosyayaResimKaydet(resim.Id, resimBinary, mimeTipi);
            }

            //olay bildirimi
            _olayYayınlayıcısı.OlayGüncellendi(resim);

            return(resim);
        }
Ejemplo n.º 25
0
        public virtual void AyarlarıKaydet(DataAyarları ayarlar)
        {
            if (ayarlar == null)
            {
                throw new ArgumentNullException("ayarlar");
            }

            string dosyaYolu = Path.Combine(GenelYardımcı.MapPath("~/App_Data/"), dosyaadı);

            if (!File.Exists(dosyaYolu))
            {
                using (File.Create(dosyaYolu))
                {
                }
            }
            var text = AyarlarıOluştur(ayarlar);

            File.WriteAllText(dosyaYolu, text);
        }
Ejemplo n.º 26
0
        public virtual string TeklifPdfOlustur(Teklif teklif)
        {
            if (teklif == null)
            {
                throw new ArgumentNullException("teklif");
            }

            string dosyaAdı  = string.Format("teklif_{0}_{1}.pdf", teklif.Id, GenelYardımcı.RastgeleTamSayıÜret(4));
            string dosyaYolu = Path.Combine(GenelYardımcı.MapPath("~/content/files/pdf"), dosyaAdı);

            using (var fileStream = new FileStream(dosyaYolu, FileMode.Create))
            {
                var teklifler = new List <Teklif>();
                teklifler.Add(teklif);
                TeklifPdfOlustur(fileStream, teklifler);
            }

            return(dosyaYolu);
        }
Ejemplo n.º 27
0
        public static string KullanıcıAdıFormatı(this Kullanıcı kullanıcı, bool şeritÇokUzun = false, int maksUzunluk = 0)
        {
            if (kullanıcı == null)
            {
                return(string.Empty);
            }

            if (kullanıcı.IsGuest())
            {
                //return EngineContext.Current.Resolve<ILocalizationService>().GetResource("Kullanıcı.Guest");
            }

            string sonuç = string.Empty;

            switch (EngineContext.Current.Resolve <KullanıcıAyarları>().KullanıcıAdıFormatı)
            {
            case Core.Domain.Kullanıcılar.KullanıcıAdıFormatı.EmailGöster:
                sonuç = kullanıcı.Email;
                break;

            case Core.Domain.Kullanıcılar.KullanıcıAdıFormatı.KullanıcıAdıGöster:
                sonuç = kullanıcı.KullanıcıAdı;
                break;

            case Core.Domain.Kullanıcılar.KullanıcıAdıFormatı.TamAdıGöster:
                sonuç = kullanıcı.TamAdAl();
                break;

            case Core.Domain.Kullanıcılar.KullanıcıAdıFormatı.SadeceAdıGöster:
                sonuç = kullanıcı.ÖznitelikAl <string>(SistemKullanıcıÖznitelikAdları.Adı);
                break;

            default:
                break;
            }

            if (şeritÇokUzun && maksUzunluk > 0)
            {
                sonuç = GenelYardımcı.MaksimumUzunlukKontrol(sonuç, maksUzunluk);
            }

            return(sonuç);
        }
Ejemplo n.º 28
0
        public static bool EklentiSil(EklentiTanımlayıcı pluginDescriptor)
        {
            if (pluginDescriptor == null)
            {
                return(false);
            }

            if (pluginDescriptor.Kuruldu)
            {
                return(false);
            }

            if (pluginDescriptor.OrijinalAssemblyDosyası.Directory.Exists)
            {
                GenelYardımcı.KlasörSil(pluginDescriptor.OrijinalAssemblyDosyası.DirectoryName);
            }

            return(true);
        }
        public static void AddRotaDataProtection(this IServiceCollection services)
        {
            var config = services.BuildServiceProvider().GetRequiredService <Config>();

            if (config.RedisCachingEnabled && config.PersistDataProtectionKeysToRedis)
            {
                services.AddDataProtection().PersistKeysToRedis(
                    () =>
                {
                    var redisConnectionWrapper = EngineContext.Current.Resolve <IRedisConnectionWrapper>();
                    return(redisConnectionWrapper.GetDatabase());
                }, RedisYapılandırması.DataProtectionKeysName);
            }
            else
            {
                var dataProtectionKeysPath   = GenelYardımcı.MapPath("~/App_Data/DataProtectionKeys");
                var dataProtectionKeysFolder = new DirectoryInfo(dataProtectionKeysPath);

                services.AddDataProtection().PersistKeysToFileSystem(dataProtectionKeysFolder);
            }
        }
Ejemplo n.º 30
0
        protected void SetWorkingCulture(IWebYardımcısı webHelper, IWorkContext workContext)
        {
            if (!DataAyarlarıYardımcısı.DatabaseYüklendi())
            {
                return;
            }

            var adminAreaUrl = $"{webHelper.SiteKonumuAl()}admin";

            if (webHelper.SayfanınUrlsiniAl(false).StartsWith(adminAreaUrl, StringComparison.InvariantCultureIgnoreCase))
            {
                GenelYardımcı.TelerikKültürAyarla();
                workContext.Yönetici = true;
            }
            else
            {
                var culture = new CultureInfo(workContext.MevcutDil.DilKültürü);
                CultureInfo.CurrentCulture   = culture;
                CultureInfo.CurrentUICulture = culture;
            }
        }