From be254156b99ceee9c1a0b3ac1b83b0492f9950d3 Mon Sep 17 00:00:00 2001 From: LyLme Date: Sat, 26 Mar 2022 15:38:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E5=9F=9F=E5=90=8D=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/function.php | 130 ++++++++++++++++++++++--------------------- 1 file changed, 66 insertions(+), 64 deletions(-) diff --git a/include/function.php b/include/function.php index ed66300..1946798 100644 --- a/include/function.php +++ b/include/function.php @@ -2,7 +2,6 @@ function strexists($string, $find) { return !(strpos($string, $find) === FALSE); } - function dstrpos($string, $arr) { if(empty($string)) return false; foreach((array)$arr as $v) { @@ -12,17 +11,15 @@ function dstrpos($string, $arr) { } return false; } - function checkmobile() { $useragent = strtolower($_SERVER['HTTP_USER_AGENT']); $ualist = array('android', 'midp', 'nokia', 'mobile', 'iphone', 'ipod', 'blackberry', 'windows phone'); - if((dstrpos($useragent, $ualist) || strexists($_SERVER['HTTP_ACCEPT'], "VND.WAP") || strexists(isset($_SERVER['HTTP_VIA']),"wap"))){ + if((dstrpos($useragent, $ualist) || strexists($_SERVER['HTTP_ACCEPT'], "VND.WAP") || strexists(isset($_SERVER['HTTP_VIA']),"wap"))) { return true; - }else{ - return false; + } else { + return false; } } - function daddslashes($string) { if(is_array($string)) { foreach($string as $key => $val) { @@ -34,73 +31,78 @@ function daddslashes($string) { return $string; } function authcode($string, $operation = 'DECODE', $key = '', $expiry = 0) { - $ckey_length = 4; - $key = md5($key ? $key : ENCRYPT_KEY); - $keya = md5(substr($key, 0, 16)); - $keyb = md5(substr($key, 16, 16)); - $keyc = $ckey_length ? ($operation == 'DECODE' ? substr($string, 0, $ckey_length) : substr(md5(microtime()) , -$ckey_length)) : ''; - $cryptkey = $keya . md5($keya . $keyc); - $key_length = strlen($cryptkey); - $string = $operation == 'DECODE' ? base64_decode(substr($string, $ckey_length)) : sprintf('%010d', $expiry ? $expiry + time() : 0) . substr(md5($string . $keyb) , 0, 16) . $string; - $string_length = strlen($string); - $result = ''; - $box = range(0, 255); - $rndkey = array(); - for ($i = 0; $i <= 255; $i++) { - $rndkey[$i] = ord($cryptkey[$i % $key_length]); - } - for ($j = $i = 0; $i < 256; $i++) { - $j = ($j + $box[$i] + $rndkey[$i]) % 256; - $tmp = $box[$i]; - $box[$i] = $box[$j]; - $box[$j] = $tmp; - } - for ($a = $j = $i = 0; $i < $string_length; $i++) { - $a = ($a + 1) % 256; - $j = ($j + $box[$a]) % 256; - $tmp = $box[$a]; - $box[$a] = $box[$j]; - $box[$j] = $tmp; - $result.= chr(ord($string[$i]) ^ ($box[($box[$a] + $box[$j]) % 256])); - } - if ($operation == 'DECODE') { - if ((substr($result, 0, 10) == 0 || substr($result, 0, 10) - time() > 0) && substr($result, 10, 16) == substr(md5(substr($result, 26) . $keyb) , 0, 16)) { - return substr($result, 26); - } else { - return ''; - } - } else { - return $keyc . str_replace('=', '', base64_encode($result)); - } + $ckey_length = 4; + $key = md5($key ? $key : ENCRYPT_KEY); + $keya = md5(substr($key, 0, 16)); + $keyb = md5(substr($key, 16, 16)); + $keyc = $ckey_length ? ($operation == 'DECODE' ? substr($string, 0, $ckey_length) : substr(md5(microtime()) , -$ckey_length)) : ''; + $cryptkey = $keya . md5($keya . $keyc); + $key_length = strlen($cryptkey); + $string = $operation == 'DECODE' ? base64_decode(substr($string, $ckey_length)) : sprintf('%010d', $expiry ? $expiry + time() : 0) . substr(md5($string . $keyb) , 0, 16) . $string; + $string_length = strlen($string); + $result = ''; + $box = range(0, 255); + $rndkey = array(); + for ($i = 0; $i <= 255; $i++) { + $rndkey[$i] = ord($cryptkey[$i % $key_length]); + } + for ($j = $i = 0; $i < 256; $i++) { + $j = ($j + $box[$i] + $rndkey[$i]) % 256; + $tmp = $box[$i]; + $box[$i] = $box[$j]; + $box[$j] = $tmp; + } + for ($a = $j = $i = 0; $i < $string_length; $i++) { + $a = ($a + 1) % 256; + $j = ($j + $box[$a]) % 256; + $tmp = $box[$a]; + $box[$a] = $box[$j]; + $box[$j] = $tmp; + $result.= chr(ord($string[$i]) ^ ($box[($box[$a] + $box[$j]) % 256])); + } + if ($operation == 'DECODE') { + if ((substr($result, 0, 10) == 0 || substr($result, 0, 10) - time() > 0) && substr($result, 10, 16) == substr(md5(substr($result, 26) . $keyb) , 0, 16)) { + return substr($result, 26); + } else { + return ''; + } + } else { + return $keyc . str_replace('=', '', base64_encode($result)); + } } - function cdnpublic($cdnpublic) { - if(empty($cdnpublic)){ - return '.'; - } - else{ - return $cdnpublic.$conf['version']; - } - + if(empty($cdnpublic)) { + return '.'; + } else { + return $cdnpublic.$conf['version']; + } } - - +function siteurl() { + $protocol = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://"; + $domainName = $_SERVER['HTTP_HOST']; + return $protocol . $domainName; +} +$background = $conf["background"]; function background() { - if (empty($conf['background'])){if (file_exists(ROOT.'assets/img/background.jpg'))return '../assets/img/background.jpg';else return '../assets/img/bing.php';} - else { return $conf['background'];} + if (empty($GLOBALS['background'])) { + if (file_exists(ROOT.'assets/img/background.jpg'))return '../assets/img/background.jpg'; else return '../assets/img/bing.php'; + } else { + return $GLOBALS['background']; + } } function update() { - $update_host = 'cdn.lylme.com'; //程序更新服务器,请勿删除和修改,否则将导致无法接收版本更新和程序报错 - @$update = json_decode(file_get_contents('https://' . $update_host . '/lylmes_page/update.json') , true); - return $update; + $update_host = 'cdn.lylme.com'; + //程序更新服务器,请勿删除和修改,否则将导致无法接收版本更新和程序报错 + @$update = json_decode(file_get_contents('https://' . $update_host . '/lylmes_page/update.json') , true); + return $update; } function getver($ver) { - $vn = explode('.', str_replace('v', '', $ver)); - return $vn[0] . sprintf("%02d", $vn[1]) . sprintf("%02d", $vn[2]); + $vn = explode('.', str_replace('v', '', $ver)); + return $vn[0] . sprintf("%02d", $vn[1]) . sprintf("%02d", $vn[2]); } function saveSetting($k, $v) { - global $DB; - $v = daddslashes($v); - return $DB->query("UPDATE `lylme_config` SET `v` = '$v' WHERE `lylme_config`.`k` = '$k';"); + global $DB; + $v = daddslashes($v); + return $DB->query("UPDATE `lylme_config` SET `v` = '$v' WHERE `lylme_config`.`k` = '$k';"); } ?> \ No newline at end of file