X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=plugins%2Ffilters%2Fsetup.php;h=96bd4ee25b5c0c1cc9a49ad1253e228ab4e000e9;hp=152afe5bdc1a3a8976981914f69312b067b35cc5;hb=d9a8ac55c4d130846a78c35806e70811e242d6ae;hpb=849bdf42ed7bd7cca68909d2b46869742dfd210e diff --git a/plugins/filters/setup.php b/plugins/filters/setup.php index 152afe5b..96bd4ee2 100644 --- a/plugins/filters/setup.php +++ b/plugins/filters/setup.php @@ -1,85 +1,109 @@ - * 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. - * - */ +/** + * Message and Spam Filter Plugin + * + * Copyright (c) 1999-2002 The SquirrelMail Project Team + * Licensed under the GNU GPL. For full terms see the file 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. + * + * $Id$ + */ - // 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). +/* + * 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; - global $SpamFilters_YourHop; - $SpamFilters_YourHop = 'by firewall.persistence.com'; +/* + * Set this to false if you do not want the user to be able to enable + * spam filters + */ +global $AllowSpamFilters; +$AllowSpamFilters = true; - // 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; +/* + * 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 = ' '; - require_once ("../plugins/filters/filters.php"); +/* + * 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; - function squirrelmail_plugin_init_filters() { - global $squirrelmail_plugin_hooks; - global $mailbox, $imap_stream, $imapConnection; +require_once ('../plugins/filters/filters.php'); - $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_init_filters() { + global $squirrelmail_plugin_hooks; + global $mailbox, $imap_stream, $imapConnection; - function squirrelmail_plugin_register() { - global $optionpages; + $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['optpage_register_block']['filters'] = 'squirrelmail_plugin_optpage_register_block'; +# $squirrelmail_plugin_hooks['special_mailbox']['filters'] = 'filters_special_mailbox'; +} - $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 - ); - } +function filters_special_mailbox( $mb ) { + GLOBAL $data_dir, $username; + + return( $mb == getPref($data_dir, $username, 'filters_spam_folder', 'na' ) ); + +} + +function squirrelmail_plugin_optpage_register_block() { + global $optpage_blocks; + global $AllowSpamFilters; + + $optpage_blocks[] = 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 + ); + + if ($AllowSpamFilters) { + $optpage_blocks[] = array( + 'name' => _("SPAM Filters"), + 'url' => '../plugins/filters/spamoptions.php', + 'desc' => _("SPAM filters allow you to select from various DNS based blacklists to detect junk email in your INBOX and move it to another folder (like Trash)."), + 'js' => false + ); + } +} ?>