mirror of
https://github.com/friendica/friendica
synced 2025-04-19 13:50:15 +00:00
extract "BaseApi::checkDefaults()" method for later usage
This commit is contained in:
parent
d21108fe0e
commit
f580d8e5c0
42 changed files with 86 additions and 72 deletions
|
@ -116,7 +116,7 @@ class BaseApi extends BaseModule
|
|||
* @return array request data
|
||||
* @throws \Exception
|
||||
*/
|
||||
public static function getRequest(array $defaults, array $request = null): array
|
||||
public function getRequest(array $defaults, array $request = null): array
|
||||
{
|
||||
$httpinput = HTTPInputData::process();
|
||||
$input = array_merge($httpinput['variables'], $httpinput['files'], $request ?? $_REQUEST);
|
||||
|
@ -126,35 +126,7 @@ class BaseApi extends BaseModule
|
|||
|
||||
unset(self::$request['pagename']);
|
||||
|
||||
$request = [];
|
||||
|
||||
foreach ($defaults as $parameter => $defaultvalue) {
|
||||
if (is_string($defaultvalue)) {
|
||||
$request[$parameter] = $input[$parameter] ?? $defaultvalue;
|
||||
} elseif (is_int($defaultvalue)) {
|
||||
$request[$parameter] = (int)($input[$parameter] ?? $defaultvalue);
|
||||
} elseif (is_float($defaultvalue)) {
|
||||
$request[$parameter] = (float)($input[$parameter] ?? $defaultvalue);
|
||||
} elseif (is_array($defaultvalue)) {
|
||||
$request[$parameter] = $input[$parameter] ?? [];
|
||||
} elseif (is_bool($defaultvalue)) {
|
||||
$request[$parameter] = in_array(strtolower($input[$parameter] ?? ''), ['true', '1']);
|
||||
} else {
|
||||
Logger::notice('Unhandled default value type', ['parameter' => $parameter, 'type' => gettype($defaultvalue)]);
|
||||
}
|
||||
}
|
||||
|
||||
foreach ($input ?? [] as $parameter => $value) {
|
||||
if ($parameter == 'pagename') {
|
||||
continue;
|
||||
}
|
||||
if (!in_array($parameter, array_keys($defaults))) {
|
||||
Logger::notice('Unhandled request field', ['parameter' => $parameter, 'value' => $value, 'command' => DI::args()->getCommand()]);
|
||||
}
|
||||
}
|
||||
|
||||
Logger::debug('Got request parameters', ['request' => $request, 'command' => DI::args()->getCommand()]);
|
||||
return $request;
|
||||
return $this->checkDefaults($defaults, $input);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue