// 2) 后台app检查 private Boolean checkSiteAppAdminPermission() { if (isSiteAppAdmin() == false) { return(true); } if (ctx.app == null) { return(true); } if (ctx.app.obj == null) { return(true); } IMemberApp app = ((AppContext)ctx.app).UserApp; if (app == null) { return(true); } Boolean hasPermission = AppAdminRole.IsRoleInApp(((User)ctx.viewer.obj).RoleId, app.Id); if (!hasPermission) { echo(lang("exNoAppAdminPermission")); return(false); } return(true); }
public void CanAppAdmin(int appId) { if (ctx.viewer.IsLogin == false) { echoText("no"); return; } if (ctx.viewer.IsAdministrator()) { echoAjaxOk(); return; } String appType = ctx.Get("appType"); if (ObjectContext.Instance.TypeList.ContainsKey(appType) == false) { echoText("no"); return; } Type t = ObjectContext.Instance.TypeList[appType]; if (AppAdminRole.CanAppAdmin(ctx.viewer.obj, t, appId)) { echoAjaxOk(); } else { echoText("no"); } }
private void bindAppNavList(IList apps) { IBlock block = getBlock("apps"); foreach (IMemberApp app in apps) { if (AppAdminRole.CanAppAdmin(ctx.viewer.obj, app.Id) == false) { continue; } block.Set("app.NameAndUrl", getLeftSiteNameAndUrl(app)); block.Next(); } }
private String getAppList(IList apps) { StringBuilder builder = new StringBuilder(); builder.Append("<li id=\"appAdminItem\"><div>{0}</div><div><span id=\"appAdmin\" class=\"menuMore\" list=\"appAdminMenus\">{1} " + getDownImg() + "</span></div></li>"); //builder.AppendFormat( " <img src=\"{0}\"/></span></li>", strUtil.Join( sys.Path.Img, "down.gif" ) ); builder.Append("<ul id=\"appAdminMenus\" class=\"menuItems\" style=\"display: none; \">"); foreach (IMemberApp app in apps) { if (!AppAdminRole.IsRoleInApp(((User)ctx.viewer.obj).RoleId, app.Id)) { continue; } builder.Append("<li>"); builder.Append(getSiteNameAndUrl(app)); builder.Append("</li>"); } builder.Append("</ul>"); return(builder.ToString()); }
public void SaveAppAdminRole() { String appRoles = ctx.Post("appRole"); AppAdminRole.DeleteAll(); if (strUtil.HasText(appRoles)) { string[] values = appRoles.Split(','); foreach (String str in values) { if (strUtil.IsNullOrEmpty(str)) { continue; } string[] arrItem = str.Split('_'); if (arrItem.Length != 2) { continue; } int appId = cvt.ToInt(arrItem[0]); int roleId = cvt.ToInt(arrItem[1]); if (appId <= 0 || roleId <= 0) { continue; } AppAdminRole ar = new AppAdminRole(); ar.AppId = appId; ar.RoleId = roleId; ar.insert(); } } log(SiteLogString.UpdateAppAdminPermission(), typeof(AppAdminRole)); echoRedirect(lang("saved")); }
private void bindRoleList(List <SiteRole> roles, IList apps) { IBlock roleBlock = getBlock("roles"); foreach (SiteRole role in roles) { roleBlock.Set("role.Name", role.Name); IBlock appBlock = roleBlock.GetBlock("apps"); foreach (IMemberApp app in apps) { String strChecked = AppAdminRole.IsRoleInApp(role.Id, app.Id) ? "checked=\"checked\"" : ""; appBlock.Set("checkedString", strChecked); appBlock.Set("app.Id", app.Id); appBlock.Set("role.Id", role.Id); appBlock.Next(); } roleBlock.Next(); } }
private Boolean hasAdminPermission() { if (!ctx.viewer.IsLogin) { return(false); } if (ctx.viewer.IsAdministrator()) { return(true); } if (ctx.owner.obj.GetType() == typeof(User)) { return(ctx.owner.Id == ctx.viewer.Id); } if (ctx.owner.obj.GetType() == typeof(Site) && ctx.app != null && ctx.app.obj != null) { return(AppAdminRole.CanAppAdmin(ctx.viewer.obj, ctx.app.obj.GetType(), ctx.app.Id)); } return(ctx.viewer.IsOwnerAdministrator(ctx.owner.obj)); }
private static void intiAppPermission(IMemberApp app) { AppRole.InitSiteFront(app.Id); AppAdminRole.InitSiteAdmin(app.Id); }
protected void initAppPermission(IMemberApp app) { AppRole.InitSiteFront(app.Id); AppAdminRole.InitSiteAdmin(app.Id); }