public static bool PostAuthority(IXForum forum, UserGroup userGroupInfo, int userId, ref string msg) { if (!Forums.AllowPostByUserID(forum.Permuserlist, userId)) { if (string.IsNullOrEmpty(forum.PostPerm)) { if (!userGroupInfo.AllowPost) { msg = "您当前的身份 \"" + userGroupInfo.GroupTitle + "\" 没有发表主题的权限"; return(false); } } else { if (!forum.Field.AllowPost(userGroupInfo.ID)) { msg = "您没有在该版块发表主题的权限"; return(false); } } } if (!forum.AllowSpecialOnly) { return(true); } if (forum.AllowPostSpecial <= 0) { msg = "您没有在该版块发表特殊主题的权限"; return(false); } if ((forum.Allowpostspecial & 1) != 1 || userGroupInfo.AllowPostpoll) { return(true); } msg = "您当前的身份 \"" + userGroupInfo.GroupTitle + "\" 没有发布投票的权限"; if ((forum.Allowpostspecial & 4) != 4 || userGroupInfo.AllowBonus) { return(true); } msg = "您当前的身份 \"" + userGroupInfo.GroupTitle + "\" 没有发布悬赏的权限"; if ((forum.Allowpostspecial & 16) == 16 && !userGroupInfo.AllowDebate) { msg = "您当前的身份 \"" + userGroupInfo.GroupTitle + "\" 没有发起辩论的权限"; return(false); } return(true); }