Example #1
0
        public ActionResult Settings(bool ismobile)
        {
            // we need to parse settings file
            var theme        = new ThemeHandler(MASTERdomain, ismobile);
            var settingHtml  = theme.GetSettingsHtml();
            var settingsText = theme.GetSettingsText();
            var serializer   = new JavaScriptSerializer();
            var settings     = serializer.Deserialize <ThemeSettings>(settingsText);

            // set current theme settings if set
            if (!string.IsNullOrEmpty(MASTERdomain.theme.preset))
            {
                settings.current = MASTERdomain.theme.preset;
                settingsText     = serializer.Serialize(settings);
            }

            var viewmodel = new ThemeSettingsViewModel
            {
                SettingsHtml = settingHtml,
                SettingsJson = string.IsNullOrEmpty(settingsText) ? "{}": settingsText,
                ThemeTitle   = MASTERdomain.theme.title,
                themeType    = ismobile ? ThemeType.MOBILE : ThemeType.MAIN
            };

            if (settings != null &&
                settings.presets != null &&
                settings.presets.Count != 0)
            {
                foreach (var key in settings.presets.Keys)
                {
                    viewmodel.presetList.Add(new SelectListItem()
                    {
                        Text     = key,
                        Value    = key,
                        Selected = key == MASTERdomain.theme.preset
                    });
                }
            }

            return(View(viewmodel));
        }