X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FContact%2FSelector.php;h=857868fee313c3e8b075ec712882490c481a10a3;hb=bada0f6668a8f2b1dd3210b7ecfa81db50e9f76d;hp=344820c82ad88bd68b52110de11d1761934bdde9;hpb=997a3533bdaf41983a13c27b078f64bca12436fb;p=civicrm-core.git diff --git a/CRM/Contact/Selector.php b/CRM/Contact/Selector.php index 344820c82a..857868fee3 100644 --- a/CRM/Contact/Selector.php +++ b/CRM/Contact/Selector.php @@ -134,9 +134,16 @@ class CRM_Contact_Selector extends CRM_Core_Selector_Base implements CRM_Core_Se /** * Class constructor * + * @param $customSearchClass * @param array $formValues array of form values imported - * @param array $params array of parameters for query - * @param int $action - action of search basic or advanced. + * @param array $params array of parameters for query + * @param null $returnProperties + * @param \const|int $action - action of search basic or advanced. + * + * @param bool $includeContactIds + * @param bool $searchDescendentGroups + * @param string $searchContext + * @param null $contextMenu * * @return CRM_Contact_Selector * @access public @@ -297,7 +304,10 @@ class CRM_Contact_Selector extends CRM_Core_Selector_Base implements CRM_Core_Se /** * getter for array of the parameters required for creating pager. * - * @param + * @param $action + * @param $params + * + * @internal param $ * @access public */ function getPagerParams($action, &$params) { @@ -310,6 +320,12 @@ class CRM_Contact_Selector extends CRM_Core_Selector_Base implements CRM_Core_Se } //end of function + /** + * @param null $action + * @param null $output + * + * @return array + */ function &getColHeads($action = NULL, $output = NULL) { $colHeads = self::_getColumnHeaders(); $colHeads[] = array('desc' => ts('Actions'), 'name' => ts('Action')); @@ -808,6 +824,11 @@ class CRM_Contact_Selector extends CRM_Core_Selector_Base implements CRM_Core_Se return $rows; } + /** + * @param $sort + * + * @return string + */ function buildPrevNextCache($sort) { $cacheKey = 'civicrm search ' . $this->_key; @@ -839,6 +860,9 @@ class CRM_Contact_Selector extends CRM_Core_Selector_Base implements CRM_Core_Se return $cacheKey; } + /** + * @param $rows + */ function addActions(&$rows) { $config = CRM_Core_Config::singleton(); @@ -931,6 +955,9 @@ class CRM_Contact_Selector extends CRM_Core_Selector_Base implements CRM_Core_Se } } + /** + * @param $rows + */ function removeActions(&$rows) { foreach ($rows as $rid => & $rValue) { unset($rValue['contact_type']); @@ -1001,9 +1028,10 @@ SELECT 'civicrm_contact', contact_a.id, contact_a.id, '$cacheKey', contact_a.dis * * @param int $start start for limit clause * @param int $end end for limit clause - * @param $object $sort sort object + * @param $sort * @param string $cacheKey cache key * + * @internal param $object $sort sort object * @return void */ function rebuildPreNextCache($start, $end, $sort, $cacheKey) { @@ -1016,7 +1044,7 @@ SELECT 'civicrm_contact', contact_a.id, contact_a.id, '$cacheKey', contact_a.dis // build insert query, note that currently we build cache for 500 contact records at a time, hence below approach $insertValues = array(); while($dao->fetch()) { - $insertValues[] = "('civicrm_contact', {$dao->contact_id}, {$dao->contact_id}, '{$cacheKey}', '{$dao->sort_name}')"; + $insertValues[] = "('civicrm_contact', {$dao->contact_id}, {$dao->contact_id}, '{$cacheKey}', '" . CRM_Core_DAO::escapeString($dao->sort_name) . "')"; } //update pre/next cache using single insert query @@ -1119,14 +1147,29 @@ SELECT 'civicrm_contact', contact_a.id, contact_a.id, '$cacheKey', contact_a.dis return self::$_columnHeaders; } + /** + * @return CRM_Contact_BAO_Query + */ function &getQuery() { return $this->_query; } + /** + * @return CRM_Contact_DAO_Contact + */ function alphabetQuery() { return $this->_query->searchQuery(NULL, NULL, NULL, FALSE, FALSE, TRUE); } + /** + * @param $params + * @param $action + * @param $sortID + * @param null $displayRelationshipType + * @param string $queryOperator + * + * @return CRM_Contact_DAO_Contact + */ function contactIDQuery($params, $action, $sortID, $displayRelationshipType = NULL, $queryOperator = 'AND') { $sortOrder = &$this->getSortOrder($this->_action); $sort = new CRM_Utils_Sort($sortOrder, $sortID); @@ -1159,6 +1202,11 @@ SELECT 'civicrm_contact', contact_a.id, contact_a.id, '$cacheKey', contact_a.dis return $value; } + /** + * @param $returnProperties + * + * @return array + */ function &makeProperties(&$returnProperties) { $properties = array(); foreach ($returnProperties as $name => $value) {