--- simplenews_register/simplenews_register.module.orig	2009-06-19 17:44:37.000000000 -0700
+++ simplenews_register/simplenews_register.module	2009-06-20 03:29:10.000000000 -0700
@@ -93,8 +93,8 @@
     $row = array();
     $row[] = drupal_render($form['simplenews_register_'. $term->tid .'_newsletter']);
     $row[] = drupal_render($form['simplenews_register_'. $term->tid .'_show']);
-    $row[] = drupal_render($form['simplenews_register_'. $term->tid .'_optout']);
     $row[] = drupal_render($form['simplenews_register_'. $term->tid .'_desc']);
+    $row[] = drupal_render($form['simplenews_register_'. $term->tid .'_optout']);
     $row[] = drupal_render($form['simplenews_register_'. $term->tid .'_confirm']);
     $rows[] = $row;
   }
@@ -175,8 +175,10 @@
     case 'update':
       $signing_up = FALSE;
       foreach (taxonomy_get_tree(_simplenews_get_vid()) as $term) {
-        if (variable_get('simplenews_register_'. $term->tid .'_show', TRUE) && !empty($edit['simplenews-'. $term->tid])) {
-          $signing_up = TRUE;
+        if (!empty($edit['simplenews-'. $term->tid])) {
+          if (variable_get('simplenews_register_'. $term->tid .'_show', TRUE)) {
+            $signing_up = TRUE;
+          }
           simplenews_subscribe_user($edit['mail'], $term->tid, variable_get('simplenews_register_'. $term->tid .'_confirm', FALSE));
         }
       }
