diff --git a/class/Api.php b/class/Api.php index db15feb..9001b55 100755 --- a/class/Api.php +++ b/class/Api.php @@ -206,7 +206,7 @@ class Api { /** * name:添加链接 */ - public function add_link($token,$fid,$title,$url,$description = '',$weight = 0,$property = 0,$url_standby = ''){ + public function add_link($token,$fid,$title,$url,$description = '',$weight = 0,$property = 0,$url_standby = '',$font_icon=''){ $this->auth($token); $fid = intval($fid); //检测链接是否合法 @@ -227,7 +227,8 @@ class Api { 'description' => htmlspecialchars($description,ENT_QUOTES), 'add_time' => time(), 'weight' => $weight, - 'property' => $property + 'property' => $property, + 'font_icon' => $font_icon ]; //插入数据库 $re = $this->db->insert('on_links',$data); @@ -533,6 +534,45 @@ class Api { } } } + + /** + * 图标上传 + * type:上传类型 + */ + public function uploadImages($token,$type){ + $this->auth($token); + if ($_FILES["file"]["error"] > 0) + { + $this->err_msg(-1015,'File upload failed!'); + } + else + { + //根据时间生成文件名 + $filename = $_FILES["file"]["name"]; + //获取文件后缀 + $suffix = explode('.',$filename); + $suffix = strtolower(end($suffix)); + + //临时文件位置 + $temp = $_FILES["file"]["tmp_name"]; + if( $suffix != 'ico' && $suffix != 'jpg' && $suffix != 'png' && $suffix != 'bmp' ) { + //删除临时文件 + unlink($filename); + $this->err_msg(-1014,'Unsupported file suffix name!'); + } + + $newfilename='upload/'.time().'.'.$suffix; + + if( copy($temp,$newfilename) ) { + $data = [ + 'code' => 0, + 'file_name' => $newfilename + ]; + exit(json_encode($data)); + } + } + } + /** * 导出HTML链接进行备份 */ @@ -570,7 +610,7 @@ class Api { /** * name:修改链接 */ - public function edit_link($token,$id,$fid,$title,$url,$description = '',$weight = 0,$property = 0,$url_standby = ''){ + public function edit_link($token,$id,$fid,$title,$url,$description = '',$weight = 0,$property = 0,$url_standby = '',$font_icon = ''){ $this->auth($token); $fid = intval($fid); //检测链接是否合法 @@ -596,7 +636,8 @@ class Api { 'description' => htmlspecialchars($description,ENT_QUOTES), 'up_time' => time(), 'weight' => $weight, - 'property' => $property + 'property' => $property, + 'font_icon' => $font_icon ]; //插入数据库 $re = $this->db->update('on_links',$data,[ 'id' => $id]); diff --git a/controller/api.php b/controller/api.php index e95020a..dccdd6f 100755 --- a/controller/api.php +++ b/controller/api.php @@ -107,8 +107,9 @@ function add_link($api){ $description = empty($_POST['description']) ? '' : $_POST['description']; $weight = empty($_POST['weight']) ? 0 : intval($_POST['weight']); $property = empty($_POST['property']) ? 0 : 1; - - $api->add_link($token,$fid,$title,$url,$description,$weight,$property,$url_standby); + $font_icon = empty($_POST['font_icon']) ? '' : $_POST['font_icon']; + + $api->add_link($token,$fid,$title,$url,$description,$weight,$property,$url_standby,$font_icon); } /** @@ -128,8 +129,9 @@ function edit_link($api){ $description = empty($_POST['description']) ? '' : $_POST['description']; $weight = empty($_POST['weight']) ? 0 : intval($_POST['weight']); $property = empty($_POST['property']) ? 0 : 1; - - $api->edit_link($token,$id,$fid,$title,$url,$description,$weight,$property,$url_standby); + $font_icon = empty($_POST['font_icon']) ? '' : $_POST['font_icon']; + + $api->edit_link($token,$id,$fid,$title,$url,$description,$weight,$property,$url_standby,$font_icon); } @@ -239,6 +241,14 @@ function upload($api){ $type = $_GET['type']; $api->upload($token,$type); } +// 上传图标 +function uploadImages($api){ + //获取token + $token = empty( $_POST['token'] ) ? $_GET['token'] : $_POST['token']; + //获取上传类型 + $type = $_GET['type']; + $api->uploadImages($token,$type); +} //书签导入 function imp_link($api) { //获取token diff --git a/controller/click.php b/controller/click.php index 523d6f3..687d77e 100755 --- a/controller/click.php +++ b/controller/click.php @@ -13,7 +13,7 @@ if(empty($id)) { } //查询链接信息 -$link = $db->get('on_links',['id','fid','url','url_standby','property','click','title','description'],[ +$link = $db->get('on_links',['id','fid','url','url_standby','property','click','title','description','font_icon'],[ 'id' => $id ]); diff --git a/db/onenav.simple.db3 b/db/onenav.simple.db3 index 43851ab..42b41aa 100644 Binary files a/db/onenav.simple.db3 and b/db/onenav.simple.db3 differ diff --git a/templates/admin/add_link.php b/templates/admin/add_link.php index e96e4fd..de6288b 100755 --- a/templates/admin/add_link.php +++ b/templates/admin/add_link.php @@ -30,6 +30,20 @@ +