本文整理汇总了PHP中CRM_Core_BAO_CustomField::getTableName方法的典型用法代码示例。如果您正苦于以下问题:PHP CRM_Core_BAO_CustomField::getTableName方法的具体用法?PHP CRM_Core_BAO_CustomField::getTableName怎么用?PHP CRM_Core_BAO_CustomField::getTableName使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CRM_Core_BAO_CustomField
的用法示例。
在下文中一共展示了CRM_Core_BAO_CustomField::getTableName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: array
/**
* Store and return an array of all active custom fields.
*
* @param string $contactType Contact type
* @param boolean $showAll If true returns all fields (includes disabled fields)
*
* @return array $fields - an array of active custom fields.
*
* @access public
* @static
*/
function &getFields($contactType = 'Individual', $showAll = false)
{
if (!$GLOBALS['_CRM_CORE_BAO_CUSTOMFIELD']['_importFields'] || !CRM_Utils_Array::value($contactType, $GLOBALS['_CRM_CORE_BAO_CUSTOMFIELD']['_importFields'])) {
if (!$GLOBALS['_CRM_CORE_BAO_CUSTOMFIELD']['_importFields']) {
$GLOBALS['_CRM_CORE_BAO_CUSTOMFIELD']['_importFields'] = array();
}
$cfTable = CRM_Core_BAO_CustomField::getTableName();
$cgTable = CRM_Core_DAO_CustomGroup::getTableName();
$extends = '';
if ($contactType) {
if (in_array($contactType, array('Individual', 'Household', 'Organization'))) {
$value = "'" . CRM_Utils_Type::escape($contactType, 'String') . "', 'Contact' ";
} else {
$value = "'" . CRM_Utils_Type::escape($contactType, 'String') . "'";
}
$extends = "AND {$cgTable}.extends IN ( {$value} ) ";
}
$query = "SELECT {$cfTable}.id, {$cfTable}.label,\n {$cgTable}.title,\n {$cfTable}.data_type, {$cfTable}.html_type,\n {$cfTable}.options_per_line,\n {$cgTable}.extends, {$cfTable}.is_search_range\n FROM {$cfTable}\n INNER JOIN {$cgTable}\n ON {$cfTable}.custom_group_id = {$cgTable}.id\n WHERE ";
if (!$showAll) {
$query .= "{$cfTable}.is_active = 1\n AND {$cgTable}.is_active = 1";
} else {
$query .= " 1 ";
}
$query .= " {$extends}\n ORDER BY {$cgTable}.weight, {$cgTable}.title,\n {$cfTable}.weight, {$cfTable}.label";
$crmDAO =& new CRM_Core_DAO();
$crmDAO->query($query);
$result = $crmDAO->getDatabaseResult();
$fields = array();
while (($row = $result->fetchRow()) != null) {
$id = array_shift($row);
$fields[$id] = $row;
}
$GLOBALS['_CRM_CORE_BAO_CUSTOMFIELD']['_importFields'][$contactType] = $fields;
}
// CRM_Core_Error::debug( 's', self::$_importFields );
return $GLOBALS['_CRM_CORE_BAO_CUSTOMFIELD']['_importFields'][$contactType];
}