/*
  $VER: Dopus Reminder 1.0 (30.07.98)
  Written by Stefan Uhlemann (BPM-SU@gmx.de).

  Function : ARexx      remind_check.dopus5 {Qp}
*/

envfile='dopus5_remind.prefs'
version='REMINDFILEV1.0'
check1='DATE'
check2='MESG'

parse arg portname .

if portname='' then
   portname='DOPUS.1'
address value portname

options results
options failat 21
lf = "0A"X

call read_env()
call start()
exit

/* ------------------------- Hauptteil ----------------------------- */

start:

dopus request '"Donīt forget !! "'lf'"written on ""'datum'"'lf'"'text'" OK|Change|Delete'
select
 when dopusrc=1 then exit
 when dopusrc=2 then call aendern()
 when dopusrc=0 then call loeschen()
 otherwise exit
 exit

/* ------------------- FUNKTIONEN ----------------------------------- */

aendern :
  nowd=date()
  nowt=time()
  now=""nowd "at" nowt "Uhr"
getstring:
  dopus getstring '"Change note (max 80 char.) ""'lf'on""'now'""" 80 """'text'" Save|Setup|Chancel'
  textnew=result
  if textnew=="RESULT" then textnew=""
  if dopusrc=0 then call start()
  if dopusrc=2 then do
     text=textnew
     dopus request '"Not possible yet (with this version)! - Soon ;)" Back'
     call getstring()
     end
  OPEN(OUT,"env:"envfile,write)
  WRITELN(OUT,version)
  WRITELN(OUT,check1"="now)
  WRITELN(OUT,check2"="textnew)
  CLOSE(OUT)
  address command 'c:copy env:'envfile' envarc:'envfile' quiet >NIL:'
  return

loeschen:
  address command 'c:delete env:'envfile' >NIL:'
  address command 'c:delete envarc:'envfile' >NIL:'
  return

read_env:
if exists("env:"envfile) then call zeilen_lesen()
else exit
endif
return

zeilen_lesen:
  open(IN, "env:"envfile,read)
  zeile=readln(IN)

      IF zeile = version then do
           end
      else do
        say '"ENV-Error! The file env:'envfile' is corrupt or incompatible!"'
        say 'The file was deleted. Now start this program again ...'
        close(IN)
        call loeschen()
        exit
        end

  datum = READLN(IN)
  laenge=length(datum)
  datum=trim(substr(datum, 6, laenge))
  text = READLN(IN)
  laenge=length(text)
  text=trim(substr(text, 6, laenge))
  close(IN)
  return
  end
