*
* @package CRM
* @copyright CiviCRM LLC https://civicrm.org/licensing
- * $Id$
- *
*/
class CRM_Report_Utils_Report {
);
}
else {
- $config = CRM_Core_Config::singleton();
- $args = explode('/', $_GET[$config->userFrameworkURLVar]);
+ $args = explode('/', CRM_Utils_System::currentPath());
// remove 'civicrm/report' from args
array_shift($args);
$params['from'] = '"' . $domainEmailName . '" <' . $domainEmailAddress . '>';
//$domainEmailName;
$params['toName'] = "";
- $params['toEmail'] = CRM_Utils_Array::value('email_to', $instanceInfo);
- $params['cc'] = CRM_Utils_Array::value('email_cc', $instanceInfo);
- $params['subject'] = CRM_Utils_Array::value('email_subject', $instanceInfo);
+ $params['toEmail'] = $instanceInfo['email_to'] ?? NULL;
+ $params['cc'] = $instanceInfo['email_cc'] ?? NULL;
+ $params['subject'] = $instanceInfo['email_subject'] ?? NULL;
if (empty($instanceInfo['attachments'])) {
$instanceInfo['attachments'] = [];
}
$value = NULL;
foreach ($rows as $row) {
foreach ($columnHeaders as $k => $v) {
- $value = CRM_Utils_Array::value($v, $row);
+ $value = $row[$v] ?? NULL;
if (isset($value)) {
// Remove HTML, unencode entities, and escape quotation marks.
- $value = str_replace('"', '""', html_entity_decode(strip_tags($value)));
+ $value = str_replace('"', '""', html_entity_decode(strip_tags($value), ENT_QUOTES | ENT_HTML401));
if (CRM_Utils_Array::value('type', $form->_columnHeaders[$v]) & 4) {
if (CRM_Utils_Array::value('group_by', $form->_columnHeaders[$v]) == 'MONTH' ||
*/
public static function getInstanceID() {
- $config = CRM_Core_Config::singleton();
- $arg = explode('/', $_GET[$config->userFrameworkURLVar]);
+ $arg = explode('/', CRM_Utils_System::currentPath());
- if ($arg[1] == 'report' &&
- CRM_Utils_Array::value(2, $arg) == 'instance'
- ) {
- if (CRM_Utils_Rule::positiveInteger($arg[3])) {
- return $arg[3];
- }
+ if (isset($arg[3]) && $arg[1] == 'report' && $arg[2] == 'instance' && CRM_Utils_Rule::positiveInteger($arg[3])) {
+ return $arg[3];
}
}
* @return string
*/
public static function getInstancePath() {
- $config = CRM_Core_Config::singleton();
- $arg = explode('/', $_GET[$config->userFrameworkURLVar]);
+ $arg = explode('/', CRM_Utils_System::currentPath());
- if ($arg[1] == 'report' &&
- CRM_Utils_Array::value(2, $arg) == 'instance'
- ) {
+ if (isset($arg[3]) && $arg[1] == 'report' && $arg[2] == 'instance') {
unset($arg[0], $arg[1], $arg[2]);
- $path = trim(CRM_Utils_Type::escape(implode('/', $arg), 'String'), '/');
- return $path;
+ return trim(CRM_Utils_Type::escape(implode('/', $arg), 'String'), '/');
}
}
* @return array
*/
public static function processReport($params) {
- $instanceId = CRM_Utils_Array::value('instanceId', $params);
+ $instanceId = $params['instanceId'] ?? NULL;
// hack for now, CRM-8358
$_REQUEST['instanceId'] = $instanceId;
// (e.g., values for 'nll' and 'nnll' ops are blank),
// so store them temporarily and examine below.
$string_values[$basename] = $field_value;
- $op_values[$basename] = CRM_Utils_Array::value("{$basename}_op", $params);
+ $op_values[$basename] = $params["{$basename}_op"] ?? NULL;
}
elseif ($suffix == '_op') {
// These filters can have an effect even without a value