diff --git a/Admin/Install/Application/Shop/Application.php b/Admin/Install/Application/Shop/Application.php index 5d096d2..1621687 100755 --- a/Admin/Install/Application/Shop/Application.php +++ b/Admin/Install/Application/Shop/Application.php @@ -127,7 +127,7 @@ final class Application /* CSRF token OK? */ if ($request->hasData('CSRF') - && !\hash_equals($this->app->sessionManager->get('CSRF'), $request->getDataString('CSRF')) + && !\hash_equals($this->app->sessionManager->data['CSRF'] ?? '', $request->getDataString('CSRF')) ) { $response->header->status = RequestStatusCode::R_403; @@ -153,20 +153,20 @@ final class Application if ($account->id > 0) { $response->header->l11n = $account->l11n; - } elseif ($this->app->sessionManager->get('language') !== null - && $response->header->l11n->language !== $this->app->sessionManager->get('language') + } elseif (isset($this->app->sessionManager->data['language']) + && $response->header->l11n->language !== $this->app->sessionManager->data['language'] ) { $response->header->l11n ->loadFromLanguage( - $this->app->sessionManager->get('language'), - $this->app->sessionManager->get('country') ?? '*' + $this->app->sessionManager->data['language'], + $this->app->sessionManager->data['country'] ?? '*' ); } else { $this->app->setResponseLanguage($request, $response, $this->config); } if (!\in_array($response->header->l11n->language, $this->config['language'])) { - $response->header->l11n->setLanguage($this->app->l11nServer->language); + $response->header->l11n->language = $this->app->l11nServer->language; } $pageView = new ShopView($this->app->l11nManager, $request, $response); diff --git a/Controller/ApiController.php b/Controller/ApiController.php index c8d4511..3795abc 100755 --- a/Controller/ApiController.php +++ b/Controller/ApiController.php @@ -55,6 +55,7 @@ final class ApiController extends Controller public function apiItemFileDownload(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void { // Handle public files + /** @var \Modules\ItemManagement\Models\Item $item */ $item = ItemMapper::get() ->with('files') ->with('files/types') @@ -76,11 +77,13 @@ final class ApiController extends Controller // Handle private files // @todo: this is another example where it would be useful to have clients and items as models in the bill and bill element + /** @var \Modules\ClientManagement\Models\Client $client */ $client = ClientMapper::get() ->where('account', $request->header->account) ->execute(); // @todo: only for sales invoice, currently also for offers + /** @var \Modules\Billing\Models\Bill[] $bills */ $bills = BillMapper::getAll() ->with('elements') ->where('client', $client->id) @@ -93,6 +96,7 @@ final class ApiController extends Controller $elements = $bill->getElements(); foreach ($elements as $element) { + /** @var \Modules\ItemManagement\Models\Item $item */ $item = ItemMapper::get() ->with('files') ->with('files/type')