回文章列表
作者itoc.bbs@cpu.tfcis.org (核心動力) 看板: itoc
標題Re: [功能] 手動轉錄至指定"分類" (限站務)
時間動力核心 (2007/03/20 Tue 22:06:36)
※ 引述《guessi (沒)》之銘言:
> >20897     03/06 guessi       ◆ [功能] 手動轉錄至指定"分類" (限站務)
> 這篇如果改成 轉錄給指定"目錄" (不包含子目錄)

: post.c:depart_post()

  while (brdp < bend)
  {
-   if (!strcmp(brdp->class, "系所") && strcmp(brdp->brdname, "DepartAll"))
+   if (find_class("gem/@/@Depart", brdp->brdname, 0)) &&
+     strcmp(brdp->brdname, "DepartAll"))
    /* 轉錄至指定分類 但不包含本身 */
    {

: post.c 新增find_class()於depart_post()前

static int
find_class(folder, brdname, rc)
  char *folder;
  char *brdname;
  int rc;
{
  int xmode;
  char fpath[64];
  HDR hdr;
  FILE *fp;

  if (rc)           /* 已經找到 */
    return rc;

  if (fp = fopen(folder, "r"))
  {
    while (fread(&hdr, sizeof(HDR), 1, fp) == 1)
    {
      xmode = hdr.xmode & (GEM_BOARD | GEM_FOLDER);

      if (xmode == (GEM_BOARD | GEM_FOLDER))      /* 看板精華區捷徑 */
      {
        if (!strcmp(hdr.xname, brdname))
        {
          rc = 1;
          break;
        }
      }
      else if (xmode == GEM_FOLDER)               /* 卷宗 recursive 進去找 */
      {
        hdr_fpath(fpath, folder, &hdr);
        find_class(fpath, brdname, rc);
      }
    }

    fclose(fp);
  }

  return rc;
}


--
=[:摃�◣�:Origin ]|[  Ocpu.tfcis.org  ]|[�搟說:]=
=[:摃�╱�:Author ]|[218-168-180-20.dynamic.hin]|[�:]=
文章選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