summaryrefslogtreecommitdiffstats
path: root/mbbsd
diff options
context:
space:
mode:
Diffstat (limited to 'mbbsd')
-rw-r--r--mbbsd/board.c48
1 files changed, 23 insertions, 25 deletions
diff --git a/mbbsd/board.c b/mbbsd/board.c
index a4ce590f..e8b4d4bd 100644
--- a/mbbsd/board.c
+++ b/mbbsd/board.c
@@ -1,4 +1,4 @@
-/* $Id: board.c,v 1.92 2003/03/26 11:21:22 victor Exp $ */
+/* $Id: board.c,v 1.93 2003/03/26 11:38:04 victor Exp $ */
#include "bbs.h"
#define BRC_STRLEN 15 /* Length of board name */
#define BRC_MAXSIZE 24576
@@ -529,7 +529,7 @@ save_brdbuf(void)
#endif
for( r = w = 0 ; r < fav->nDatas ; ++r )
- if( fav->b[r].attr & BRD_FAV )
+ if( fav->b[r].attr & BRD_FAV && bcache[fav->b[r].bid - 1].brdname[0])
fav->b[w++] = fav->b[r];
fav->nDatas = w;
setuserfile(fname, ".fav3");
@@ -740,15 +740,10 @@ load_boards(char *key)
nbrd = (boardstat_t *) MALLOC(sizeof(boardstat_t) * numboards);
if( yank_flag == 0 ){ // fav mode
for( i = 0 ; i < fav->nDatas ; ++i ){
- if( fav->b[i].attr & BRD_FAV ){
- if( fav->b[i].attr & BRD_LINE )
- addnewbrdstat(fav->b[i].bid - 1, BRD_LINE);
- else{
- bptr = &bcache[ fav->b[i].bid - 1 ];
- if( (state = Ben_Perm(bptr)) )
- addnewbrdstat(fav->b[i].bid - 1, state);
- }
- }
+ if( fav->b[i].attr & (BRD_FAV | BRD_LINE) )
+ addnewbrdstat(fav->b[i].bid - 1, BRD_LINE);
+ else if (fav->b[i].attr & BRD_FAV && (state = Ben_Perm( (bptr = &bcache[ fav->b[i].bid - 1 ]))))
+ addnewbrdstat(fav->b[i].bid - 1, state);
}
}
else{ // general case
@@ -908,7 +903,7 @@ show_brdlist(int head, int clsflag, int newflag)
if (head < brdnum) {
ptr = &nbrd[head++];
if(ptr->myattr & BRD_LINE){
- prints("%5d ------------ ------------------------------------------", head);
+ prints("%5d ------------ ------------------------------------------", head, ptr->bid);
continue;
}
if (class_bid == 1)
@@ -932,14 +927,13 @@ show_brdlist(int head, int clsflag, int newflag)
if (class_bid != 1) {
prints("%s%-13s\033[m%s%5.5s\033[0;37m%2.2s\033[m"
"%-34.34s",
- ((ptr->myattr & BRD_FAV) &&
- !(cuser.uflag2 & FAVNOHILIGHT)) ? "\033[1;36m":"",
- B_BH(ptr)->brdname,
- color[(unsigned int)
- (B_BH(ptr)->title[1] + B_BH(ptr)->title[2] +
- B_BH(ptr)->title[3] + B_BH(ptr)->title[0]) & 07],
- B_BH(ptr)->title, B_BH(ptr)->title + 5, B_BH(ptr)->title + 7);
-
+ (ptr->myattr & BRD_FAV) ? "\033[1;36m" : "",
+ B_BH(ptr)->brdname,
+ color[(unsigned int)
+ (B_BH(ptr)->title[1] + B_BH(ptr)->title[2] +
+ B_BH(ptr)->title[3] + B_BH(ptr)->title[0]) & 07],
+ B_BH(ptr)->title, B_BH(ptr)->title + 5, B_BH(ptr)->title + 7);
+
if (B_BH(ptr)->brdattr & BRD_BAD)
prints(" X ");
else if (B_BH(ptr)->nuser >= 100)
@@ -975,12 +969,12 @@ static char *choosebrdhelp[] = {
"(^W) �g���F �ڦb����",
"(r)(��)(Rtn) �i�J�h�\\��\\Ū���",
"(q)(��) �^��D���",
- "(y/Z) �ڪ��̷R, �q�\\�ݪO, �Ҧ��ݪO/�q�\\�s�}�ݪO",
+ "(y/Z) �ڪ��̷R,�q�\\�ݪO,�Ҧ��ݪO/�q�\\�s�}�ݪO",
"(L) �[�J���j�u�ܧڪ��̷R",
"(v/V) �q�q�ݧ�/������Ū",
"(S) ���Ӧr��/�����Ƨ�/�ۭq����(�ڪ��̷R��)",
- "(t/^T/^A/^D) �аO�ݪO/�����Ҧ��аO/�N�w�аO�̥[�J/���X�ڪ��̷R",
- "(m/M) ��ݪO�[�J�β��X�ڪ��̷R, �������j�u/�h���ڪ��̷R",
+ "(t/^T/^A/^D) �аO�ݪO/�����Ҧ��аO/ �N�w�аO�̥[�J/���X�ڪ��̷R",
+ "(m/M) ��ݪO�[�J�β��X�ڪ��̷R,�������j�u/�h���ڪ��̷R",
"\01�p�ժ����O",
"(E/W/B) �]�w�ݪO/�]�w�p�ճƧ�/�}�s�ݪO",
"(^P) ���ʤw�аO�ݪO�즹����",
@@ -1175,12 +1169,16 @@ choose_board(int newflag)
case 'S':
cuser.uflag ^= BRDSORT_FLAG;
if(yank_flag == 0){
- if(cuser.uflag & BRDSORT_FLAG)
+ if(cuser.uflag & BRDSORT_FLAG){
+ vmsg("favcmpboardclass");
qsort(&fav->b, fav->nDatas, sizeof(fav_board_t),
favcmpboardclass);
- else
+ }
+ else{
+ vmsg("favcmpboardname");
qsort(&fav->b, fav->nDatas, sizeof(fav_board_t),
favcmpboardname);
+ }
}
brdnum = -1;
break;