diff --git a/sites/all/modules/contrib/mailchimp/modules/mailchimp_lists/mailchimp_lists.admin.inc b/sites/all/modules/contrib/mailchimp/modules/mailchimp_lists/mailchimp_lists.admin.inc
index 657f0d9..86001e5 100644
--- a/sites/all/modules/contrib/mailchimp/modules/mailchimp_lists/mailchimp_lists.admin.inc
+++ b/sites/all/modules/contrib/mailchimp/modules/mailchimp_lists/mailchimp_lists.admin.inc
@@ -14,7 +14,7 @@ function mailchimp_lists_overview_page() {
       l(t('Edit'), 'admin/config/services/mailchimp/lists/' . $list->id . '/edit'),
       l(t('Delete'), 'admin/config/services/mailchimp/lists/' . $list->id . '/delete')
     );
-    if ($list->list_type === MAILCHIMP_LISTTYPE_REQUIRED && isset($list->settings['cron']) && $list->settings['cron']) {
+    if ($list->list_type != MAILCHIMP_LISTTYPE_FREEFORM && isset($list->settings['cron']) && $list->settings['cron']) {
       $actions[] = l(t('Queue exsiting'), 'mailchimp/lists/' . $list->id . '/queue_existing');
     }
     $rows[] = array(
@@ -112,7 +112,7 @@ function mailchimp_lists_list_form($form, &$form_state, $list = NULL) {
     '#type' => 'select',
     '#title' => t('Type of list'),
     '#multiple' => FALSE,
-    '#description' => t('Required lists are automatically syncronized with the
+    '#description' => t('Required and optional lists are automatically syncronized with the
       sites users. Optional lists provide a checkbox allowing users to
       subscribe during registration or when updating their account. Free form
       lists, the only type allowed for the Anonymous role, present a signup form
@@ -207,9 +207,9 @@ function mailchimp_lists_list_form($form, &$form_state, $list = NULL) {
     '#description' => t('If this is set, users will be subscribed to the
       required list during cron runs. Otherwise subscription will take place when a user is added/edited.'),
     '#states' => array(
-      // Hide this option for required lists
-      'visible' => array(
-        ':input[name="list_type"]' => array('value' => MAILCHIMP_LISTTYPE_REQUIRED),
+      // Hide this option for freeform lists.
+      'invisible' => array(
+        ':input[name="list_type"]' => array('value' => MAILCHIMP_LISTTYPE_FREEFORM),
       ),
     ),
   );
diff --git a/sites/all/modules/contrib/mailchimp/modules/mailchimp_lists/mailchimp_lists.module b/sites/all/modules/contrib/mailchimp/modules/mailchimp_lists/mailchimp_lists.module
index d07995d..f00b678 100644
--- a/sites/all/modules/contrib/mailchimp/modules/mailchimp_lists/mailchimp_lists.module
+++ b/sites/all/modules/contrib/mailchimp/modules/mailchimp_lists/mailchimp_lists.module
@@ -110,7 +110,7 @@ function mailchimp_lists_user_subscribe_page_access($user) {
  */
 function mailchimp_lists_queue_existing_access($list) {
   $ret = FALSE;
-  if ($list->list_type === MAILCHIMP_LISTTYPE_REQUIRED && $list->settings['cron'] && user_access('administer mailchimp')) {
+  if ($list->list_type != MAILCHIMP_LISTTYPE_FREEFORM && $list->settings['cron'] && user_access('administer mailchimp')) {
     $ret = TRUE;
   }
   return $ret;
@@ -289,7 +289,7 @@ function mailchimp_lists_user_insert(&$edit, $account, $category) {
  */
 function mailchimp_lists_user_delete($account) {
   // unsubscribe a user from all required lists
-  $lists = mailchimp_lists_get_available_lists($account, MAILCHIMP_LISTTYPE_REQUIRED);
+  $lists = mailchimp_lists_get_available_lists($account, array(MAILCHIMP_LISTTYPE_REQUIRED, MAILCHIMP_LISTTYPE_OPTIONAL));
   if (!empty($lists)) {
     $mcapi = mailchimp_get_api_object();
     foreach ($lists as $list) {
@@ -344,7 +344,7 @@ function mailchimp_lists_user_sync($account, $old_email = '', $new_email = '', $
   }
 
   // Add subscriptions if necessary
-  $lists = mailchimp_lists_get_available_lists($account, MAILCHIMP_LISTTYPE_REQUIRED);
+  $lists = mailchimp_lists_get_available_lists($account, array(MAILCHIMP_LISTTYPE_REQUIRED, MAILCHIMP_LISTTYPE_OPTIONAL));
   if (!empty($lists)) {
     $mcapi = mailchimp_get_api_object();
     foreach ($lists as $list) {
