. */ namespace SP\Modules\Web\Controllers; use SP\Account\AccountUtil; use SP\Controller\RequestControllerTrait; use SP\Core\SessionUtil; use SP\DataModel\DataModelInterface; use SP\Util\Json; /** * Class ItemsController * * @package SP\Modules\Web\Controllers */ class ItemsController { use RequestControllerTrait; /** * ItemsController constructor. */ public function __construct() { $this->init(); } /** * Devolver las cuentas visibles por el usuario * * @param int $accountId */ public function accountsUserAction($accountId = null) { $outItems = []; foreach (AccountUtil::getAccountsForUser($this->session, $accountId) as $account) { $obj = new \stdClass(); $obj->id = $account->account_id; $obj->name = $account->customer_name . ' - ' . $account->account_name; $outItems[] = $obj; } $this->JsonResponse->setStatus(0); $this->JsonResponse->setData($outItems); $this->JsonResponse->setCsrf(SessionUtil::getSessionKey()); Json::returnJson($this->JsonResponse); } /** * Preparar los elementos para devolverlos * * @param array $items * @return array */ protected function prepareItems(array $items) { $outItems = []; /** @var DataModelInterface $item */ foreach ($items as $item) { $obj = new \stdClass(); $obj->id = $item->getId(); $obj->name = $item->getName(); $outItems[] = $obj; } return $outItems; } }