Пример #1
0
        public override string RenderToString(CmsControlDefinition controlDefnToRender, CmsLanguage langToRenderFor)
        {
            if (!CmsContext.currentUserIsSuperAdmin)
            {
                return("Access denied");
            }

            StringBuilder html = new StringBuilder();

            html.Append("<h1>Manage Website Users</h1>");

            PageDisplayMode displayMode = (PageDisplayMode)PageUtils.getFromForm("display", typeof(PageDisplayMode), PageDisplayMode.ListUsers);

            switch (displayMode)
            {
            case PageDisplayMode.ListUsers:
                html.Append(getListUsersDisplay());
                break;

            case PageDisplayMode.AddUser:
                html.Append(getEditUserDisplay(Int32.MinValue, CmsContext.currentPage));
                break;

            case PageDisplayMode.EditSelectedUser:
                html.Append(getEditUserDisplay(PageUtils.getFromForm("uid", Int32.MinValue), CmsContext.currentPage));
                break;
            } // switch

            return(html.ToString());
        }
Пример #2
0
        private string getPageDisplayUrl(WebPortalUser user, CmsPage currentPage, PageDisplayMode displayMode)
        {
            Dictionary <string, string> pageParams = new Dictionary <string, string>();

            pageParams.Add("display", Enum.GetName(typeof(PageDisplayMode), displayMode));
            pageParams.Add("uid", user.uid.ToString());
            return(currentPage.getUrl(pageParams));
        }
        public string GetPageDisplayName(PageDisplayMode mode)
        {
            string name;

            switch (mode)
            {
            case PageDisplayMode.Undefined:
                name = string.Empty;
                break;

            case PageDisplayMode.None:
                name = "UseNone";
                break;

            case PageDisplayMode.Outlines:
                name = "UseOutlines";
                break;

            case PageDisplayMode.Thumbnails:
                name = "UseThumbs";
                break;

            case PageDisplayMode.FullScreen:
                name = "FullScreen";
                break;

            case PageDisplayMode.Attachments:
                name = "UseAttachments";
                break;

            default:
                name = string.Empty;
                break;
            }
            return(name);
        }
Пример #4
0
 public void SetDisplayMode(PageDisplayMode mode)
 {
     this.DisplayMode = mode;
     this.OnResize();
 }
Пример #5
0
        /// <summary>
        /// 从界面中导航到其他界面
        /// </summary>
        /// <param name="paramTabTitle">页面标题</param>
        /// <param name="paramClassFullName">类全名</param>
        /// <param name="paramCanDuplicateShow">是否可以重复打开</param>
        /// <param name="paramPageDisplayMode">页面展现方式</param>
        /// <param name="paramViewPrarmeters">页面间传递参数</param>
        /// <param name="paramResultPrarmeter">返回结果参数</param>
        public static void ShowViewFromView(string paramTabTitle, string paramClassFullName, bool paramCanDuplicateShow, PageDisplayMode paramPageDisplayMode, Dictionary <string, object> paramViewPrarmeters, object paramResultPrarmeter)
        {
            try
            {
                //验证用户是否有菜单权限
                if (paramPageDisplayMode == PageDisplayMode.TabPage &&
                    !HasMenuAuthorityInCurrentOrg(paramClassFullName))
                {
                    //当前用户没有对应菜单的权限,您可以联系管理员授权。
                    _bllBase.ResultMsg = MsgHelp.GetMsg(MsgCode.W_0028, new object[] { MsgParam.CORRESPONDENCE + SystemTableEnums.Name.SM_Menu });
                    return;
                }

                //如果传入空参数,创建参数加入页面呈现方式
                if (paramViewPrarmeters == null)
                {
                    paramViewPrarmeters = new Dictionary <string, object>
                    {
                        { ComViewParamKey.PageDisplayMode.ToString(), paramPageDisplayMode }
                    };
                }
                else if (!paramViewPrarmeters.ContainsKey(ComViewParamKey.PageDisplayMode.ToString()))
                {
                    paramViewPrarmeters.Add(ComViewParamKey.PageDisplayMode.ToString(), paramPageDisplayMode);
                }

                //验证类全名
                if (paramClassFullName.LastIndexOf(SysConst.DOT, StringComparison.Ordinal) < 0)
                {
                    //类全名: paramClassFullName 异常,打开界面失败
                    Exception ex = new Exception(MsgHelp.GetMsg(MsgCode.W_0030, new object[] { SystemTableColumnEnums.SM_MenuDetail.Name.MenuD_ClassFullName + paramClassFullName + MsgParam.EXCEPTION }));
                    _bllBase.ResultMsg = MsgHelp.GetMsg(MsgCode.E_0000, new object[] { ex.Message });
                    return;
                }
                string assemplyName = paramClassFullName.Substring(0,
                                                                   paramClassFullName.LastIndexOf(SysConst.DOT, StringComparison.Ordinal));
                //加载对应的程序集
                Assembly assembly = Assembly.Load(assemplyName);
                if (assembly == null)
                {
                    //程序集assemplyName不存在,打开界面失败
                    Exception ex = new Exception(MsgHelp.GetMsg(MsgCode.W_0030, new object[] { MsgParam.ASSEMBLY + assemplyName + MsgParam.NOTEXIST }));
                    _bllBase.ResultMsg = MsgHelp.GetMsg(MsgCode.E_0000, new object[] { ex.Message });
                    return;
                }
                //获取类型信息
                Type classType = assembly.GetType(paramClassFullName);
                if (classType == null)
                {
                    //类全名:paramClassFullName 不存在,打开界面失败
                    Exception ex = new Exception(MsgHelp.GetMsg(MsgCode.W_0030, new object[] { SystemTableColumnEnums.SM_MenuDetail.Name.MenuD_ClassFullName + paramClassFullName + MsgParam.NOTEXIST }));
                    _bllBase.ResultMsg = MsgHelp.GetMsg(MsgCode.E_0000, new object[] { ex.Message });
                    return;
                }
                //构造方法的参数
                object[] constuctParms = null;
                constuctParms = new object[] { paramViewPrarmeters };

                if (!paramCanDuplicateShow)
                {
                    //菜单不允许重复打开
                    if (!BLLBase.DicWorkForm.ContainsKey(paramClassFullName))
                    {
                        dynamic t    = Activator.CreateInstance(classType, constuctParms);
                        var     form = (Form)t.Unwrap();

                        BLLBase.DicWorkForm.Add(paramClassFullName, form);

                        form.Text = paramTabTitle;
                        if (paramPageDisplayMode == PageDisplayMode.TabPage)
                        {
                            form.MdiParent = BLLBase.MainFrom;
                        }
                        form.Show();
                    }
                    else
                    {
                        BLLBase.DicWorkForm[paramClassFullName].Focus();
                    }
                }
                else
                {
                    //菜单允许重复打开
                    dynamic t    = Activator.CreateInstance(classType, constuctParms);
                    var     form = (Form)t;

                    BLLBase.DicWorkForm.Add(Guid.NewGuid().ToString(), form);

                    form.Text = paramTabTitle;
                    if (paramPageDisplayMode == PageDisplayMode.TabPage)
                    {
                        form.MdiParent = BLLBase.MainFrom;
                    }
                    form.Show();
                }
            }
            catch (Exception ex)
            {
                _bllBase.ResultMsg = MsgHelp.GetMsg(MsgCode.E_0000, new object[] { ex.Message });
                return;
            }
        }