作者guessi.bbs@cpu.tfcis.org (沒) 看板: itoc
標題[功能] 手動轉錄至指定"分類" (限站務)
時間動力核心 (2007/03/06 Tue 10:19:22)
用途說明:
因常有活動宣傳需張貼至相同分類看板 考量CP問題 故撰寫此功能
使用者貼文於指定看板(在此為Depart_All)文章經看板站務審閱後
由看板站務[大寫M]按鍵操作後 轉錄至指定看板(將不計算CP數目)
:src/maple/post.c 新增depart_post()於do_post()前
static int
depart_post(xo)
XO *xo;
{
char folder[64], fpath[64];
HDR post, *hdr;
BRD *brdp, *bend;
int pos, cur;
if (!HAS_PERM(PERM_ALLBOARD) || strcmp(currboard, "DepartAll"))
/* 僅看板站務 並指定看板 */
return XO_NONE;
if (vans("請確認轉錄至各系所看板?[y/N] ") != 'y')
return XO_NONE;
pos = xo->pos;
cur = pos - xo->top;
hdr = (HDR *) xo_pool + cur;
hdr_fpath(fpath, xo->dir, hdr);
hdr->xmode ^= POST_DIGEST; /* 給予自訂標記 供post_attr()顯示 */
currchrono = hdr->chrono;
rec_put(xo->dir, hdr, sizeof(HDR), pos, cmpchrono);
brdp = bshm->bcache;
bend = brdp + bshm->number;
while (brdp < bend)
{
if (!strcmp(brdp->class, "系所") && strcmp(brdp->brdname, "DepartAll"))
/* 轉錄至指定分類 但不包含本身 */
{
brd_fpath(folder, brdp->brdname, fn_dir);
hdr_stamp(folder, HDR_COPY | 'A', &post, fpath);
strcpy(post.owner, hdr->owner);
sprintf(post.title, "[轉錄] %s", hdr->title); /* 加註轉錄字樣 */
rec_bot(folder, &post, sizeof(HDR));
btime_update(brd_bno(brdp->brdname)); /* 看板閱讀紀錄(綠點)更新 */
}
brdp++;
}
vmsg("轉錄完成!");
return XO_INIT; /* 給定POST_XXX 刷新頁面 */
}
:src/maple/post.c:post_cb[] 按鍵自訂
+ 'M', depart_post(),
--
=[﹎:�摃�◣��:﹎ Origin ]|[ ���O���� cpu.tfcis.org ]|[�搟說�﹎:]=
=[﹊:�摃�╱��:﹊ Author ]|[59-115-96-53.dynamic.hinet]|[���插�﹊:]=