summaryrefslogtreecommitdiffstats
path: root/mbbsd/passwd.c
diff options
context:
space:
mode:
authorscw <scw@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2008-11-16 18:20:15 +0800
committerscw <scw@63ad8ddf-47c3-0310-b6dd-a9e9d9715204>2008-11-16 18:20:15 +0800
commit97b26dd92cdd0f51051dd2762c2584db77273191 (patch)
tree77ca0241d8c3adcc5aeba43582f1696cbeafb289 /mbbsd/passwd.c
parente04cae0836e65a13d3ea8166df4b291aafaa4f53 (diff)
downloadpttbbs-97b26dd92cdd0f51051dd2762c2584db77273191.tar
pttbbs-97b26dd92cdd0f51051dd2762c2584db77273191.tar.gz
pttbbs-97b26dd92cdd0f51051dd2762c2584db77273191.tar.bz2
pttbbs-97b26dd92cdd0f51051dd2762c2584db77273191.tar.lz
pttbbs-97b26dd92cdd0f51051dd2762c2584db77273191.tar.xz
pttbbs-97b26dd92cdd0f51051dd2762c2584db77273191.tar.zst
pttbbs-97b26dd92cdd0f51051dd2762c2584db77273191.zip
Post and money update:
* no money for posts on boards without BM * BM and self deleting posts decrease number of posts regardless of login git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@4420 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/passwd.c')
-rw-r--r--mbbsd/passwd.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/mbbsd/passwd.c b/mbbsd/passwd.c
index b5e85907..95e655a1 100644
--- a/mbbsd/passwd.c
+++ b/mbbsd/passwd.c
@@ -101,6 +101,7 @@ passwd_update(int num, userec_t * buf)
memcpy(buf->email, u.email, sizeof(u.email));
memcpy(cuser.email, u.email, sizeof(u.email));
}
+ cuser.numposts += u.numposts - latest_numposts;
currutmp->alerts &= ~ALERT_PWD;
// ALERT_PWD_RELOAD: reload all! No need to write.
@@ -115,6 +116,11 @@ passwd_update(int num, userec_t * buf)
lseek(pwdfd, sizeof(userec_t) * (num - 1), SEEK_SET);
write(pwdfd, buf, sizeof(userec_t));
close(pwdfd);
+
+ if (latest_numposts != cuser.numposts) {
+ sendalert_uid(usernum, ALERT_PWD_POSTS);
+ latest_numposts = cuser.numposts;
+ }
return 0;
}
@@ -129,6 +135,10 @@ passwd_query(int num, userec_t * buf)
lseek(pwdfd, sizeof(userec_t) * (num - 1), SEEK_SET);
read(pwdfd, buf, sizeof(userec_t));
close(pwdfd);
+
+ if (buf == &cuser)
+ latest_numposts = cuser.numposts;
+
return 0;
}