From 4a09688a1b21c04417e8a557e458e629eb6ede45 Mon Sep 17 00:00:00 2001 From: "Hahn Axel (hahn)" <axel.hahn@unibe.ch> Date: Tue, 3 Sep 2024 15:27:23 +0200 Subject: [PATCH] update inc_functions.php --- public_html/deployment/inc_functions.php | 114 +++++++++++++++-------- 1 file changed, 76 insertions(+), 38 deletions(-) diff --git a/public_html/deployment/inc_functions.php b/public_html/deployment/inc_functions.php index 57be339e..e68f0176 100644 --- a/public_html/deployment/inc_functions.php +++ b/public_html/deployment/inc_functions.php @@ -8,10 +8,12 @@ --------------------------------------------------------------------- 2013-11-08 Axel <axel.hahn@iml.unibe.ch> + ... + 2024-09-03 Axel <axel.hahn@unibe.ch> php8 only; added variable types; short array syntax ###################################################################### */ global $aParams; -$aParams = array(); +$aParams = []; // remark: $_SERVER does not exist in CLI @@ -49,7 +51,7 @@ if (isset($_SERVER) && is_array($_SERVER) && array_key_exists("REQUEST_URI", $_S $aParams[$key] = $value; /* force integer params - foreach (array("id") as $sKey) { + foreach (["id"] as $sKey) { if (array_key_exists($sKey, $aParams)) { $aParams[$sKey]=(int)$aParams[$sKey]; } @@ -58,34 +60,45 @@ if (isset($_SERVER) && is_array($_SERVER) && array_key_exists("REQUEST_URI", $_S foreach (array_keys($aParams) as $sKey) { $aParams[$sKey] = is_string($aParams[$sKey]) - ? str_replace(array('\\', "\0", "\n", "\r", "'", '"', "\x1a"), array('\\\\', '\\0', '\\n', '\\r', "\\'", '\\"', '\\Z'), $aParams[$sKey]) + ? str_replace(['\\', "\0", "\n", "\r", "'", '"', "\x1a"], ['\\\\', '\\0', '\\n', '\\r', "\\'", '\\"', '\\Z'], $aParams[$sKey]) : $aParams[$sKey]; } } /** - * get home link as button + * Get home link as button + * + * @global object $oHtml + * + * @param string $sClass css class for the button; default: "btn btn-default" * @return string */ -function aHome($sClass = "btn btn-default") +function aHome(string $sClass = "btn btn-default"): string { global $oHtml; // if (!array_key_exists("prj", $aParams)) return false; - return $oHtml->getLinkButton(array( + return $oHtml->getLinkButton([ 'href' => '/deployment/?', 'icon' => 'overview', 'class' => $sClass, 'label' => t("menu-overview"), - )); + ]); } /** - * get project Home link as button - * @return string + * Get project Home link as button. + * It returns false if no project is selected (GET param "prj" is missing) + * + * @global object $oHtml + * @global array $aParams + * + * @param string $sClass css class for the button; default: "btn btn-default" + * @return bool|string */ -function aPrjHome($sClass = "btn btn-default") +function aPrjHome(string $sClass = "btn btn-default"): bool|string { global $aParams, $oHtml; + if (!array_key_exists("prj", $aParams)) { return false; } @@ -96,51 +109,65 @@ function aPrjHome($sClass = "btn btn-default") require_once("./classes/project.class.php"); $oPrj = new project($aParams["prj"]); - return $oHtml->getLinkButton(array( + return $oHtml->getLinkButton([ 'href' => '/deployment/' . $aParams["prj"] . '/', 'icon' => 'project', 'class' => $sClass, 'label' => $oPrj->getLabel(), - )); + ]); } /** - * get go back link as button + * Get go back link as button + * + * @global object $oHtml + * + * @param string $sClass css class for the button; default: "btn btn-default" * @return string */ -function aGoback($sClass = "btn btn-default") +function aGoback(string $sClass = "btn btn-default"): string { global $oHtml; - return $oHtml->getLinkButton(array( + return $oHtml->getLinkButton([ 'href' => '#', 'onclick' => 'history.back();', 'title' => t("back"), 'icon' => 'back', 'class' => $sClass, 'label' => t("back") - )); + ]); } + /** - * get go top link as button + * Get go top link as button + * + * @global object $oHtml + * + * @param string $sClass css class for the button; default: "scroll-link btn btn-default" * @return string */ -function aGotop($sClass = "scroll-link btn btn-default") +function aGotop($sClass = "scroll-link btn btn-default"): string { global $oHtml; - return $oHtml->getLinkButton(array( + return $oHtml->getLinkButton([ 'href' => '#top', 'class' => $sClass, 'title' => t("gotop"), 'icon' => 'gotop', 'label' => ' ' - )); + ]); } /** - * get array top left navigation + * Get array for top left navigation. + * It is an empty array if no authenticated user was found. + * + * @global object $oHtml + * @global array $aParams + * * @return array */ -function getTopNavLeft($aEmbed = []) +function getTopNavLeft(): array { global $aParams, $oHtml; $aReturn = []; @@ -227,10 +254,14 @@ function getTopNavLeft($aEmbed = []) } /** - * get array top left navigation + * Get array for top right navigation. + * + * @global object $oHtml + * @global array $aParams + * * @return array */ -function getTopNavRight() +function getTopNavRight(): array { global $aParams, $oHtml; $aReturn = []; @@ -273,12 +304,14 @@ function getTopNavRight() } /** - * get h2 headline with action - * @global type $aParams + * Gett h2 headline with action + * + * @global array $aParams + * * @param string $sLinkClass classname for links; default: "" (adds class="btn btn-default") * @return string */ -function getBreadcrumb($sLinkClass = "") +function getBreadcrumb(string $sLinkClass = ""): string { global $aParams, $oHtml; $sReturn = ''; @@ -309,10 +342,10 @@ function getBreadcrumb($sLinkClass = "") } /** - * get version info + * Get version info by detecting a json file in approot * @return string */ -function getVersioninfo() +function getVersioninfo(): string { $sMyRev = ""; @@ -324,19 +357,22 @@ function getVersioninfo() } return ($sMyRev ? $sMyRev . ' @ ' : '') . php_uname("n"); } + /** - * translate function - * @global type $aConfig + * translate function. Get translated text by given key. + * + * @global array $aConfig * @staticvar array $aLang + * * @param string $s text * @return string */ -function t($s) +function t(string $s): string { global $aConfig; - static $aLang = array(); + static $aLang = []; - if (!is_array($aConfig) || !array_key_exists("lang", $aConfig)) { + if (!isset($aConfig["lang"])) { die("ERROR: \$aConfig[\"lang\"] does not exist.\n"); } if (!count($aLang)) { @@ -355,11 +391,13 @@ function t($s) } /** - * enter user and comment - * @global type $aParams - * @return string + * Get html code for a form to enter user and comment + * + * @global array $aParams + * + * @return string The HTML code */ -function enterDeployinfos() +function enterDeployinfos(): string { global $aParams; $sIdUser = "inputUser"; -- GitLab