Newer
Older
<?php
/**
* This file contains package_quiqqer_coupons_ajax_getList
*/
use QUI\ERP\Coupons\Handler;
use QUI\Utils\Security\Orthos;
use QUI\Utils\Grid;
use QUI\Permissions\Permission;
/**
* Get list of CouponCodes
*
* @param array $searchParams
* @return array
*/
QUI::$Ajax->registerFunction(
'package_quiqqer_coupons_ajax_getList',
function ($searchParams) {
Permission::hasPermission(Handler::PERMISSION_VIEW);
$searchParams = Orthos::clearArray(json_decode($searchParams, true));
$inviteCodes = [];
$Users = QUI::getUsers();
$L = QUI::getLocale();
try {
foreach (Handler::search($searchParams) as $InviteCode) {
$inviteCode = $InviteCode->toArray();
foreach ($inviteCode['usages'] as $k => $usage) {
// User
$User = $Users->get($usage['userId']);
$inviteCode['usages'][$k]['userName'] = $User->getUsername();
// Date
$Date = new DateTime($usage['date']);
$inviteCode['usages'][$k]['date'] = $L->formatDate($Date->getTimestamp());
}
$inviteCodes[] = $inviteCode;
}
} catch (\Exception $Exception) {
QUI\System\Log::writeException($Exception);
QUI::getMessagesHandler()->addSuccess(
QUI::getLocale()->get(
'quiqqer/invitecode',
'message.ajax.general_error'
)
);
return false;
}
$Grid = new Grid($searchParams);
return $Grid->parseResult(
$inviteCodes,
Handler::search($searchParams, true)
);
},