home bbs files messages ]

Just a sample of the Echomail archive

<< oldest | < older | list | newer > | newest >> ]

 Message 13125 
 IGNATIUS to GRYPHON 
 MPL 
 31 Jan 19 19:20:24 
 
Hey man, I was wondering if you could help me out with something. I have an
"auto message" MPL that needs to be re-worked. If you could take a look at
it, i'd really appreciate it.

--// snip ------------------------------------
 
Uses CFG;
Uses USER;

Var
  f           : file;
  Line1       : String;
  Line2       : String;
  Line3       : String;
  Line4       : String;
  Line5       : String;
  Line6       : String;
  Line7       : String;
  Line8       : String;
  automessage : String;
  Topic       : String;
  Date        : String;
  InStr       : String;
  Done        : Boolean;
  c1 : String; // Variables for the ColorScheme stuff: Colorscheme code thanks 
o Zoob
  c2 : String; // "          "          "        "
  c3 : String; // "          "          "        "
  p1 : String; // Variables for the DataField in the Menu Editor:
  p2 : String; //     i.e. "Menu" and ""


//###########################
//##  Display Automesage  ###
//###########################

Procedure Write_Automsg
Begin
GetThisUser
     If InputYN ('|CRsave this message? ') then // Said after Should_We has run

       begin
          fassign (f, automessage, 66) // Opens automessage.DAT
          freset (f)
          fWriteLn (f, 'from : '+ UserAlias) // Writes the useralias to file
          fWriteLn (f, 'topic: '+ Topic)     // Writes topic to file
          fWriteLn (f, 'date : '+ Date)      // Writes date to file
          fWriteLn (f, '|CR')
          If Line1 <> '' then FWriteLn (f, ' '+ Line1) // Displays 1st line
          If Line2 <> '' then FWriteLn (f, ' '+ Line2) // Displays 2nd line
          If Line3 <> '' then FWriteLn (f, ' '+ Line3) // and 3rd
          If Line4 <> '' then FWriteLn (f, ' '+ Line4) // what the hay, 4th too
          If Line5 <> '' then FWriteLn (f, ' '+ Line5) // you guessed it, 5th
          If Line6 <> '' then FWriteLn (f, ' '+ Line6) // writes 8th line
          If Line7 <> '' then FWriteLn (f, ' '+ Line7) // writes 7th line
          If Line8 <> '' then FWriteLn (f, ' '+ Line8) // writes 6th line
          fClose (f)                         // Closes automessage.DAT
     End
Done := False // Is menu finished or not? 
end

//##########################
//##  Write automessage  ###
//##########################

Procedure Should_We
begin
// boy, that question was long, I write here for it. Would you like to write au
omessage, question.
If InputNY ('|CRchange automsg? ') then
  begin
     Write ('|CRtopic: ')
     Topic := Input (60, 60, 1, '')
  end

// If Topic doesn't exist, write a new one

/*

  If FileExist(Topic)
      fOpen(1, Text, ReWrite, Topic)
     fClose(1) // Close Topic file
  End If

*/

// Writing automessage now

     WriteLn ('|CRenter automsg now.. 8 lines max|CR')
     Write (': ')  Line1 := Input (77, 77, 1, '')
        If Line1 = '' then // If nothing entered on line1, abort
        begin  Write_Automsg
         WriteLn('aborted!')
         Halt
        End
     Write (': ')  Line2 := Input (77, 77, 1, '')
        If Line2 = '' then // If nothing entered on line2, save automessage?
        begin
         Write_Automsg
         Halt
        End
     Write (': ')  Line3 := Input (77, 77, 1, '')
        If Line3 = '' then // If nothing entered on line3, save automessage?
        begin
         Write_Automsg
         Halt
        End
     Write (': ')  Line4 := Input (77, 77, 1, '')
        If Line4 = '' then // If nothing entered on line4, save automessage?
        begin
         Write_Automsg
         Halt
        End
     Write (': ')  Line5 := Input (77, 77, 1, '')
        If Line5 = '' then // Get the idea?
        begin
         Write_Automsg
         Halt
        End
     Write (': ')  Line6 := Input (77, 77, 1, '')
        If Line6 = '' then // I'm done typing here
        begin
         Write_Automsg
         Halt
        End
     Write (': ')  Line7 := Input (77, 77, 1, '')
       If Line7 = '' then
        begin
         Write_Automsg
         Halt
        End
     Write (': ')  Line8 := Input (77, 77, 1, '')
     Write_Automsg
     DispFile (automessage)
End


//#########################
//##  automessage Menu  ###
//#########################

