X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FCore%2FBAO%2FTag.php;h=7087a5a456a7f81d414e88c72084efd96609368d;hb=97dcf1d85da27732d7bf7e672ed05d404ce50914;hp=8303bc91359efe60399a77c675d06fbb0b7e8a75;hpb=a3f4e935bf754b457d8e20e80fb913b21ab5ef88;p=civicrm-core.git diff --git a/CRM/Core/BAO/Tag.php b/CRM/Core/BAO/Tag.php index 8303bc9135..7087a5a456 100644 --- a/CRM/Core/BAO/Tag.php +++ b/CRM/Core/BAO/Tag.php @@ -573,6 +573,17 @@ class CRM_Core_BAO_Tag extends CRM_Core_DAO_Tag { ->execute(); while ($dao->fetch()) { $childTagIDs[$dao->parent_id] = (array) explode(',', $dao->child_id); + $parentID = $dao->parent_id; + if ($searchString) { + // recursively search for parent tag ID and it's child if any + while ($parentID) { + $newParentID = CRM_Core_DAO::singleValueQuery(" SELECT parent_id FROM civicrm_tag WHERE id = $parentID "); + if ($newParentID) { + $childTagIDs[$newParentID] = array($parentID); + } + $parentID = $newParentID; + } + } } // check if child tag has any childs, if found then include those child tags inside parent tag