CRM-10551: Fix undefined index test failures
authorJKingsnorth <john@johnkingsnorth.co.uk>
Mon, 16 Mar 2015 16:00:51 +0000 (16:00 +0000)
committerJKingsnorth <john@johnkingsnorth.co.uk>
Mon, 16 Mar 2015 16:00:51 +0000 (16:00 +0000)
CRM/Contact/BAO/Contact.php
CRM/Core/BAO/Website.php

index bfef9229e9ad998d6b8f77ea16752be6c58c5edc..e42726bd7df793a5629e7861d9092d2b9f0fcb54 100644 (file)
@@ -363,8 +363,10 @@ class CRM_Contact_BAO_Contact extends CRM_Contact_DAO_Contact {
       $contact->$name = $value;
     }
 
-    //add website
-    CRM_Core_BAO_Website::create($params, $contact->id);
+    // Process website(s) if present in params
+    if (!empty($params['website'])) {
+      CRM_Core_BAO_Website::create($params, $contact->id);
+    }
 
     //get userID from session
     $session = CRM_Core_Session::singleton();
index f9629e0324c003c51011e4b3e4272362f795d03a..3de574495330121ed99e9aa064917c851973c80b 100644 (file)
@@ -70,18 +70,16 @@ class CRM_Core_BAO_Website extends CRM_Core_DAO_Website {
    */
   public static function create(&$params, $contactID) {
 
+    if (empty($params['website'])) {
+      return FALSE;
+    }
+
     // CRM-10551
     // Use updateBlankLocInfo to overwrite blanked values of matching type
     $updateBlankLocInfo = CRM_Utils_Array::value('updateBlankLocInfo', $params, FALSE);
 
-    // Get the websites submitted in the form
+    // Get websites submitted in the form, and already on the Contact
     $submitted_websites = $params['website'];
-
-    if (empty($submitted_websites)) {
-      return FALSE;
-    }
-
-    // Get the websites currently on the Contact
     $existing_websites = self::allWebsites($contactID);
 
     // For each website submitted on the form