Merge pull request #16802 from colemanw/coalesce
[civicrm-core.git] / CRM / Utils / DeprecatedUtils.php
index 3ed6d8f86235bb08c643aa066dedccf50c6022cb..8e62e1e17b21ae2401e7baf6393f54dd1967001f 100644 (file)
@@ -1,34 +1,18 @@
 <?php
 /*
-  +--------------------------------------------------------------------+
-  | CiviCRM version 5                                                  |
-  +--------------------------------------------------------------------+
-  | Copyright CiviCRM LLC (c) 2004-2019                                |
-  +--------------------------------------------------------------------+
-  | This file is a part of CiviCRM.                                    |
-  |                                                                    |
-  | CiviCRM is free software; you can copy, modify, and distribute it  |
-  | under the terms of the GNU Affero General Public License           |
-  | Version 3, 19 November 2007 and the CiviCRM Licensing Exception.   |
-  |                                                                    |
-  | CiviCRM is distributed in the hope that it will be useful, but     |
-  | WITHOUT ANY WARRANTY; without even the implied warranty of         |
-  | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.               |
-  | See the GNU Affero General Public License for more details.        |
-  |                                                                    |
-  | You should have received a copy of the GNU Affero General Public   |
-  | License and the CiviCRM Licensing Exception along                  |
-  | with this program; if not, contact CiviCRM LLC                     |
-  | at info[AT]civicrm[DOT]org. If you have questions about the        |
-  | GNU Affero General Public License or the licensing of CiviCRM,     |
-  | see the CiviCRM license FAQ at http://civicrm.org/licensing        |
-  +--------------------------------------------------------------------+
+ +--------------------------------------------------------------------+
+ | Copyright CiviCRM LLC. All rights reserved.                        |
+ |                                                                    |
+ | This work is published under the GNU AGPLv3 license with some      |
+ | permitted exceptions and without any warranty. For full license    |
+ | and copyright information, see https://civicrm.org/licensing       |
+ +--------------------------------------------------------------------+
  */
 
 /**
  *
  * @package CRM
- * @copyright CiviCRM LLC (c) 2004-2019
+ * @copyright CiviCRM LLC https://civicrm.org/licensing
  */
 
 /*
@@ -271,7 +255,7 @@ function _civicrm_api3_deprecated_add_formatted_param(&$values, &$params) {
   if (isset($values['email_greeting'])) {
     if (!empty($params['email_greeting_id'])) {
       $emailGreetingFilter = [
-        'contact_type' => CRM_Utils_Array::value('contact_type', $params),
+        'contact_type' => $params['contact_type'] ?? NULL,
         'greeting_type' => 'email_greeting',
       ];
       $emailGreetings = CRM_Core_PseudoConstant::greeting($emailGreetingFilter);
@@ -287,7 +271,7 @@ function _civicrm_api3_deprecated_add_formatted_param(&$values, &$params) {
   if (isset($values['postal_greeting'])) {
     if (!empty($params['postal_greeting_id'])) {
       $postalGreetingFilter = [
-        'contact_type' => CRM_Utils_Array::value('contact_type', $params),
+        'contact_type' => $params['contact_type'] ?? NULL,
         'greeting_type' => 'postal_greeting',
       ];
       $postalGreetings = CRM_Core_PseudoConstant::greeting($postalGreetingFilter);
@@ -302,7 +286,7 @@ function _civicrm_api3_deprecated_add_formatted_param(&$values, &$params) {
   if (isset($values['addressee'])) {
     if (!empty($params['addressee_id'])) {
       $addresseeFilter = [
-        'contact_type' => CRM_Utils_Array::value('contact_type', $params),
+        'contact_type' => $params['contact_type'] ?? NULL,
         'greeting_type' => 'addressee',
       ];
       $addressee = CRM_Core_PseudoConstant::addressee($addresseeFilter);
@@ -879,10 +863,15 @@ function _civicrm_api3_deprecated_activity_buildmailparams($result, $activityTyp
   $params['activity_date_time'] = $result['date'];
   $params['details'] = $result['body'];
 
-  for ($i = 1; $i <= 5; $i++) {
+  $numAttachments = Civi::settings()->get('max_attachments_backend') ?? CRM_Core_BAO_File::DEFAULT_MAX_ATTACHMENTS_BACKEND;
+  for ($i = 1; $i <= $numAttachments; $i++) {
     if (isset($result["attachFile_$i"])) {
       $params["attachFile_$i"] = $result["attachFile_$i"];
     }
+    else {
+      // No point looping 100 times if there's only one attachment
+      break;
+    }
   }
 
   return $params;