Procedure Make_Menu
begin
Repeat // Repeat this stuff until Done := True(until user presses "Q")
   WriteLn ('                lQ-automessage v2.2')
   WriteLn ('')
   WriteLn ('{V} View automessage')
   WriteLn ('{W} Write automessage')
   WriteLn ('(R) Reply to Author of automessage')
   WriteLn ('')
   Write ('lQ-automessage [Q/Quit] ['+ StrRep(' ', 2)+ ')'+ StrRep(Chr(8), 3))

InStr := Input(2, 2, 12, '') // The Input area is 2 characters long
 If InStr = 'V' Then         // If user presses "V" then it displays the autome
sage
   DispFile (automessage)    // Display file "automessage.DAT"
 Else If InStr = 'W' Then     // If "W" then Write the automessage
   Should_We                 // Run Should_We procedure
 Else If
 InStr = 'R' Then           // If "R" then reply to Author of automessage
   MenuCmd('MW', UserAlias) // Write to the author of automessage
 Else If InStr = 'Q' Then    // Quiting the menu
   Done := True             // Finally!
Until Done
End

//###########################
//##  Color Scheme Codes  ###
//###########################

Procedure Color_Me_Blind
begin
If p1='BLUE' then                            // If 1st word in menu data entry
    begin
    c1 :=''    c2 :=''  c3 :='' // equals BLUE then display those colors
    end
  Else If p1='GREEN' then                // Same as above, but for GREEN
    begin
    c1 :=''    c2 :=''  c3 :=''
    end
  Else If p1='CYAN'then                       // Same as above.
    begin
    c1 :=''    c2 :=''  c3 :=''
    end
  Else If p1='RED' then
    begin
    c1 :=''    c2 :=''  c3 :=''
    end
  Else If p1='MAGENTA' then
   begin
    begin
    c1 :=''    c2 :=''  c3 :=''
    end
  Else If p1='YELLOW' then
    begin
    c1 :=''    c2 :=''  c3 :=''
    end
  Else If p1='GREY' then
    begin
    c1 :=''    c2 :=''  c3 :=''
    end
  Else If p2='BLUE' then                  // Changed to if 2nd word in menudata
field
   begin
    c1 :=''    c2 :=''  c3 :='' // equals BLUE then display these codes
   end
  Else If p2='GREEN' then // Same as p2='BLUE'
  begin
    c1 :=''    c2 :=''  c3 :=''
  end
  Else If p2='CYAN' then                 // Same as the other p2=""'s
    begin
    c1 :=''    c2 :=''  c3 :=''
    end
  Else If p2='RED' then
   begin
    c1 :=''    c2 :=''  c3 :=''
   end
  Else If p2='MAGENTA' then
    begin
    c1 :=''    c2 :=''  c3 :=''
    end
  Else If p2='YELLOW' then
    begin
    c1 :=''    c2 :=''  c3 :=''
     end
  Else If p2='GREY' then
   begin
    c1 :=''    c2 :=''  c3 :=''
   end
   Else                                  // If no color entered then use these
    c1 :=''    c2 :=''  c3 :='' // Color Codes
End


Begin
automessage := CfgDataPath + 'automsg.dat'

  p1 := Upper(ParamStr(1)) // What the variables mean... This tells Mystic to
  p2 := Upper(ParamStr(2)) // look n the menu data field for the 1st & 2nd word


If p1='MENU'then       // If 1st word in menudatafield equals this then display
 Make_Menu         // the menu
 Else If p2='MENU' then  // If the 2nd word in menudatafield equals this then d
splays
 Make_Menu         // the menu. Just so you can have these things in any order(
he menu and color)
End

automessage := CfgDataPath + 'automsg.dat'

  p1 := Upper[ParamStr(1)] // What the variables mean... This tells Mystic to
  p2 := Upper[ParamStr(2)] // look n the menu data field for the 1st & 2nd word




// Putting the Date the automessage was written to a temp file.

  If FileExist(Date);
       fOpen(1, Text, ReWrite, Date);
     fClose(1);
  End If



Date := DateStr(DateTime, 1) // Date equals this
Color_Me_Blind                 // Run this procedure(the color scheme)
DispFile(automessage)          // Run this procedure(display automessage)
Should_We                      // Run this procedure(change automessage?)
End

--// snip -----------------------------------------------------

Thanks again,

|09ignatius |07(|15cia|07/|15scrollz|07)

--- Mystic BBS v1.10 A52 (Linux)
 * Origin: catch22bbs.com (46:1/124)
 þ Synchronet þ thePharcyde_ >> telnet://bbs.pharcyde.org (Wisconsin)

<< oldest | < older | list | newer > | newest >> ]

(c) 1994,  bbs@darkrealms.ca