/** * Get sum query * * @param object &$listModel list model * @param string $label label * * @return string */ protected function getSumQuery(&$listModel, $label = "'calc'") { $db = $listModel->getDb(); $fields = $listModel->getDBFields($this->getTableName(), 'Field'); $name = $this->getElement()->name; $field = JArrayHelper::getValue($fields, $name, false); if ($field !== false && $field->Type == 'time') { $name = $this->getFullName(false, false, false); $table = $listModel->getTable(); $joinSQL = $listModel->_buildQueryJoin(); $whereSQL = $listModel->_buildQueryWhere(); return "SELECT SEC_TO_TIME(SUM(TIME_TO_SEC({$name}))) AS value, {$label} AS label FROM " . $db->quoteName($table->db_table_name) . " {$joinSQL} {$whereSQL}"; } else { return parent::getSumQuery($listModel, $label); } }
/** * find the sum from a set of data * @param object list model * @return string sum result */ protected function getSumQuery(&$listModel, $label = "'calc'") { $fields = $listModel->getDBFields($this->getTableName(), 'Field'); if ($fields[$this->getElement()->name]->Type == 'time') { $name = $this->getFullName(false, false, false); $table = $listModel->getTable(); $joinSQL = $listModel->_buildQueryJoin(); $whereSQL = $listModel->_buildQueryWhere(); return "SELECT SEC_TO_TIME(SUM(TIME_TO_SEC({$name}))) AS value, {$label} AS label FROM `{$table->db_table_name}` {$joinSQL} {$whereSQL}"; } else { return parent::getSumQuery($listModel, $label); } }