From a89905ef7a93110e8a86c394df6d35e4dab74c85 Mon Sep 17 00:00:00 2001 From: piaip Date: Thu, 3 Jan 2013 06:23:44 +0000 Subject: Allow setting if numpost can be a post restriction rule. git-svn-id: http://opensvn.csie.org/pttbbs/trunk@5747 63ad8ddf-47c3-0310-b6dd-a9e9d9715204 --- pttbbs/mbbsd/bbs.c | 41 +++++++++++++++++++++++++++-------------- 1 file changed, 27 insertions(+), 14 deletions(-) diff --git a/pttbbs/mbbsd/bbs.c b/pttbbs/mbbsd/bbs.c index d70622db..c51098fe 100644 --- a/pttbbs/mbbsd/bbs.c +++ b/pttbbs/mbbsd/bbs.c @@ -1548,7 +1548,7 @@ do_post_article() #ifdef USE_COOLDOWN if(bp->nuser>30) { - if (cooldowntimeof(usernum)nuser>30) { - if (cooldowntimeof(usernum) 2550); - posts = (unsigned char)(temp / 10); + if (pposts) { + y++; + sprintf(genbuf, "%u", posts*10); + do { + getdata_buf(y, 0, + "文章篇數下限 (0~2550,以10為單位,個位數字將自動捨去):", + genbuf, 5, NUMECHO); + temp = atoi(genbuf); + } while (temp < 0 || temp > 2550); + posts = (unsigned char)(temp / 10); + } y++; sprintf(genbuf, "%u", 255 - badpost); @@ -2439,8 +2442,10 @@ editLimits(unsigned char *plogins, // save var *plogins = logins; - *pposts = posts; *pbadpost = badpost; + + if (pposts) + *pposts = posts; } int @@ -2465,10 +2470,18 @@ do_limitedit(int ent, fileheader_t * fhdr, const char *direct) if ((HasUserPerm(PERM_SYSOP) || (HasUserPerm(PERM_SYSSUPERSUBOP) && GROUPOP())) && buf[0] == 'a') { +#ifdef USE_POSTLIMIT_NUMPOSTS + editLimits( + &bp->post_limit_logins, + &bp->post_limit_posts, + &bp->post_limit_badpost); +#else editLimits( &bp->post_limit_logins, - &bp->post_limit_posts, + NULL, &bp->post_limit_badpost); + bp->post_limit_posts = 0; +#endif assert(0<=currbid-1 && currbid-1