2TFC001.MOD 1The ULTIMATE Title Scanning Mod The Flying Chicken [SysOp] #1 @12456 3Saturday, February 27, 1993 112:32 pm TFC001.MOD - The Ultimate Title Scanning Mod Author: The Flying Chicken 1@12456 (WWIVLink) 1@2456 (WWIVNet) Source: WWIV 4.20 thru 4.22 Version: 2.8 This mod was originally released by me as TFC001.MOD. All it did was alter the title scanning command to show which messages were awaiting network validation. Well, I've taken this one step further. I've also included a mod by ShadowSpawn 1@13900 (WWIVLink) which shows the author's address in the title scan as well as the message number and title. However this mod didn't work very well if colors were used in the title, so I altered it a bit. Still, the credit for that goes to him. Here's the jist of the mod. When you do a title scan, you will see the following: (Color's included in the following listing for demo purposes.) 1(1)0 3by #28 @124570 This is a post by a normal user 2[2]0 3by #1 0 This is a post by the SysOp 6<3>0 3by #72 @124570 This is a post awaiting validation 4=4=0 3by #267 @187500 This is a permanent post 1(5)0 3by #209 @187500 seems?? [nnn] - Message was written by you (color 2 - yellow) (nnn) - Message was written by another user (color 1 - cyan) - Message was written by another user, and is awaiting any kind of validation. (color 6 - blinking red) =nnn= - Permanent message (color 4 - blue on white) A note, permanent messages that are awaiting validation will show up as waiting validation first. After validation, they will show up as permanent. I've also expanded the number of titles shown from 10 to 18. Okay... This is a quickie, but a goodie... Here we go. If you have version 1.0 of this mod, you'll need to make just about all the changes anyway, so just re-do the mod. It is short, so it won't be difficult. Version WWIV 4.22 is very similar to 4.21a code, so where the changes are noted for 4.21a, make them for 4.22, unless otherwise indicated. There are also 4.22 specific codes changes, which are marked for you. WWIV 4.21a specific code is marked as such. Look for '4.21a' in the comments. Lines containing that string in the beginning or the end have either been added or changed. Not sure if this will work with 4.12, been too long since I've seen the code, so you're on your own. It should require very similar changes however. v2.8 - Update for 4.22. Fixed a bug that was messing up the display slightly. v2.5 - Update for 4.21a. Expanded number of titles shown to 18, and added color code scheme to display. Added e-mail listing enhancement for 4.21a. v2.0 - Show messages awaiting ANY validation, show permanent messages, user colors to help distinguish each message, included WHOBY.MOD by ShadowSpawn, and one small bug fix. v1.0 - Initial version Before using this or any mod, back up your source !!!!! PKZIP source *.c *.h *.mak If you mess something up later and want to unstall the mod, just type: PKUNZIP source -o 1. First and most important. I removed the color codes from the mod below so all users can see the mod. To use the mod, first scan the rest of THIS FILE, replacing ^C by a Ctrl-C, which will show up as a heart. To create the Ctrl-C using Turbo C, type Ctrl-P, Ctrl-C. This also works with several stand-alone editors. If you can't use colors, search for ^C and remove it and the number immediately after it. 2. Load up MSGBASE1.C, and search for void scan(). Add the following after the last declaration as shown. You might have s2 declared already, if you do, don't define it again, just make sure it's the same size as indicated below. void scan(int msgnum, int optype, int *nextsub) { char s[81],s1[81],*b,*ss1; int i,i1,i2,done,quit,abort,next,val,realexpress; slrec ss; long l,len; postrec p,p1; char s2[81],s3[20],s4[20]; /* ADD */ irt[0]=0; irt_name[0]=0; 3. Search down aways for 'List Titles' in the same void scan(). Scroll a little farter down and make the changes. Note that one of the existing lines below was too long for the network, so I split the line, however no changes were made to this line. /** WWIV Version Information!! **/ /* 4.21a */ Wayne decided to imitate my mod in 4.21a here, so the code is somewhat similar to my mod already. You'll need to make different changes. If you're using 4.21a, skip step 3.a below, and go to step 3.b. Otherwise, do 3.a and then proceed to step 4. 3.a - For WWIV 4.21 and below ONLY. while ((!abort) && (!hangup) && (++i<=18)) { /* CHANGE */ ++msgnum; if ((msgs[msgnum].status & status_pending_net) || /* ADD */ (msgs[msgnum].status & status_unvalidated)) /* ADD */ sprintf(s1,"6<%d>0",msgnum); /* ADD */ else /* ADD */ if ((msgs[msgnum].status & status_no_delete)) /* ADD */ sprintf(s1,"4=%d=0",msgnum); /* ADD */ else /* ADD */ if ((msgs[msgnum].ownersys==0) && (msgs[msgnum].owneruser==usernum)) sprintf(s1,"2[%d]0",msgnum); /* CHANGE */ else sprintf(s1,"1(%d)0",msgnum); /* CHANGE */ for (i1=0; i1<9 i1++) /* CHANGE */ s[i1]=32; if (msgs[msgnum].qscan>QSCN(curlsub)) { /* CHANGE */ s[0]=''; /* CHANGE */0 s[1]='6'; /* ADD */ s[2]='*'; /* ADD */ } /* ADD */ strcpy(&s[11-strlen(s1)],s1); /* CHANGE */ strcat(s," "); Go to Step 4. 3.b - WWIV 4.21a and 4.22 ONLY !! /* 4.21a */ while ((!abort) && (!hangup) && (++i<=18)) { /* CHANGE 4.21a */ ++msgnum; if ((msgs[msgnum].status & status_pending_net) || /* ADD */ (msgs[msgnum].status & status_unvalidated)) /* ADD */ sprintf(s1,"6<%d>0",msgnum); /* ADD */ else /* ADD */ if ((msgs[msgnum].status & status_no_delete)) /* ADD */ sprintf(s1,"4=%d=0",msgnum); /* ADD */ else /* ADD */ if ((msgs[msgnum].ownersys==0) && (msgs[msgnum].owneruser==usernum)) sprintf(s1,"2[%d]0",msgnum); /* CHANGE */ else if (msgs[msgnum].ownersys!=0) /* DELETE */ sprintf(s1,"<%d>",msgnum); /* DELETE */ else sprintf(s1,"1(%d)0",msgnum); /* CHANGE */ for (i1=0; i1<14; i1++) /* CHANGE */ s[i1]=32; if (msgs[msgnum].qscan>QSCN(curlsub)) { /* CHANGE */ s[0]=''; /* ADD */0 s[1]='6'; /* ADD */ s[2]='*'; /* CHANGE */ } else { /* ADD */ s[0]=''; /* ADD */0 s[1]='0'; /* ADD */ s[2]=' '; /* ADD */ } /* ADD */ /* 4.22 NOTE: Delete the following two lines !!! ***/ if (msgs[msgnum].status & (status_pending_net | status_unvalidated)) s[0]='-'; /*** end of 4.22 note */ strcpy(&s[13-strlen(s1)],s1); /* CHANGE */ strcat(s," "); if ((msgs[msgnum].status&(status_unvalidated|status_delete))&&(!lcs() )) 4. Search down a few lines, and make these changes. if ((msgs[msgnum].status & (status_unvalidated | status_delete)) &&(!lcs())) /* 4.22 note: The following line should read 'strcpy(s1,get_string(665));' */ strcpy(s1,"<<< NOT VALIDATED YET >>>"); /* CHANGE */ else strcpy(s1,msgs[msgnum].title); /* CHANGE */ if (msgs[msgnum].ownersys == 0) { /* ADD */ sprintf(s3,"#%-4u",msgs[msgnum].owneruser); /* ADD */ /*4.21a*/ sprintf(s2,"3by %-5.5s 0 1%-52.52s",s3,s1); /* ADD */0 } else { /* ADD */ sprintf(s4,"#%-4u",msgs[msgnum].owneruser); /* ADD */ sprintf(s3,"@%-5u",msgs[msgnum].ownersys); /* ADD */ /*4.21a*/ sprintf(s2,"3by %-5.5s %-6.6s0 1%-52.52s",s4,s3,s1); /* ADD */0 } /* ADD */ strcat(s,s2); /* ADD */ pla(s,&abort); if (msgnum>=nummsgs) abort=1; } DISCLAIMER: I make no guarantees with this mod whatsoever. Your installation of the mod is your acceptance of any damages caused to your hardware or software, incendental or otherwise. The mod was tested with the versions of WWIV mentioned in this file. If the mod does NOT work for you, e-mail one of the addresses above, and tell me EXACTLY what you did, what the screen said, and what you did to try to fix it, and I'll do what I can to help you out. PLEASE REPORT ANY BUGS TO ME AT THE ABOVE ADDRESS !!!!!!! Any other comments, suggestions, hints, things I missed, requests for new mods, and general "Thank you!"s are all VERY welcomed, so drop me a line. I don't mind updates to this mod, but do request that you send me a courtesy copy of the changes you made. ***************************************************************** Subscribe to: Modding with WWIV's Flying Chicken WWIVLink subtype 42456, Host @12456 (REQable) WWIVNet subtype 42456, Host @2456 (REQable) IceNet subtype 42456, Host @2456 (REQable) All mods are released on this sub first. Occasionally, they make the mods subs, but usually much later. Subscribe now! ***************************************************************** The Flying Chicken 1@12456 (WWIVLink) - 1@2456 (WWIVNet) - 1@2456 (IceNet) THE INSANE ASYLUM BBS In Operation Since August, 1989 Running WWIV 4.22++ (Reg #21260) SysOp: The Flying Chicken - CoSysOp: Dr. Doolittle Snarfable - Auto-SysOp Validation Callback Validation (Local calls only) (214) 570-5950 - USR Dual Std (v32/HST) --- END OF LINE --- 9 9 7ÚÄÄÄ2TheÄInsaneÄAsylum7ÄÄÄ2(214)7ÄÄ2570-59507ÄÄÄ2WWIVÄSupport7ÄÄÄ2USRÄDS7ÄÄÄ¿0 8 7ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄ2WeÄPutÄTheÄBubblesÄBackÄIntoÄBBSing7ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ0