Exemple #1
0
        public ActionResult SavePortalStyleSettings_Custom()
        {
            PortalStyleSettingsEntity args = RequestArgs <PortalStyleSettingsEntity>();

            if (args == null)
            {
                return(RespondResult(false, "参数无效。"));
            }

            args.Domain     = DomainContext.Domain.Id;
            args.AppId      = DomainContext.AppId;
            args.PortalMode = EnumPortalMode.Custom;
            _portalManager.SavePortalStyleSettings_Custom(DomainContext.Domain.Id, args);

            //确保保存设置后能立马在微信后台保存设置
            _domainPool.Refresh(UserContext.User.Domain);

            #region 操作日志

            _operatedLogManager.Create(new OperatedLogEntity()
            {
                Domain      = DomainContext.Domain.Id,
                AppId       = DomainContext.AppId,
                User        = UserContext.User.Id,
                IP          = Request.UserHostAddress,
                Module      = EnumModule.Portal,
                Description = "保存微主页设置"
            });

            #endregion

            return(RespondResult());
        }
Exemple #2
0
        public PortalStyleSettingsEntity GetPortalStyleSettings(Guid domainId, string appId)
        {
            if (String.IsNullOrEmpty(appId))
            {
                return(null);
            }

            PortalStyleSettingsEntity settings = new PortalStyleSettingsEntity();

            settings.Domain = domainId;
            settings.AppId  = appId;
            if (_dataBase.Fill <PortalStyleSettingsEntity>(settings) == false)
            {
                lock (_settingsLockObj)
                {
                    if (_dataBase.Fill <PortalStyleSettingsEntity>(settings) == false)
                    {
                        //初始化一条默认设置
                        _dataBase.Insert(settings);
                    }
                }
            }

            //不管模式是不是模版,只要有值,就取出来
            //避免从自定义切回模版画面时不显示名称和说明
            if (settings.PortalPresetTemplateId.HasValue)
            {
                settings.PortalPresetTemplate =
                    _portalTemplatePool.GetPortalPresetTemplate(settings.PortalPresetTemplateId.Value);
            }
            else
            {
                if (settings.PortalMode == EnumPortalMode.Template)
                {
                    settings.PortalPresetTemplate   = _portalTemplatePool.GetDefaultPortalPresetTemplate();
                    settings.PortalPresetTemplateId = settings.PortalPresetTemplate.Id;
                }
            }

            return(settings);
        }
        public ActionResult PortalStyle_Custom()
        {
            if (DomainContext.Online == false)
            {
                return(RedirectToAction("Docking"));
            }

            string strImportTemplateId = Request.QueryString["importTemplateId"];
            Guid   importTemplateId    = Guid.Empty;

            if (String.IsNullOrEmpty(strImportTemplateId) == false)
            {
                Guid.TryParse(strImportTemplateId, out importTemplateId);
            }

            PortalStyle_CustomViewModel model = new PortalStyle_CustomViewModel();

            if (importTemplateId == Guid.Empty)
            {
                PortalStyleSettingsEntity settings =
                    _portalManager.GetPortalStyleSettings(UserContext.User.Domain, DomainContext.AppId);
                model.CustomTemplate = settings.PortalCustomTemplate;
            }
            else
            {
                PortalPresetTemplateEntity templateEntity = _portalTemplatePool.GetPortalPresetTemplate(importTemplateId);
                if (templateEntity != null)
                {
                    model.CustomTemplate = templateEntity.Template;

                    string portalImageUrl = Request.QueryString["portalImageUrl"];
                    if (String.IsNullOrEmpty(portalImageUrl) == false)
                    {
                        model.CustomTemplate = model.CustomTemplate.Replace("{{#PortalImageUrl}}", Server.UrlDecode(portalImageUrl));
                    }
                }
            }

            return(View(model));
        }
Exemple #4
0
        public void SavePortalStyleSettings_Custom(Guid domainId, PortalStyleSettingsEntity args)
        {
            if (args == null)
            {
                Debug.Assert(false, "PortalStyleSettingsEntity 为空");
                return;
            }

            //_dataBase.Update(args);
            //不能直接update,会把 PortalCustomTemplate 覆盖掉

            SqlStructureBuild sqlBuild = new SqlStructureBuild();

            sqlBuild.Table = "StyleSettings";
            sqlBuild.Type  = SqlExpressionType.Update;
            sqlBuild.AddParameter("Domain", args.Domain, true);
            sqlBuild.AddParameter("AppId", args.AppId, true);
            sqlBuild.AddParameter("PortalMode", args.PortalMode);
            sqlBuild.AddParameter("PortalCustomTemplate", args.PortalCustomTemplate);
            _dataBase.ExcuteSqlExpression(sqlBuild.GetSqlExpression());

            _domainManager.UpdateLastUpdateTime(domainId);
        }