<?php
-
/*
+--------------------------------------------------------------------+
- | CiviCRM version 4.5 |
+ | CiviCRM version 4.6 |
+--------------------------------------------------------------------+
| Copyright CiviCRM LLC (c) 2004-2014 |
+--------------------------------------------------------------------+
| GNU Affero General Public License or the licensing of CiviCRM, |
| see the CiviCRM license FAQ at http://civicrm.org/licensing |
+--------------------------------------------------------------------+
-*/
+ */
/**
*
);
/**
- *
- */
- /**
- *
*/
- function __construct() {
+ public function __construct() {
$this->_columns = array(
- 'civicrm_contact' => array(
- 'dao' => 'CRM_Contact_DAO_Contact',
- 'fields' => array(
- 'id' => array(
- 'no_display' => TRUE,
- 'required' => TRUE,
- ),
- 'display_name' => array(
- 'title' => ts('Contact Name'),
- 'required' => TRUE,
- 'no_repeat' => TRUE,
- ),
- 'first_name' => array(
- 'title' => ts('First Name'),
- ),
- 'last_name' => array(
- 'title' => ts('Last Name'),
- ),
- 'contact_type' => array(
- 'title' => ts('Contact Type'),
- ),
- 'contact_sub_type' => array(
- 'title' => ts('Contact Subtype'),
- ),
+ 'civicrm_contact' => array(
+ 'dao' => 'CRM_Contact_DAO_Contact',
+ 'fields' => array(
+ 'id' => array(
+ 'no_display' => TRUE,
+ 'required' => TRUE,
+ ),
+ 'display_name' => array(
+ 'title' => ts('Contact Name'),
+ 'required' => TRUE,
+ 'no_repeat' => TRUE,
+ ),
+ 'first_name' => array(
+ 'title' => ts('First Name'),
+ ),
+ 'last_name' => array(
+ 'title' => ts('Last Name'),
+ ),
+ 'contact_type' => array(
+ 'title' => ts('Contact Type'),
+ ),
+ 'contact_sub_type' => array(
+ 'title' => ts('Contact Subtype'),
),
),
- )
- + $this->getAddressColumns()
- + array(
- 'civicrm_contribution' => array(
- 'dao' => 'CRM_Contribute_DAO_Contribution',
- 'fields' => array(
- 'total_amount' => array(
- 'title' => ts('Amount Statistics'),
- 'required' => TRUE,
- 'statistics' => array(
- 'sum' => ts('Aggregate Amount'),
- 'count' => ts('Donations'),
- 'avg' => ts('Average'),
- ),
- ),
- 'currency' => array(
- 'required' => TRUE,
- 'no_display' => TRUE,
+ ),
+ );
+ $this->_columns += $this->getAddressColumns();
+ $this->_columns += array(
+ 'civicrm_contribution' => array(
+ 'dao' => 'CRM_Contribute_DAO_Contribution',
+ 'fields' => array(
+ 'total_amount' => array(
+ 'title' => ts('Amount Statistics'),
+ 'required' => TRUE,
+ 'statistics' => array(
+ 'sum' => ts('Aggregate Amount'),
+ 'count' => ts('Donations'),
+ 'avg' => ts('Average'),
),
),
- 'filters' => array(
- 'receive_date' => array(
- 'default' => 'this.year',
- 'operatorType' => CRM_Report_Form::OP_DATE,
- ),
- 'currency' => array(
- 'title' => 'Currency',
- 'operatorType' => CRM_Report_Form::OP_MULTISELECT,
- 'options' => CRM_Core_OptionGroup::values('currencies_enabled'),
- 'default' => NULL,
- 'type' => CRM_Utils_Type::T_STRING,
- ),
- 'total_range' => array(
- 'title' => ts('Show no. of Top Donors'),
- 'type' => CRM_Utils_Type::T_INT,
- 'default_op' => 'eq',
- ),
- 'financial_type_id' => array(
- 'name' => 'financial_type_id',
- 'title' => ts('Financial Type'),
- 'operatorType' => CRM_Report_Form::OP_MULTISELECT,
- 'options' => CRM_Contribute_PseudoConstant::financialType(),
- ),
- 'contribution_status_id' => array(
- 'title' => ts('Contribution Status'),
- 'operatorType' => CRM_Report_Form::OP_MULTISELECT,
- 'options' => CRM_Contribute_PseudoConstant::contributionStatus(),
- 'default' => array(1),
- ),
+ 'currency' => array(
+ 'required' => TRUE,
+ 'no_display' => TRUE,
),
),
- 'civicrm_email' => array(
- 'dao' => 'CRM_Core_DAO_Email',
- 'fields' => array(
- 'email' => array(
- 'title' => ts('Email'),
- 'default' => TRUE,
- 'no_repeat' => TRUE,
- ),
+ 'filters' => array(
+ 'receive_date' => array(
+ 'default' => 'this.year',
+ 'operatorType' => CRM_Report_Form::OP_DATE,
+ ),
+ 'currency' => array(
+ 'title' => 'Currency',
+ 'operatorType' => CRM_Report_Form::OP_MULTISELECT,
+ 'options' => CRM_Core_OptionGroup::values('currencies_enabled'),
+ 'default' => NULL,
+ 'type' => CRM_Utils_Type::T_STRING,
+ ),
+ 'total_range' => array(
+ 'title' => ts('Show no. of Top Donors'),
+ 'type' => CRM_Utils_Type::T_INT,
+ 'default_op' => 'eq',
+ ),
+ 'financial_type_id' => array(
+ 'name' => 'financial_type_id',
+ 'title' => ts('Financial Type'),
+ 'operatorType' => CRM_Report_Form::OP_MULTISELECT,
+ 'options' => CRM_Contribute_PseudoConstant::financialType(),
+ ),
+ 'contribution_status_id' => array(
+ 'title' => ts('Contribution Status'),
+ 'operatorType' => CRM_Report_Form::OP_MULTISELECT,
+ 'options' => CRM_Contribute_PseudoConstant::contributionStatus(),
+ 'default' => array(1),
),
- 'grouping' => 'email-fields',
),
- 'civicrm_phone' => array(
- 'dao' => 'CRM_Core_DAO_Phone',
- 'fields' => array(
- 'phone' => array(
- 'title' => ts('Phone'),
- 'default' => TRUE,
- 'no_repeat' => TRUE,
- ),
+ ),
+ 'civicrm_email' => array(
+ 'dao' => 'CRM_Core_DAO_Email',
+ 'fields' => array(
+ 'email' => array(
+ 'title' => ts('Email'),
+ 'default' => TRUE,
+ 'no_repeat' => TRUE,
+ ),
+ ),
+ 'grouping' => 'email-fields',
+ ),
+ 'civicrm_phone' => array(
+ 'dao' => 'CRM_Core_DAO_Phone',
+ 'fields' => array(
+ 'phone' => array(
+ 'title' => ts('Phone'),
+ 'default' => TRUE,
+ 'no_repeat' => TRUE,
),
- 'grouping' => 'phone-fields',
),
- );
+ 'grouping' => 'phone-fields',
+ ),
+ );
$this->_groupFilter = TRUE;
$this->_tagFilter = TRUE;
parent::__construct();
}
- function preProcess() {
+ public function preProcess() {
parent::preProcess();
}
- function select() {
+ public function select() {
$select = array();
$this->_columnHeaders = array();
//Headers for Rank column
*
* @return array
*/
- static function formRule($fields, $files, $self) {
+ public static function formRule($fields, $files, $self) {
$errors = array();
$op = CRM_Utils_Array::value('total_range_op', $fields);
if (!in_array($op, array(
'eq',
- 'lte'
+ 'lte',
))
) {
$errors['total_range_op'] = ts("Please select 'Is equal to' OR 'Is Less than or equal to' operator");
return $errors;
}
- function from() {
+ public function from() {
$this->_from = "
FROM civicrm_contact {$this->_aliases['civicrm_contact']} {$this->_aclFrom}
INNER JOIN civicrm_contribution {$this->_aliases['civicrm_contribution']}
$this->addAddressFromClause();
}
- function where() {
+ public function where() {
$clauses = array();
$this->_tempClause = $this->_outerCluase = $this->_groupLimit = '';
foreach ($this->_columns as $tableName => $table) {
}
}
- function groupBy() {
+ public function groupBy() {
$this->_groupBy = "GROUP BY {$this->_aliases['civicrm_contact']}.id, {$this->_aliases['civicrm_contribution']}.currency";
}
- function postProcess() {
+ public function postProcess() {
$this->beginPostProcess();
$this->limit();
-
//set the variable value rank, rows = 0
$setVariable = " SET @rows:=0, @rank=0 ";
CRM_Core_DAO::singleValueQuery($setVariable);
/**
* @param int $groupID
*/
- function add2group($groupID) {
+ public function add2group($groupID) {
if (is_numeric($groupID)) {
$sql = "
/**
* @param int $rowCount
*/
- function limit($rowCount = CRM_Report_Form::ROW_COUNT_LIMIT) {
+ public function limit($rowCount = CRM_Report_Form::ROW_COUNT_LIMIT) {
// lets do the pager if in html mode
$this->_limit = NULL;
}
/**
- * @param $rows
+ * Alter display of rows.
+ *
+ * Iterate through the rows retrieved via SQL and make changes for display purposes,
+ * such as rendering contacts as links.
+ *
+ * @param array $rows
+ * Rows generated by SQL, with an array for each row.
*/
- function alterDisplay(&$rows) {
- // custom code to alter rows
-
+ public function alterDisplay(&$rows) {
$entryFound = FALSE;
$rank = 1;
if (!empty($rows)) {
}
}
}
-}
+}