home *** CD-ROM | disk | FTP | other *** search
- /*
- ** $VER: sendmess.rexx 01.50 (11.02.95)
- **
- ** © 1994-95 Aris Basic
- **
- ** PROGRAMNAME:
- ** sendmess.rexx
- **
- ** FUNCTION:
- ** Sends a message via MicroDot from Address-Book (© Jörg Krause).
- **
- ** This macro needs MicroDot 1.10 by © Oliver Wagner
- ** Its possible that also works with older MD but i`m not sure.
- **
- ** $HISTORY:
- **
- ** 28.12.94 : 01.12 : initial release
- ** 12.01.95 : 01.15 : subject can have now spaces(thes will be converted TO underline "_")
- ** 12.01.95 : 01.20 : problems with path "Ram Disk" are now gone this path will be converted
- ** "RAM".Editor it`s now user will it must not be ED.Added Support
- ** FOR uuencoding binar Files with user choice OF program.
- ** 11.02.95 : 01.50 : now script use ABook Server(1.30+) wenn needed this means that script
- ** must not be Started from ABook actualy he don`t need ABook because
- ** script will than use ABook Server.
- */
-
- edcmd='GED'
- edsufix='STICKY SCREEN=WORKBENCH'
-
- /*
- ** Editor Commands Examples:
- **
- ** GoldED © Dietmar Eilert:
- **
- ** edcmd='GED'
- ** edsufix1='STICKY' <- This Suffix must be in VAR sufix you use GoldED
- ** edsufix2='STICKY SCREEN=WORKBENCH' <- Suffix FOR GoldED on Workbench Screen
- ** change ScreenName IF you want another
- ** PUBLIC Screen
- **
- ** ED © Commodore Amiga INC.:
- **
- ** edcmd='ED '
- ** edsufix='' <- I don`t know any usefull Argument FOR ED
- **
- **
- ** In Script Command Actualy IS : edcmd||' T:mess.ascii '||edsufix
- **
- **
- */
-
- uuencmd='UUxt a'
- uuenin=' '
- uuensufix=''
-
- /*
- ** UUEncode Commands Examples:
- **
- ** UUxt © Asher Feldman:
- **
- ** uuencmd='UUxt -a'
- ** uuenin=' ' <- When Somebody need FOR own UUencode package
- ** uuensufix='' <- See UP ^
- **
- **
- ** UUencode Author ?:
- **
- ** uuencmd='uuenode'
- ** uuenin=' >'
- ** uuensufix=''
- **
- **
- **
- **
- ** In Script Command Actualy IS : uuencmd||' '||file||'.uu'||uuenin||file||' '||uuensufix
- **
- **
- */
-
- OPTIONS RESULTS
- CR=D2C(13)
- IF ~Show('P','ADDRESS_BOOK.1') THEN DO
- IF ~Show('P','ABOOK_SERVER') THEN DO
- SAY 'Kann Address-Book oder ABook-Server nicht finden !!'
- EXIT 10
- END
- CALL server()
- END
- ADDRESS 'ADDRESS_BOOK.1'
- checkMD()
- 'LOCKGUI'
- 'GETSELECTED'
- IF RC=5 THEN DO
- IF Show('P','ABOOK_SERVER') THEN CALL server()
- 'REQUEST INFO TITLE="FEHLER" BODY="Kein Eintrag Selektiert !" BUTTON="_OK"'
- EXIT 10
- END
- lock=RESULT
- 'UNLOCKGUI'
- main:
- 'LOCK 'lock
- IF RC=10 THEN DO
- 'REQUEST INFO TITLE="FEHLER" BODY="Ungültiger Lock" BUTTON="_OK"'
- CALL error()
- END
- 'QUERY EMAIL'
- email=RESULT
- lemail=LENGTH(email)
- IF lemail=0 THEN DO
- 'REQUEST INFO TITLE="FEHLER" BODY="Eintrag hat keine EMail-Adresse"
- BUTTON="_OK"'
- CALL error()
- END
- 'REQUEST INFO TITLE="ANFRAGE" BODY="Art der Nachricht" BUTTON="_KURZ|_DATEI|_ABBRUCH"'
- button=RESULT
- SELECT
- WHEN button=0 THEN CALL ex()
- WHEN button=1 THEN DO
- 'REQUEST STRING TITLE="ANFRAGE" BODY="Nachricht:"'
- nachricht=RESULT
- file='T:mess.ascii'
- OPEN(tmp,file,'WRITE')
- WRITELN(tmp,nachricht)
- CLOSE(tmp)
- filetyp=1
- END
- WHEN button=2 THEN DO
- 'REQUEST INFO TITLE="ANFRAGE" BODY="Was fuer eine Datei ?"
- BUTTON="_ALT(ASCII)|ALT(_BIN)|_NEU(ASCII)"'
- button2=RESULT
- IF button2=0 THEN DO
- ADDRESS COMMAND edcmd||' T:mess.ascii '||edsufix
- file='T:mess.ascii'
- filetyp=1
- END
- IF button2=1 THEN DO
- 'REQUEST FILE TITLE="ASCII-Datei:"'
- IF RC=5 THEN CALL ex()
- file=RESULT
- filetyp=1
- file=checkram(file)
- END
- IF button2=2 THEN DO
- 'REQUEST FILE TITLE="BIN-Datei:"'
- IF RC=5 THEN CALL ex()
- file=RESULT
- filetyp=2
- file=checkram(file)
- 'REQUEST INFO TITLE="ANFRAGE" BODY="Sie haben eine Binare Datei ausgewaehlt.Soll ich diese UUEncoden?" BUTTON="_JA|_NEIN"'
- button3=RESULT
- IF button3=1 THEN DO
- ADDRESS COMMAND uuencmd||' '||file||'.uu'||uuenin||file||' '||uuensufix
- file=file||'.uu'
- filetyp=1
- END
- END
- END
- OTHERWISE CALL error()
- END
- 'REQUEST STRING TITLE="ANFRAGE" BODY="Betreff:"'
- betreff=RESULT
- ADDRESS 'MICRODOT'
- NOREQUEST
- IF filetyp=1 THEN DO
- SendMail TO email BODYFILE file SUBJECT SPACE(betreff,1,'_')
- IF file='T:mess.ascii' THEN ADDRESS COMMAND 'Delete T:mess.ascii'
- END
- IF filetyp=2 THEN DO
- SendMail TO email BODYFILE file BIN SUBJECT betreff
- END
- ex:
- EXIT
- error:
- EXIT
-
- PROCEDURE checkram:
- arg filename
- w1=WORD(filename,1)
- IF w1='RAM' THEN DO
- wl=LENGTH(filename)
- ramstr='RAM'
- filestr=SUBSTR(filename,9,wl-8)
- filen=ramstr||filestr
- RETURN filen
- END
- RETURN filename
-
-
- PROCEDURE checkMD:
- IF ~Show('P','MICRODOT') THEN DO
- 'REQUEST INFO TITLE="FEHLER" BODY="Kann nicht MicroDot finden !" BUTTON="_OK"'
- EXIT 10
- END
- RETURN 0
-
- server:
- ADDRESS 'ABOOK_SERVER'
- 'SHOWLIST ALL'
- lock=RESULT
- CALL main()
-