--fixes for HR-344,changes to retrieve caseId based on case_type
authorDivya Jose <divya@divya.(none)>
Tue, 29 Apr 2014 14:19:21 +0000 (19:49 +0530)
committerDivya Jose <divya@divya.(none)>
Tue, 29 Apr 2014 14:19:21 +0000 (19:49 +0530)
CRM/Case/BAO/Case.php

index 9878012efcd70f18ee43302dec75843c38496f61..9987e59e715073484e8a2ec2bbf171020378c5b6 100644 (file)
@@ -515,13 +515,18 @@ class CRM_Case_BAO_Case extends CRM_Case_DAO_Case {
    * @access public
    *
    */
-  static function retrieveCaseIdsByContactId($contactID, $includeDeleted = FALSE) {
+  static function retrieveCaseIdsByContactId($contactID, $includeDeleted = FALSE, $caseType = NULL) {
     $query = "
 SELECT ca.id as id
 FROM civicrm_case_contact cc
 INNER JOIN civicrm_case ca ON cc.case_id = ca.id
-WHERE cc.contact_id = %1
 ";
+    if (isset($caseType)) {
+      $query .=
+"INNER JOIN civicrm_option_value cov ON (cov.value = ca.case_type_id)
+INNER JOIN civicrm_option_group cog ON (cog.id = cov.option_group_id and cog.name = 'case_type')
+WHERE cc.contact_id = %1 AND cov.name = '{$caseType}'";
+    }
     if (!$includeDeleted) {
       $query .= " AND ca.is_deleted = 0";
     }