X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=boot.php;h=9d72863cc83a3b98392f4de5f8c902a2acb5c228;hb=458981f75cff2427976c9abc787eadf8e9e6267f;hp=f3d1f6f649eb511050002de2bab0d4eeb1dd6526;hpb=ea4e772b1e776876c40e30c67f30e6c35cf7d3aa;p=friendica.git diff --git a/boot.php b/boot.php index f3d1f6f649..9d72863cc8 100644 --- a/boot.php +++ b/boot.php @@ -341,12 +341,13 @@ function get_app() /** * @brief Multi-purpose function to check variable state. * - * Usage: x($var) or $x($array, 'key') + * Usage: x($var) or x($array, 'key') * * returns false if variable/key is not set * if variable is set, returns 1 if has 'non-zero' value, otherwise returns 0. * e.g. x('') or x(0) returns 0; * + * @deprecated since version 2018.12 * @param string|array $s variable to check * @param string $k key inside the array to check * @@ -383,13 +384,12 @@ function x($s, $k = null) * - defaults($var, $default) * - defaults($array, 'key', $default) * + * @param array $args * @brief Returns a defaut value if the provided variable or array key is falsy - * @see x() * @return mixed */ -function defaults() { - $args = func_get_args(); - +function defaults(...$args) +{ if (count($args) < 2) { throw new BadFunctionCallException('defaults() requires at least 2 parameters'); } @@ -400,16 +400,15 @@ function defaults() { throw new BadFunctionCallException('defaults($arr, $key, $def) $key is null'); } - $default = array_pop($args); + // The default value always is the last argument + $return = array_pop($args); - if (call_user_func_array('x', $args)) { - if (count($args) === 1) { - $return = $args[0]; - } else { - $return = $args[0][$args[1]]; - } - } else { - $return = $default; + if (count($args) == 2 && is_array($args[0]) && !empty($args[0][$args[1]])) { + $return = $args[0][$args[1]]; + } + + if (count($args) == 1 && !empty($args[0])) { + $return = $args[0]; } return $return; @@ -446,15 +445,15 @@ function public_contact() { static $public_contact_id = false; - if (!$public_contact_id && x($_SESSION, 'authenticated')) { - if (x($_SESSION, 'my_address')) { + if (!$public_contact_id && !empty($_SESSION['authenticated'])) { + if (!empty($_SESSION['my_address'])) { // Local user $public_contact_id = intval(Contact::getIdForURL($_SESSION['my_address'], 0, true)); - } elseif (x($_SESSION, 'visitor_home')) { + } elseif (!empty($_SESSION['visitor_home'])) { // Remote user $public_contact_id = intval(Contact::getIdForURL($_SESSION['visitor_home'], 0, true)); } - } elseif (!x($_SESSION, 'authenticated')) { + } elseif (empty($_SESSION['authenticated'])) { $public_contact_id = false; } @@ -479,7 +478,7 @@ function remote_user() return false; } - if (x($_SESSION, 'authenticated') && x($_SESSION, 'visitor_id')) { + if (!empty($_SESSION['authenticated']) && !empty($_SESSION['visitor_id'])) { return intval($_SESSION['visitor_id']); } return false; @@ -499,7 +498,7 @@ function notice($s) } $a = get_app(); - if (!x($_SESSION, 'sysmsg')) { + if (empty($_SESSION['sysmsg'])) { $_SESSION['sysmsg'] = []; } if ($a->interactive) { @@ -522,7 +521,7 @@ function info($s) return; } - if (!x($_SESSION, 'sysmsg_info')) { + if (empty($_SESSION['sysmsg_info'])) { $_SESSION['sysmsg_info'] = []; } if ($a->interactive) {