Index: mollom.admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/mollom/mollom.admin.inc,v
retrieving revision 1.33
diff -u -p -r1.33 mollom.admin.inc
--- mollom.admin.inc	9 Sep 2010 15:05:03 -0000	1.33
+++ mollom.admin.inc	14 Sep 2010 17:20:46 -0000
@@ -311,17 +311,12 @@ function mollom_admin_unprotect_form_sub
 }
 
 /**
- * Menu callback; The blacklist administration page.
- */
-function mollom_admin_blacklist() {
-  drupal_set_title(t('Mollom blacklist'));
-  return drupal_get_form('mollom_admin_blacklist_form');
-}
-
-/**
- * Form builder; Declares the text blacklist form.
+ * Form constructor to configure the blacklist.
+ *
+ * @param $type
+ *   The type of blacklist; i.e., 'spam', 'profanity', or 'unwanted'.
  */
-function mollom_admin_blacklist_form($form, &$form_state) {
+function mollom_admin_blacklist_form($form, &$form_state, $type = 'spam') {
   $form['#tree'] = TRUE;
 
   // Select options and translation of internal values for rendering.
@@ -341,6 +336,9 @@ function mollom_admin_blacklist_form($fo
   $blacklist = (empty($form_state['input']) ? mollom('mollom.listBlacklistText') : array());
   if (is_array($blacklist)) {
     foreach ($blacklist as $id => $entry) {
+      if ($entry['reason'] != $type) {
+        continue;
+      }
       $row = array(
         'context' => array('#markup' => check_plain($contexts[$entry['context']])),
         'text' => array('#markup' => check_plain($entry['text'])),
@@ -351,6 +349,9 @@ function mollom_admin_blacklist_form($fo
         '#type' => 'link',
         '#title' => t('delete'),
         '#href' => 'admin/config/content/mollom/blacklist/delete/' .  base64_encode($entry['text']),
+        '#options' => array(
+          'query' => drupal_get_destination(),
+        ),
       );
       $form['blacklist'][$id] = $row;
     }
@@ -371,7 +372,7 @@ function mollom_admin_blacklist_form($fo
   $form['entry']['reason'] = array(
     '#type' => 'select',
     '#options' => $reasons,
-    '#default_value' => 'spam',
+    '#default_value' => $type,
     '#required' => TRUE,
   );
   $form['entry']['actions'] = array(
Index: mollom.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/mollom/mollom.module,v
retrieving revision 1.75
diff -u -p -r1.75 mollom.module
--- mollom.module	13 Sep 2010 00:17:24 -0000	1.75
+++ mollom.module	14 Sep 2010 17:20:09 -0000
@@ -225,8 +225,33 @@ function mollom_menu() {
   );
   $items['admin/config/content/mollom/blacklist'] = array(
     'title' => 'Blacklist',
-    'description' => 'Configure blacklist.',
-    'page callback' => 'mollom_admin_blacklist',
+    'description' => 'Configure blacklists.',
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('mollom_admin_blacklist_form'),
+    'access arguments' => array('administer mollom'),
+    'type' => MENU_LOCAL_TASK,
+    'file' => 'mollom.admin.inc',
+  );
+  $items['admin/config/content/mollom/blacklist/spam'] = array(
+    'title' => 'Spam',
+    'description' => 'Configure spam blacklist entries.',
+    'type' => MENU_DEFAULT_LOCAL_TASK,
+    'weight' => -10,
+  );
+  $items['admin/config/content/mollom/blacklist/profanity'] = array(
+    'title' => 'Profanity',
+    'description' => 'Configure profanity blacklist entries.',
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('mollom_admin_blacklist_form', 5),
+    'access arguments' => array('administer mollom'),
+    'type' => MENU_LOCAL_TASK,
+    'file' => 'mollom.admin.inc',
+  );
+  $items['admin/config/content/mollom/blacklist/unwanted'] = array(
+    'title' => 'Unwanted',
+    'description' => 'Configure unwanted blacklist entries.',
+    'page callback' => 'drupal_get_form',
+    'page arguments' => array('mollom_admin_blacklist_form', 5),
     'access arguments' => array('administer mollom'),
     'type' => MENU_LOCAL_TASK,
     'file' => 'mollom.admin.inc',
