



              L   L  L   L       LLLLL  L      LLL   L   L  LLLLL
              LL LL  LL LL       L      L     L   L  LL LL  L
              L L L  L L L       LLLL   L     LLLLL  L L L  LLLL
              L   L  L   L       L      L     L   L  L   L  L
              L   L  L   L       L      LLLL  L   L  L   L  LLLLL


                             L   L  LL    LLLL   L
                             L   L L  L   L     LL
                             L   L L  L   LLL  L L
                              L L  L  L      L   L
                               L    LL  L LLL    L




                          (C) 1995/96  Robert Hofmann





 1. Introduction
 ===============

  1.1 Legal stuff
  ---------------

   MM_Flame  is a tool for  Echo-Conference-Moderators for  Mail Manager by Pino
   Aliberti to simplify the work of a moderator.

   The programs and files in this distribution are freely distributable, but are
   also Copyright (c) Robert Hofmann  except the bin-drawer.  They may be freely
   distributed as long as no  more than a nominal  fee is charged to  cover time
   and copying costs.

   No commercial usage is  permitted without written permission from the author.
   Everything in this distribution must be kept together, in original unmodified
   form and unmodified archive.


   MM_Flame is  mailware :-). This  means if  you use it,  please write  a short
   mail to me. You know,  it is frustrating  to write programs  and there are no
   responses from  the users if they  like it or  not... But of  course money is
   also welcome. ;-)


   Accepting these few points is the only condition for using MM_Flame...


   =============================================================================
   The author is not responsible for any  problems caused by using this program!
   =============================================================================



  1.2 General stuff
  -----------------

   I am not the best in  writing doc, but quiet good  in coding I think :-) This
   docs are a bit  short I have to  appolognize, but I hope you'll understand it
   anyway... Especially my English and the typo's ;-)


   If there is  anybody out there  who is able to &  wants translate the docs to
   his own language, please do so and send them to me! I'll add them to the next
   release. Also translators always will get the newest betas! ;-)

   Unfortunatly I don't have the will & time to translate my docs even to German
   - my time is better used for coding :-)





  1.3 Author
  ----------

   If  you  have  suggestions  or remarks about this program, or if you find any
   bugs, please let me know.


   Contacting the author:

     Internet .. :  robert@next.amistep.osn.de (soon!)
     FidoNet ... :  2:2490/1015.0   (may change soon!)
     AmigaNet .. :  39:171/101.0

     Snail-mail  :  Robert Hofmann
                    Volkmannstr. 35
                    D-90443 Nürnberg
                    Tel. +49-(0)-911-9941680 (18-20h German time only!!!)
                    Germany

     Bank-Account:  Account-holder:  Robert Hofmann
                    Account-number:  67920
                    Bank-ID ..... :  76090000
                    Bank-name ... :  Volksbank Nuernberg e.G.





 2. Features
 ===========

  MM_Flame...

     ... is able to insert rules, texts etc into your flames
     ... is able to handle notes, flames and suspentions
     ... is able to notify the boss/node/Hub/NEC/REC
     ... is able to automaticaly post your rules, e.g via cron
     ... is able to manage more than one area of course
     ... fully user-configurabe: texts, requesters, msgs etc
     ... keeps statistics over all flames etc which you had to give
     ... archives the flames (the orig. msg & your reply)
     ... simple takes a lot of work from you!





 3. Installation
 ===============

  Just copy  the files  to the  corresponding  MM:*/-directories  and adjust the
  config to your own needs.


  IMPORTANT: MM_Flame.rexx *MUST* be placed in "MM:Rexx/"!!!  This  is necessary
             because MM_Flame appends its cfg  to the script itself for a *VERY*
             fast cfg-reading. *** NEVER TOUCH ITS FILENOTE!!! ***


  As you  may  have  seen, there's a  second script  called  "MM_Flame.rexx.cmp"
  included. This is a exacltly the same script as "MM_Flame.rexx" itself, except
  that it was compressed with "Compress.rexx v1.6".

  On slow machines, it  might be useful to  replace the uncompressed script with
  the  compressed one because it is slightly faster... But  please test it first
  with the uncompressed  version, because if an error occurs,  finding the error
  due to error-reports of the compressed script is nearly impossible!

  If you really want to use  the compressed script, you  have to REPLACE the un-
  compressed script with the compressed  one! The used script MUST exactly named
  "MM:Rexx/MM_Flame.rexx", otherwise it will not work!





 4. Usage
 ========

      [RX] MM_Flame[.rexx] FLAME     <areatag> <msgnumber>
  or: [RX] MM_Flame[.rexx] POSTRULES <areatag>
  or: [RX] MM_Flame[.rexx] SCANECS   <domain>  [zone]

  E.g. : #BROWSEMENU "Flame" "rx MM:Rexx/MM_Flame FLAME %a %n" ""



  4.1 FLAME <areatag> <msgnumber>
  -------------------------------

   This  is  the  major  part  of  MM_Flame - flaming.  But  it  is a little bit
   different from simply replying to a msg as you may think now. This is because
   (currently - I hope for MM 1.2,  this will change!) I have no  ARexx-controll
   over the  Reply-functions of MM. 8^( So I had to find  another solution - not
   that good, but acceptable:

   1. Goto the msg  where you want to flame and make a X-Reply to the correspon-
      ding netmail-area and keep staying over the msg to flame.

   2. Start MM_Flame (normally via the browse-menu).


   Now MM_Flame will...

    ... look if it can detect your reply,
    ... check if you've already flamed the sender due to this msg,
    ... show you the arced flames and/or the log if you want,
    ... ask you for the parts of the rules you may send,
    ... start your editor with the msg to edit,
    ... ask you if you want to store the msg & your reply if it is only a note,
    ... ask you if you want to notify also his/her Boss[/Hub/NEC/REC],
    ... ask you to send a warning to the User/Boss if neccessary

   I don't describe all in detail now, just try it.



  4.2 POSTRULES <areatag>
  -----------------------

   This function just posts your defined  rules. This normally should be done by
   a cron once a month, e.g.

     20 00 1 * *  rx MM:rexx/MM_Flame POSTRULES AMIGA_MARKT.GER




  4.3 SCANECS <domain> [zone]
  ---------------------------

   With this function you can  build a list  of NEC's & RECs of the given domain
   (and zone), which is needed for the fast detection of them.

   It will be looked for the NEC & REC-flag in the nodelist. In FidoNet it works
   fine, but unfortunately in AmigaNet these flags are not used.  8^(

   It will build a file called 'MM:Config/MM_Flame.ECs".




 5. Configuration
 ================

  MM_Flame has an advance config-reading-mechanism, which implements your config
  directly to the script itself. This means once the config is compiled, it will
  need less than one second (A3000 50/50MHz) to read its config!

  Only if you change the  config, it will need a while until all checks are done
  and the config is compiled.

  Please take a close look  in the example config.  To check if it is configured
  correct just start it.



  5.1 #AREA - Area related settings
  ---------------------------------

    Here you have to set your different  areas and related  parameters where you
    are moderator of.


    #AREA             <Areatag>

                        The name of the area where you are moderator.
                        All  the  text-files will  be  searched in  "MM:Config/
                        MM_Flame/<Areatag>/",  so be  sure that  you've  set up
                        this dir correct.

                        NOTE: If there is asked for a dir- or a filename in one
                              of the  following #AREA-parameters and you  don't
                              write the full path in it, it  will be searched
                              in
                              the area-path for the given file or dir.


    FlameFile         <Pfx>

                        The prefix for the user-related flame-logs. These are the
                        files, where the whole msgs are kept in.
                        If the prefix is no dir, it  will e.g. stored like (pfx =
                        Tmp:Test) Tmp:Test.ROBERT_HOFMANN.


    FlameLog          <File>

                        The logfile of MM_Flame.


    InsertRules       <File> <Text>   [Multiple lines possible!]

                        File  The file containing that part of the rules
                        Text  The text shown in the requester (you an use '"'!)


    MaxFlames         <#>

                        The number of flames when a user will be  suspended from
                        the area.


    PostRulesFrom      <From-name>


    PostRulesSubject   <Subject>


    PostRulesTo        <To-name>


    PostRulesFlags     <Flags>


    Rules              <File>

                         The complete rules. E.g. used for POSTRULES.


    SendFlame          [Uplink] [NEC]

                         Uplink   Also ask to send a copy to the uplink
                         NEC      Also ask to send a copy to the NEC


    SendFlameFlags     <Flags>


    SendNotify         [Boss]

                         Boss     Also ask to send a copy his/her boss


    SendNotifyFlags    <Flags>


    SendSuspend        [Uplink] [NEC] [REC]

                         Uplink   Also ask to send a copy to the uplink
                         NEC      Also ask to send a copy to the NEC
                         REC      Also ask to send a copy to the REC


    SendSuspendFlags   <Flags>





  5.2 Localisation
  ----------------

   As the most of my other scripts  too, MM_Flame is fully  localized. To do so,
   you have to translate &  adjust the following texts  to your own  need. It is
   self-speaking I think, so I don't comment them.


   You may use formatting-commands in requesters & texts like:

    \c    = Center the text
    \n    = Line-Feed
    \<#>  = Pen-colour, e.g. \1, \0


   There are also the following embedded %-commands:

    %ea   = echoarea-name
    %ed   = echo-msg creation-date
    %efa  = echo-msg from-address
    %ef   = echo-msg from-name
    %es   = echo-msg subject
    %eta  = echo-msg to-address
    %et   = echo-msg to-name
    %ma   = mailarea-name
    %md   = netmail creation-date
    %ms   = netmail subject
    %mta  = netmail to-address
    %mt   = netmail to-name
    %nf   = number of flames
    %nn   = number of notifications
    %ns   = number of times suspended
    %sfa  = system from-address (= your address)
    %sf   = system from-name    (= your name   )
    %p    = person (for the requesters)



   5.2.1 Buttons

    #BUTTON_CANCEL     "_Cancel"

    #BUTTON_FLAME      "_Flame"

    #BUTTON_NO         "_No"

    #BUTTON_NOTE       "*_Notification"

    #BUTTON_SHOWFLAMES "_Show Flamefile"

    #BUTTON_SHOWLOG    "Show Flame_log"

    #BUTTON_SUSPEND    "_Suspend"

    #BUTTON_YES        "_Yes"


   5.2.2 Requesters

    #REQ_ARCMSG        "\cShall this msg be archived?"

    #REQ_CHECKMSGS     "\cThe msg(s) have been successfully written.\n\nPlease
                       check the new mails in %ma before you export them."

    #REQ_DELREPLY      "\cShall your reply be deleted?"

    #REQ_FLAME         "\cDo you want to flame, just notify or even\nsuspend
                        the writer from this area?"

    #REQ_HASFLAMES     "\c%ef has already got %nn notes, %nf flames\nand was
                       %ns times suspended!!!"

    #REQ_MAXFLAMES     "\c\n* * *  A T T E N T I O N  * * *\n\nOne more flame
                       and %ef must be suspended!\n"

    #REQ_NOCFG         "\cSorry, no config found for this area.\n\nMaybe you
                       are not the moderator?? :-)"

    #REQ_NOFLAMES      "\c%ef %efa\nhas no flames until now..."

    #REQ_NOTFOUND      "\cUnable to locate the matching reply to that msg\nin
                       mailarea %ma!!!"

    #REQ_NOTIFY        "\cShall her/his %p %mt %mta be notified???"

    #REQ_NOTIFYNF      "\cThe %p of %mt could not be found.\n\nEnter address
                       manually?"

    #REQ_WARNBOSS      "\c%ef has already got %nf flames.\n\nSend warn-message
                       to his boss %mt %mta?"

    #REQ_WARNUSER      "\c%ef has already got %nf flames.\n\nSend warn-message?"

    #REQ_WASFLAMED     "\c%ef %efa\nwas already flamed due to that msg!"


   5.2.3 Other texts...

    #TEXT_ADDRREQ      "Please enter the address of his %p"

    #TEXT_ORIGMSG      "Original OFF-TOPIC msg from area %ea"

    #TEXT_REPLYMSG     "Reply to the OFF-TOPIC msg above"

    #TEXT_SELREQ       "Please select the texts to add"

    #TEXT_SHOWLOG      "Typ Flame-Date & Time    Subject\n----------------------
                       ------------------------------------------------\1"



  5.3 Other parameters
  --------------------

   5.3.1 #GETNODE      <TD's getnode-cmd>


   5.3.2 #SHOWNL       <TD's shownl-cmd>


   5.3.3 #NODELIST     <domain> <nodelist-name>

    This is needed for searching the *EC's from your nodelist(s). Multiple lines
    are possible.





 6. Acknowledgements
 ===================

  Pino Aliberti     For his EXCELLENT Mail Manager! For  implementing nearly all
                    I wanted (this was much work I think and delayed the release
                    of MM for some  month ;-)) For  our hard but fair  fights in
                    MMBETA and at least for  the nice note  about me in the docs
                    8^))))










  _  o         Robert Hofmann         2:2490/1015@FidoNet   37:108/220@TrekNet
 |<)_/#                              39:171/101@AmigaNet   107:1805/230@TrekNet
 TT  <T  robert@next.amistep.osn.de  56:63/201@XNet        213:314/9127@XCessNet

