+--------------------------------------------------------------------+
| CiviCRM version 4.7 |
+--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2015 |
+ | Copyright CiviCRM LLC (c) 2004-2016 |
+--------------------------------------------------------------------+
| This file is a part of CiviCRM. |
| |
'tagid' => array(
'name' => 'tag_id',
'title' => ts('Tag'),
+ 'type' => CRM_Utils_Type::T_INT,
'tag' => TRUE,
'operatorType' => CRM_Report_Form::OP_MULTISELECT,
'options' => $contactTags,
'gid' => array(
'name' => 'group_id',
'title' => ts('Group'),
+ 'type' => CRM_Utils_Type::T_INT,
'operatorType' => CRM_Report_Form::OP_MULTISELECT,
'group' => TRUE,
'options' => CRM_Core_PseudoConstant::nestedGroup(),
public function whereClause(&$field, $op, $value, $min, $max) {
$type = CRM_Utils_Type::typeToString(CRM_Utils_Array::value('type', $field));
+
+ // CRM-18010: Ensure type of each report filters
+ if (!$type) {
+ trigger_error('Type is not defined for field ' . $field['name'], E_USER_WARNING);
+ }
$clause = NULL;
switch ($op) {
return;
}
$mapper = CRM_Core_BAO_CustomQuery::$extendsMap;
- $customTables = explode(',', CRM_Core_DAO::singleValueQuery("SELECT GROUP_CONCAT(table_name) FROM civicrm_custom_group"));
+ //CRM-18276 GROUP_CONCAT could be used with singleValueQuery and then exploded,
+ //but by default that truncates to 1024 characters, which causes errors with installs with lots of custom field sets
+ $customTables = array();
+ $customTablesDAO = CRM_Core_DAO::executeQuery("SELECT table_name FROM civicrm_custom_group", CRM_Core_DAO::$_nullArray);
+ while ($customTablesDAO->fetch()) {
+ $customTables[] = $customTablesDAO->table_name;
+ }
foreach ($this->_columns as $table => $prop) {
if (in_array($table, $customTables)) {