org.agbu.annualgrantbudgets/CRM/AnnualGrantBudgets/APIWrapper.php

37 lines
1012 B
PHP
Raw Permalink Normal View History

<?php
class CRM_AnnualGrantBudgets_APIWrapper implements API_Wrapper {
/**
* the wrapper contains a method that allows you to alter the parameters of the api request (including the action and the entity)
*/
public function fromApiInput($apiRequest) {
$params = $apiRequest['params'];
if (!empty($params['id'])) {
$ids = explode('_', $params['id']);
if (count($ids) == 2) {
unset($params['id']);
$gBParams = [
'financial_type_id' => $ids[0],
'fiscal_year' => $ids[1],
];
try {
$gBId = civicrm_api3('GrantBudget', 'getvalue', $gBParams + ['return' => 'id']);
$params['id'] = $gBId;
}
catch (CiviCRM_API3_Exception $e) {
$params += $gBParams;
}
$apiRequest['params'] = $params;
}
}
return $apiRequest;
}
/**
* alter the result before returning it to the caller.
*/
public function toApiOutput($apiRequest, $result) {
return $result;
}
}