/**************************************************************************\
            $VER: FPBadUploadMail, v1.00 (30-Jun-96) by Dotoran!
\**************************************************************************/
options results ; signal on SYNTAX ; signal on ERROR ; signal on IOERR
tr=transmit ; se=sendstring ; gc=getchar ; gu=getuser ; gs=getscratch
a='rexxsupport.library';if ~show('l',a) then if ~addlib(a,0,-30) then exit

gu 23 ; port=result ; gu 1311992 ; path=result ; gu 1305640 ; rfac=result
gu 2307050 ; bbsn=result ; if datatype(rfac)~="NUM" then rfac=0

tr "n1c7[c21c7] Bad Description."
tr "[c22c7] Duplicate Upload"
tr "[c23c7] Outdated File!"
tr "[c24c7] Not Public Domain."
tr "[c25c7] Not an Amiga file."
tr "[c66c7] Write New Mail."
se "n1Select type of mail. [c21-6c7]? "
gc ; key=result ; tr key

select
  when key=1 then call SMAIL(path"FPBUMt1")
  when key=2 then call SMAIL(path"FPBUMt2")
  when key=3 then call SMAIL(path"FPBUMt3")
  when key=4 then call SMAIL(path"FPBUMt4")
  when key=5 then call SMAIL(path"FPBUMt5")
  when key=6 then call SMAIL("ram:FPBUMt6."port)
  otherwise signal GOODBYE
end
SetMailSubj file
WriteMail uplr ; if ~result then tr "n1b1Error! - Mail not sent!"
call delete("ram:FPBUMt6."port)

/* Restore InBuffer, after line input, as we need the rfac var for
   multiple [K]ill's                                                     */

GOODBYE: ; setobject rfac ; putuser 1305640 ; exit

SMAIL:
  if open(in,ARG(1),"R") then do
    gu 1411006 ; bcre=result ; gu 1211010 ; fcre=result
    gu 49 ; area=result ; gu 1511084 ; date=result
    gu 87 ; file=result ; gu 1210924 ; uplr=result
    loadscratch uplr
      gs 1  ; hand=result ; gs 3  ; name=result
      gs 25 ; frat=result ; gs 26 ; brat=result
      gs 34 ; ftot=result ; gs 35 ; btot=result
    savescratch (-uplr)
    call open(out,"ram:FPBUMt6."port,"W")
      do until EOF(in)
        l=readln(in) ; c=index(l,"¹")
          do while c~=0
            l=insert(value(substr(l,c+1,4)),delstr(l,c,5),c-1)
            c=index(l,"¹")
          end
        call writeln(out,l)
      end
    call close(out)
    call close(in)
  end

  LoadEditor "ram:FPBUMt6."port
  se "n1Edit Mail Text?    [No]: ?0"
  gu 70 ; if result then CallEditor 0
 return

SYNTAX:;ERROR:;IOERR:;e1=' Error: 'rc' ('errortext(rc)')'
  e2='  Line: 'left(sigl,4)'File:';gu 1311992;a=result;gu 1311960
  b=result;c='"'a||b'"';e2=e2' 'c;tr e1;tr e2;logentry e1;logentry e2
  e=sourceline(sigl);do while e~='';e3='Source: 'left(e,37);tr e3
  logentry e3;e=substr(e,38);end;bufferflush;exit
/**************************************************************************\
\****************************************** Frontiers BBS (716)/823-9892 **/
