/*Read Yams newmail whith IBrowse */ OPTIONS RESULTS ARG mode call addlib('libs:rexxreqtools.library',0,-30) NL='0a'x /* newline */ NLNL='0a0a'x /* 2 newlines */ fileinc='File/s included! ' repl='Replyed! ' new='new ' fresh='fresh ' repl='Replyed! ' read='Replyed! ' title='Newmail by sorenf@hem1.passagen.se 1998' what_but='_IBrowse|_Yam|Cancel' tags='rt_pubscrname=IBROWSESCREEN' /* Change here the name of the screen IBROWSE runs */ where_txt='There is mail for You! Select viewer.' mode_txt=' Here are your new mail.' IF mode='ALL' THEN mode_txt=' Here are your mail.' IF mode='DEBUG' THEN mode_txt=' DEBUGED' IF ~SHOW('Ports','YAM') THEN DO ADDRESS 'COMMAND' 'Run >NIL: YAM:YAM HIDE' 'SYS:RexxC/WaitForPort YAM' END IF mode='CHECK' THEN DO ADDRESS 'YAM' 'mailcheck' res=RESULT IF res=-1 THEN DO IF ~SHOW('Ports','MIAMI.1') THEN DO ADDRESS 'COMMAND' 'Run MIAMI:Miami DONTCONNECT HIDE SETTINGS miami:miami.default' 'SYS:RexxC/WaitForPort MIAMI.1' mode='up/down' END IF SHOW('Ports','MIAMI.1') THEN DO res=0 ADDRESS 'MIAMI.1' 'ONLINE' ADDRESS 'YAM' 'mailcheck' ADDRESS 'MIAMI.1' 'QUIT' END END IF res=-1 THEN SAY 'Somethingwentwrong' IF res<1 THEN EXIT /* or say "sorry no mail!!"*/ END IF EXISTS('sys:c/play16') THEN DO IF EXISTS('Ibrowse:rexx/mailsound.wav') THEN DO ADDRESS 'COMMAND' 'Run >NIL: play16 >NIL: Ibrowse:rexx/mailsound.wav' END END IF mode='' THEN DO sel=rtezrequest(where_txt,what_but,title,'rtez_defaultresponse=1') IF sel=0 then Exit IF sel=2 then do ADDRESS 'YAM' show setfolder 0 EXIT END END IF ~SHOW('Ports','IBROWSE') THEN DO ADDRESS 'COMMAND' 'Run >NIL: IBROWSE:IBrowse' 'SYS:RexxC/WaitForPort IBROWSE' END IF SHOW('Ports','IBROWSE') THEN DO ADDRESS 'COMMAND' 'copy IBrowse:Rexx/mailfile.iff ram:t/' 'copy IBrowse:Rexx/mailread.iff ram:t/' 'copy IBrowse:Rexx/mailrep.iff ram:t/' 'copy IBrowse:Rexx/mailnew.iff ram:t/' 'copy IBrowse:Rexx/mailfresh.iff ram:t/' IF EXISTS('IBrowse:Rexx/mailback.iff') THEN 'copy IBrowse:Rexx/mailback.iff ram:t/ >NIL:' ADDRESS YAM SetFolder 0 GetFolderinfo MAX; max=RESULT a=0 app='' linkpage='NewMail by Sören Forsberg
'||mode_txt||''||NL
	DO WHILE a'
				namepos=pos('<',from)
			END
			name=LEFT(from,namepos-1)
			name=LEFT(name,30)
			lenfrom=LENGTH(from)
			email=SUBSTR(from,namepos+1,lenfrom-namepos-1)
			mailto=''||email||''||NL
			titel='From: '||name||'Subject: '||subject
			
			open('inputfile',file,'R')
			b=1
			list=''
			DO FOREVER
				line=readln('inputfile')
				appex=pos('application/octet-stream',line)
				IF appex~=0 then BREAK
				list=list||line||NL
				IF EOF('inputfile') THEN BREAK
			END
			close('inputfile')	
			linkpage=linkpage||''||titel||''

			if status='N' then titel=titel||fresh
			if status='U' then titel=titel||new
			if status='N' then linkpage=linkpage||fresh
			if status='U' then linkpage=linkpage||new
			if status='R' then titel=titel||repl
			if status='R' then linkpage=linkpage||repl
			if status='O' then titel=titel||read
			if status='O' then linkpage=linkpage||read
			if appex~=0 then titel=titel||fileinc
			if appex~=0 then linkpage=linkpage||fileinc
			linkpage=linkpage||NL 

			len=length(list)
			texttype='text/plain'
         		 htmlpos=pos('text/html',list)
			IF htmlpos~=0 THEN texttype='text/html'
			textpos=pos(texttype,list)
			IF textpos=0 THEN textpos=pos('X-UIDL:',list)
			startpos=pos(NLNL,list,textpos)
			out =substr(list,startpos,len-startpos)
			endpos=pos('boundary=',list)
		
			if endpos~=0 THEN DO
				outlen=LENGTH(out)
				boundary=SUBSTR(list,endpos+10,24)
				endpos=pos(boundary,out)
				endpos=lastpos(NL,out,endpos)
				out=LEFT(out,endpos)
			END

			IF texttype='text/html' THEN DO
				DO FOREVER
					hit=pos('=20'||NL,out)
					IF hit=0 then BREAK
					outlen=LENGTH(out)
					out=LEFT(out,hit-1)||RIGHT(out,outlen-hit-2)
				END
				DO FOREVER
					hit=pos('='||NL,out)
					IF hit=0 then BREAK
					outlen=LENGTH(out)
					out=LEFT(out,hit-1)||RIGHT(out,outlen-hit)
				END
			END

			open('outputfile','RAM:T/newmail'a'.html','W')
			line=writeln('outputfile','
'||titel)
			line=writeln('outputfile','Mail to: '||mailto)
			IF htmlpos~=0 THEN line=writeln('outputfile','
') line=writeln('outputfile',out) IF htmlpos=0 THEN line=writeln('outputfile','
') close('outputfile') END a=a+1 END linkpage=linkpage||'' open('outputfile','RAM:T/newmail.html','W') line=writeln('outputfile',linkpage) close('outputfile') ADDRESS 'IBROWSE' GOTOURL URL 'file://localhost/RAM:T/newmail.html' END exit