回文章列表
作者guessi.bbs@cpu.tfcis.org (沒) 看板: itoc
標題Re: [修改] 推文未讀(方法二) 改為喜好設定
時間動力核心 (2007/03/29 Thu 05:56:19)
※ 引述《omatic (........)》之銘言:
> 我意思是說....如果推文未讀也要有綠點
> 但是這個功能新開一個喜好設定
> 因為不是每個人都喜歡版面清單黃黃一片
> 但就是有人要...所以想說而外開一個喜好設定


請先做精華區"推文未讀(方法二)"

:/src/include/ufo.h

+ #define UFO_READMD BFLAG(23)   /* 文章未讀判斷 */

! #define NUMUFOS_USER

! #define STR_UFO

+ "文章未讀判斷    (關閉/開啟)",   /* UFO_READMD */


:/src/maple/post.c:post_attr()

- attr = !(mode & POST_BOTTOM) && brh_unread(fhdr->chrono) ? 0 : 0x20;
         /* 已閱讀為小寫,未閱讀為大寫 */

+ if (cuser.ufo & UFO_READMD)  /* 喜好設定: 推文未讀 */
+   attr = !(mode & POST_BOTTOM) && brh_unread(fhdr->chrono) ? 0 : 0x20;
+ else
+   attr = !(mode & POST_BOTTOM) &&
+          brh_unread(BMAX(fhdr->chrono, fhdr->stamp)) ? 0 : 0x20;


:/src/maple/post.c:post_history()

- chrono = BMAX(hdr->chrono, hdr->stamp);

+ check_stamp:                  /* 設定檢查點 */

+ if (brh_unread(hdr->chrono))  /* 先檢查hdr->chrono 是否在brh */
+   chrono = hdr->chrono;
+ else                          /* 若已經在brh則檢查stamp      */
+   chrono = BMAX(hdr->chrono, hdr->stamp);

  if (!brh_unread(chrono))      /* 如果已在 brh 中,就無需動作 */
    return;

..
..

    if (next < chrono)      /* 沒有上一篇 */
      next = chrono;
    brh_add(prev, chrono, next);
  }

+ chrono = BMAX(hdr->chrono, hdr->stamp); /* 若有stamp      */
+ if (brh_unread(chrono)) /* 檢查BMAX()是否在brh 若無則返回 */
+   goto check_stamp;

}


:/src/include/theme.h

! #define ICON_UNREAD_BRD   "......\033[1;33m" /* 板名變色: 黃 */


:/src/maple/board.c:btime_refresh()

+ time_t tmpchrono;

..
..

+ tmpchrono = 0;

  while ((fsize -= sizeof(HDR)) >= 0)

..
..

           if (!(hdr.xmode & (POST_RESTRICT | POST_BOTTOM)))
-             break;
+        {
+          tmpchrono = BMAX(tmpchrono, hdr.chrono);
+          tmpchrono = BMAX(tmpchrono, hdr.stamp);
+        }
       }

-      brd->blast = hdr.chrono;
+      brd->blast = tmpchrono;




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