home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The World of Computer Software
/
World_Of_Computer_Software-02-385-Vol-1of3.iso
/
t
/
thrdsub.zip
/
FIX-THRD.MOD
next >
Wrap
Text File
|
1989-08-02
|
7KB
|
187 lines
This mode will put the message Thread files in the same Subdir
were the MAIN message files are kept. This should solve the
problem if you use seperate Subdirs for each node...
'
If you already have the THREAD mods installed just replace the code here
and you should be all set.
all changes are make PE 08/02/89
Enjoy !!
Pete Eibl <Maple Street BBS 414-771-2805 1200-9600 HST>
All changes are to RBBSSUB1.BAS
'
'
'
'********************************************************************
' THREAD1 First message thread routine *
' THREAD2 Second message thread routine *
' THREAD3 Third message thread routine *
'********************************************************************
'===========================================================================
'
' $SUBTITLE: 'THREAD1 - create/update threaded message file'
' $PAGE
'
' SUBROUTINE NAME -- THREAD1
'
' INPUT PARAMETERS -- PARAMETER MEANING
' HIGH.MESSAGE.NUMBER This reply's message number
' CURRENT.MESSAGE Message number being replied
'
' OUTPUT PARAMETERS -- <<NONE>>
'
' SUBROUTINE PURPOSE -- SUBROUTINE TO...
'
SUB THREAD1 (HIGH.MESSAGE.NUMBER,CURRENT.MESSAGE,GRN$) STATIC
CALL BRKFNAME (MAIN.MESSAGE.FILE$,DRV$,PREFIX$,EXT$,TRUE) 'Pe 08/02/89
IF INSTR(GRN$," ") = 0 THEN 'PE 08/02/89
FILE.NAME$ = DRV$+GRN$ + "T" 'PE 08/02/89
ELSE
FILE.NAME$ = DRV$+LEFT$(GRN$,INSTR(GRN$," ")-1)+"T" 'PE 08/02/89
END IF
CURRENT.MESSAGE$ = STR$(CURRENT.MESSAGE)
HIGH.MESSAGE.NUMBER$ = STR$(HIGH.MESSAGE.NUMBER)
OPEN "R",9,FILE.NAME$,12
FIELD 9, 6 AS CM$, 6 AS HMN$
LSET CM$ = CURRENT.MESSAGE$
LSET HMN$ = HIGH.MESSAGE.NUMBER$
PUT #9,INT(LOF(9)/12)+1
CLOSE (9)
59670 END SUB ' THREAD1
'
' $SUBTITLE: 'THREAD2 - a message was killed - check threaded message file'
' $PAGE
'
' SUBROUTINE NAME -- THREAD2
'
' INPUT PARAMETERS -- PARAMETER MEANING
' MESSAGE.TO.KILL Killed message's number
'
' OUTPUT PARAMETERS -- <<NONE>>
'
' SUBROUTINE PURPOSE -- SUBROUTINE TO ...
'
SUB THREAD2 (MESSAGE.TO.KILL,ACTIVE.MESSAGES,GRN$) STATIC
CALL BRKFNAME (MAIN.MESSAGE.FILE$,DRV$,PREFIX$,EXT$,TRUE) 'Pe 08/02/89
IF INSTR(GRN$," ") = 0 THEN 'PE 08/02/89
FILE.NAME$ = DRV$+GRN$ + "T" 'PE 08/02/89
ELSE
FILE.NAME$ = DRV$+LEFT$(GRN$,INSTR(GRN$," ")-1)+"T" 'PE 08/02/89
END IF
OPEN "R",9,FILE.NAME$,12
FIELD 9, 6 AS CM$, 6 AS HMN$
FOR I = 1 TO INT(LOF(9)/12)
GET 9,I
IF VAL(CM$) = MESSAGE.TO.KILL THEN ' MARK THE RECORD
LSET CM$ = LEFT$(CM$,5) + "K"
PUT 9,I
ELSE
IF VAL(HMN$) = MESSAGE.TO.KILL THEN ' MARK THE RECORD
LSET HMN$ = LEFT$(HMN$,5) + "K"
LSET CM$ = LEFT$(CM$,5) + "K"
PUT 9,I
END IF
END IF
NEXT I
CLOSE (9)
59680 END SUB ' THREAD2
'
' $SUBTITLE: 'THREAD3 - a message was killed - check threaded message file'
' $PAGE
'
' SUBROUTINE NAME -- THREAD3
'
' INPUT PARAMETERS -- PARAMETER MEANING
' CURRENT.MESSAGE Message's number
'
' OUTPUT PARAMETERS -- <<NONE>>
'
' SUBROUTINE PURPOSE -- SUBROUTINE TO ...
'
SUB THREAD3 (CURRENT.MESSAGE,GRN$) STATIC
IF JUST.SEARCHING THEN _ 'PE 01/16/89
EXIT SUB 'PE 01/16/89
CALL BRKFNAME (MAIN.MESSAGE.FILE$,DRV$,PREFIX$,EXT$,TRUE) 'Pe 08/02/89
IF INSTR(GRN$," ") = 0 THEN 'PE 08/02/89
FILE.NAME$ = DRV$+GRN$ + "T" 'PE 08/02/89
ELSE
FILE.NAME$ = DRV$+LEFT$(GRN$,INSTR(GRN$," ")-1)+"T" 'PE 08/02/89
END IF
OPEN "R",9,FILE.NAME$,12
FIELD 9, 6 AS CM$, 6 AS HMN$
AA$ = ""
ZZ$ = ""
FOR I = 1 TO INT(LOF(9)/12)
GET 9,I
IF RIGHT$(HMN$,1) = "K" THEN 59690
IF VAL(CM$) = CURRENT.MESSAGE AND RIGHT$(HMN$,1) <> "K" THEN
AA$ = AA$ + HMN$
END IF
IF VAL(HMN$) = CURRENT.MESSAGE AND RIGHT$(CM$,1) = "K" THEN
ZZ$ = LEFT$(CM$,5) + FG.4$+"(deleted) "+EMPHASIZE.OFF$
END IF
IF VAL(HMN$) = CURRENT.MESSAGE AND RIGHT$(CM$,1) <> "K" THEN
ZZ$ = CM$
END IF
59690 NEXT I
IF LEN(AA$) > 0 THEN
CALL QTPUT(FG.3$+" Reply(ies) in message number(s): "+FG.4$ + AA$+EMPHASIZE.OFF$,1)
END IF
IF LEN(ZZ$) > 0 THEN
CALL QTPUT (FG.2$+" This message is in reply to message " +FG.1$+ ZZ$+EMPHASIZE.OFF$,1)
END IF
CALL QTPUT (FG.1$ + "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"+EMPHASIZE.OFF$,1)
CLOSE (9)
59695 END SUB ' THREAD3
'
' $SUBTITLE: 'THREAD4 - UPDATE CONFR.DEF FILE FOR MESSAGE RECOVERY'
' $PAGE
'
' SUBROUTINE NAME -- THREAD4
'
' INPUT PARAMETERS -- PARAMETER MEANING
'
' MESSAGE.TO.RECOVER MESSAGE NUMBER BEING RECOVERED
' FIRST.MESSAGE.RECORD NOT USED HERE BUT PASSED IN
' FROM RBBS CALL TO SUB2
' ACTION.FLAG PASSED FROM SUB2 NEEDED TO
' GIVE BACK TO RBBS MAIN CODE
' GRN$ CONFERENCE NAME
'
' OUTPUT PARAMETERS -- <<NONE>>
'
' SUBROUTINE PURPOSE -- SUBROUTINE - UPDATE CONFR.DEF FILE AFTER MSG RECVRY
'
SUB THREAD4 (MESSAGE.TO.RECOVER,FIRST.MESSAGES.RECORD,ACTION.FLAG,GRN$) STATIC
CALL BRKFNAME (MAIN.MESSAGE.FILE$,DRV$,PREFIX$,EXT$,TRUE) 'Pe 08/02/89
IF INSTR(GRN$," ") = 0 THEN 'PE 08/02/89
FILE.NAME$ = DRV$+GRN$ + "T" 'PE 08/02/89
ELSE
FILE.NAME$ = DRV$+LEFT$(GRN$,INSTR(GRN$," ")-1)+"T" 'PE 08/02/89
END IF
OPEN "R",9,FILE.NAME$,12 'WILL CREATE FILE IF NOT EXIST
FIELD 9, 6 AS CM$, 6 AS HMN$
FOR I = 1 TO INT(LOF(9)/12)
GET 9,I
IF VAL(CM$) = MESSAGE.TO.RECOVER THEN
LSET CM$ = LEFT$(CM$,5) + " "
PUT 9,I
ELSE
IF VAL(HMN$) = MESSAGE.TO.RECOVER THEN
LSET HMN$ = LEFT$(HMN$,5) + " "
LSET CM$ = LEFT$(CM$,5) + " "
PUT 9,I
END IF
END IF
NEXT I
CLOSE (9)
59698 END SUB 'THREAD4
'
End of MOD............