home *** CD-ROM | disk | FTP | other *** search
/ The AGA Experience 2 / agavol2.iso / software / utilities / comms / voodoo / contrib / convertaliases / convelmaliases.rexx < prev    next >
OS/2 REXX Batch file  |  1995-12-12  |  2KB  |  86 lines

  1. /*
  2.  
  3. ConvertAliases 1.0 by Dan Fraser
  4. This should convert AmigaELM aliases file to Voodoo address book 
  5.  
  6. */
  7.  
  8.  
  9. parse arg infile outfile
  10.  
  11. if infile='' then do
  12.     wbmode=1
  13.     address command 'requestchoice >nil: title="ConvertAliases" body="Welcome to ConvertAliases 1.0 by Dan J. Fraser" gadgets="OK"'
  14.     infile=requestfile('Select AmigaELM ''aliases'' file...','file=Aliases drawer=UULib:.elm/')
  15.     if infile='' then do
  16.         call info('Aborted!')
  17.         exit 5
  18.     end 
  19. end 
  20. else wbmode=0
  21.  
  22. if ~open(aliasfile,infile,'R') then do
  23.     call info('Can''t open the input file.  odd.')
  24.     exit 5
  25. end
  26.  
  27. if outfile='' then do
  28.     outfile=requestfile('Select your ''Voodoo.aliases'' file...')
  29.     if outfile='' then do
  30.         call info('Aborted!')
  31.         exit 5
  32.     end
  33. end
  34.  
  35.     if open(Valiases,outfile,'A') then do
  36.         do while ~eof(aliasfile)
  37.             inline=readln(aliasfile)
  38.             if (left(inline,1)~='#') & (inline~='') then do
  39.                 parse var inline alias'='email'('name')'
  40.                 call writeln(Valiases,strip(alias)': 'strip(email)' ; "'strip(name)'" 0')
  41.             end
  42.         end
  43.         call info('Done!  Thanks for using ConvertAliases.rexx!')
  44.     end
  45.     else
  46.         call info('unable to open output file for some reason.  odd.')
  47.  
  48. exit 0
  49.  
  50. requestfile:procedure
  51.     parse arg title,moreopts
  52.     address command 'requestfile >pipe:filename title="'title'" 'moreopts
  53.     if open(pipefile,'pipe:filename','R') then do
  54.         inline=readln(pipefile)
  55.         call close(pipefile)
  56.     end
  57.     else do
  58.         say 'fatal error, problem making requester'
  59.         exit 10;
  60.     end
  61. return strip(inline,'B','"')
  62.  
  63. request:procedure expose wbmode
  64.     if wbmode=1 then do
  65.         parse arg title,body,defdir
  66.         address command 'requestchoice >pipe:filename title="'title'" body="'body'" gadgets="Yes" "No"'
  67.         if open(pipefile,'pipe:filename','R') then do
  68.             inline=readln(pipefile)
  69.             call close(pipefile)
  70.         end
  71.         else do
  72.             say 'fatal error, problem making requester'
  73.             exit 10;
  74.         end
  75.     end
  76.     else inline=1
  77. return inline
  78.  
  79. info:procedure expose wbmode
  80.     parse arg body
  81.     if wbmode=1 then
  82.         address command 'requestchoice >nil: title="Info" body="'body'" gadgets="oh"'
  83.     else
  84.         say body
  85. return 0
  86.