CRM-18472: notice fixes
authoryashodha <yashodha.chaku@webaccessglobal.com>
Tue, 14 Jun 2016 06:43:12 +0000 (12:13 +0530)
committeryashodha <yashodha.chaku@webaccessglobal.com>
Tue, 14 Jun 2016 06:43:12 +0000 (12:13 +0530)
----------------------------------------
* CRM-18472: Notice fixes
  https://issues.civicrm.org/jira/browse/CRM-18472

CRM/Case/XMLProcessor/Report.php

index 94d735d299fb24d13e9157906a1f10aeda387b68..c073315e4eb8a1a68afcb2ec44777ac4b899e720 100644 (file)
@@ -63,7 +63,7 @@ class CRM_Case_XMLProcessor_Report extends CRM_Case_XMLProcessor {
     return CRM_Case_Audit_Audit::run($contents, $clientID, $caseID);
   }
 
-  public function &getRedactionRules() {
+  public function getRedactionRules() {
     foreach (array(
                'redactionStringRules',
                'redactionRegexRules',
@@ -844,7 +844,7 @@ LIMIT  1
             array($value['name'] => 'name_' . rand(10000, 100000))
           );
         }
-        $value['name'] = self::redact($value['name'], TRUE, $report->_redactionStringRules);
+        $value['name'] = $report->redact($value['name'], TRUE, $report->_redactionStringRules);
         if (!empty($value['email']) &&
           !array_key_exists($value['email'], $report->_redactionStringRules)
         ) {
@@ -853,7 +853,7 @@ LIMIT  1
           );
         }
 
-        $value['email'] = self::redact($value['email'], TRUE, $report->_redactionStringRules);
+        $value['email'] = $report->redact($value['email'], TRUE, $report->_redactionStringRules);
 
         if (!empty($value['phone']) &&
           !array_key_exists($value['phone'], $report->_redactionStringRules)
@@ -862,40 +862,42 @@ LIMIT  1
             array($value['phone'] => 'phone_' . rand(10000, 100000))
           );
         }
