                           ******************************
                           ** Ignore manager by a_dude **
                           ******************************




- How to contact me
- What is this ignore manager ?
- How do I install it
- How do I uninstall it
- How do I ignore someone ?
- View/edit the ignore list ?
- What is the meaning of the mask types and ignore types ?
- The mask type I want to ignore is not displayed ?
- Troubleshootings



How to contact me
-----------------

For any kind of comment (bug reports, add-on completely sucked, sluggish, worse
coding ever, etc ...), send a mail to armathan@hotmail.com
Or go to www.armathan.cjb.net to see more add-ons and a full script I developped and 
eventual updates.

Or you can find me most of the time on the IrCQNet network (servers irc01.icq.com, 
irc02.icq.com, irc03.icq.com, irc04.icq.com, irc05.icq.com) on channel #web

By the time this add-on is released, it may not yet be case, but you will also find
me on the Cyberchat network (server filo.ebicom.net), room #cyberchat and #the_lounge



What is this ignore manager ?
-----------------------------

Instead of having to type the command "/ignore [-lrpcntikxu60] <nickname> <type>", 
all the ignore switches and address types are displayed in a dialog and you just need to 
select an address type, set the ignore types and eventually a value for the timer.

You can easily manage the already ignored addresses via another dialog : delete addresses
or update ignore types.


How to install it ?
-------------------

Unzip the file "ignore.zip" to a folder where there is no space in the names of the folders 
to be sure there won't be any problems.  This addon was made on mIRC v5.71, I don't know 
if it will work for lower versions.

Ex:
- "c:\mirc\ignore-manager" or "d:\games\add-ons\ignore-manager" : YES
- "c:\program files\ignore-manager" : NO, because "program files" is made of two words
  "c:\my documents\add-ons\ignore-manager" : NO, because "my documents" is made of two words

Next, launch mIRC and in the command line (where you type your text) of any window, 
type one of the two following command :
1) /load -rs path\ignore.mrc 
--> path is the directory where you unzipped the file "ignore.zip"
--> Ex : /load -rs c:\mIRC\ignore-manager\ignore.mrc

2) //load -rs $findfile(drive,ignore.mrc,1) 
--> drive is c:\ or d:\ or etc (where you unzipped the file "ignore.zip")
--> Ex : //load -rs $findfile(c:\,ignore.mrc,1) 

Answer "Yes" when asked to run initialization commands.



How do I uninstall it ?
------------------------

Type "/uninstall.ignore.manager" (without the quotes), the file will be unloaded and the 
created variables erased.


How do I ignore someone ?
-------------------------

Select a nickname in the nicklist and in the popup, select the item "Ignore >> Add to
ignore list".  Or in a private chat, do the same with the private chat popup.

Once the ignore dialog is displayed : select a mask address on the left, set the ignore
types on the right and maybe set the delay (after the delay expired, the address
you ignored will be automatically removed from the ignore list).

Click on "Ignore" to ignore with the displayed options. 
Click on "Cancel" to just close the ignore dialog.

The default ignore type is set on "channel" when you open the ignore dialog : maybe you
always use the ignore types "notices" and "privates" as well when you ignore someone.  
So select those ignore types and click on "Save settings".  Maybe you use a different 
mask type as the default one.
Next time you open the ignore dialog, your settings will be displayed and you will just 
have to click on "Ignore".

Click on "restore factory settings" to reset the default settings.


View/edit the ignore list ?
---------------------------

In the nicklist or the private chat popup, select the item "Ignore >> View/edit ignore 
list".  Or go in the "commands" menu above and choose "Ignore list".

"Remove button" : select an address and remove it
"Clear all" : clear the ignore list
"Update" : select an address, the ignore types applied to it will appear on the right side.
           You can add/remove ignore types on that address.  When done, click on "Update"

Checkbox "Ignore is active" at the bottom : to enable/disable the ignore feature



What is the meaning of the mask types and ignore types ?
--------------------------------------------------------

mIRC offers 9 mask types : I included them all in the ignore dialog but you will likely
be only using only two kind of mask types, the second and fourth ones.

** What is a mask type ? **

An address is stored like nick!username@address : 
- if you have a *!*@address for example, it means whatever nick and whatever username
          with an address "address".
- if you have a *!*@abg11.network.com : the @abg11.network.com means that the address of 
          the user's ISP is network.com. So if you ignore that user with that mask type 
          (default type the first time you use this addon) and that the users disconnects 
          from his ISP (not just from the IRC server) and reconnects, the user might then 
          receive an address like *!*@dsz.network.com from his ISP (specially if the user 
          is on a dialup connection) and that user won't be ignored anymore.
- if you choose the fourth mask type, you would have *!*@*.network.com, which will ignore 
          all users of that ISP network.com (so you might ignore people you didn't intend 
          to ignore in the first place).  
- if you have *!*blah@*.network.com : it will ignore all people from the ISP "network.com"
          and for which the user name is "blah"


The default mask is the second mask type : it will ignore the user on basis of its exact 
address on IRC and if the user changes from nick, the user will be still ignored.  

You might also considering the 4th mask type but with the risk of ignoring people that 
are from the same ISP as the one you ignored.


** Ignore types **

You can select several types at once and also update them later via the Ignore List.
Privates: no private message (= query).  Although, if you already have a query window 
         open with the user to ignore, you will have to close it for the ignore to 
         take place, otherwise the ignored user can still send you messages via the
         private chat window.
Channel: ignore channel messages from that user.
Notices: ignore notices from that user.
Ctcps: ignore ctcp (ping, time,etc) as well as page messages if you have an away system 
         (page messages are usually sent via ctcp) and other ctcp functions you may have.
Invites: ignore invites to channels from that user. 
Control codes: will strip all the colour/bold/underline codes from the user's messages
         and you will only see plain text from that user (great when your eyes are 
         sore ...).


** Delay **

If enabled, the user will be ignored during the time you specified, after which it will be 
removed from the Ignore List.  If you view the Ignore List before the delay has expired, 
you will see the name of the user in the list.



The mask type I want to ignore is not displayed ?
-------------------------------------------------

Let's say you want to ignore all addresses where the username is "die". For example : 
fekker!die@network.com or Johnny!die@who.com

In the ignore dialog, I only included the 9 mask types offered by mIRC.

You will have to type by hand the command "/ignore *!die@*" (without the quotes) in
whatever window.
You can still use the Ignore List dialog to update its switches or erase this mask address
from the list.



Troubleshootings
----------------

When I open up the ignore dialog to ignore someone, the fields of the mask types are blank.

You must have your IAL (Internal address list --> an mIRC feature) turned on (when you 
install this addon or click on "restore settings", the IAL will be turned on) before 
having joined the channel.

If it was off, either type "/ial on" (without the quotes) in a window or click on 
"restore settings", then part and rejoin the channel where the user you want to ignore is 
to update the IAL.

 