diff options
Diffstat (limited to 'mbbsd')
-rw-r--r-- | mbbsd/board.c | 48 |
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; |