home *** CD-ROM | disk | FTP | other *** search
- version$="v1.2" !should be v1.3 when released
- start
- > PROCEDURE start
- CLS
- MODE 0
- timeoff$=LEFT$(TIME$,5)
- @getmonth
- dateoff$=LEFT$(DATE$,2)+" "+month$+" "+RIGHT$(DATE$,2)
- ticks#=TIMER
- @set_up
- @check_for_files
- @reg_info
- registered$=SPACE$(29-LEN(register$)/2)+register$
- registered$=LEFT$(registered$+SPACE$(50),58)
- PRINT AT(12,6);"p";registered$;"q"
- logo$=" QBBS 'Who Was It' "+version$+" : "+register$
- logo$=SPACE$(31-LEN(logo$)/2)+logo$
- logo$=LEFT$(logo$+SPACE$(50),62)
- @get_lastuser_log
- create_list
- FOR r#=8 TO 20
- PRINT AT(1,r#);SPC(80)
- NEXT r#
- PRINT AT(8,9);"The 'Who Was It' charts have now been created.. Have a nice day!"
- over_and_out
- RETURN
- > PROCEDURE over_and_out
- END
- RETURN
- > PROCEDURE getmonth
- month#=VAL(MID$(DATE$,4,2))
- SELECT month#
- CASE 1
- month$="Jan"
- CASE 2
- month$="Feb"
- CASE 3
- month$="Mar"
- CASE 4
- month$="Apr"
- CASE 5
- month$="May"
- CASE 6
- month$="Jun"
- CASE 7
- month$="Jul"
- CASE 8
- month$="Aug"
- CASE 9
- month$="Sep"
- CASE 10
- month$="Oct"
- CASE 11
- month$="Nov"
- CASE 12
- month$="Dec"
- ENDSELECT
- RETURN
- '
- '
- > PROCEDURE reg_info
- IF EXIST(syspath$+"QCONFIG.BBS")
- syspath%=TRUE
- OPEN "R",#25,syspath$+"QCONFIG.BBS",2048
- FIELD #25,831 AS void$,40 AS sysop$,40 AS bbsname$
- GET #25
- CLOSE #25
- sysop$=TRIM$(MID$(sysop$,1))
- bbsname$=TRIM$(MID$(bbsname$,1))
- IF RIGHT$(sysop$)=CHR$(0)
- sysop$=LEFT$(sysop$,LEN(sysop$)-1)
- ENDIF
- IF RIGHT$(bbsname$)=CHR$(0)
- bbsname$=LEFT$(bbsname$,LEN(bbsname$)-1)
- ENDIF
- register$="Registered To "+bbsname$
- ELSE
- register$="*** UNREGISTERED ***"
- ENDIF
- RETURN
- '
- '
- > PROCEDURE set_up
- registered$=SPACE$(29-LEN(register$)/2)+register$
- registered$=LEFT$(registered$+SPACE$(50),58)
- PRINT
- PRINT SPC(11);"p";SPC(58);"q"
- PRINT SPC(11);"p QBBS 'Who Was It' ";version$;" - Last User Chart Creator q"
- PRINT SPC(11);"p Copyright © 1992 M.J.Matts q"
- PRINT SPC(11);"p";SPC(58);"q"
- PRINT SPC(11);"p";registered$;"q"
- PRINT SPC(11);"p";SPC(58);"q"
- MODE 2
- dat$=DATE$
- FOR r#=1 TO LEN(dat$)
- IF MID$(dat$,r#,1)="."
- MID$(dat$,r#)="/"
- ENDIF
- NEXT r#
- RETURN
- > PROCEDURE check_for_files
- IF EXIST("whowasit.ctl")
- OPEN "I",#1,"whowasit.ctl"
- INPUT #1,maxuser$
- INPUT #1,syspath$
- INPUT #1,chartpath$
- CLOSE #1
- maxuser%=VAL(maxuser$)
- DIM user$(maxuser%+5,3)
- IF maxuser%<2
- maxuser%=2
- ENDIF
- syspath$=UPPER$(syspath$)
- chartpath$=UPPER$(chartpath$)
- IF INSTR(syspath$," ")
- syspath$=LEFT$(syspath$,INSTR(syspath$," ")-1)
- ENDIF
- IF INSTR(chartpath$," ")
- chartpath$=LEFT$(chartpath$,INSTR(chartpath$," ")-1)
- ENDIF
- IF RIGHT$(syspath$,1)<>"\"
- syspath$=syspath$+"\"
- ENDIF
- ELSE
- PRINT
- PRINT SPC(11);"Aborting Who Was It - I cannot find WHOWASIT.CTL. Please"
- PRINT SPC(11);" make sure it is in the same folder as this program."
- PAUSE 200
- END
- ENDIF
- IF NOT EXIST(syspath$+"users.bbs")
- PRINT
- PRINT SPC(11);"Aborting Who Was It - Please Check your system path in the"
- PRINT SPC(11);"WHOWASIT.CTL file because I cannot find a USERS.BBS file in"
- PRINT SPC(11);"this path : "+syspath$
- PAUSE 200
- END
- ENDIF
- RETURN
- > PROCEDURE get_lastuser_log
- OPEN "R",#11,syspath$+"sysinfo.bbs",170
- FIELD #11,170 AS tmp$
- GET #11
- laston$=TRIM$(MID$(tmp$,6,35))
- PRINT AT(40-(14+LEN(laston$))/2,10);"Last user was ";laston$
- CLOSE #11
- check_user
- RETURN
- > PROCEDURE check_user
- IF EXIST("whowasit.inf")
- OPEN "I",#1,"whowasit.inf"
- LINE INPUT #1,check$
- CLOSE #1
- IF INSTR(UPPER$(LEFT$(check$,LEN(laston$))),UPPER$(laston$))
- PRINT AT(1,14);" User Is Already The Last Caller - Not Adding Their Name Again"
- END
- ENDIF
- ENDIF
- add2list
- RETURN
- '
- > PROCEDURE create_list
- PRINT AT(23,12);"Creating Last ";maxuser%;" Callers charts..."
- PRINT
- @open_files(chartpath$)
- head1$=" ### Name............................... ### Time Off ### Date Off ###"
- head2$=" p q Name............................... p q Time Off p q Date Off p q"
- head3$=" c2 c0 Name............................... c2 c0 Time Off c2 c0 Date Off c2 c0"
- head4$=" Name............................... Time Off Date Off "
- top_title(" The Last "+STR$(maxuser%)+" Callers Are : ")
- FOR user%=1 TO maxuser%
- uname$=LEFT$(user$(user%,1)+STRING$(50," "),35)
- timeo$=LEFT$(user$(user%,2)+STRING$(50," "),8)
- dateo$=LEFT$(user$(user%,3)+STRING$(30," "),9)
- PRINT #1," ### ";uname$;" ### ";timeo$;" ### ";dateo$;" ###"
- PRINT #2," p q ";uname$;" p q ";timeo$;" p q ";dateo$;" p q"
- IF user%=1
- PRINT #3," c2 c1 ";uname$;" c2 c1 ";timeo$;" c2 c1 ";dateo$;" c2 c0"
- PRINT #4," ";uname$;" ";timeo$;" ";dateo$;" "
- ELSE
- PRINT #3," c2 c0 ";uname$;" c2 c0 ";timeo$;" c2 c0 ";dateo$;" c2 c0"
- PRINT #4," ";uname$;" ";timeo$;" ";dateo$;" "
- ENDIF
- NEXT user%
- base_title
- CLOSE
- RETURN
- '
- > PROCEDURE open_files(fil$)
- PRINT SPC(10);"CREATING : ";fil$;".ASC"
- OPEN "O",#1,fil$+".ASC"
- PRINT SPC(10);"CREATING : ";fil$;".VTM"
- OPEN "O",#2,fil$+".VTM"
- PRINT SPC(10);"CREATING : ";fil$;".VTC"
- OPEN "O",#3,fil$+".VTC"
- PRINT SPC(10);"CREATING : ";fil$;".ANS"
- OPEN "O",#4,fil$+".ANS"
- RETURN
- > PROCEDURE top_title(maintitle$)
- PRINT #1," ";STRING$(70,"#")
- title$=STRING$(35-LEN(maintitle$)/2,"#")+maintitle$
- title$=LEFT$(title$+STRING$(80-LEN(title$),"#"),70)
- PRINT #1," ";title$
- PRINT #1," ";STRING$(70,"#")
- PRINT #1,head1$
- PRINT #1," ";STRING$(70,"#")
- '
- title$=SPACE$(35-LEN(maintitle$)/2)+maintitle$
- title$=LEFT$(title$+SPACE$(80-LEN(title$)),70)
- PRINT #2,"E p";SPACE$(70)+"q"
- PRINT #2," p";title$;"q"
- PRINT #2," p";SPACE$(70)+"q"
- PRINT #2,head2$
- PRINT #2," p";SPACE$(70)+"q"
- '
- PRINT #3,"E c2";SPACE$(70)+"c0"
- PRINT #3," c2";title$;"c0"
- PRINT #3," c2";SPACE$(70)+"c0"
- PRINT #3,head3$
- PRINT #3," c2";SPACE$(70)+"c0"
- '
- PRINT #4," ";SPACE$(70)+""
- PRINT #4," ";title$;""
- PRINT #4," ";SPACE$(70)+""
- PRINT #4,head4$
- PRINT #4," ";SPACE$(70)+""
- RETURN
- > PROCEDURE base_title
- PRINT #1," ";STRING$(70,"#")
- PRINT #1," ### ";logo$;" ###"
- PRINT #1," ";STRING$(70,"#")
- PRINT #1
- PRINT #1," Press [RETURN] to Continue..."+CHR$(1);
- '
- PRINT #2," p";SPACE$(70)+"q"
- PRINT #2," p ";logo$;" q"
- PRINT #2," p";SPACE$(70)+"q"
- PRINT #2
- PRINT #2," Press p RETURN q to Continue..."+CHR$(1);
- '
- PRINT #3," c2";SPACE$(70)+"c0"
- PRINT #3," c2 ";logo$;" c0"
- PRINT #3," c2";SPACE$(70)+"c0"
- PRINT #3
- PRINT #3," Press c2 RETURN c0 to Continue..."+CHR$(1);
- '
- PRINT #4," ";SPACE$(70)+""
- PRINT #4," ";logo$;" "
- PRINT #4," ";SPACE$(70)+""
- PRINT #4
- PRINT #4," Press RETURN to Continue..."+CHR$(1);
- RETURN
- '
- > PROCEDURE add2list
- DIM temp$(110)
- IF EXIST("whowasit.inf")
- OPEN "I",#1,"whowasit.inf"
- RECALL #1,temp$(),-1,tmp%
- CLOSE
- ENDIF
- OPEN "O",#1,"whowasit.inf"
- PRINT #1,laston$;",";timeoff$;",";dateoff$
- FOR r#=0 TO 99
- IF temp$(r#)<>""
- PRINT #1,temp$(r#)
- ENDIF
- NEXT r#
- CLOSE
- user$(1,1)=laston$
- user$(1,2)=timeoff$
- user$(1,3)=dateoff$
- FOR r#=2 TO maxuser%
- IF temp$(r#-2)<>""
- user$(r#,1)=LEFT$(temp$(r#-2),INSTR(temp$(r#-2),",")-1)
- user$(r#,2)=MID$(temp$(r#-2),INSTR(temp$(r#-2),",")+1,5)
- user$(r#,3)=MID$(temp$(r#-2),RINSTR(temp$(r#-2),",")+1)
- ENDIF
- NEXT r#
- RETURN
-