X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=boot.php;h=4b95c89128ba32b96437a7297bc3e868c706d144;hb=35c38c77e27158dee13c0e91c45a74c3f336147e;hp=a94b380387bcb262e50a0826e7ab1fd0821c2731;hpb=bd972151478f40f73585519110700222a1931d44;p=friendica.git diff --git a/boot.php b/boot.php index a94b380387..4b95c89128 100644 --- a/boot.php +++ b/boot.php @@ -17,8 +17,6 @@ * easily as email does today. */ -require_once __DIR__ . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'autoload.php'; - use Friendica\App; use Friendica\BaseObject; use Friendica\Core\Addon; @@ -35,11 +33,9 @@ use Friendica\Model\Contact; use Friendica\Model\Conversation; use Friendica\Util\DateTimeFormat; -require_once 'include/text.php'; - define('FRIENDICA_PLATFORM', 'Friendica'); define('FRIENDICA_CODENAME', 'The Tazmans Flax-lily'); -define('FRIENDICA_VERSION', '2018.12-dev'); +define('FRIENDICA_VERSION', '2019.01-rc'); define('DFRN_PROTOCOL_VERSION', '2.23'); define('NEW_UPDATE_ROUTINE_VERSION', 1170); @@ -56,13 +52,13 @@ define('EOL', "
\r\n"); * @brief Image storage quality. * * Lower numbers save space at cost of image detail. - * For ease of upgrade, please do not change here. Set [system] jpegquality = n in config/local.ini.php, + * For ease of upgrade, please do not change here. Set system.jpegquality = n in config/local.config.php, * where n is between 1 and 100, and with very poor results below about 50 */ define('JPEG_QUALITY', 100); /** - * [system] png_quality = n where is between 0 (uncompressed) to 9 + * system.png_quality = n where is between 0 (uncompressed) to 9 */ define('PNG_QUALITY', 8); @@ -73,10 +69,12 @@ define('PNG_QUALITY', 8); * this length (on the longest side, the other side will be scaled appropriately). * Modify this value using * - * [system] - * max_image_length = n; + * 'system' => [ + * 'max_image_length' => 'n', + * ... + * ], * - * in config/local.ini.php + * in config/local.config.php * * If you don't want to set a maximum length, set to -1. The default value is * defined by 'MAX_IMAGE_LENGTH' below. @@ -166,21 +164,21 @@ define('MAX_LIKERS', 75); * Email notification options * @{ */ -define('NOTIFY_INTRO', 0x0001); -define('NOTIFY_CONFIRM', 0x0002); -define('NOTIFY_WALL', 0x0004); -define('NOTIFY_COMMENT', 0x0008); -define('NOTIFY_MAIL', 0x0010); -define('NOTIFY_SUGGEST', 0x0020); -define('NOTIFY_PROFILE', 0x0040); -define('NOTIFY_TAGSELF', 0x0080); -define('NOTIFY_TAGSHARE', 0x0100); -define('NOTIFY_POKE', 0x0200); -define('NOTIFY_SHARE', 0x0400); - -define('SYSTEM_EMAIL', 0x4000); - -define('NOTIFY_SYSTEM', 0x8000); +define('NOTIFY_INTRO', 1); +define('NOTIFY_CONFIRM', 2); +define('NOTIFY_WALL', 4); +define('NOTIFY_COMMENT', 8); +define('NOTIFY_MAIL', 16); +define('NOTIFY_SUGGEST', 32); +define('NOTIFY_PROFILE', 64); +define('NOTIFY_TAGSELF', 128); +define('NOTIFY_TAGSHARE', 256); +define('NOTIFY_POKE', 512); +define('NOTIFY_SHARE', 1024); + +define('SYSTEM_EMAIL', 16384); + +define('NOTIFY_SYSTEM', 32768); /* @}*/ @@ -336,41 +334,6 @@ function get_app() return BaseObject::getApp(); } -/** - * @brief Multi-purpose function to check variable state. - * - * 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; - * - * @param string|array $s variable to check - * @param string $k key inside the array to check - * - * @return bool|int - */ -function x($s, $k = null) -{ - if ($k != null) { - if ((is_array($s)) && (array_key_exists($k, $s))) { - if ($s[$k]) { - return (int) 1; - } - return (int) 0; - } - return false; - } else { - if (isset($s)) { - if ($s) { - return (int) 1; - } - return (int) 0; - } - return false; - } -} - /** * Return the provided variable value if it exists and is truthy or the provided * default value instead. @@ -381,13 +344,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'); } @@ -398,16 +360,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; @@ -444,15 +405,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; } @@ -477,7 +438,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; @@ -497,7 +458,7 @@ function notice($s) } $a = get_app(); - if (!x($_SESSION, 'sysmsg')) { + if (empty($_SESSION['sysmsg'])) { $_SESSION['sysmsg'] = []; } if ($a->interactive) { @@ -520,7 +481,7 @@ function info($s) return; } - if (!x($_SESSION, 'sysmsg_info')) { + if (empty($_SESSION['sysmsg_info'])) { $_SESSION['sysmsg_info'] = []; } if ($a->interactive) { @@ -673,16 +634,6 @@ function curPageURL() return $pageURL; } -function random_digits($digits) -{ - $rn = ''; - for ($i = 0; $i < $digits; $i++) { - /// @TODO Avoid rand/mt_rand, when it comes to cryptography, they are generating predictable (seedable) numbers. - $rn .= rand(0, 9); - } - return $rn; -} - function get_server() { $server = Config::get("system", "directory"); @@ -899,3 +850,22 @@ function validate_include(&$file) // Simply return flag return $valid; } + +/** + * PHP 5 compatible dirname() with count parameter + * + * @see http://php.net/manual/en/function.dirname.php#113193 + * + * @deprecated with PHP 7 + * @param string $path + * @param int $levels + * @return string + */ +function rdirname($path, $levels = 1) +{ + if ($levels > 1) { + return dirname(rdirname($path, --$levels)); + } else { + return dirname($path); + } +}