<?php
/*
+--------------------------------------------------------------------+
- | CiviCRM version 4.3 |
+ | CiviCRM version 4.4 |
+--------------------------------------------------------------------+
| Copyright CiviCRM LLC (c) 2004-2013 |
+--------------------------------------------------------------------+
/**
* Function to actually build the form
*
- * @return None
+ * @return void
* @access public
*/
public function preProcess() {
* @access public
*/
static function formRule($values, $files, $self) {
- if (CRM_Utils_Array::value('addMore', $values) || CRM_Utils_Array::value('addBlock', $values)) {
+ if (!empty($values['addMore']) || CRM_Utils_Array::value('addBlock', $values)) {
return TRUE;
}
$fields = self::fields();
$this->_formValues = $this->controller->exportValues($this->_name);
// set the group if group is submitted
- if (CRM_Utils_Array::value('uf_group_id', $this->_formValues)) {
+ if (!empty($this->_formValues['uf_group_id'])) {
$this->set('id', $this->_formValues['uf_group_id']);
}
else {
$this->_formValues['sortByCharacter'] = $this->_sortByCharacter;
}
}
+ else {
+ $this->_sortByCharacter = NULL;
+ }
$this->_params = &$this->convertFormValues($this->_formValues);
$this->_returnProperties = &$this->returnProperties();
}
static function fields() {
- return array_merge(
+ $fields = array_merge(
CRM_Contact_BAO_Contact::exportableFields('All', FALSE, TRUE),
CRM_Core_Component::getQueryFields(),
CRM_Contact_BAO_Query_Hook::singleton()->getFields(),
CRM_Activity_BAO_Activity::exportableFields()
);
+ return $fields;
}
/**
$options = array(
'group' => 'group_contact',
'tag' => 'entity_tag',
- 'country' => 'address',
- 'state_province' => 'address',
- 'gender' => 'contact',
- 'world_region' => 'contact',
- 'individual_prefix' => 'contact',
- 'individual_suffix' => 'contact',
- 'preferred_communication_method' => 'contact',
- 'preferred_language' => 'contact',
'on_hold' => 'yesno',
'is_bulkmail' => 'yesno',
- 'activity_type' => 'activity',
- 'activity_status' => 'activity',
- 'financial_type' => 'contribution',
- 'contribution_page_id' => 'contribution',
- 'contribution_status' => 'contribution',
'payment_instrument' => 'contribution',
'membership_status' => 'membership',
'membership_type' => 'membership',
+ 'member_campaign_id' => 'membership',
+ 'member_is_test' => 'yesno',
+ 'member_is_pay_later' => 'yesno',
+ 'is_override' => 'yesno',
);
- $entities = array('contact', 'activity', 'participant', 'pledge', 'member', 'contribution');
+ $entities = array('contact', 'address', 'activity', 'participant', 'pledge', 'member', 'contribution');
+ CRM_Contact_BAO_Query_Hook::singleton()->alterSearchBuilderOptions($entities, $options);
foreach ($entities as $entity) {
- $fields = civicrm_api($entity, 'getfields', array('version' => 3));
+ $fields = civicrm_api3($entity, 'getfields');
foreach ($fields['values'] as $field => $info) {
- if (!empty($info['options']) || !empty($info['pseudoconstant']) || !empty($info['option_group_id'])) {
+ if (!empty($info['options']) || !empty($info['pseudoconstant']) || !empty($info['option_group_id']) || !empty($info['enumValues'])) {
$options[$field] = $entity;
if (substr($field, -3) == '_id') {
$options[substr($field, 0, -3)] = $entity;