-        $value['phone'] = self::redact($value['phone'], TRUE, $report->_redactionStringRules);
+        $value['phone'] = $report->redact($value['phone'], TRUE, $report->_redactionStringRules);
       }
     }
 
     $caseRoles['client'] = CRM_Case_BAO_Case::getContactNames($caseID);
     if ($isRedact) {
-      if (!array_key_exists($caseRoles['client']['sort_name'], $report->_redactionStringRules)) {
-        $report->_redactionStringRules = CRM_Utils_Array::crmArrayMerge($report->_redactionStringRules,
-          array($caseRoles['client']['sort_name'] => 'name_' . rand(10000, 100000))
-        );
-      }
-      if (!array_key_exists($caseRoles['client']['display_name'], $report->_redactionStringRules)) {
-        $report->_redactionStringRules[$caseRoles['client']['display_name']] = $report->_redactionStringRules[$caseRoles['client']['sort_name']];
-      }
-      $caseRoles['client']['sort_name'] = self::redact($caseRoles['client']['sort_name'], TRUE, $report->_redactionStringRules);
-      if (!empty($caseRoles['client']['email']) &&
-        !array_key_exists($caseRoles['client']['email'], $report->_redactionStringRules)
-      ) {
-        $report->_redactionStringRules = CRM_Utils_Array::crmArrayMerge($report->_redactionStringRules,
-          array($caseRoles['client']['email'] => 'email_' . rand(10000, 100000))
-        );
-      }
-      $caseRoles['client']['email'] = self::redact($caseRoles['client']['email'], TRUE, $report->_redactionStringRules);
+      foreach ($caseRoles['client'] as &$client) {
+        if (!array_key_exists(CRM_Utils_Array::value('sort_name', $client), $report->_redactionStringRules)) {
 
-      if (!empty($caseRoles['client']['phone']) &&
-        !array_key_exists($caseRoles['client']['phone'], $report->_redactionStringRules)
-      ) {
-        $report->_redactionStringRules = CRM_Utils_Array::crmArrayMerge($report->_redactionStringRules,
-          array($caseRoles['client']['phone'] => 'phone_' . rand(10000, 100000))
-        );
+          $report->_redactionStringRules = CRM_Utils_Array::crmArrayMerge($report->_redactionStringRules,
+            array(CRM_Utils_Array::value('sort_name', $client) => 'name_' . rand(10000, 100000))
+          );
+        }
+        if (!array_key_exists(CRM_Utils_Array::value('display_name', $client), $report->_redactionStringRules)) {
+          $report->_redactionStringRules[CRM_Utils_Array::value('display_name', $client)] = $report->_redactionStringRules[CRM_Utils_Array::value('sort_name', $client)];
+        }
+        $client['sort_name'] = $report->redact(CRM_Utils_Array::value('sort_name', $client), TRUE, $report->_redactionStringRules);
+        if (!empty(CRM_Utils_Array::value('email', $client)) &&
+          !array_key_exists(CRM_Utils_Array::value('email', $client), $report->_redactionStringRules)
+        ) {
+          $report->_redactionStringRules = CRM_Utils_Array::crmArrayMerge($report->_redactionStringRules,
+            array(CRM_Utils_Array::value('email', $client) => 'email_' . rand(10000, 100000))
+          );
+        }
+        $client['email'] = $report->redact(CRM_Utils_Array::value('email', $client), TRUE, $report->_redactionStringRules);
+
+        if (!empty(CRM_Utils_Array::value('phone', $client)) &&
+          !array_key_exists(CRM_Utils_Array::value('phone', $client), $report->_redactionStringRules)
+        ) {
+          $report->_redactionStringRules = CRM_Utils_Array::crmArrayMerge($report->_redactionStringRules,
+            array(CRM_Utils_Array::value('phone', $client) => 'phone_' . rand(10000, 100000))
+          );
+        }
+        $client['phone'] = $report->redact(CRM_Utils_Array::value('phone', $client), TRUE, $report->_redactionStringRules);
       }
-      $caseRoles['client']['phone'] = self::redact($caseRoles['client']['phone'], TRUE, $report->_redactionStringRules);
     }
-
     // Retrieve ALL client relationships
     $relClient = CRM_Contact_BAO_Relationship::getRelationship($clientID,
       CRM_Contact_BAO_Relationship::CURRENT,
@@ -911,7 +913,7 @@ LIMIT  1
         if (!array_key_exists($r['display_name'], $report->_redactionStringRules)) {
           $report->_redactionStringRules[$r['display_name']] = $report->_redactionStringRules[$r['name']];
         }
-        $r['name'] = self::redact($r['name'], TRUE, $report->_redactionStringRules);
+        $r['name'] = $report->redact($r['name'], TRUE, $report->_redactionStringRules);
 
         if (!empty($r['phone']) &&
           !array_key_exists($r['phone'], $report->_redactionStringRules)
@@ -920,7 +922,7 @@ LIMIT  1
             array($r['phone'] => 'phone_' . rand(10000, 100000))
           );
         }
-        $r['phone'] = self::redact($r['phone'], TRUE, $report->_redactionStringRules);
+        $r['phone'] = $report->redact($r['phone'], TRUE, $report->_redactionStringRules);
 
         if (!empty($r['email']) &&
           !array_key_exists($r['email'], $report->_redactionStringRules)
@@ -929,7 +931,7 @@ LIMIT  1
             array($r['email'] => 'email_' . rand(10000, 100000))
           );
         }
-        $r['email'] = self::redact($r['email'], TRUE, $report->_redactionStringRules);
+        $r['email'] = $report->redact($r['email'], TRUE, $report->_redactionStringRules);
       }
       if (!array_key_exists($r['id'], $caseRelationships)) {
         $otherRelationships[] = $r;
@@ -949,8 +951,7 @@ LIMIT  1
           $report->_redactionStringRules[$r['display_name']] = $report->_redactionStringRules[$r['sort_name']];
         }
 
-        $r['sort_name'] = self::redact($r['sort_name'], TRUE, $report->_redactionStringRules);
-
+        $r['sort_name'] = $report->redact($r['sort_name'], TRUE, $report->_redactionStringRules);
         if (!empty($r['phone']) &&
           !array_key_exists($r['phone'], $report->_redactionStringRules)
         ) {
@@ -958,7 +959,7 @@ LIMIT  1
             array($r['phone'] => 'phone_' . rand(10000, 100000))
           );
         }
-        $r['phone'] = self::redact($r['phone'], TRUE, $report->_redactionStringRules);
+        $r['phone'] = $report->redact($r['phone'], TRUE, $report->_redactionStringRules);
 
         if (!empty($r['email']) &&
           !array_key_exists($r['email'], $report->_redactionStringRules)
@@ -967,7 +968,7 @@ LIMIT  1
             array($r['email'] => 'email_' . rand(10000, 100000))
           );
         }
-        $r['email'] = self::redact($r['email'], TRUE, $report->_redactionStringRules);
+        $r['email'] = $report->redact($r['email'], TRUE, $report->_redactionStringRules);
       }
     }