home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga MA Magazine 1998 #6
/
amigamamagazinepolishissue1998.iso
/
polminet
/
marek_jabîoïski
/
thortilla
/
thortilla.thor
< prev
Wrap
Text File
|
1997-07-05
|
4KB
|
149 lines
/*
** thortilla.thor by Marek Jablonski <mjab2@polbox.com>
*/
OPTIONS RESULTS
thorport = address()
if left(thorport,5) ~= 'THOR.' then do
say 'THORtilla must be run from within Thor.'
end
address(thorport)
CURRENTSYSTEM TEM
ISSTARTUPWINDOW
if rc = '0' then do
REQUESTNOTIFY TEXT '"Enter the system first!"' BT '"_OK"'
exit
end
do i = 0 to 23
z.i = 0
x.i = 0
end
p.0 = ' Sun '
p.1 = ' Mon '
p.2 = ' Tue '
p.3 = ' Wed '
p.4 = ' Thu '
p.5 = ' Fri '
p.6 = ' Sat '
maks = 0
maksw = 0
ile2 = 0
bnam = TEM.BBSNAME
if ~show('p', 'BBSREAD') then do
address command
"run >nil: `GetEnv THOR/THORPath`bin/LoadBBSRead"
"WaitForPort BBSREAD"
end
address BBSREAD
GETCONFLIST bbsname '"'bnam'"' stem conflist
konfy = conflist.count
address(thorport)
REQUESTNOTIFY TEXT '"Process given conference or entire system?"' BT '"_CONFERENCE|_SYSTEM"'
if(result = 1) then konfy = 1
if konfy = 1 then do
REQUESTLIST instem conflist outstem SELECTED MULTISELECT DRAGSELECT title '"Select conference"'
if(rc ~= 0) then exit
cnam = SELECTED.1
end
/* ---------------------------------------------------------- */
OPENPROGRESS TITLE '"'bnam'"' AT '"_Abort"' PCW 20
if(rc = 0) then
do
window = result
end
/* ---------------------------------------------------------- */
do cf = 1 to konfy
if konfy ~= 1 then cnam = conflist.cf
address BBSREAD
GETCONFDATA bbsname '"'bnam'"' confname '"'cnam'"' stem CONFDATA
first = CONFDATA.FIRSTMSG
last = CONFDATA.LASTMSG
ile = last - first
if (ile ~= 0) then do
/* -------------------------------------------------------------- */
address(thorport)
UPDATEPROGRESS REQ window TOTAL ile CURRENT 1 PT '"'cnam'"'
/* -------------------------------------------------------------- */
do msgno = first to last
curr = ile - (last - msgno)
/*----------------------------------------------------------------- */
address(thorport)
UPDATEPROGRESS REQ window CURRENT curr
if(rc ~= 0) then do
CLOSEPROGRESS REQ window
exit
end
/* ---------------------------------------------------------------- */
address BBSREAD
READBRMESSAGE bbsname '"'bnam'"' confname '"'cnam'"' msgnr msgno headstem HEAD
sekundy = HEAD.CREATIONDATE
AMIGA2DATE sekundy XXX
pibi = XXX.HOUR
wibi = XXX.WDAY
z.pibi = z.pibi + 1
x.wibi = x.wibi + 1
if z.pibi > maks then maks = z.pibi
if x.wibi > maksw then maksw = x.wibi
end
ile2 = ile2 + ile
CALL open out,"T:Area.stats",write
ze = '0'
end
end
/* -------------------------------------------------------------- */
address(thorport)
CLOSEPROGRESS REQ window
/* -------------------------------------------------------------- */
if konfy ~= 1 then cnam = 'all conferences'
CALL WRITELN out, '*System:* 'bnam' *Conference:* 'cnam
CALL WRITELN out, '--'
CALL WRITELN out, ' Hours: number of msgs written:'
CALL WRITELN out, '--'
scal = maks / 60
do i = 0 to 23
hasz = '#' /* change it to '' if you want your stat to look good on mailers than does not support styles */
bl = ''
xx = trunc(z.i / scal)
do j = 0 to xx
if j > 0 then bl = bl || '-'
end
zero = i + 1
if zero > 9 then ze = ''
if bl = '' then hasz = ''
if i < 10 then CALL WRITELN out, ' 0'i'-'ze || i+1' 'hasz || bl || hasz z.i
else CALL WRITELN out, ' 'i'-'i+1' 'hasz || bl || hasz z.i
end
CALL WRITELN out, '--'
CALL WRITELN OUT, ' Days:'
CALL WRITELN out, '--'
scal = maksw / 60
do i = 0 to 6
hasz = '#'
bl = ''
xx = trunc(x.i / scal)
do j = 0 to xx
if j > 0 then bl = bl || '-'
end j
if bl = '' then hasz = ''
CALL WRITELN out, p.i hasz || bl || hasz x.i
end i
call writeln out, ''
call writeln out, '--'
call writeln out, ' 'ile2 'messages processed. Only mailto:mjab2@polbox.com makes it possible ;)'
call writeln out, '--'
call close out
PUTCLIP FILE 't:area.stats'
SHOWTEXT FILE 't:area.stats'