コード例 #1
0
        public static void DeletePluginLocaleResource(this BasePlugin plugin,
                                                      ILocalizationService localizationService, ILanguagesService languageService,
                                                      string resourceName)
        {
            //actually plugin instance is not required
            if (plugin == null)
            {
                throw new ArgumentNullException(nameof(plugin));
            }
            if (localizationService == null)
            {
                throw new ArgumentNullException(nameof(localizationService));
            }
            if (languageService == null)
            {
                throw new ArgumentNullException(nameof(languageService));
            }

            foreach (var lang in languageService.GetAsEnumerable())
            {
                var lsr = localizationService.FindByName(resourceName, lang.Id);
                if (lsr != null)
                {
                    localizationService.Delete(lsr.Id);
                }
            }
        }
コード例 #2
0
        public static void AddOrUpdatePluginLocaleResource(this BasePlugin plugin,
                                                           ILocalizationService localizationService, ILanguagesService languageService,
                                                           string resourceName, string resourceValue, string languageISO = null)
        {
            //actually plugin instance is not required
            if (plugin == null)
            {
                throw new ArgumentNullException(nameof(plugin));
            }
            if (localizationService == null)
            {
                throw new ArgumentNullException(nameof(localizationService));
            }
            if (languageService == null)
            {
                throw new ArgumentNullException(nameof(languageService));
            }

            foreach (var lang in languageService.GetAsEnumerable())
            {
                if (!string.IsNullOrEmpty(languageISO) && !languageISO.Equals(lang.IsoCode))
                {
                    continue;
                }

                var lsr = localizationService.FindByName(resourceName, lang.Id);
                if (lsr == null)
                {
                    lsr = new TblLocalizedStrings()
                    {
                        LanguageId    = lang.Id,
                        ResourceName  = resourceName,
                        ResourceValue = resourceValue
                    };
                    localizationService.Add(lsr);
                }
                else
                {
                    lsr.ResourceValue = resourceValue;
                    localizationService.Update(lsr);
                }
            }
        }