From 03cf2a22fe227633cf901dc1d9cf1024b8d07b59 Mon Sep 17 00:00:00 2001 From: steckbrief Date: Sat, 25 Nov 2017 23:30:49 +0100 Subject: Initial commit --- functions.common.inc.php | 40 +++++++++++++ functions.http.inc.php | 145 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 185 insertions(+) create mode 100644 functions.common.inc.php create mode 100644 functions.http.inc.php diff --git a/functions.common.inc.php b/functions.common.inc.php new file mode 100644 index 0000000..5be37b6 --- /dev/null +++ b/functions.common.inc.php @@ -0,0 +1,40 @@ + diff --git a/functions.http.inc.php b/functions.http.inc.php new file mode 100644 index 0000000..234e404 --- /dev/null +++ b/functions.http.inc.php @@ -0,0 +1,145 @@ + $data]; + } + + setContentType('application/json'); + + sendHttpReturnCodeAndMessage($code, json_encode($data)); +} + +function sendHttpReturnCodeAndMessage($code, $text = '') { + http_response_code($code); + exit($text); +} + +function setContentType($contentType) { + header('Content-Type: '.$contentType); +} + +function getHeaderExtensionValue($headerName) { + $headerName = strtoupper($headerName); + if (!startsWith('HTTP_X_') { + if (!startsWith('HTTP_') { + $headerName = str_replace('HTTP_', 'HTTP_X_', $headerName); + } else { + $headerName = 'HTTP_X_'.$headerName; + } + } + + return getHeaderValue($headerName); +} + +function getHeaderValue($headerName) { + $headerName = strtoupper($headerName); + if (!startsWith('HTTP_') { + $headerName = 'HTTP_'.$headerName; + } + + return $_SERVER[$headerName]; +} + +function getPostParameter($parameterName) { + return $_POST[$parameterName]; +} + +function getOptionalPostParameter($parameterName, $default = NULL) { + $parameter = getPostParameter($parameterName); + + return handleOptionalParameter($parameter, $default); +} + +function getMandatoryPostParameter($parameterName, $message = '', $json = false) { + $parameter = getPostParameter($parameterName); + + return handleMandatoryParameter($parameter, $message, $json); +} + +function getGetParameter($parameterName) { + return $_GET[$parameterName]; +} + +function getOptionalGetParameter($parameterName, $default = NULL) { + $parameter = getPostParameter($parameterName); + + return handleOptionalParameter($parameter, $default); +} + +function getMandatoryGetParameter($parameterName, $message = '', $json = false) { + $parameter = getGetParameter($parameterName); + + return handleMandatoryParameter($parameter, $message, $json); +} + +function handleOptionalParameter($parameter, $default) { + if (!isset($parameter) || is_null($parameter) || empty($parameter)) { + $parameter = $default; + } + return $parameter; +} + +function handleMandatoryParameter($parameter, $message, $json) { + if (!isset($parameter) || is_null($parameter) || empty($parameter)) { + if (empty($message)) { + if ($json) { + $message = ['msg' => 'Missing parameter.', 'parameters' => ['missing_parameter' => $parameterName]]; + } else { + $message = 'Missing mandatory parameter "'.$parameterName.'".'; + } + } + if (!$json) { + sendHttpReturnCodeAndMessage(400, $message); + } else { + sendHttpReturnCodeAndJson(400, $message); + } + } + return $parameter; +} +?> -- cgit v1.2.3