Index: modules/filter.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/filter.module,v
retrieving revision 1.49
diff -u -r1.49 filter.module
--- modules/filter.module	3 Jan 2005 01:09:02 -0000	1.49
+++ modules/filter.module	19 Jan 2005 15:15:53 -0000
@@ -904,6 +904,7 @@
   $group .= form_textfield(t('Allowed HTML tags'), "allowed_html_$format", variable_get("allowed_html_$format", '<a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>'), 64, 255, t('If "Strip tags" is selected, optionally specify tags which should not be stripped. Javascript event attributes are always stripped.'));
   $group .= form_checkbox(t('Display HTML help'), "filter_html_help_$format", 1, variable_get("filter_html_help_$format", 1), t('If enabled, Drupal will display some basic HTML help in the long filter tips.'));
   $group .= form_radios(t('HTML style attributes'), "filter_style_$format", variable_get("filter_style_$format", FILTER_STYLE_STRIP), array(FILTER_STYLE_ALLOW => t('Allowed'), FILTER_STYLE_STRIP => t('Removed')), t('If "Strip tags" is selected, you can choose whether "STYLE" attributes are allowed or removed from input.'));
+  $group .= form_checkbox(t('Add rel="nofollow" to links'), "filter_html_nofollow_$format", 1, variable_get("filter_html_nofollow_$format", FALSE), t('If enabled, Drupal will add rel="nofollow" to all links, as a measure to reduce the effectiveness of spam content.'));
   $output .= form_group(t('HTML filter'), $group);
 
   return $output;
@@ -927,6 +928,10 @@
     $text = drupal_specialchars($text);
   }
 
+  if (variable_get("filter_html_nofollow_$format", 0)) {
+    $text = preg_replace('/<a([^>]+)>/i', '<a\\1 rel="nofollow">',$text);
+  }
+  
   return trim($text);
 }
 
