CRM-16063 - Mailing Component - Reset is_default when making a new default
authorTim Otten <totten@civicrm.org>
Fri, 6 Mar 2015 04:38:26 +0000 (20:38 -0800)
committerTim Otten <totten@civicrm.org>
Fri, 6 Mar 2015 04:38:26 +0000 (20:38 -0800)
CRM/Mailing/BAO/Component.php

index 55dd8b35fb3d99492322ec1b1f7d8c056b2ffff6..853dc3454aaadf4c16f9fbe45d053f3396933a5d 100644 (file)
@@ -98,8 +98,13 @@ class CRM_Mailing_BAO_Component extends CRM_Mailing_DAO_Component {
       $component->body_text = CRM_Utils_String::htmlToText(CRM_Utils_Array::value('body_html', $params));
     }
 
-    if ($component->is_default && !empty($id)) {
-      CRM_Core_DAO::executeQuery("UPDATE civicrm_mailing_component SET is_default = 0 WHERE component_type ='{$component->component_type}' AND id <> $id");
+    if ($component->is_default) {
+      if (!empty($id)) {
+        CRM_Core_DAO::executeQuery("UPDATE civicrm_mailing_component SET is_default = 0 WHERE component_type ='{$component->component_type}' AND id <> $id");
+      }
+      else {
+        CRM_Core_DAO::executeQuery("UPDATE civicrm_mailing_component SET is_default = 0 WHERE component_type ='{$component->component_type}'");
+      }
     }
 
     $component->save();