From 33386c75dcca0bc4efb13b10b76f0638984c34b2 Mon Sep 17 00:00:00 2001 From: "MI15\\Win" <10359480+tznb@user.noreply.gitee.com> Date: Wed, 12 Jul 2023 23:10:31 +0800 Subject: [PATCH] v2.0.30-202307012 --- system/api.php | 25 +++++++- system/api_root.php | 19 ++++++ system/login.php | 13 ++-- system/public.php | 7 ++- system/version.txt | 2 +- templates/admin/js/link_list.js | 1 + templates/admin/page/home.php | 83 +++++++++++++++++++------- templates/admin/page/root/icon_set.php | 20 ++++++- templates/admin/page/theme_transit.php | 8 ++- templates/admin/page/updatelog.php | 12 ++++ 10 files changed, 156 insertions(+), 34 deletions(-) diff --git a/system/api.php b/system/api.php index 626695f..08ab560 100644 --- a/system/api.php +++ b/system/api.php @@ -176,7 +176,7 @@ function write_category(){ 'fid'=>intval($_POST['fid']??'0'), 'pid'=>intval($_POST['pwd_id']??'0'), 'status'=>1, - 'property'=>$_POST['property']??'0', + 'property'=>intval($_POST['property']??'0'), 'name'=>htmlspecialchars($_POST['name'],ENT_QUOTES), 'add_time'=>time(), 'up_time'=>time(), @@ -230,7 +230,7 @@ function write_category(){ $data = [ 'fid'=>$_POST['fid'], 'pid'=>intval($_POST['pwd_id']??'0'), - 'property'=>$_POST['property']??'0', + 'property'=>intval($_POST['property']??'0'), 'name'=>$_POST['name'], 'up_time'=>time(), 'description'=>$_POST['description'], @@ -711,7 +711,7 @@ function write_link(){ } $api = Get_Index_URL().'?c=icon&url='.base64_encode($link['url']); - $res = ccurl($api,30); + $res = ccurl($api,30,true); $data = get_db('global_icon','*',['url_md5'=>md5($link['url'])]); if(empty($data)){ msg(1,'fail'); @@ -1569,6 +1569,25 @@ function read_data(){ }else{ exit('密码验证失败,请重试!'); } + //报表统计 + }elseif($_GET['type'] == 'echarts'){ + $days = isset($_GET['date']) && !empty($_GET['date']) ? $_GET['date'] : 7; + $dates = []; + for ($i = 0; $i < $days; $i++) { + $date = date('Ymd', strtotime("-$i days")); + $dates[] = $date; + } + $dates = array_reverse($dates); + $day_data = []; + array_push($day_data, ['name' => '访问量', 'type' => 'line', 'data' => []]); + array_push($day_data, ['name' => '点击量', 'type' => 'line', 'data' => []]); + foreach ($dates as $date) { + array_push($day_data[0]['data'], get_db('user_count', 'v', ['uid' => UID, 'k' => $date, 't' => 'index_Ymd']) ?? 0); + array_push($day_data[1]['data'], get_db('user_count', 'v', ['uid' => UID, 'k' => $date, 't' => 'click_Ymd']) ?? 0); + } + + $data = ['dates'=>$dates,'day_data'=>$day_data]; + msgA(['code'=>1,'data'=>$data]); } } diff --git a/system/api_root.php b/system/api_root.php index ebb3a49..9604e6e 100644 --- a/system/api_root.php +++ b/system/api_root.php @@ -738,6 +738,25 @@ function other_root(){ if(!is_subscribe('bool')){msg(-1,"未检测到有效授权,无法使用该功能!");} write_global_config('icon_config',$_POST,'图标配置'); msg(1,'保存成功'); + }elseif($_GET['type'] == 'write_icon_del_cache'){ + //删除数据库缓存信息 + if(empty(count_db('global_icon','*'))){ + msg(-1,'无缓存记录..'); + } + delete_db('global_icon','*'); + + //删除缓存目录下的所有文件 + $files = glob(DIR.'/data/icon' . '/*'); + if (empty($files)) { + msg(-1,'无缓存文件..'); + } + foreach ($files as $file) { + if (is_file($file)) { + unlink($file); + } + } + + msg(1,'操作成功'); } } diff --git a/system/login.php b/system/login.php index 3518eda..337aa14 100644 --- a/system/login.php +++ b/system/login.php @@ -18,14 +18,19 @@ if($_SERVER['REQUEST_METHOD'] === 'GET'){ AccessControl(); //访问控制 $User = $_POST["User"];$Password = $_POST["Password"]; //获取请求数据 +if(empty($User)){ + insert_db("user_log", ["uid" => '',"user"=>'',"ip"=>Get_IP(),"time"=>time(),"type" => 'login',"content"=>Get_Request_Content(),"description"=>"请求登录>账号为空"]); + msg(-1,'账号不能为空!'); +}elseif($User != $USER_DB['User']){ + insert_db("user_log", ["uid" => '',"user"=>$User,"ip"=>Get_IP(),"time"=>time(),"type" => 'login',"content"=>Get_Request_Content(),"description"=>"请求登录>账号不存在"]); + msg(-1,'账号不存在!'); +} + //记录请求日志 insert_db("user_log", ["uid" => $USER_DB['ID'],"user"=>$USER_DB['User'],"ip"=>Get_IP(),"time"=>time(),"type" => 'login',"content"=>Get_Request_Content(),"description"=>"请求登录"]); $log_id = $db->id(); //基础判断 -if(!isset($User)){ - update_db_db("user_log", ["description" => "请求登录>账号不能为空"], ["id"=>$log_id]); - msg(-1,'账号不能为空!'); -}elseif(strlen($Password)!==32){ +if(strlen($Password)!==32){ update_db("user_log", ["description" => "请求登录>密码错误(长度应该是32位的MD5)"], ["id"=>$log_id]); msg(-1,'密码错误!'); }elseif($c != $global_config["Login"] && $c != $USER_DB['Login'] ){ diff --git a/system/public.php b/system/public.php index 7bf6121..58833f4 100644 --- a/system/public.php +++ b/system/public.php @@ -530,7 +530,7 @@ function get_http_code($url,$TIMEOUT = 10 ,$NOBODY = true) { return $return; } -function ccurl($url,$overtime = 3){ +function ccurl($url,$overtime = 3,$Referer = false){ try { $curl = curl_init ( $url ) ; //初始化 curl_setopt($curl, CURLOPT_TIMEOUT, $overtime ); //超时 @@ -539,6 +539,11 @@ function ccurl($url,$overtime = 3){ curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); + if($Referer === true){ + curl_setopt($curl, CURLOPT_REFERER, $_SERVER['HTTP_REFERER']); + }elseif(!empty($Referer)){ + curl_setopt($curl, CURLOPT_REFERER, $Referer); + } curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36'); $Res["content"] = curl_exec ( $curl ) ; $Res["code"] = curl_getinfo($curl, CURLINFO_HTTP_CODE); diff --git a/system/version.txt b/system/version.txt index 3b95a39..11b8217 100644 --- a/system/version.txt +++ b/system/version.txt @@ -1 +1 @@ -v2.0.29-20230705 \ No newline at end of file +v2.0.30-20230712 \ No newline at end of file diff --git a/templates/admin/js/link_list.js b/templates/admin/js/link_list.js index c76529b..fdc4432 100644 --- a/templates/admin/js/link_list.js +++ b/templates/admin/js/link_list.js @@ -135,6 +135,7 @@ layui.use(['form','table','dropdown','miniTab'], function () { key: input.name,value: input.checked }); }); + $('th[data-field="icon"]').attr('title', '仅显示已上传的图标'); } }); // 监听表格排序事件 diff --git a/templates/admin/page/home.php b/templates/admin/page/home.php index e95bbb4..e41f8c0 100644 --- a/templates/admin/page/home.php +++ b/templates/admin/page/home.php @@ -240,9 +240,16 @@ require 'header.php';