<?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)); $couponCodes = []; $Users = QUI::getUsers(); $L = QUI::getLocale(); try { foreach (Handler::search($searchParams) as $CouponCode) { $couponCode = $CouponCode->toArray(); foreach ($couponCode['usages'] as $k => $usage) { // User $User = $Users->get($usage['userId']); $couponCode['usages'][$k]['userName'] = $User->getUsername(); // Date $Date = new DateTime($usage['date']); $couponCode['usages'][$k]['date'] = $L->formatDate($Date->getTimestamp()); } $couponCodes[] = $couponCode; } } catch (\Exception $Exception) { QUI\System\Log::writeException($Exception); QUI::getMessagesHandler()->addError( QUI::getLocale()->get( 'quiqqer/coupons', 'message.ajax.general_error' ) ); return false; } $Grid = new Grid($searchParams); return $Grid->parseResult( $couponCodes, Handler::search($searchParams, true) ); }, ['searchParams'], 'Permission::checkAdminUser' );