예제 #1
0
        internal override void SetPreferences()
        {
            UserPreferences.RemovePreference(ModuleKey, "enable-content-schemas");
            if (IsEnableContentSchemas)
            {
                UserPreferences.EnsurePreference(ModuleKey, "enable-content-schemas", IsEnableContentSchemas);
            }

            UserPreferences.EnsurePreference(ModuleKey, "tag-helpers", TagHelpers);

            List <string> disabledContentSchemas = new List <string>();

            foreach (var domain in Domains)
            {
                var    exclusions = string.Join(";", domain.DomainWorkflowSelections.Where(x => !x.IsSelected).Select(x => x.Id));
                string key        = $"workflow-exclusions:{domain.Id.ToLower()}";
                if (!string.IsNullOrWhiteSpace(exclusions))
                {
                    UserPreferences.EnsurePreference(ModuleKey, key, exclusions);
                }
                else
                {
                    UserPreferences.RemovePreference(ModuleKey, key);
                }
                if (!domain.IsShowSchema)
                {
                    disabledContentSchemas.Add(domain.Id);
                }
            }
            UserPreferences.RemovePreference(ModuleKey, "disable-domain-content-schemas");
            if (disabledContentSchemas.Any())
            {
                UserPreferences.EnsurePreference(ModuleKey, "disable-domain-content-schemas", String.Join(";", disabledContentSchemas));
            }
        }
예제 #2
0
        internal override void SetPreferences()
        {
            var selected = JsonSchemas.FirstOrDefault(p => p.IsSelectedContentSchema);

            if (selected != null)
            {
                UserPreferences.EnsurePreference(ModuleKey, "selectedContentSchema", selected.Id);
            }
        }
예제 #3
0
        internal override void SetPreferences()
        {
            var global = new List <string>().TagExclusions();

            foreach (var domain in Settings.Domains)
            {
                if (Resolver.Exclusions.ContainsKey(domain.Id))
                {
                    var domainexclusions = Resolver.Exclusions[domain.Id].Where(x => !global.Contains(x));
                    if (domainexclusions.Any())
                    {
                        UserPreferences.EnsurePreference(ModuleKey, $"tag-exclusions:{domain.Id}", String.Join(";", domainexclusions));
                    }
                    else
                    {
                        UserPreferences.RemovePreference(ModuleKey, $"tag-exclusions:{domain.Id}");
                    }
                }
            }
            if (Resolver.RecentTags.Count > 0)
            {
                var recenttags = string.Join(";", Resolver.RecentTags.Select(t => t.Model.Key));
                UserPreferences.EnsurePreference(ModuleKey, "recent-tags", recenttags);
            }


            UserPreferences.EnsurePreference(ModuleKey, "content-type", Input.ContentType);
            UserPreferences.EnsurePreference(ModuleKey, "selected-domain", Settings.SelectedDomain.Model.Id);
            var location = Application.Current.Properties[AppConstants.LastOpenedFileDialogFolderpath] as string;

            if (!String.IsNullOrWhiteSpace(location) && Directory.Exists(location))
            {
                UserPreferences.EnsurePreference(ModuleKey, "last-opened", location);
            }
            UserPreferences.EnsurePreference(ModuleKey, "tags-expanded", IsTagsExpanded);
            UserPreferences.EnsurePreference(ModuleKey, "recent-tags-checked", IsTagsRecentChecked);
            UserPreferences.EnsurePreference(ModuleKey, "recent-tags-max", Resolver.MaxRecentTags);
            var language = GetSelectedLanguage();

            UserPreferences.EnsurePreference(ModuleKey, "selected-language", language);

            UserPreferences.EnsurePreference(ModuleKey, "is-recent-queries", IsRecentQueries);
        }