Beispiel #1
0
        /// <summary>
        /// Called by the client to save the updated settings.
        /// </summary>
        /// <param name="context"></param>
        /// <param name="key"></param>
        /// <param name="itemType"></param>
        /// <param name="siteId"></param>
        /// <param name="inheritanceState"></param>
        public void SaveSettings(SettingsItemContext context, string key, string itemType, string siteId, string inheritanceState)
        {
            ServiceUtility.RequestBackendUserAuthentication();

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

            Guid id = Guid.Empty;

            if (!string.IsNullOrEmpty(siteId))
            {
                id = Guid.Parse(siteId);
            }

            if (SystemManager.CurrentContext.IsMultisiteMode && id != Guid.Empty)
            {
                if (!string.IsNullOrEmpty(inheritanceState) && inheritanceState == "inherit")
                {
                    // delete site specific settings
                    var logger         = LoggerFactory.Instance();
                    var settingsHelper = new GigyaSitefinityDsSettingsHelper(logger);
                    settingsHelper.Delete(id);
                    settingsHelper.ClearCache(id);
                    return;
                }
            }

            IGigyaDSSettingsDataContract settingsDataContract = (IGigyaDSSettingsDataContract)context.Item;

            settingsDataContract.Save(id);
        }
Beispiel #2
0
        public SiteSettingsHelper()
        {
            var basicSettingsSerivce        = new BasicSettingsService();
            var multiSiteContext            = new MultisiteContext();
            var currSite                    = multiSiteContext.CurrentSite;
            SettingsItemContext siteSetting = null;

            SystemManager.RunWithElevatedPrivilege(d => { siteSetting = basicSettingsSerivce.GetSettings(_itemType, currSite.Id.ToString()); });
            if (siteSetting != null)
            {
                _siteSettingsContract = (CustomSiteSettingsContract)siteSetting.Item;
            }
        }