//public static bool NeedAudit(Int32 fid, Int32 modnewposts, int useradminid, int userid, UserGroup userGroup, Topic topicInfo = null) //{ // //return useradminid != 1 && !Moderators.IsModer(useradminid, userid, fid) && (Scoresets.BetweenTime(GeneralConfigInfo.Current.Postmodperiods) || modnewposts == 1 || userGroup != null && userGroup.ModNewPosts == 1 || topicInfo != null && topicInfo.Displayorder == -2); // if (useradminid == 1) return false; // if (Moderators.IsModer(useradminid, userid, fid)) return false; // if (Scoresets.BetweenTime(GeneralConfigInfo.Current.Postmodperiods)) return true; // if (modnewposts == 1) return true; // if (userGroup != null && userGroup.ModNewPosts == 1) return true; // if (topicInfo != null && topicInfo.DisplayOrder == -2) return true; // return false; //} public static bool NeedAudit(Int32 fid, Int32 modnewposts, int useradminid, int userid, UserGroup userGroup, Topic topicInfo = null) { //return useradminid != 1 && !Moderators.IsModer(useradminid, userid, fid) && (Scoresets.BetweenTime(GeneralConfigInfo.Current.Postmodperiods) || modnewposts == 1 || userGroup != null && userGroup.ModNewPosts == 1 || topicInfo != null && topicInfo.Displayorder == -2); if (useradminid == 1) { return(false); } if (Moderators.IsModer(useradminid, userid, fid)) { return(false); } if (Scoresets.BetweenTime(GeneralConfigInfo.Current.Postmodperiods)) { return(true); } if (modnewposts == 1) { return(true); } if (userGroup != null && userGroup.ModNewPosts == 1) { return(true); } if (topicInfo != null && topicInfo.DisplayOrder == -2) { return(true); } return(false); }
//public static string GetTopicCountCondition(out string type, string gettype, Int32 getnewtopic) //{ // return BBX.Data.Topics.GetTopicCountCondition(out type, gettype, getnewtopic); //} //public static Int32 GetTopicListCount(string postName, Int32 forumId, string posterList, string keyList, string startDate, string endDate) //{ // return BBX.Data.Topics.GetTopicListCount(postName, forumId, posterList, keyList, startDate, endDate); //} //public static Int32 GetHotTopicsCount(Int32 fid, Int32 timeBetween) //{ // return BBX.Data.Topics.GetHotTopicsCount(fid, timeBetween); //} //public static DataTable GetTopicList(string postName, Int32 forumId, string posterList, string keyList, string startDate, string endDate, Int32 pageSize, Int32 currentPage) //{ // return BBX.Data.Topics.GetTopicList(postName, forumId, posterList, keyList, startDate, endDate, pageSize, currentPage); //} //public static DataTable GetHotTopicsList(Int32 pageSize, Int32 pageIndex, Int32 fid, string showType, Int32 timeBetween) //{ // return BBX.Data.Topics.GetHotTopicsList(pageSize, pageIndex, fid, showType, timeBetween); //} //public static void PassAuditNewTopic(string tidList) //{ // string[] array = tidList.Split(','); // for (Int32 i = 0; i < array.Length; i++) // { // string s = array[i]; // TopicInfo topicInfo = Topics.GetTopicInfo(Int32.Parse(s)); // CreditsFacade.PostTopic(topicInfo.Posterid, Forums.GetForumInfo(topicInfo.Fid)); // } // BBX.Data.Topics.PassAuditNewTopic(TableList.GetPostTableId(), tidList); //} //public static void UpdateMyTopic() //{ // BBX.Data.Topics.UpdateMyTopic(); //} //public static Int32 GetTitleDisplayOrder(UserGroup usergroupinfo, Int32 useradminid, IXForum forum, TopicInfo tp, string message, Boolean disablepost) //{ // if (useradminid == 1 || Moderators.IsModer(useradminid, tp.Posterid, forum.Fid)) // { // return tp.Displayorder; // } // if (forum.Modnewtopics == 1 || usergroupinfo.ModNewTopics == 1 || (Scoresets.BetweenTime(GeneralConfigInfo.Current.Postmodperiods) && !disablepost) || ForumUtils.HasAuditWord(tp.Title) || ForumUtils.HasAuditWord(message)) // { // return -2; // } // return tp.Displayorder; //} public static Int32 GetTitleDisplayOrder(UserGroup usergroupinfo, Int32 useradminid, IXForum forum, Topic tp, string message, Boolean disablepost) { if (useradminid == 1 || Moderators.IsModer(useradminid, tp.PosterID, forum.Fid)) { return(tp.DisplayOrder); } if (forum.Modnewtopics == 1 || usergroupinfo.ModNewTopics == 1 || (Scoresets.BetweenTime(GeneralConfigInfo.Current.Postmodperiods) && !disablepost) || ForumUtils.HasAuditWord(tp.Title) || ForumUtils.HasAuditWord(message)) { return(-2); } return(tp.DisplayOrder); }
public static bool Search(int userid, DateTime lastsearchtime, int useradminid, UserGroup usergroupinfo, ref string msg) { var config = GeneralConfigInfo.Current; if (useradminid != 1 && DNTRequest.GetInt("keywordtype", 0) == 1 && !usergroupinfo.DisablePeriodctrl) { string str = ""; if (Scoresets.BetweenTime(config.Searchbanperiods, out str)) { msg = "在此时间段( " + str + " )内用户不可以进行全文搜索"; return(false); } } if (useradminid != 1) { if (!Statistic.CheckSearchCount(config.Maxspm)) { msg = "抱歉,系统在一分钟内搜索的次数超过了系统安全设置的上限,请稍候再试"; return(false); } //int num = Utils.StrDateDiffSeconds(lastsearchtime, config.Searchctrl); var ts = lastsearchtime.AddSeconds(config.Searchctrl) - DateTime.Now; if (ts.TotalSeconds > 0) { msg = "系统规定搜索间隔为" + config.Searchctrl + "秒, 您还需要等待 " + ts.TotalSeconds + " 秒"; return(false); } if (userid != -1 && CreditsFacade.Search(userid) == -1) { string str2 = ""; if (EPayments.IsOpenEPayments()) { str2 = "<br/><span><a href=\"usercpcreditspay.aspx\">点击充值积分</a></span>"; } msg = "您的积分不足, 不能执行搜索操作" + str2; return(false); } } return(true); }
public static bool CheckPostTimeSpan(UserGroup userGroupInfo, AdminGroup admininfo, Online olUserInfo, IUser user, ref string msg) { var cfg = GeneralConfigInfo.Current; if (olUserInfo.AdminID != 1 && !userGroupInfo.DisablePeriodctrl) { var str = ""; if (Scoresets.BetweenTime(cfg.Postbanperiods, out str)) { msg = "在此时间段( " + str + " )内用户不可以发帖"; return(false); } } if (admininfo == null || !admininfo.DisablePostctrl) { var ts = olUserInfo.LastPostTime.AddSeconds(cfg.Postinterval) - DateTime.Now; if (ts.TotalSeconds > 0) { msg = "系统规定发帖间隔为" + cfg.Postinterval + "秒, 您还需要等待 " + ts.TotalSeconds + " 秒"; return(false); } if (olUserInfo.UserID != -1) { if (user == null) { msg = "您的用户资料出现错误"; return(false); } //num = Utils.StrDateDiffMinutes(text, cfg.Newbiespan); ts = user.JoinDate.AddMinutes(cfg.Newbiespan) - DateTime.Now; if (ts.TotalMinutes > 0) { msg = "系统规定新注册用户必须要在" + cfg.Newbiespan + "分钟后才可以发帖, 您还需要等待 " + ts.TotalMinutes + " 分钟"; return(false); } } } return(true); }
public static int GetTopicPostInvisible(IXForum forum, int useradminid, int uid, UserGroup userGroup, Post postinfo) { if (useradminid == 1 || Moderators.IsModer(useradminid, uid, forum.Fid)) { return(0); } if (!ForumUtils.HasAuditWord(postinfo.Message) && forum.Modnewtopics == 0 && userGroup.ModNewTopics == 0 && !Scoresets.BetweenTime(GeneralConfigInfo.Current.Postmodperiods)) { return(0); } return(1); }
private bool ValidateUserPermission() { if (this.onlineusercount >= this.config.Maxonlines && this.useradminid != 1 && this.pagename != "login.aspx" && this.pagename != "logout.aspx") { this.ShowMessage("抱歉,目前访问人数太多,你暂时无法访问论坛.", 0); return(false); } if (!this.usergroupinfo.AllowVisit && this.useradminid != 1 && this.pagename != "login.aspx" && this.pagename != "register.aspx" && this.pagename != "logout.aspx" && this.pagename != "activationuser.aspx" && this.pagename != "getpassword.aspx") { this.ShowMessage("抱歉, 您所在的用户组 \"" + usergroupinfo.GroupTitle + "\" 不允许访问论坛", 2); return(false); } if (!this.config.Ipaccess.IsNullOrWhiteSpace()) { string[] iparray = Utils.SplitString(this.config.Ipaccess, "\n"); if (!Utils.InIPArray(WebHelper.UserHost, iparray)) { this.ShowMessage("抱歉, 系统设置了IP访问列表限制, 您无法访问本论坛", 0); return(false); } } if (!this.config.Ipdenyaccess.IsNullOrWhiteSpace()) { string[] iparray2 = Utils.SplitString(this.config.Ipdenyaccess, "\n"); if (Utils.InIPArray(WebHelper.UserHost, iparray2)) { this.ShowMessage("由于您严重违反了论坛的相关规定, 已被禁止访问.", 2); return(false); } } if (this.useradminid != 1 && this.pagename != "login.aspx" && this.pagename != "logout.aspx" && !this.usergroupinfo.DisablePeriodctrl && Scoresets.BetweenTime(this.config.Visitbanperiods)) { this.ShowMessage("在此时间段内不允许访问本论坛", 2); return(false); } return(true); }