fix tests

This commit is contained in:
Dennis Eichhorn 2024-04-25 22:53:57 +00:00
parent 378473fb38
commit cf4398ad8a
2 changed files with 28 additions and 2 deletions

View File

@ -905,6 +905,25 @@ final class ApiController extends Controller
return []; return [];
} }
/**
* Validate password update request
*
* @param RequestAbstract $request Request
*
* @return array<string, bool>
*
* @since 1.0.0
*/
private function validateLocalizationUpdate(RequestAbstract $request) : array
{
$val = [];
if (($val['id'] = !$request->hasData('id'))) {
return $val;
}
return [];
}
/** /**
* Api method for modifying account localization * Api method for modifying account localization
* *
@ -920,6 +939,13 @@ final class ApiController extends Controller
*/ */
public function apiSettingsAccountLocalizationSet(RequestAbstract $request, ResponseAbstract $response, array $data = []) : void public function apiSettingsAccountLocalizationSet(RequestAbstract $request, ResponseAbstract $response, array $data = []) : void
{ {
if (!empty($val = $this->validateLocalizationUpdate($request))) {
$response->header->status = RequestStatusCode::R_400;
$this->createInvalidUpdateResponse($request, $response, $val);
return;
}
/** @var \Modules\Admin\Models\Account $account */ /** @var \Modules\Admin\Models\Account $account */
$account = AccountMapper::get() $account = AccountMapper::get()
->with('l11n') ->with('l11n')
@ -929,7 +955,7 @@ final class ApiController extends Controller
$requestAccount = $request->header->account; $requestAccount = $request->header->account;
if ($account->id !== 0 if ($account->id !== 0
&& $requestAccount !== $account->id && $requestAccount !== $account->id
&& !$this->app->accountManager->get($account->id)->hasPermission( && !$this->app->accountManager->get($requestAccount)->hasPermission(
PermissionType::MODIFY, PermissionType::MODIFY,
$this->app->unitId, $this->app->unitId,
$this->app->appId, $this->app->appId,

View File

@ -118,7 +118,7 @@ trait ApiControllerSettingsTrait
$response = new HttpResponse(); $response = new HttpResponse();
$request = new HttpRequest(); $request = new HttpRequest();
$request->header->account = 2; $request->header->account = 3;
$request->setData('id', 1); $request->setData('id', 1);
$this->module->apiSettingsAccountLocalizationSet($request, $response); $this->module->apiSettingsAccountLocalizationSet($request, $response);