--- spam.module	2005-04-17 19:11:33.000000000 -0700
+++ /var/www/drupal-cvs/modules/spam.module	2005-06-12 16:02:33.806823611 -0700
@@ -66,13 +66,29 @@ function spam_help($section) {
       break;
     case 'admin/spam':
     case 'admin/spam/statistics':
-      $output = t('<p>The spam module provides an automatic mechanism for detecting and dealing with unwanted spam.  It is able to filter comments and nodes.  Spam is content posted to your site that is unrelated to the current topic, usually either advertising a product or including links to an external website in the hopes of increasing that website\'s visibility in search engines.</p><p>Configure the spam module at '. l(t('administer &raquo; settings &raquo; spam'), 'admin/settings/spam') .'.  View all comment spam at '. l(t('administer &raquo comments &raquo; list &raquo spam'), 'admin/comment/list/spam') .'.  View all node spam at '. l(t('administer &raquo content &raquo; spam'), 'admin/node/spam') .'.</p>');
+      $output = 
+          t('<p>The spam module provides an automatic mechanism for detecting and dealing with unwanted spam.  It is able to filter comments and nodes.  Spam is content posted to your site that is unrelated to the current topic, usually either advertising a product or including links to an external website in the hopes of increasing that website\'s visibility in search engines.</p>
+
+<p>You can: 
+<ul>
+<li>Configure the spam module at <a href="%ref>%admin_spam">administer &raquo; settings &raquo; spam</a></li>
+<li>View all comment spam at <a href="%admin_comment_spam">administer &raquo; comments &raquo; list &raquo; spam</a></li>
+<li>View all node spam at <a href="%admin_node_spam">administer &raquo; content &raquo; spam</a></li>
+</ul>
+',
+
+            array(
+                  '%admin_spam' => url('admin/settings/spam'),
+                  '%admin_comment_spam' => url('admin/comment/list/spam'),
+                  '%admin_node_spam' => url('admin/node/spam')
+                  )
+);
       break;
     case 'admin/spam/custom':
       $output = t('<p>Define words, phrases and regular expressions to be tested against new content on your site.  If your custom filter matches, you can cause this to increase or decrease the probability that the given content is spam.  For example, if a comment about "viagra" is completely out of place on your site you could create a custom filter such that any comment with the word "viagra" in it would always be marked as spam, no matter what the Bayesian filter rates it.</p>');
       break;
     case 'admin/spam/urls':
-      $output = t('<p>They Bayesian filter automatically learns spammer domain names.  Any new comment or other content containing one of the domain names listed below will be automatically marked as spam.  For example, if "spam.com" is listed below, a new comment containing the text "http://spam.com/great/deals" will be marked as spam.  In addition to automatically learning spammer domains, you can also manually add known spammer domains below.</p><p>It is possible to instead block spammer domains by adding an appropriate "custom filter" at %custom, however the big advantage of "URL filters" is that they are automatically learned using Bayesian logic.', array('%custom' => l(t('administer &raquo spam &raquo customer filters'), 'admin/spam/custom')));
+        $output = t('<p>They Bayesian filter automatically learns spammer domain names.  Any new comment or other content containing one of the domain names listed below will be automatically marked as spam.  For example, if "spam.com" is listed below, a new comment containing the text "http://spam.com/great/deals" will be marked as spam.  In addition to automatically learning spammer domains, you can also manually add known spammer domains below.</p><p>It is possible to instead block spammer domains by adding an appropriate "custom filter" at <a href="%custom">administer &raquo; spam &raquo; custom filters</a>, however the big advantage of "URL filters" is that they are automatically learned using Bayesian logic.', array('%custom' => url('admin/spam/custom')));
       break;
     case 'admin/help#spam':
       $output = t("
@@ -81,16 +97,26 @@ function spam_help($section) {
       <p>Spam is detected with Bayesian logic.  Essentially, all new content is broken into individual words.  These words are then looked up in a database table to check if we've seen them before.  If most of the words that we have seen before more often in spam content than non-spam conent, then there is a high probability that this new content is also spam.  If new content has a high enough probability of being spam, the module can take automatic action, such as unpublishing the content and notifying the website administrator.</p>
       <p>To begin, the module has no knowledge of what is spam and what is not spam.  Thus, it will assume that all new content is not spam.  When you get your first spam posting, you will need to click 'mark as spam' to teach the Bayesian filter that it made a mistake.  The content will then be broken into individual words, and the words will be stored in the database to be used for detecting future spam.  You will have to continue teaching the Bayesian filter with a couple hundred examples before it will begin to consistently detect spam automatically.</p>
       <p><b>Configuration</b><br />
-      The spam module can be configured at ". l(t('administer &raquo; settings &raquo; spam'), 'admin/settings/spam') .".  By default, only comments will be filtered.  However, you are able to enable content filtering as well.  Each node type supported by your website will be listed on the spam configuration page, allowing you to for example filter forum posts but not stories.</p>
+      The spam module can be configured at <a href=\"%admin_settings_spam\">administer &raquo; settings &raquo; spam</a>.  By default, only comments will be filtered.  However, you are able to enable content filtering as well.  Each node type supported by your website will be listed on the spam configuration page, allowing you to for example filter forum posts but not stories.</p>
       <p>The next configuration section provides automatic actions for the module to take when it detects spam.  For example, if you wish for spam to be automatically unpublished when detected, click 'Automatically unpublish spam'.  If you wish to send a notification email to the site administrator, click 'Notify admin when spam detected'.</p>
       <p>The rest of the options are related to the Bayesian logic, and are best left in their default configurations, unless you feel very confident that you know what you're doing.</p>
       <p><b>Permissions</b><br />
-      The spam module provides to permissions that can be configured at ". l(t('administer &raquo; user &raquo; configure &raquo; permissions'), 'admin/user/configure/permission') .".  The 'administer spam rating' permisison allows a user to see whether or not conent is rated as spam.  The 'administer spam rating' permissions allows a user to teach the Bayesian filter, providing links that say 'mark as spam', and 'mark as not spam'.</p>
+      The spam module provides to permissions that can be configured at <a href=\"%admin_access\">administer &raquo; access control</a>.  The 'administer spam rating' permisison allows a user to see whether or not conent is rated as spam.  The 'administer spam rating' permissions allows a user to teach the Bayesian filter, providing links that say 'mark as spam', and 'mark as not spam'.</p>
       <p><b>Spam</b><br />
-      The spam module adds links to any site content that is being filtered.  The links are only visible to users with the proper permissions (explained above).  Additionally, a complete listing of all spam comments on the website can be viewed at ". l(t('administer &raquo; comments &raquo; spam'), 'admin/comment/list/spam') .".  A complete listing of all spam posts can be viewed at ". l(t('administer &raquo content &raquo; spam'), 'admin/node/spam') ."</p>
+      The spam module adds links to any site content that is being filtered.  The links are only visible to users with the proper permissions (explained above).  Additionally, a complete listing of all spam comments on the website can be viewed at <a href=\"%admin_comment_spam\">administer &raquo; comments &raquo; spam </a>.  A complete listing of all spam posts can be viewed at <a href=\"%admin_node_spam\">administer &raquo; content &raquo; spam</a>.</p>
       <p><b>Background</b><br />
-      This module was inspired by my experiences with the <a href='http://spamassassin.apache.org/'>Spamassassin</a> mail filter.  For actual implementation, I referred to Paul Graham's excellent papers, <a href='http://www.paulgraham.com/spam.html'>A Plan For Spam</a> and <a href='http://www.paulgraham.com/better.html'>Better Bayesian Filtering</a>.  Further enhancements and ideas were also inspired by Bill Yerazunis' <a href='http://crm114.sourceforge.net/'>CRM114</a>, especially his paper 'The Spam-Filtering Accuracy Plateau at 99.9% Accuracy'.</p>
-");
+      This module was inspired by my experiences with the <a href='%spamassassin'>Spamassassin</a> mail filter.  For actual implementation, I referred to Paul Graham's excellent papers, <a href='%paulgraham_1'>A Plan For Spam</a> and <a href='%paulgraham_2'>Better Bayesian Filtering</a>.  Further enhancements and ideas were also inspired by Bill Yerazunis' <a href='%crm114'>CRM114</a>, especially his paper 'The Spam-Filtering Accuracy Plateau at 99.9\% Accuracy'.</p>", 
+                  array(
+                        '%admin_settings_spam' => url('admin/settings/spam'),
+                        '%admin_access' => url('admin/access'),
+                        '%admin_comment_spam' => url('admin/comment/list/spam'),
+                        '%admin_node_spam' => url('admin/node/spam'),
+                        '%spamassassin' => url('http://spamassassin.apache.org/'),
+                        '%paulgraham_1' => url('http://www.paulgraham.com/spam.html'),
+                        '%paulgraham_2' => url('http://www.paulgraham.com/better.html'),
+                        '%crm114' => url('http://crm114.sourceforge.net/')
+                        )
+                  );
   }
   return $output;
 }
@@ -520,7 +546,7 @@ function spam_get_statistics() {
 function spam_admin_urls($edit = array()) {
 
   if (variable_get('spam_filter_urls', 1) == 0) {
-    $group = t('The URL filtering functionality provided by this module is currently disabled.  You can configure URL filters below, but they will not function until you check "Filter spammer URLs" at %url.', array('%url' => l(t('administer &raquo; settings &raquo spam'), 'admin/settings/spam')));
+    $group = t('The URL filtering functionality provided by this module is currently disabled.  You can configure URL filters below, but they will not function until you check "Filter spammer URLs" at %url.', array('%url' => l(t('administer &raquo; settings &raquo; spam'), 'admin/settings/spam')));
     $output = form_group(t('Notice'), $group);
   }
 
