* Tyler Akins * Brent Bice * (c) 2000 (GNU GPL - see ../../COPYING) * * This plugin filters your inbox into different folders based upon given * criteria. It is most useful for people who are subscibed to mailing lists * to help organize their messages. The argument stands that filtering is * not the place of the client, which is why this has been made a plugin for * SquirrelMail. You may be better off using products such as Sieve or * Procmail to do your filtering so it happens even when SquirrelMail isn't * running. * * If you need help with this, or see improvements that can be made, please * email me directly at the address above. I definately welcome suggestions * and comments. This plugin, as is the case with all SquirrelMail plugins, * is not directly supported by the developers. Please come to me off the * mailing list if you have trouble with it. * * Also view plugins/README.plugins for more information. * */ // Set this to true if you have problems -- check the README file // Note: This doesn't work all of the time (No idea why) // Seems to be related to UW global $UseSeparateImapConnection; $UseSeparateImapConnection = false; // Set this to false if you do not want the user to be able to enable // spam filters global $AllowSpamFilters; $AllowSpamFilters = true; // Set this to a string containing something unique to the line in the // header you want me to find IPs to scan the databases with. For example, // All the email coming IN from the internet to my site has a line in // the header that looks like (all on one line): // Received: [from usw-sf-list1.sourceforge.net (usw-sf-fw2.sourceforge.net // [216.136.171.252]) by firewall.persistence.com (SYSADMIN-antispam // 0.2) with // Since this line indicates the FIRST hop the email takes into my network, // I set my SpamFilters_YourHop to 'by firewall.persistence.com' but any // case-sensitive string will do. You can set it to something found on // every line in the header (like ' ') if you want to scan all IPs in // the header (lots of false alarms here tho). global $SpamFilters_YourHop; $SpamFilters_YourHop = 'by firewall.persistence.com'; // A cache of IPs we've already checked or are known bad boys or good boys // ie. $SpamFilters_DNScache["210.54.220.18"] = true; // would tell filters to not even bother doing the DNS queries for that // IP and any email coming from it are SPAM - false would mean that any // email coming from it would NOT be SPAM global $SpamFilters_DNScache; require_once ('../plugins/filters/filters.php'); function squirrelmail_plugin_init_filters() { global $squirrelmail_plugin_hooks; global $mailbox, $imap_stream, $imapConnection; $squirrelmail_plugin_hooks['left_main_before']['filters'] = 'start_filters'; if ($mailbox == 'INBOX') $squirrelmail_plugin_hooks["right_main_after_header"]['filters'] = 'start_filters'; $squirrelmail_plugin_hooks['options_register']['filters'] = 'squirrelmail_plugin_register'; } function squirrelmail_plugin_register() { global $optionpages; $optionpages[] = array( 'name' => _("Message Filters"), 'url' => '../plugins/filters/options.php', 'desc' => _("Filtering enables messages with different criteria to be automatically filtered into different folders for easier organization."), 'js' => false ); } ?>