diff --git a/UPDATE.md b/UPDATE.md index ad5da47..fe96161 100644 --- a/UPDATE.md +++ b/UPDATE.md @@ -1,20 +1,17 @@ -## PicHome beta3.1 更新说明 +## PicHome beta3.2 更新说明 -### 1.增加billfish库文件导入支持 +### 1.修复windows文件上传至linux服务器,由于编码问题导致的库导入没有文件问题 -### 2.库设置内容更改,显示当前库连接状态,断开为不可用;增加普通目录文件缩略图生成数量显示, - 整体优化库设置在未导入之前也可对库进行管理操作 +### 2.库设置内容更改,当库状态为断开时,可以重新设置库的路径(即目录位置移动之后,库读取不到,可以设置为新目录所在位置) -### 3.修复系统设置界面因二级域名导致的白页问题 +### 3.优化普通目录文件缩略图生成逻辑,以修复瀑布流展示时页面问题(此项对已生成过缩略图的不生效,需重新导入库生成) -### 4.修复标签分类等数据显示异常问题;不可用状态的库将不在列表页展示其内容 +### 4.优化导入逻辑,当库在导入状态时,将会自动执行导入文件,直至导入完成为止 -### 5.修复下载时提示文件不存在的bug +### 5.修复eagle库注释显示html标签问题 -### 6.优化删除逻辑,将更快清理冗余数据 +### 6.修复billfish库导入链接丢失问题 -### 7.优化导入逻辑 +### 7.优化删除逻辑 -### 8.优化访问效率 - -### 9.其他已知bug修复 \ No newline at end of file +### 8.其他已知bug修复 \ No newline at end of file diff --git a/core/class/class_image.php b/core/class/class_image.php index d25c6d7..5762c3c 100644 --- a/core/class/class_image.php +++ b/core/class/class_image.php @@ -245,6 +245,11 @@ function sizevalue($method) { $w = ceil($y_ratio * $this->imginfo['width']); $h = $this->param['thumbheight']; } + if($w < 242){ + $w = $this->param['thumbwidth'] = 242; + $x_ratio = $this->param['thumbwidth'] / $this->imginfo['width']; + $h = ceil($x_ratio*$this->imginfo['height']); + } } return array($x, $y, $w, $h); } @@ -356,6 +361,10 @@ function scaleImage($width,$height,$owidth,$oheight) { }else{ $width=ceil($height*$or); + if($width < 242){ + $width = 242; + $height = ceil($width/$or); + } } }else{ @@ -364,6 +373,11 @@ function scaleImage($width,$height,$owidth,$oheight) { $width=$owidth; }else{ $height=ceil($width/$or); + $width = ceil($height*$or); + if($width < 242){ + $width = 242; + $height = ceil($width/$or); + } } } diff --git a/core/class/table/table_pichome_collectlist.php b/core/class/table/table_pichome_collectlist.php new file mode 100644 index 0000000..579686f --- /dev/null +++ b/core/class/table/table_pichome_collectlist.php @@ -0,0 +1,432 @@ +_table = 'pichome_collectlist'; + $this->_pk = 'id'; + $this->_pre_cache_key = 'pichome_collectlist'; + $this->_cache_ttl = 3600; + parent::__construct(); + } + //添加收藏 + public function add_collect($data){ + $perm = C::t('pichome_collectuser')->get_perm_by_clid($data['clid']); + if($perm < 2){ + return array('error'=>'no_perm'); + } + if(empty($data['rid'])) return true; + $existsdata = DB::fetch_all("select rid from %t where rid in(%n) and clid = %d and cid = %d",array($this->_table,$data['rid'],$data['clid'],$data['cid'])); + $existsrids = []; + foreach($existsdata as $v){ + $existsrids[] = $v['rid']; + } + $totalcount = count($data['rid']); + $data['rid'] = array_diff($data['rid'],$existsrids); + if(empty($data['rid'])) return true; + //记录加入收藏个数 + $counti = 0; + $namesarr = []; + foreach(DB::fetch_all("select appid,rid,name from %t where rid in(%n)",array('pichome_resources',$data['rid'])) as $v){ + $setarr = [ + 'rid'=>$v['rid'], + 'cid'=>$data['cid'], + 'clid'=>$data['clid'], + 'uid'=>$data['uid'], + 'username'=>$data['username'], + 'dateline'=>$data['dateline'], + 'appid'=>$v['appid'], + ]; + $namesarr[] = $v['name']; + if(parent::insert($setarr,1)) $counti += 1; + } + if($counti){ + $filenamearr = array_slice($namesarr,0,5); + $filename = implode(',',$filenamearr).'等'.$totalcount.'个文件'; + //如果收藏有分类增加该分类下文件数 + $position = DB::result_first("select name from %t where clid = %d",array('pichome_collect',$data['clid'])); + if($data['cid']){ + C::t('pichome_collectcat')->add_filenum_by_cid($data['cid'],$counti); + $pathkey = DB::result_first("select pathkey from %t where cid = %d",array('pichome_collectcat',$data['cid'])); + $pathkey = str_replace('_','',$pathkey); + $patharr = explode('-',$pathkey); + foreach(DB::fetch_all("select catname from %t where cid in(%n)",array('pichome_collectcat',$patharr)) as $v){ + $position .= '/'.$v['catname']; + } + } + C::t('pichome_collect')->add_filenum_by_clid($data['clid'],$counti); + $enventbodydata = ['username'=>getglobal('username'),'filename'=>$filename,'collectname'=>$position,'rids'=> $data['rid']]; + $enventdata = [ + 'eventbody' =>'collectfile' , + 'uid' => getglobal('uid'), + 'username' => getglobal('username'), + 'bodydata' => json_encode($enventbodydata), + 'clid' =>$data['clid'], + 'cid' =>($data['cid']) ? $data['cid']:0, + 'do' => 'collect_file', + 'do_obj' =>$filename, + 'dateline'=>TIMESTAMP + ]; + C::t('pichome_collectevent')->insert($enventdata); + } + $this->update_collect_thumb($data['clid']); + return true; + + } + + public function delete($id){ + if(!is_array($id)) $id = (array)$id; + if(parent::delete($id)){ + //删除对应分享 + if(!empty($id))DB::delete('pichome_share','filepath in('.dimplode($id).') and stype = 1'); + } + return true; + } + + //取消收藏 + public function cancle_filecollect($lids,$clid,$cid = 0){ + $perm = C::t('pichome_collectuser')->get_perm_by_clid($clid); + if($perm < 2){ + return array('error'=>'no_perm'); + } + if(!is_array($lids)) $lids = (array)$lids; + if(empty($lids)) return true; + $counti = 0; + $rids = []; + foreach(DB::fetch_all("select rid,id,cid,clid from %t where id in(%n)",array($this->_table,$lids)) as $v){ + $rids[] = $v['rid']; + if($this->delete($v['id'])){ + $counti += 1; + C::t('pichome_collectcat')->add_filenum_by_cid($v['cid'],-1); + C::t('pichome_collect')->add_filenum_by_clid($v['clid'],-1); + } + } + $position = DB::result_first("select name from %t where clid = %d",array('pichome_collect',$clid)); + if($cid){ + $pathkey = DB::result_first("select pathkey from %t where cid = %d",array('pichome_collectcat',$cid)); + $pathkey = str_replace('_','',$pathkey); + $patharr = explode('-',$pathkey); + foreach(DB::fetch_all("select catname from %t where cid in(%n)",array('pichome_collectcat',$patharr)) as $v){ + $position .= '/'.$v['catname']; + } + } + $namesarr = []; + foreach(DB::fetch_all("select name from %t where rid in(%n) limit 0,5",array('pichome_resources',$rids)) as $v){ + $namesarr[] = $v['name']; + } + $filename = implode(',',$namesarr).'等'.$counti.'个文件'; + $enventbodydata = ['username'=>getglobal('username'),'filename'=>$filename,'collectname'=>$position,'rid'=>$rids]; + $enventdata = [ + 'eventbody' =>'canclecollectfile' , + 'uid' => getglobal('uid'), + 'username' => getglobal('username'), + 'bodydata' => json_encode($enventbodydata), + 'clid' =>$clid, + 'cid' =>($cid) ? $cid:0, + 'do' => 'cancle_collectfile', + 'do_obj' =>$filename, + 'dateline'=>TIMESTAMP + ]; + C::t('pichome_collectevent')->insert($enventdata); + $this->update_collect_thumb($clid); + return true; + } + //更新收藏夹缩略图 + public function update_collect_thumb($clid){ + $first = false; + $collectdata = C::t('pichome_collect')->fetch($clid); + if(!C::t('pichome_collectlist')->fetch($collectdata['lid'])){ + $first = true; + }else{ + $first = false; + } + $setarr = []; + if($first){ + //取得第一张图 + $firstdata = DB::fetch_first("select * from %t where clid = %d order by id asc",array($this->_table,$clid)); + if($firstdata){ + $icondatas = C::t('pichome_resources')->geticondata_by_rid($firstdata['rid']); + $setarr['covert'] = $icondatas['icondata']; + $setarr['lid'] = $firstdata['id']; + }else{ + $setarr['covert'] = ''; + $setarr['lid'] = 0; + + } + } + //取得最新两张图 + $i = 2; + $coverdata = DB::fetch_all("select rid,id from %t where clid = %d order by id desc limit 0,2",array($this->_table,$clid)); + $count = count($coverdata); + if($count == 0){ + $setarr['covert1'] = ''; + $setarr['covert2'] = ''; + $setarr['lid1'] = 0; + $setarr['lid2'] = 0; + }elseif($count ==1) { + foreach ($coverdata as $v) { + $icondatas = C::t('pichome_resources')->geticondata_by_rid($v['rid']); + $setarr['covert' . $i] = $icondatas['icondata']; + $setarr['lid' . $i] = $v['id']; + $i--; + } + $setarr['covert2'] = ''; + $setarr['lid2'] = 0; + }else{ + foreach($coverdata as $v){ + $icondatas = C::t('pichome_resources')->geticondata_by_rid($v['rid']); + $setarr['covert'.$i] = $icondatas['icondata']; + $setarr['lid'.$i] = $v['id']; + $i--; + } + } + C::t('pichome_collect')->update($clid,$setarr); + return true; + } + //删除收藏夹所有文件 + public function delete_by_clid($clid){ + return DB::delete($this->_table,array('clid'=>$clid)); + } + + //移动文件到某收藏 + public function move_collectfile($lids,$oclid,$ocid=0){ + + if(!is_array($lids)) $lids = (array)$lids; + if(empty($lids)) return true; + + $total = count($lids); + $cids = []; + $clid = 0; + $counti = 0; + $rids=[]; + foreach(DB::fetch_all("select * from %t where id in(%n)",array('pichome_collectlist',$lids)) as $v){ + $cids[] = $v['cid']; + $clid = $v['clid']; + //如果收藏位置相同则不做任何处理 + if($v['clid'] == $oclid && $v['cid'] == $ocid){ + /* if(parent::delete($v['id'])){ + //收藏夹文件数和分类数减1 + if($v['cid']) C::t('pichome_collectcat')->add_filenum_by_cid($v['cid'],-1); + if($v['clid'])C::t('pichome_collect')->add_filenum_by_clid($v['clid'],-1); + }*/ + continue; + }else{ + + //如果该收藏文件在目标位置已经存在则删除原收藏位置文件 + if($id = DB::result_first("select id from %t where rid = %s and clid = %d and cid = %d", + array($this->_table,$v['rird'],$oclid,$ocid))){ + $this->delete($id); + C::t('pichome_collect')->add_filenum_by_clid($clid,-1); + if($v['cid'])C::t('pichome_collectcat')->add_filenum_by_cid($v['cid'],-1); + }else{ + $setarr = [ + 'uid'=>getglobal('uid'), + 'username'=>getglobal('username'), + 'clid'=>$oclid, + 'cid'=>$ocid + ]; + /* echo $ocid; + print_r($v);die;*/ + //更新数据 + if(parent::update($v['id'],$setarr)){ + + //如果移动位置不在一个收藏夹 + if($v['clid'] != $oclid){ + //增加移入收藏夹文件数 + C::t('pichome_collect')->add_filenum_by_clid($oclid,1); + if($v['clid']) C::t('pichome_collect')->add_filenum_by_clid($clid,-1); + } + if($v['cid'])C::t('pichome_collectcat')->add_filenum_by_cid($v['cid'],-1); + $counti++; + //增加移入分类文件数 + if($ocid)C::t('pichome_collectcat')->add_filenum_by_cid($ocid,1); + } + } + + } + $rids[] = $v['rid']; + } + //如果移动文件位置cid为多个则不记入动态 + $cids = array_unique($cids); + if(count($cids) == 1) $cid = $cids[0]; + else $cid = 0; + + $namesarr = []; + foreach(DB::fetch_all("select name from %t where rid in(%n) limit 0,5",array('pichome_resources',$rids)) as $v){ + $namesarr[] = $v['name']; + } + $filename = implode(',',$namesarr).'等'.$total.'个文件'; + + $oposition = DB::result_first("select name from %t where clid = %d",array('pichome_collect',$oclid)); + if($ocid){ + $pathkey = DB::result_first("select pathkey from %t where cid = %d",array('pichome_collectcat',$ocid)); + $pathkey = str_replace('_','',$pathkey); + $patharr = explode('-',$pathkey); + foreach(DB::fetch_all("select catname from %t where cid in(%n)",array('pichome_collectcat',$patharr)) as $v){ + $oposition .= '/'.$v['catname']; + } + } + + //更新移出收藏文件数 + $position = DB::result_first("select name from %t where clid = %d",array('pichome_collect',$clid)); + if($cid){ + + $pathkey = DB::result_first("select pathkey from %t where cid = %d",array('pichome_collectcat',$cid)); + $pathkey = str_replace('_','',$pathkey); + $patharr = explode('-',$pathkey); + foreach(DB::fetch_all("select catname from %t where cid in(%n)",array('pichome_collectcat',$patharr)) as $v){ + $position .= '/'.$v['catname']; + } + } + + //移入动态 + $enventbodydata = ['username'=>getglobal('username'),'filename'=>$filename,'collectname'=>$position,'newcolletname'=>$oposition,'rid'=>$rids]; + $enventdata = [ + 'eventbody' =>'movecollectfileto' , + 'uid' => getglobal('uid'), + 'username' => getglobal('username'), + 'bodydata' => json_encode($enventbodydata), + 'clid' =>$oclid, + 'cid' =>($ocid) ? $ocid:0, + 'do' => 'move_collectfileto', + 'do_obj' =>$filename, + 'dateline'=>TIMESTAMP + ]; + C::t('pichome_collectevent')->insert($enventdata); + //更新移入文件收藏缩略图 + if($oclid != $clid) $this->update_collect_thumb($oclid); + + //移出动态 + $enventbodydata = ['username'=>getglobal('username'),'filename'=>$filename,'collectname'=>$position,'newcolletname'=>$oposition,'rid'=>$rids]; + $enventdata = [ + 'eventbody' =>'delcollectfilefrom' , + 'uid' => getglobal('uid'), + 'username' => getglobal('username'), + 'bodydata' => json_encode($enventbodydata), + 'clid' =>$clid, + 'cid' =>($cid) ? $cid:0, + 'do' => 'del_collectfilefrom', + 'do_obj' =>$filename, + 'dateline'=>TIMESTAMP + ]; + C::t('pichome_collectevent')->insert($enventdata); + //更新移出文件收藏缩略图 + if($clid && $oclid != $clid) $this->update_collect_thumb($oclid); + return true; + + } + //收藏已收藏文件到指定收藏 + public function collect_by_lid($lids,$clid,$cid=0){ + $perm = C::t('pichome_collectuser')->get_perm_by_clid($clid); + if($perm < 2){ + return array('error'=>'no_perm'); + } + if(!is_array($lids)) $lids = (array)$lids; + if(empty($lids)) return true; + $rids = []; + foreach(DB::fetch_all("select rid,id from %t where id in(%n)",array($this->_table,$lids)) as $v){ + $rids[] = $v['rid']; + } + $existsrids = []; + foreach(DB::fetch_all("select rid from %t where rid in(%n) and clid = %d and cid = %d",array($this->_table,$rids,$clid,$cid)) as $v){ + $existsrids[] = $v['rid']; + } + $totalcount = count($rids); + $insertrids = array_diff($rids,$existsrids); + //记录加入收藏个数 + $counti = 0; + $namesarr = []; + foreach(DB::fetch_all("select appid,rid,name from %t where rid in(%n)",array('pichome_resources',$insertrids)) as $v){ + $setarr = [ + 'rid'=>$v['rid'], + 'cid'=>$cid, + 'clid'=>$clid, + 'uid'=>getglobal('uid'), + 'username'=>getglobal('username'), + 'dateline'=>TIMESTAMP, + 'appid'=>$v['appid'], + ]; + $namesarr[] = $v['name']; + if(parent::insert($setarr,1)) $counti += 1; + } + if($counti){ + $filenamearr = array_slice($namesarr,0,5); + $filename = implode(',',$filenamearr).'等'.$totalcount.'个文件'; + //如果收藏有分类增加该分类下文件数 + $position = DB::result_first("select name from %t where clid = %d",array('pichome_collect',$clid)); + if($cid){ + C::t('pichome_collectcat')->add_filenum_by_cid($cid,$counti); + $pathkey = DB::result_first("select pathkey from %t where cid = %d",array('pichome_collectcat',$cid)); + $pathkey = str_replace('_','',$pathkey); + $patharr = explode('-',$pathkey); + foreach(DB::fetch_all("select catname from %t where cid in(%n)",array('pichome_collectcat',$patharr)) as $v){ + $position .= '/'.$v['catname']; + } + } + C::t('pichome_collect')->add_filenum_by_clid($clid,$counti); + $enventbodydata = ['username'=>getglobal('username'),'filename'=>$filename,'collectname'=>$position,'rids'=>$rids]; + $enventdata = [ + 'eventbody' =>'collectfile' , + 'uid' => getglobal('uid'), + 'username' => getglobal('username'), + 'bodydata' => json_encode($enventbodydata), + 'clid' =>$clid, + 'cid' =>$cid ? $cid:0, + 'do' => 'collect_file', + 'do_obj' =>$filename, + 'dateline'=>TIMESTAMP + ]; + C::t('pichome_collectevent')->insert($enventdata); + } + $this->update_collect_thumb($clid); + return true; + } + + public function delete_by_rids($rids,$uid,$username){ + if(!$rids) $rids = (array)$rids; + if(empty($rids)) return true; + $clids = []; + foreach(DB::fetch_all("select * from %t where rid in(%n)",array($this->_table,$rids)) as $v){ + $clids[$v['clid']][] = $v['id']; + } + foreach ($clids as $k=>$val){ + $clid = $k; + $counti = 0; + $rids = []; + foreach(DB::fetch_all("select rid,id,cid,clid from %t where id in(%n)",array($this->_table,$val)) as $v){ + $rids[] = $v['rid']; + if($this->delete($v['id'])){ + $counti += 1; + if($v['cid'])C::t('pichome_collectcat')->add_filenum_by_cid($v['cid'],-1); + if($v['clid'])C::t('pichome_collect')->add_filenum_by_clid($v['clid'],-1); + } + } + $position = DB::result_first("select name from %t where clid = %d",array('pichome_collect',$clid)); + $namesarr = []; + foreach(DB::fetch_all("select name from %t where rid in(%n) limit 0,5",array('pichome_resources',$rids)) as $v){ + $namesarr[] = $v['name']; + } + $filename = implode(',',$namesarr).'等'.$counti.'个文件'; + $enventbodydata = ['username'=>getglobal('username'),'filename'=>$filename,'collectname'=>$position,'rid'=>$rids]; + $enventdata = [ + 'eventbody' =>'canclecollectfile' , + 'uid' => $uid, + 'username' => $username, + 'bodydata' => json_encode($enventbodydata), + 'clid' =>$clid, + 'cid' =>0, + 'do' => 'cancle_collectfile', + 'do_obj' =>$filename, + 'dateline'=>TIMESTAMP + ]; + C::t('pichome_collectevent')->insert($enventdata); + $this->update_collect_thumb($clid); + } + return true; + } +} diff --git a/core/class/table/table_pichome_resources.php b/core/class/table/table_pichome_resources.php index 2b5333b..85cd471 100644 --- a/core/class/table/table_pichome_resources.php +++ b/core/class/table/table_pichome_resources.php @@ -29,12 +29,13 @@ public function insert($setarr) public function delete_by_appid($appid) { + $data = C::t('pichome_vapp')->fetch($appid); //$i = 0; $rids = []; - foreach (DB::fetch_all("select rid from %t where appid = %s limit 0,1000", array($this->_table, $appid)) as $v) { + foreach (DB::fetch_all("select rid from %t where appid = %s limit 0,100", array($this->_table, $appid)) as $v) { $rids[] = $v['rid']; } - if ($rids) $this->delete_by_rid($rids); + if ($rids) $this->delete_by_rid($rids,$data['deluid'],$data['delusername']); //return $i; } @@ -44,7 +45,7 @@ public function fetch_by_path($path) return DB::result_first("select * from %t where path = %s", array($this->_table, $path)); } - public function delete_by_rid($rids) + public function delete_by_rid($rids,$uid=0,$username='') { if (!is_array($rids)) $rids = (array)$rids; C::t('pichome_resources_attr')->delete_by_rid($rids); @@ -55,6 +56,9 @@ public function delete_by_rid($rids) C::t('pichome_share')->delete_by_rid($rids); C::t('pichome_ffmpeg_record')->delete($rids); C::t('pichome_imagickrecord')->delete($rids); + //$deldata = ['rids'=>$rids,'deluid'=>$uid,'delusername'=>$username]; + //Hook::listen('pichomedatadeleteafter',$deldata); + return $this->delete($rids); } @@ -121,7 +125,40 @@ public function fetch_data_by_rid($rid) $resourcesdata['realpath'] = $downshare[$resourcesdata['appid']]['path'] . BS . $resourcesdata['path']; return $resourcesdata; } + /*public function getdatabyrid($rid){ + global $Opentype; + $data = parent::fetch($rid); + $data['fsize'] = formatsize($data['size']); + $data['mtime'] = dgmdate(round($data['mtime'] / 1000), 'Y/m/d H:i'); + $data['dateline'] = dgmdate(round($data['dateline'] / 1000), 'Y/m/d H:i'); + $data['name'] = str_replace(strrchr($data['name'], "."), "", $data['name']); + $data['btime'] = dgmdate(round($data['btime'] / 1000), 'Y/m/d H:i'); + $data['dpath'] = dzzencode($data['rid'], '', 0, 0); + if (in_array($data['ext'], $Opentype['video'])) { + $data['opentype'] = 'video'; + } elseif (in_array($data['ext'], $Opentype['text'])) { + $data['opentype'] = 'text'; + } elseif (in_array($data['ext'], $Opentype['pdf'])) { + $data['opentype'] = 'pdf'; + } elseif (in_array($data['ext'], $Opentype['image'])) { + $data['opentype'] = 'image'; + } else { + $data['opentype'] = 'other'; + } + $attrdata = C::t('pichome_resources_attr')->fetch($rid); + $data = array_merge($data,$attrdata); + $colordata = C::t('pichome_palette')->fetch_colordata_by_rid($rid); + foreach ($colordata as $cv) { + $colorsarr[] = $cv; + } + $data['color'] = $colorsarr[0]; + //array_multisort($datas, 'rid', SORT_ASC, $rids); + foreach (C::t('pichome_resourcestag')->fetch_all_tag_by_rids($rids) as $k => $v) { + $datas[$k]['tags'] = $v; + // $datas[$k]['tags'] = '•'.implode('•',$v); + } + }*/ public function fetch_by_rid($rid) { global $Opentype; @@ -130,6 +167,7 @@ public function fetch_by_rid($rid) //获取所有库分享和下载权限 $downshare = C::t('pichome_vapp')->fetch_all_sharedownlod(); $attrdata = C::t('pichome_resources_attr')->fetch($rid); + if($attrdata['desc']) $attrdata['desc'] = strip_tags($attrdata['desc']); $resourcesdata = array_merge($resourcesdata, $attrdata); $resourcesdata['colors'] = C::t('pichome_palette')->fetch_colordata_by_rid($rid); $resourcesdata['ext'] = strtolower($resourcesdata['ext']); @@ -234,7 +272,7 @@ public function fetch_by_rid($rid) $resourcesdata['foldernames'] = C::t('pichome_folderresources')->get_foldername_by_rid($rid); $resourcesdata['tag'] = C::t('pichome_resourcestag')->fetch_tag_by_rid($rid); $resourcesdata['dpath'] = dzzencode($rid, '', 0, 0); - //print_r($resourcesdata);die; + return $resourcesdata; } @@ -306,6 +344,11 @@ public function getdatasbyrids($rids) $v['height'] = 128; } } + $thumbwidth = getglobal('config/pichomethumbwidth') ? getglobal('config/pichomethumbwidth') : 900; + $thumbheight = getglobal('config/pichomethumbheight') ? getglobal('config/pichomethumbheight') : 900; + $thumsizearr = $this->getImageThumbsize($v['width'],$v['height'],$thumbwidth,$thumbheight); + $v['thumbwidth'] = $thumsizearr[0]; + $v['thumbheight'] = $thumsizearr[1]; //文件真实地址 if ($downshare[$v['appid']]['iswebsitefile']) { $originalimg = str_replace(DZZ_ROOT, '', $downshare[$v['appid']]['path'] . BS . $v['path']); @@ -316,13 +359,50 @@ public function getdatasbyrids($rids) $v['realpath'] = getglobal('siteurl') . 'index.php?mod=io&op=getImg&path=' . dzzencode($originalimg, '', 0, 0); } - unset($v['path']); $returndata[] = $v; } return $returndata; } + public function getImageThumbsize($owidth,$oheight,$width,$height){ + if($owidth>$width || $oheight>$height){ + $or=$owidth/$oheight; + $r=$width/$height; + if($r>$or){ + if($oheight<$height){ + $height=$oheight; + $width=$owidth; + }else{ + + $width=ceil($height*$or); + if($width < 242){ + $width = 242; + $height = ceil($width/$or); + } + } + + }else{ + if($owidth<$width){ + $height=$oheight; + $width=$owidth; + }else{ + $height=ceil($width/$or); + $width = ceil($height*$or); + if($width < 242){ + $width = 242; + $height = ceil($width/$or); + } + } + } + }else{ + $width=$owidth; + $height=$oheight; + } + //Return the results + return array($width,$height); + + } public function geticondata_by_rid($rid) { $resourcesdata = DB::fetch_first("select r.rid,r.appid,r.hasthumb,r.ext,r.type,ra.path as fpath, diff --git a/core/core_version.php b/core/core_version.php index ecfd0a3..7e17eeb 100644 --- a/core/core_version.php +++ b/core/core_version.php @@ -11,8 +11,8 @@ } if(!defined('CORE_VERSION')) { - define('CORE_VERSION', 'beta3.1'); + define('CORE_VERSION', 'beta3.2'); define('CORE_VERSION_LEVEL', 'Pichome'); - define('CORE_RELEASE', '20211220'); - define('CORE_FIXBUG' , '03100000'); + define('CORE_RELEASE', '20220128'); + define('CORE_FIXBUG' , '03200000'); } \ No newline at end of file diff --git a/dzz/billfish/class/class_billfishexport.php b/dzz/billfish/class/class_billfishexport.php index d18f7ef..1c4a636 100644 --- a/dzz/billfish/class/class_billfishexport.php +++ b/dzz/billfish/class/class_billfishexport.php @@ -87,7 +87,7 @@ public function initExport() //修改导入状态为1 C::t('pichome_vapp')->update($this->appid, array('state' => 1)); //查询res_join_tag是否有文件id索引 - $fecthsql = "SELECT * FROM sqlite_master WHERE type = 'index';"; + $fecthsql = "SELECT * FROM sqlite_master WHERE type = 'index'"; $indexdata = $this->fetch_all($fecthsql); $indexarr = array_column($indexdata,'name'); //如果标签表iid没有索引创建res_join_tag_iid_idx索引 @@ -109,6 +109,23 @@ public function initExport() return array('success' => true); } + //获取文件可访问的真实地址 + public function getFileRealFileName($filepath,$filename){ + $charsetarr = ['GBK','GB18030']; + $returnname = $filename; + if(!is_file($filepath.BS.$filename)){ + foreach ($charsetarr as $v){ + $filemetadataname = diconv($filename, CHARSET, $v); + if(is_file($filepath.BS.$filemetadataname)){ + $returnname = $filemetadataname; + break; + } + } + } + return $returnname; + + } + public function execExport($force = false) { //开始页数 @@ -168,8 +185,9 @@ public function execExport($force = false) //定义属性表变量 $attrdata = []; $attrdata['desc'] = $v['note']; + $attrdata['link'] = $v['origin']; //将名字记入搜索字段 - $attrdata['searchval'] = $setarr['name'].$attrdata['desc']; + $attrdata['searchval'] = $setarr['name'].$attrdata['desc'].$attrdata['link']; //处理目录数据 if ($v['fid']) { $folderdata = $this->getFolderfid($v['fid']); @@ -186,9 +204,11 @@ public function execExport($force = false) $attrdata['path'] = $setarr['name']; } //目录数据处理完成 - + $attrdata['path'] = $this->getFileRealFileName($this->path,$attrdata['path']); //转码路径 记入属性表 - if (CHARSET != $this->charset) $attrdata['path'] = diconv($attrdata['path'],CHARSET, $this->charset);; + //$p = new Encode_Core(); + //$this->charset = $p->get_encoding($attrdata['path']); + //if (CHARSET != $this->charset) $attrdata['path'] = diconv($attrdata['path'],CHARSET, $this->charset);; //标签数据开始 diff --git a/dzz/class/class_encode.php b/dzz/class/class_encode.php index 97e2105..68df59d 100644 --- a/dzz/class/class_encode.php +++ b/dzz/class/class_encode.php @@ -1,118 +1,118 @@ - 127) { - if( ($v >= 228) && ($v <= 233) ){ - if( ($i+2) >= (strlen($str) - 1)) return true; // not enough characters - $v1 = ord( $str[$i+1] ); - $v2 = ord( $str[$i+2] ); - if( ($v1 >= 128) && ($v1 <=191) && ($v2 >=128) && ($v2 <= 191) ) - return false; - else - return true; //GB编码 - } - } - } - } - private function is_GBK($str){ - $s1 = iconv('gbk','utf-8',$str); - $s0 = iconv('utf-8','gbk',$s1); - if($s0 == $str){ - return true; - }else{ - return false; - } - } - /** - * 取得编码 - * @param string $str - * @return string $encoding - */ - public static function get_encoding($str){ - $ary = array(); - - //$ary[] = "ASCII"; - $ary[] = "UTF-8"; - $ary[] = "GB18030";//简体码 - $ary[] = "BIG-5";//繁体码 - $ary[] = "EUC-CN"; - $ary[] = "JIS";//日文编码 - $ary[] = "EUC-JP";//日文编码 - $encoding= self::detect_utf_encoding($str); - if(empty($encoding) && self::is_gb2312($str)) return 'GBK'; - if(empty($encoding)){ - $encoding=mb_detect_encoding($str,$ary); - } - if($encoding=='ASCII') $encoding='UTF-8'; - return $encoding; - } - - public function utf16_to_utf8($str) { - - $len = strlen($str); - $dec = ''; - for ($i = 0; $i < $len; $i += 2) { - $c = ($be) ? ord($str[$i]) << 8 | ord($str[$i + 1]) : - ord($str[$i + 1]) << 8 | ord($str[$i]); - if ($c >= 0x0001 && $c <= 0x007F) { - $dec .= chr($c); - } else if ($c > 0x07FF) { - $dec .= chr(0xE0 | (($c >> 12) & 0x0F)); - $dec .= chr(0x80 | (($c >> 6) & 0x3F)); - $dec .= chr(0x80 | (($c >> 0) & 0x3F)); - } else { - $dec .= chr(0xC0 | (($c >> 6) & 0x1F)); - $dec .= chr(0x80 | (($c >> 0) & 0x3F)); - } - } - return $dec; - } -} - -?> + 127) { + if( ($v >= 228) && ($v <= 233) ){ + if( ($i+2) >= (strlen($str) - 1)) return true; // not enough characters + $v1 = ord( $str[$i+1] ); + $v2 = ord( $str[$i+2] ); + if( ($v1 >= 128) && ($v1 <=191) && ($v2 >=128) && ($v2 <= 191) ) + return false; + else + return true; //GB编码 + } + } + } + } + private function is_GBK($str){ + $s1 = iconv('gbk','utf-8',$str); + $s0 = iconv('utf-8','gbk',$s1); + if($s0 == $str){ + return true; + }else{ + return false; + } + } + /** + * 取得编码 + * @param string $str + * @return string $encoding + */ + public static function get_encoding($str){ + $ary = array(); + + //$ary[] = "ASCII"; + $ary[] = "UTF-8"; + $ary[] = "GB18030";//简体码 + $ary[] = "BIG-5";//繁体码 + $ary[] = "EUC-CN"; + $ary[] = "JIS";//日文编码 + $ary[] = "EUC-JP";//日文编码 + $encoding= self::detect_utf_encoding($str); + //if(empty($encoding) && self::is_GBK($str)) return 'GBK'; + if(empty($encoding)){ + $encoding=mb_detect_encoding($str,$ary); + } + if($encoding=='ASCII') $encoding='UTF-8'; + return $encoding; + } + + public function utf16_to_utf8($str) { + + $len = strlen($str); + $dec = ''; + for ($i = 0; $i < $len; $i += 2) { + $c = ($be) ? ord($str[$i]) << 8 | ord($str[$i + 1]) : + ord($str[$i + 1]) << 8 | ord($str[$i]); + if ($c >= 0x0001 && $c <= 0x007F) { + $dec .= chr($c); + } else if ($c > 0x07FF) { + $dec .= chr(0xE0 | (($c >> 12) & 0x0F)); + $dec .= chr(0x80 | (($c >> 6) & 0x3F)); + $dec .= chr(0x80 | (($c >> 0) & 0x3F)); + } else { + $dec .= chr(0xC0 | (($c >> 6) & 0x1F)); + $dec .= chr(0x80 | (($c >> 0) & 0x3F)); + } + } + return $dec; + } +} + +?> diff --git a/dzz/pichome/ajax.php b/dzz/pichome/ajax.php index f2d6837..b6dc526 100644 --- a/dzz/pichome/ajax.php +++ b/dzz/pichome/ajax.php @@ -1497,4 +1497,35 @@ C::t('user_setting')->update_by_skey('pichomeimageexpanded',$pichomeimageexpanded); exit(json_encode(array('success' => true))); } +}elseif($operation == 'gethostip'){ + $iphost = []; + $os = PHP_OS; + if(preg_match('/^WIN(.+?)/i',$os)){ + $host= gethostname(); + }else{ + $host = $_SERVER['SERVER_NAME']; + } + $host = $_SERVER['SERVER_NAME']; + + $ip = gethostbyname($host); + $ip = filter_var($ip,FILTER_VALIDATE_IP); + if(!$ip || strpos($ip,'127') === 0){ + if(preg_match('/^WIN(.+?)/i',$os)){ + $host= gethostname(); + }else{ + $host = $_SERVER['SERVER_NAME']; + } + $ip = gethostbyname($host); + } + if($_SERVER['SERVER_PORT'] == 443){ + $siteurl = 'https://'.$_SERVER['SERVER_NAME']; + } elseif($_SERVER["SERVER_PORT"] == 80) { + $siteurl = 'http://'.$_SERVER['SERVER_NAME']; + + }else{ + $ip = $ip . ':' . $_SERVER["SERVER_PORT"]; + $siteurl = 'http://'.$_SERVER['SERVER_NAME'] . ':' . $_SERVER["SERVER_PORT"]; + } + $iphost = ['ip'=>$ip,'siteurl'=>$siteurl]; + exit(json_encode($iphost)); } diff --git a/dzz/pichome/class/class_eagleexport.php b/dzz/pichome/class/class_eagleexport.php index 9432bd2..10a13fc 100644 --- a/dzz/pichome/class/class_eagleexport.php +++ b/dzz/pichome/class/class_eagleexport.php @@ -144,7 +144,22 @@ public function initExport() return array('success' => true); } + //获取文件可访问的真实地址 + public function getFileRealFileName($filepath,$filename,$ext){ + $charsetarr = ['GBK','GB18030']; + $returnname = $filename; + if(!is_file($filepath.BS.$filename.'.'.$ext)){ + foreach ($charsetarr as $v){ + $filemetadataname = diconv($filename, CHARSET, $v); + if(is_file($filepath.BS.$filemetadataname.'.'.$ext)){ + $returnname = $filemetadataname; + break; + } + } + } + return $returnname; + } public function execExport($force = false) { $filedir = $this->path . BS.'images'; @@ -199,9 +214,7 @@ public function execExport($force = false) C::t('pichome_resources')->delete_by_rid($rid); } else{ - $p = new Encode_Core(); - $charset = $p->get_encoding($tmppath); - if (CHARSET != $charset) $filemetadataname = diconv($filemetadata['name'], CHARSET, $charset); + $filemetadataname = $this->getFileRealFileName($tmppath,$filemetadata['name'],$filemetadata['ext']); //文件名称 $filename = $filemetadataname . '.' . $filemetadata['ext']; //缩略图名称 @@ -339,10 +352,8 @@ public function execExport($force = false) $haspassword = C::t('pichome_folder')->check_haspasswrod($filemetadata['folders'], $this->appid); if (!$haspassword){ - $p = new Encode_Core(); - $charset = $p->get_encoding($tmppath); - if (CHARSET != $charset) $filemetadataname = diconv($filemetadata['name'], CHARSET, $charset); - + $filemetadataname = $this->getFileRealFileName($tmppath,$filemetadata['name'],$filemetadata['ext']); + //echo $filemetadataname;die; $filename = $filemetadataname . '.' . $filemetadata['ext']; $thumbname = $filemetadataname . '_thumbnail.png'; //echo $i.'middle:'.memory_get_usage()/1024 . '
'; diff --git a/dzz/pichome/class/class_localexport.php b/dzz/pichome/class/class_localexport.php index 7aefe07..09ed07d 100644 --- a/dzz/pichome/class/class_localexport.php +++ b/dzz/pichome/class/class_localexport.php @@ -175,36 +175,45 @@ public function execExport($force = false) $file = trim($file); $file = str_replace(array('/', './', '\\'), BS, $file); $filearr = explode("\t", $file); - $filepath = $filearr[0]; + $filerelativepath = $filearr[0]; + $filepath = str_replace($filedir . BS, '', $filerelativepath); + $p = new Encode_Core(); + $this->charset = $p->get_encoding($filepath); //如果是目录直接执行目录导入 if (isset($filearr[1]) && $filearr[1] == 'folder') { - $filepath = str_replace($filedir . BS, '', $filepath); if ($this->charset != CHARSET) $filepath = diconv($filepath, $this->charset, CHARSET); - $fid = $this->createfolerbypath($filepath); $spl_object->next(); continue; } else { - //生成rid - $rid = md5($filepath.$this->appid); + $hasrid = 0; + if($rid = DB::result_first("select rid from %t where path = %s and appid = %s", + array('pichome_resources_attr',$filepath,$this->appid))){ + $hasrid = 1; + }else{ + //生成rid + $rid = $this->createRid(); + } + $realfilepath = $filedir.BS.$filepath; //如果文件不存在则删除记录 - if (!is_file($filepath)) { - C::t('pichome_resources')->delete_by_rid($rid); + if (!is_file($realfilepath)) { + if($hasrid)C::t('pichome_resources')->delete_by_rid($rid); $this->filenum -= 1; } else { - - $mtime = filemtime($filepath); - $ctime = filectime($filepath); + //修改时间 + $mtime = filemtime($realfilepath); + //创建时间 + $ctime = filectime($realfilepath); //获取文件后缀 - $ext = substr(strrchr($filepath, '.'), 1); + $ext = substr(strrchr($realfilepath, '.'), 1); $ext = strtolower($ext); //获取文件类型 $type = getTypeByExt($ext); //获取文件大小 - $size = filesize($filepath); + $size = filesize($realfilepath); //获取图片信息,以取得宽高 - $imginfo = @getimagesize($filepath); + $imginfo = @getimagesize($realfilepath); //保存路径,用于之后获取文件使用 $savepath = str_replace(array('/', './', '\\'), '/', $filearr[0]); $savepath = str_replace($this->path . '/', '', $savepath); @@ -321,7 +330,17 @@ public function execExport($force = false) return array('success' => true); } - + //生成rid + public function createRid(){ + + //订单年月 + $ridmd = strtoupper(dechex(date('m'))) . date('d'); + //订单时间戳 + $ridms = substr(time(), -5) . substr(microtime(), 2, 5); + //订单号 + $rid = md5($ridmd.$ridms. sprintf('%02d', rand(0, 99)).$this->appid); + return $rid; + } //根据路径创建目录 public function createfolerbypath($path, $pfid = '') { diff --git a/dzz/pichome/css/mobile/common.css b/dzz/pichome/css/mobile/common.css index 9147fd3..119c19e 100644 --- a/dzz/pichome/css/mobile/common.css +++ b/dzz/pichome/css/mobile/common.css @@ -26,6 +26,29 @@ html,body,#dzzoffice{ padding: 0; overflow: hidden; } +.bs-main-container{ + height: 100%; + width: 100%; + overflow: hidden; +} +.pic-container{ + height: 100%; + width: 100%; + overflow: hidden; + +} +.pic-container .pic-container-scroll{ + height: 100%; + width: 100%; + overflow: auto; + position: relative; + padding-top: 46px; +} +.pic-container .img-container{ + min-height: 100% ; + position: relative; + padding: 0 4px; +} input::-webkit-input-placeholder { /* WebKit, Blink, Edge */ color : var(--tip-color); } @@ -45,10 +68,83 @@ input:-ms-input-placeholder { /* Internet Explorer 10-11 */ input::-ms-input-placeholder { /* Microsoft Edge */ color : var(--tip-color); } +[v-cloak] { + display: none; +} + +.page-popup{ + background: var(--bg-content) !important; +} +.van-action-sheet__cancel, .van-action-sheet__item{ + background-color: transparent; +} +.van-action-sheet__gap, +.van-action-sheet__cancel:active, +.van-action-sheet__item:active{ + background-color: var(--bg-poperHover); +} +.van-action-sheet__cancel{ + color: var(--header-text); +} +.custom-image.van-empty{ + position: absolute; + left: 0; + right: 0; + bottom: 0; + top: 0; + margin: auto; +} +.img-circle{ + width: 2.1875rem; + height: 2.1875rem; + border-radius: 50%; + vertical-align: middle; +} +.Topcarousel{ + border-radius: 50%; + text-align: center; + display: inline-block; + font-size: 1rem; + width: 2.1875rem; + height: 2.1875rem; + line-height: 2.1875rem; + color: #FFF; +} +#dzzoffice{ + position: relative; + background: var(--bg-content); +} +.pic-logo{ + height: 40px; + padding: 5px 0; +} +.pic-logo .h-left{ + height: 30px; + display: -webkit-box; + display: -webkit-flex; + display: flex; + align-items: center; + color: var(--header-text); + text-decoration: none; +} +.pic-logo .h-left img{ + max-width: 100%; + max-height: 100%; + margin-right: 10px; +} +.van-nav-bar__title{ + color: var(--header-text); +} .van-nav-bar__content{ /* 46px */ height: 46px; } +.van-nav-bar .van-icon{ + color: var(--content-textHover); +} +.van-nav-bar__content .van-nav-bar__text{ + color: var(--header-text); +} .van-popup.van-notify.van-notify--warning{ background-color: #ff976a; color: #fff; @@ -169,7 +265,9 @@ ul{ .van-cell::after{ border-color: var(--border-color-base); } - +.van-cell--clickable:active{ + background-color: var(--bg-poperHover); +} .van-search{ background-color: transparent; } @@ -189,6 +287,9 @@ ul{ background-color: transparent; color: var(--header-text); } +.van-sidebar-item.van-sidebar-item--disabled{ + opacity: 0.7; +} .van-sidebar-item--select{ color: var(--header-active); } @@ -267,4 +368,173 @@ ul{ to { transform: rotate(359deg) } +} +.van-cell-group{ + background-color: transparent; +} +.about-popup, +.my-popup{ + height: 100%; + width: 100%; + background: var(--bg-content); + color: var(--content-textHover); + overflow: hidden; + padding-top: 46px; +} +.about-popup .van-nav-bar, +.my-popup .van-nav-bar{ + position: absolute; + top: 0; + left: 0; + width: 100%; +} +.about-popup .scroll-box, +.my-popup .scroll-box{ + width: 100%; + height: 100%; + overflow: auto; + padding-top: 0.9375rem; +} +.my-popup .scroll-box .van-cell-group{ + background: transparent; +} +.my-popup .scroll-box .van-cell { + background: transparent; +} +.my-popup .scroll-box .van-cell::after{ + display: none; +} +.my-popup .scroll-box .van-cell .van-cell__right-icon{ + color: var(--header-text); +} + +.about-popup .aboutlogo{ + text-align: center; + padding-top: 3.125rem; + padding-bottom: 1.875rem; +} +.about-popup .aboutmessage{ + padding: 0 2.1875rem; +} +.about-popup .aboutmessage .aboutlist{ + margin-bottom: 1.25rem; + overflow: hidden; + font-size: 1rem; +} +.about-popup .aboutmessage .aboutlist .title{ + float: left; +} +.about-popup .aboutmessage .aboutlist .address{ + color: var(--color-primary); + font-size: 1rem; + vertical-align: sub; +} +@media screen and (min-width: 768px) { + .about-popup .aboutmessage{ + padding: 0 6.25rem; + } +} + +.pic-toolbar{ + position: fixed; + width: 100%; + left: 0; + padding: 0 8%; + transition: all .3s; + transition:all .3s; + -moz-transition:all .3s; /* Firefox 4 */ + -webkit-transition:all .3s; /* Safari and Chrome */ + -o-transition:all .3s; /* Opera */ + z-index: 100; +} +.pic-toolbar.footershow{ + bottom: 3%; + opacity: 1; +} +.pic-toolbar.footerhide{ + bottom: -2.9375rem; + opacity: 0; +} +.pic-toolbar .tabbar{ + display: -webkit-box; + display: -webkit-flex; + display: flex; + border-radius: 39px; + background: var(--bg-poper); + padding: 0.375rem 0; + color: var(--header-text); + /* box-shadow: 0px 0px 5px 1px var(--bg-poperHover); */ +} +.pic-toolbar .tab-item{ + -webkit-box-flex: 1; + -webkit-flex: 1; + flex: 1; + text-align: center; + font-size: 14px; +} +.pic-toolbar .tab-item .icon{ + font-size: var(--font-32); +} +.pic-toolbar .tab-item img{ + border-radius: 50%; + width: 2.1875rem; + height: 2.1875rem; + vertical-align: bottom; +} + +.van-popup{ + overflow: unset; +} +.van-popup .vam-popup-title{ + height: 40px; + font-weight: 700; + position: absolute; + top: -40px; + left: 0; + width: 100%; + padding: 0 12px; + font-size: 18px; + color: #FFFFFF; +} +.footer-popup{ + padding-bottom: 70px; +} +.footer-popup .btn-bottom{ + padding: 10px; + height: 70px; + position: absolute; + width: 100%; + bottom: 0; + left: 0; +} +.footer-popup .btn-bottom .van-button{ + width: auto; + padding: 15px 20px; +} +.footer-popup .popup-search-input .van-field__right-icon{ + padding-right: 0; +} +.footer-popup .popup-search-input .van-field__right-icon .van-icon{ + font-size: 1.25rem; + color: var(--header-active); +} + +.footer-popup .van-search-box{ + position: absolute; + top: 0; + left: 0; + width: 100%; +} +.footer-popup .van-search-box .van-field{ + border: 0; + font-size: 0.875rem; +} +.van-notify--success { + background-color: #07c160; +} +.van-notify--danger { + background-color: #ee0a24; +} +.van-notify--warning { + background-color: #ff976a; } \ No newline at end of file diff --git a/dzz/pichome/css/mobile/details.css b/dzz/pichome/css/mobile/details.css index 395b0aa..38d2902 100644 --- a/dzz/pichome/css/mobile/details.css +++ b/dzz/pichome/css/mobile/details.css @@ -1,27 +1,27 @@ [v-cloak] { display: none; -} +} #dzzoffice { position: relative; background: var(--bg-content); -} +} .detail-popup { - position: relative; - height: 100%; - padding-top: 46px; - padding-bottom: 60px; - overflow: hidden; - width: 100%; - background: var(--bg-content); + position: relative; + height: 100%; + padding-top: 46px; + padding-bottom: 60px; + overflow: hidden; + width: 100%; + background: var(--bg-content); color: var(--content-textHover); -} -.detail-popup.full{ - padding: 0; - background: #000000; -} -.detail-popup.NotFooter{ - padding-bottom: 0; -} +} +.detail-popup.full{ + padding: 0; + background: #000000; +} +.detail-popup.NotFooter{ + padding-bottom: 0; +} .header-top { position: fixed; top: 0; @@ -33,256 +33,252 @@ -webkit-transition: all .3s; -o-transition: all .3s; background: var(--bg-content); -} -.detail-popup.full .header-top{ - display: none; -} -.van-nav-bar .van-nav-bar__title, -.van-nav-bar .van-icon { - color: var(--content-textHover); -} - -.detail-popup .detail-popup-translate{ - position: relative; - height: 100%; -} +} +.detail-popup.full .header-top{ + display: none; +} + +.detail-popup .detail-popup-translate{ + position: relative; + height: 100%; +} .detail-popup .detail-popup-content { position: absolute; width: 100%; height: 100%; color: var(--content-textHover); -} +} .detail-popup .detail-popup-content.opacity { opacity: 0; -} +} .detail-popup .detail-popup-content.prev { right: 100%; margin-right: 10px; -} +} .detail-popup .detail-popup-content.next { left: 100%; margin-left: 10px; -} +} .detail-popup .detail-popup-content .detail-popup-img { height: 100%; position: relative; -} +} .detail-popup .detail-popup-content .video-box{ - width: 100%; - position: absolute; - top: 0; - left: 0; - right: 0; - bottom: 0; - margin: auto; + width: 100%; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + margin: auto; -} +} .detail-popup .detail-popup-content .img-box { height: 100%; width: 100%; overflow: hidden; position: relative; -} +} .detail-popup .detail-popup-content .image-viewer__img { position: absolute; z-index: 10; - transform-origin: 0 0; - margin: auto; - left: 0; - right: 0; - bottom: 0; - top: 0; - max-width: 100%; + transform-origin: 0 0; + margin: auto; + left: 0; + right: 0; + bottom: 0; + top: 0; + max-width: 100%; max-height: 100%; -} - +} + .detail-popup .detail-popup-content .image-viewer__img { - -webkit-user-drag: none; - -moz-user-drag: none; - -ms-user-drag: none; - user-drag: none; -} -.pinch-zoom-container{ - width: 100% !important; - height: 100% !important; -} -.detail-popup .detail-popup-content .image-viewer__img.opacity{ - opacity: 0; -} -.detail-popup .detail-popup-content .image-viewer__img.thumbnail{ - z-index: 5; -} -.detail-popup .footer-tabbar{ - position: fixed; - bottom: 0; - left: 0; - width: 100%; - height: 60px; - line-height: 60px; - text-align: center; - font-size: 1.75rem; - /* border-top: 1px solid var(--border-color-base); */ - display: -webkit-box; - display: -webkit-flex; - display: flex; - z-index: 10000; - background: var(--bg-content); -} -.detail-popup.full .footer-tabbar{ - display: none; -} + -webkit-user-drag: none; + -moz-user-drag: none; + -ms-user-drag: none; + user-drag: none; +} +.pinch-zoom-container{ + width: 100% !important; + height: 100% !important; +} +.detail-popup .detail-popup-content .image-viewer__img.opacity{ + opacity: 0; +} +.detail-popup .detail-popup-content .image-viewer__img.thumbnail{ + z-index: 5; +} +.detail-popup .footer-tabbar{ + position: fixed; + bottom: 0; + left: 0; + width: 100%; + height: 60px; + line-height: 60px; + text-align: center; + font-size: 1.75rem; + /* border-top: 1px solid var(--border-color-base); */ + display: -webkit-box; + display: -webkit-flex; + display: flex; + z-index: 10000; + background: var(--bg-content); +} +.detail-popup.full .footer-tabbar{ + display: none; +} .detail-popup .footer-tabbar .footer-tabbar-item { -webkit-box-flex: 1; -webkit-flex: 1; flex: 1; -} - - - - - -.detail-popup-message{ - width: 100%; - height: 100%; - position: absolute; - background: transparent; - color: var(--content-textHover); - padding-bottom: 60px; -} -.detail-popup-message.noPadding{ - padding-bottom: 0; -} - -.detail-popup-message .DetailPopup-content{ - padding: 0 1rem; - height: 100%; - overflow: auto; -} -.detail-popup-message .name{ +} + + + + + +.detail-popup-message{ + width: 100%; + height: 100%; + position: absolute; + background: transparent; + color: var(--content-textHover); + padding-bottom: 60px; +} +.detail-popup-message.noPadding{ + padding-bottom: 0; +} + +.detail-popup-message .DetailPopup-content{ + padding: 0 1rem; + height: 100%; + overflow: auto; +} +.detail-popup-message .name{ font-weight: 700; padding: 16px 0; overflow: hidden; white-space: nowrap; - text-overflow: ellipsis; -} -.detail-popup-message .block{ - margin-bottom: 1rem; -} + text-overflow: ellipsis; +} +.detail-popup-message .block{ + margin-bottom: 1rem; +} .detail-popup-message .block .title{ font-weight: 700; margin-bottom: 0.625rem; -} -.detail-popup-message .block .block-item.colors{ - display: -webkit-box; - display: -webkit-flex; - display: flex; +} +.detail-popup-message .block .block-item.colors{ + display: -webkit-box; + display: -webkit-flex; + display: flex; margin-left: -0.1875rem; -} -.detail-popup-message .block .block-item.colors .colors{ - -webkit-box-flex: 1; - -webkit-flex: 1; - flex: 1; - padding-left: 0.1875rem; -} -.detail-popup-message .block .block-item.colors .colors>div{ +} +.detail-popup-message .block .block-item.colors .colors{ + -webkit-box-flex: 1; + -webkit-flex: 1; + flex: 1; + padding-left: 0.1875rem; +} +.detail-popup-message .block .block-item.colors .colors>div{ position: relative; - border-radius: 0.5rem; + border-radius: 0.5rem; border: 1px solid var(--border-color-base); -} -@media screen and (max-width: 768px) { - .detail-popup-message .name{ - font-size: 1.125rem; - } - .detail-popup-message .block .title{ - font-size: 1rem; - } - .detail-popup-message .block .block-item.colors .colors>div{ - height: 1.5625rem; - } - .detail-popup-message .block .block-item.tag .tag{ - font-size: 0.875rem; - padding:0 0.5rem; - height: 1.875rem; - line-height: 1.875rem; - } - .detail-popup-message .block .block-item.link{ - font-size: 0.875rem; - height: 1.25rem; - line-height: 1.25rem; - } - .detail-popup-message .block .block-item.link i{ - font-size: 1.125rem; - } - .detail-popup-message .block .block-item .basic{ - font-size: 0.875rem; - } - -} -@media screen and (min-width: 768px) { - .detail-popup-message .name{ - font-size:1.25rem; - } - .detail-popup-message .block .title{ - font-size: 1.125rem; - } - .detail-popup-message .block .block-item.colors .colors>div{ - height: 1.875rem; - } - .detail-popup-message .block .block-item.tag .tag{ - font-size: 1rem; - padding:0 0.625rem; - height: 2.5rem; - line-height:2.5rem; - } - .detail-popup-message .block .block-item.link{ - font-size: 1rem; +} +@media screen and (max-width: 768px) { + .detail-popup-message .name{ + font-size: 1.125rem; + } + .detail-popup-message .block .title{ + font-size: 1rem; + } + .detail-popup-message .block .block-item.colors .colors>div{ + height: 1.5625rem; + } + .detail-popup-message .block .block-item.tag .tag{ + font-size: 0.875rem; + padding:0 0.5rem; + height: 1.875rem; + line-height: 1.875rem; + } + .detail-popup-message .block .block-item.link{ + font-size: 0.875rem; + height: 1.25rem; + line-height: 1.25rem; + } + .detail-popup-message .block .block-item.link i{ + font-size: 1.125rem; + } + .detail-popup-message .block .block-item .basic{ + font-size: 0.875rem; + } + +} +@media screen and (min-width: 768px) { + .detail-popup-message .name{ + font-size:1.25rem; + } + .detail-popup-message .block .title{ + font-size: 1.125rem; + } + .detail-popup-message .block .block-item.colors .colors>div{ height: 1.875rem; - line-height:1.875rem; - } - .detail-popup-message .block .block-item.link i{ - font-size: 1.75rem; - } - .detail-popup-message .block .block-item .basic{ - font-size: 1rem; - } -} -.detail-popup-message .block .block-item.tag{ - overflow: hidden; - margin-left: -0.625rem; -} -.detail-popup-message .block .block-item.tag .tag{ + } + .detail-popup-message .block .block-item.tag .tag{ + font-size: 1rem; + padding:0 0.625rem; + height: 2.5rem; + line-height:2.5rem; + } + .detail-popup-message .block .block-item.link{ + font-size: 1rem; + height: 1.875rem; + line-height:1.875rem; + } + .detail-popup-message .block .block-item.link i{ + font-size: 1.75rem; + } + .detail-popup-message .block .block-item .basic{ + font-size: 1rem; + } +} +.detail-popup-message .block .block-item.tag{ + overflow: hidden; + margin-left: -0.625rem; +} +.detail-popup-message .block .block-item.tag .tag{ float: left; min-width: 2.8125rem; text-align: center; border: 1px solid var(--border-color-base); border-radius: 0.5rem; - margin-left: 0.625rem; - color: var(--content-text); - margin-bottom: 0.3125rem; -} -.detail-popup-message .block .block-item.link{ + margin-left: 0.625rem; + color: var(--content-text); + margin-bottom: 0.3125rem; +} +.detail-popup-message .block .block-item.link{ color: var(--content-text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; position: relative; padding-right: 1.5625rem; -} -.detail-popup-message .block .block-item.link i{ +} +.detail-popup-message .block .block-item.link i{ position: absolute; right: 0; top: 0; -} -.detail-popup-message .block .block-item .basic{ - color: var(--content-text); - margin-bottom: 0.625rem; -} -.detail-popup-message .block .block-item .basic .record{ - text-align: right; -} -.detail-popup-message .block .block-item .basic .record .star{ - color: var(--stars); -} -.detail-popup-message .block .block-item .basic .record .star.active{ - color: var(--starsActive); +} +.detail-popup-message .block .block-item .basic{ + color: var(--content-text); + margin-bottom: 0.625rem; +} +.detail-popup-message .block .block-item .basic .record{ + text-align: right; +} +.detail-popup-message .block .block-item .basic .record .star{ + color: var(--stars); +} +.detail-popup-message .block .block-item .basic .record .star.active{ + color: var(--starsActive); } \ No newline at end of file diff --git a/dzz/pichome/css/mobile/image.css b/dzz/pichome/css/mobile/image.css new file mode 100644 index 0000000..eec206f --- /dev/null +++ b/dzz/pichome/css/mobile/image.css @@ -0,0 +1,342 @@ +#imgContainer .imgitem .imgchecked{ + z-index: 5; + position: absolute; + left: 5%; + top: 3%; +} +#imgContainer .imgitem .imgchecked .van-checkbox__icon{ + height: 25px; +} +#imgContainer .imgitem .imgchecked .van-checkbox__icon .van-icon{ + font-size: 20px; + background-color: #FFFFFF; +} +#imgContainer .imgitem .imgchecked .van-checkbox__icon.van-checkbox__icon--checked .van-icon{ + background-color: var(--color-primary); +} +#imgContainer .imgitem .imgbox .bottom-img-message{ + text-align: center; + color: var(--content-text); + overflow: hidden; + max-height: 65px; + padding: 0 6px; +} +#imgContainer .imgitem .imgbox .bottom-img-message .name { + max-height: 45px; + display: -webkit-box; + display: -webkit-flex; + display: flex; + overflow: hidden; + justify-content: flex-end; +} +#imgContainer .imgitem .imgbox .bottom-img-message .name .text{ + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-line-clamp: 2; + font-size: 0.875rem; + width: 100%; + height: 35px; + margin-top: 10px; + word-wrap: break-word; +} +#imgContainer .imgitem .imgbox .bottom-img-message .name .circulars{ + color: var(--content-text); + font-size: 16px; + min-width: 45px; + height: 35px; + text-align: center; + line-height: 35px; +} +#imgContainer .imgitem .imgbox .bottom-img-message .other { + font-size: 0.75rem; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + height: 21px; + padding-top: 5px; + color: var(--content-textMessage); +} +#imgContainer .imgitem .imgbox .bottom-img-message .other .score{ + color: var(--stars); +} +#imgContainer .imgitem .imgbox .bottom-img-message .other .score.active{ + color: var(--starsActive); +} +#imgContainer .imgitem .imgbox .annotation{ + position: absolute; + right: 5px; + top: 5px; + font-size: 14px; + width: 22px; + height: 22px; + border: 2px solid #FFFFFF; + border-radius: 50%; + color: #FFFFFF; + text-align: center; + line-height: 20px; + background: var(--color-primary); +} +#imgContainer{ + position: relative; + margin: 0 auto; +} +#imgContainer .imgitem{ + position: absolute; + /* transition:all .2s; */ +} +#imgContainer .imgitem .imgbox { + padding-left: 4px; + padding-right: 4px; +} +#imgContainer .imgitem .imgbox .imgbox-border { + position: relative; + overflow: hidden; + cursor: zoom-in; + /* min-height: 120px; */ + height: 100%; +} +#imgContainer .imgitem .imgbox .imgbox-border.radius{ + border-radius: 18px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black { + width: 100%; + height: 100%; + position: relative; + display: -webkit-box; + display: -webkit-flex; + display: flex; + justify-content: center; + align-items: center; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black .bck{ + width: 100%; + height: 100%; + display: none; + background: var(--bg-poper); + top: 0; + left: 0; + position: absolute; + opacity: 0.7; +} +#imgContainer .imgitem .imgbox .imgbox-border .img { + max-width: 100%; + max-height: 100%; + width: auto; + height: auto; + border-radius: 18px; +} +#imgContainer .imgitem .imgbox .imgbox-border .img.opacity{ + opacity: 0; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box{ + display: none; + position: absolute; + z-index: 2; + width: 45px; + height: 45px; + border-radius: 50%; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box .circular-item{ + width: 45px; + height: 45px; + border-radius: 50%; + color: #333; + z-index: 100; + font-size: 21px; + text-align: center; + line-height: 45px; + background: #ffffff; + position: absolute; + transition: top .3s ease-in-out,left .3s ease-in-out; + /* transition: all .3s ease-in-out; */ + top: -22.5px; + left: -22.5px; + transform-origin: 0px; + /* transition-delay: 0.02s; */ +} + + +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed{ + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 100; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .bck{ + display: block; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .img{ + position: absolute; + z-index: 2; + max-width: inherit; + max-height: inherit; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box{ + display: block; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box .round{ + position: absolute; + width: 45px; + height: 45px; + border-radius: 50%; + background: transparent; + left: 0px; + top: 0px; + border: 3px solid var(--bg-poper); +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box .circular-item-box{ + position: absolute; + left: -67.5px; + top: -67.5px; + border: 90px solid transparent; +} + + +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top .circular-item.first{ + top: -22.5px; + left: -22.5px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top .circular-item.two{ + top: 0px; + left: -80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top .circular-item.three{ + top: -22.5px; + left: -138.5px; +} + + +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box .circular-item-box .icon{ + display: block; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top .circular-item.first{ + transform: rotate(0deg); + top: -80px; + left: -80px; + transform-origin: 80px 80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top .circular-item.two{ + transform: rotate(45deg); + top: -80px; + left: -80px; + transform-origin: 80px 80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top .circular-item.two .icon{ + transform: rotate(-45deg); +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top .circular-item.three{ + transform: rotate(90deg); + top: -80px; + left: -80px; + transform-origin: 80px 80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top .circular-item.three .icon{ + transform: rotate(-90deg); +} + + +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.right .circular-item.first{ + top: -80.5px; + left: 1px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.right .circular-item.two{ + top: -22.5px; + left: -22.5px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.right .circular-item.three{ + top: 0px; + left: -80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.first{ + transform: rotate(-45deg); + top: -80px; + left: -80px; + transform-origin: 80px 80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.first .icon{ + transform: rotate(45deg); +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.two{ + transform: rotate(0deg); + top: -80px; + left: -80px; + transform-origin: 80px 80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.two .icon{ + transform: rotate(0deg); +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.three{ + transform: rotate(45deg); + top: -80px; + left: -80px; + transform-origin: 80px 80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.three .icon{ + transform: rotate(-45deg); +} + + + + +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.left .circular-item.first{ + top: 0px; + left: -80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.left .circular-item.two{ + top: -22.5px; + left: -136.5px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.left .circular-item.three{ + left: -160px; + top: -80px; +} + +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.first{ + transform: rotate(45deg); + top: -80px; + left: -80px; + transform-origin: 80px 80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.first .icon{ + transform: rotate(-45deg); +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.two{ + transform: rotate(90deg); + top: -80px; + left: -80px; + transform-origin: 80px 80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.two .icon{ + transform: rotate(-90deg); +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.three{ + transform: rotate(135deg); + top: -80px; + left: -80px; + transform-origin: 80px 80px; +} +#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.three .icon{ + transform: rotate(-135deg); +} + +@media screen and (min-width: 768px) { + .#imgContainer .imgitem { + width: 33.3333%; + } +} + +@media screen and (min-width: 992px) { + .#imgContainer .imgitem { + width: 25%; + } +} + +@media screen and (min-width: 1024px) { + .#imgContainer .imgitem { + width: 20%; + } +} \ No newline at end of file diff --git a/dzz/pichome/css/mobile/index.css b/dzz/pichome/css/mobile/index.css index f6a8648..d3f488f 100644 --- a/dzz/pichome/css/mobile/index.css +++ b/dzz/pichome/css/mobile/index.css @@ -1,938 +1,157 @@ -[v-cloak] { - display: none; -} -#dzzoffice{ - position: relative; - background: var(--bg-content); -} -.van-tree-select__content{ - background-color: transparent; -} -.custom-image.van-empty{ - position: absolute; - left: 0; - right: 0; - bottom: 0; - top: 0; - margin: auto; -} -.van-popup{ - overflow: unset; -} -.van-popup .vam-popup-title{ - height: 40px; - font-weight: 700; - position: absolute; - top: -40px; - left: 0; - width: 100%; - padding: 0 12px; - font-size: 18px; - color: #FFFFFF; -} -.conter-toast{ - z-index: 5001 !important; -} -.notScreen{ - width: 100%; - height: 100%; - position: relative; -} -.notScreen>div{ - height: 80px; - text-align: center; - margin: auto; - position: absolute; - top: 0; - bottom: 0; - right: 0; - left: 0; - font-size: var(--font-14); - color: var(--header-text); -} -.notScreen>div img{ - width: 3.125rem; - height: 3.125rem; -} -.screen-textarea{ - border-radius: 8px; -} -#dzz_avatar_img{ + +.van-tree-select__content{ + background-color: transparent; +} + +.conter-toast{ + z-index: 5001 !important; +} + +.screen-textarea{ + border-radius: 8px; +} +#dzz_avatar_img{ width: 2.1875rem; height: 2.1875rem; - display: inline-block; -} -#dzz_avatar_img .Topcarousel{ - width: 2.1875rem; - height: 2.1875rem; - display: inline-block; - line-height: 2.1875rem; - border-radius: 50%; - color: #FFFFFF; -} -.library-box{ - color: var(--header-text); -} -.van-nav-bar .library-box .van-icon{ - color: var(--header-text); -} -.header-top{ - position: fixed; - top: 0; - left: 0; - width: 100%; - transition: all .3s; - transition: all .3s; - -moz-transition: all .3s; - -webkit-transition: all .3s; - -o-transition: all .3s; - background: var(--bg-content); -} -.header-top.headerhide{ - top: -46px; - opacity: 0; -} -.header-top .van-dropdown-menu__bar{ - height: 46px; -} -.footer-popup{ - padding-bottom: 70px; -} -.footer-popup .btn-bottom{ - padding: 10px; - height: 70px; - position: absolute; - width: 100%; - bottom: 0; - left: 0; -} -.footer-popup .btn-bottom .van-button{ - width: auto; - padding: 15px 20px; -} -.footer-popup .popup-search-input .van-field__right-icon{ - padding-right: 0; -} -.footer-popup .popup-search-input .van-field__right-icon .van-icon{ - font-size: 1.25rem; - color: var(--header-active); -} -.seasrch-popup{ - padding-top: 56px; -} -.footer-popup .van-search-box{ - position: absolute; - top: 0; - left: 0; - width: 100%; -} -.footer-popup .van-search-box .van-field{ - border: 0; - font-size: 0.875rem; -} - -.seasrch-popup .search-val-box{ - padding: 0 12px; - height: 100%; - overflow: auto; - position: relative; -} -.seasrch-popup .search-val-box .search-host{ - overflow: hidden; - position: relative; - margin-left: -12px; -} -.seasrch-popup .search-val-box .search-host-list{ - height: 5rem; - border-radius: 8px; - text-align: center; - background-position: 50%; - background-repeat: no-repeat; - background-size: cover; - margin-bottom: 0.625rem; - position: relative; - margin-left: 12px; - float: left; -} -@media screen and (max-width: 1024px) { - .seasrch-popup .search-val-box .search-host-list{ - width: 46.6%; - } -} -@media screen and (min-width: 1024px) { - .seasrch-popup .search-val-box .search-host-list{ - width: 13.75rem; - } -} -.seasrch-popup .search-val-box .search-host-list .bg{ - position: absolute; - left: 0; - top: 0; - width: 100%; - height: 100%; - background: rgb(0, 0, 0, .3); - border-radius: 8px; -} -.seasrch-popup .search-val-box .search-host-list .text{ - position: absolute; - left: 0; - top: 0; - width: 100%; - height: 100%; - padding: 8px; - font-size: 16px; - color: #FFFFFF; - font-weight: 700; + display: inline-block; +} + +.library-box{ + color: var(--header-text); +} +.van-nav-bar .library-box .van-icon{ + color: var(--header-text); +} +.header-top{ + position: fixed; + top: 0; + left: 0; + width: 100%; + transition: all .3s; + transition: all .3s; + -moz-transition: all .3s; + -webkit-transition: all .3s; + -o-transition: all .3s; + background: var(--bg-content); +} +.header-top.headerhide{ + top: -46px; + opacity: 0; +} +.header-top .van-dropdown-menu__bar{ + height: 46px; +} + +.seasrch-popup{ + padding-top: 56px; +} +.seasrch-popup .search-val-box{ + padding: 0 12px; + height: 100%; + overflow: auto; + position: relative; +} +.seasrch-popup .search-val-box .search-host{ + overflow: hidden; + position: relative; + margin-left: -12px; +} +.seasrch-popup .search-val-box .search-host-list{ + height: 5rem; + border-radius: 8px; + text-align: center; + background-position: 50%; + background-repeat: no-repeat; + background-size: cover; + margin-bottom: 0.625rem; + position: relative; + margin-left: 12px; + float: left; +} +@media screen and (max-width: 1024px) { + .seasrch-popup .search-val-box .search-host-list{ + width: 46.6%; + } +} +@media screen and (min-width: 1024px) { + .seasrch-popup .search-val-box .search-host-list{ + width: 13.75rem; + } +} +.seasrch-popup .search-val-box .search-host-list .bg{ + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + background: rgb(0, 0, 0, .3); + border-radius: 8px; +} +.seasrch-popup .search-val-box .search-host-list .text{ + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + padding: 8px; + font-size: 16px; + color: #FFFFFF; + font-weight: 700; display: -webkit-box; display: -webkit-flex; - display: flex; - justify-content: center; - align-items: center; - cursor: pointer; - text-align: center; - z-index: 1; -} -.seasrch-popup .search-val-box .highlight{ - color: var(--header-active); -} -.sort-popup .van-popup__close-icon--top-right, -.screen-popup .van-popup__close-icon--top-right { - top: 10px; - right: 10px; -} -/* .sort-popup .van-tree-select{ - height: calc(100% - 41px) !important; - height: -moz-calc(100% - 41px) !important; - height: -webkit-calc(100% - 41px) !important; -} */ -.screen-popup .van-tree-select{ -} -.screen-popup .van-tree-select .van-sidebar{ - width: 6rem; - -webkit-box-flex: initial; - -webkit-flex: initial; - flex: initial; -} -.screen-popup .van-tree-select__content{ - height: 100%; - overflow: hidden; - position: relative; - background-color: transparent; -} -.van-popup .van-tree-select__content .screen-item-box{ - height: 100%; - width: 100%; - position: relative; - overflow: hidden; - padding-top: 56px; -} -.van-popup .van-tree-select__content .screen-item .screen-item-option-box{ - padding: 0px 8px; -} -.van-popup .van-tree-select__content .screen-item .screen-item-option-box .screen-item-option{ - padding: 10px 16px; - margin-bottom: 8px; - border-radius: 8px; -} -.van-popup .van-tree-select__content .screen-item .screen-item-option-box .screen-item-option.active{ - background: var(--bg-poperHover); -} -.screen-popup .van-tree-select__content .screen-item{ - height: 100%; - overflow: auto; - padding: 0px 10px; -} -.screen-popup .van-tree-select__content .screen-item .swip-row{ - border: 1px solid var(--border-color-base); - border-radius: 18px; - overflow: hidden; -} -.screen-popup .van-tree-select__content .screen-item .swip-row .swip{ - height: 30px; - line-height: 30px; - text-align: center; - background-color: var(--bg-input); - color: var(--header-text); -} -.screen-popup .van-tree-select__content .screen-item .swip-row .swip.active{ - background: var(--color-primary); - color: #FFFFFF; -} -.van-popup .van-tree-select__content .screen-item .van-cell-group .van-cell.van-cell-tag{ - margin-bottom: 6px; - border-radius: 999px; -} -.van-popup .van-tree-select__content .screen-item .van-cell-group .van-cell.van-cell-tag.active{ - background-color: var(--bg-poperHover); -} -.sort-popup .van-tree-select__content .screen-item .van-cell-group, -.screen-popup .van-tree-select__content .screen-item .van-cell-group{ - background-color: transparent; -} -.sort-popup .van-tree-select__content .screen-item .van-cell-group .van-cell, -.screen-popup .van-tree-select__content .screen-item .van-cell-group .van-cell{ - background-color: transparent; -} - -.van-calendar__day--end, .van-calendar__day--multiple-middle, .van-calendar__day--multiple-selected, .van-calendar__day--start, .van-calendar__day--start-end{ - background-color: var(--color-primary); -} -.screen-popup .van-hairline--top-bottom::after, .screen-popup .van-hairline-unset--top-bottom::after { - border-width: 0; -} -.sort-popup .van-hairline--top-bottom::after, .sort-popup .van-hairline-unset--top-bottom::after { - border-width: 0; -} -.screen-popup .van-tree-select__content .screen-item .color-box .quick{ - overflow: hidden; - /* margin-left: -10px; */ -} -.screen-popup .van-tree-select__content .screen-item .color-box .quick .quick-list-box{ - width: 20%; - margin-bottom: 0.1875rem; - padding: 0 0.1875rem; - display: inline-block; - -} -.screen-popup .van-tree-select__content .screen-item .color-box .quick .quick-list{ -/* float: left; - height: calc(20% / 2); - width: 20%; - height: 2.5rem; - width: 2.5rem; - z-index: 1; - border-radius: 50%; - margin-bottom: 0.625rem; - margin-left: 0.625rem; - border: 1px solid transparent; - position: relative; */ - height: 0; - padding: 25% 0; - position: relative; - border-radius: 8px; -} -.screen-popup .van-tree-select__content .screen-item .color-box .quick .quick-list .van-icon{ - position: absolute; - color: #FFFFFF; - margin: auto; - top: 0; - left: 0; - bottom: 0; - right: 0; -} -@media screen and (max-width: 768px) { - .screen-popup .van-tree-select__content .screen-item .color-box .quick .quick-list .van-icon{ - font-size: 18px; - width: 18px; - height: 18px; - } -} -@media screen and (min-width: 768px) { - .screen-popup .van-tree-select__content .screen-item .color-box .quick .quick-list .van-icon{ - font-size: 30px; - width: 30px; - height: 30px; - } -} -.screen-popup .van-tree-select__content .screen-item .color-box .color-input{ - position: relative; - margin-bottom: 0.9375rem; -} -.screen-popup .van-tree-select__content .screen-item .color-box .color-input .van-field{ - /* padding: 0; */ - /* height: 35px; */ - padding-left: 35px; - /* height: 35px; */ - border-radius: 8px; -} -.screen-popup .van-tree-select__content .screen-item .color-box .color-input .color-show{ - position: absolute; - width: 18px; - height: 18px; - z-index: 1; - border-radius: 6px; - margin-top: auto; - margin-bottom: auto; - top: 0; - bottom: 0; - left: 8px; - border: 1px solid transparent; -} -.screen-popup .van-tree-select__content .screen-item .color-box .color-input .color-show.border{ - border: 1px solid var(--border-color-base); -} -.screen-popup .van-tree-select__content .screen-item .color-box .color-input .van-field .van-field__button{ - padding-left: 8px; - line-height: 35px; - padding-right: 8px; - border-left: 1px solid var(--border-color-base); -} -.screen-popup .van-tree-select__content .screen-item .color-box .color-input .van-field .van-field__button img{ - vertical-align: sub; - width: 16px; - height: 16px; -} -.screen-popup .van-tree-select__content .screen-item .color-box .color-slider{ - display: -webkit-box; - display: -webkit-flex; - display: flex; - align-items: center; - padding: 15px 0; -} -.screen-popup .van-calendar__popup .van-button--danger{ - background-color: var(--color-primary); - border-color: var(--color-primary); -} -.screen-popup .van-calendar__popup .van-calendar__month-mark{ - opacity: 0.5; -} - -.screen-popup .van-tree-select__content .van-tabs{ - height: 100%; -} -.screen-popup .van-tree-select__content .van-tabs--line .van-tabs__wrap{ - /* border-bottom: 1px solid var(--slider-line); */ - padding-right: 8px; - padding-left: 8px; -} -.screen-popup .van-tree-select__content .van-tabs .van-tabs__content{ - height: calc(100% - 44px); - height: -moz-calc(100% - 44px); - height: -webkit-calc(100% - 44px); -} -.screen-popup .van-tree-select__content .van-tabs .van-tabs__content .van-tab__pane{ - height: 100%; - padding-top: 10px; - overflow: hidden; -} - -.screen-popup .van-tree-select__content .van-tabs__nav{ - background-color: transparent; -} -.screen-popup .van-tree-select__content .van-tabs__nav .van-tab{ - color: var(--header-text); -} -.screen-popup .van-tree-select__content .van-tabs__nav .van-tab.van-tab--active{ - color: var(--header-active); -} -.screen-popup .van-tree-select__content .van-cell .num{ - margin-right: 6px; -} -.sort-popup .van-tree-select__content .van-cell::after, -.screen-popup .van-tree-select__content .van-cell::after{ - display: none; -} - -.screen-popup .screen-classify-collapse .van-cell{ - background-color: transparent; - margin-bottom: 6px; -} -.screen-popup .screen-classify-collapse .van-collapse-item.active>.van-cell{ - background-color: var(--bg-poperHover); - border-radius: 999px; -} -.screen-popup .screen-classify-collapse .van-hairline--top-bottom::after, -.screen-popup .screen-classify-collapse .van-collapse-item--border::after{ - display: none; -} -.screen-popup .screen-classify-collapse .van-collapse-item__content{ - background-color: transparent; - padding: 0; - padding-left: 1rem; -} -.screen-popup .screen-classify-collapse .van-cell__value{ - flex: none; -} -.van-calendar__day--middle{ - color: var(--header-active); -} -.van-calendar__day--start{ - border-radius: 16px 0 0 16px; -} -.van-calendar__day--end{ - border-radius: 0 16px 16px 0; -} -.screen-cell-input{ - margin-bottom: 16px; - border-radius: 8px; -} -.screen-cell-input::after{ - display: none; -} -.screen-cell-input .van-field{ - border-radius: 8px; -} -.screen-cell-input .van-field{ - border-radius: 8px; -} -.library-actionsheet .mint-actionsheet-list{ - max-height: 400px; - overflow: auto; -} -.pic-logo{ - height: 40px; - padding: 5px 0; -} -.pic-logo .h-left{ + display: flex; + justify-content: center; + align-items: center; + cursor: pointer; + text-align: center; + z-index: 1; +} +.seasrch-popup .search-val-box .highlight{ + color: var(--header-active); + font-weight: 700; +} + + + +.library-actionsheet .mint-actionsheet-list{ + max-height: 400px; + overflow: auto; +} +.pic-logo{ + height: 40px; + padding: 5px 0; +} +.pic-logo .h-left{ height: 30px; - display: -webkit-box; - display: -webkit-flex; + display: -webkit-box; + display: -webkit-flex; display: flex; align-items: center; color: var(--header-text); - text-decoration: none; -} -.pic-logo .h-left img{ - max-width: 100%; - max-height: 100%; - margin-right: 10px; -} -.pic-container{ - height: 100%; - width: 100%; - overflow: hidden; - -} -.pic-container .pic-container-scroll{ - height: 100%; - width: 100%; - overflow: auto; - position: relative; - padding-top: 46px; -} -.pic-container .img-container{ - min-height: 100% ; - position: relative; - padding: 0 4px; -} -.pic-toolbar{ - position: fixed; - width: 100%; - left: 0; - padding: 0 8%; - transition: all .3s; - transition:all .3s; - -moz-transition:all .3s; /* Firefox 4 */ - -webkit-transition:all .3s; /* Safari and Chrome */ - -o-transition:all .3s; /* Opera */ -} -.pic-toolbar.footershow{ - bottom: 3%; - opacity: 1; -} -.pic-toolbar.footerhide{ - bottom: -2.9375rem; - opacity: 0; -} -.pic-toolbar .tabbar{ - display: -webkit-box; - display: -webkit-flex; - display: flex; - border-radius: 39px; - background: var(--bg-poper); - padding: 0.375rem 0; - color: var(--header-text); - /* box-shadow: 0px 0px 5px 1px var(--bg-poperHover); */ -} -.pic-toolbar .tab-item{ - -webkit-box-flex: 1; - -webkit-flex: 1; - flex: 1; - text-align: center; - font-size: 14px; -} -.pic-toolbar .tab-item .icon{ - font-size: var(--font-32); -} -.pic-toolbar .tab-item img{ - border-radius: 50%; - width: 2.1875rem; - height: 2.1875rem; - vertical-align: bottom; -} - - -#imgContainer .imgitem .imgbox .bottom-img-message{ - text-align: center; - color: var(--content-text); - overflow: hidden; - max-height: 65px; -} -#imgContainer .imgitem .imgbox .bottom-img-message .name { - overflow: hidden; - text-overflow: ellipsis; - display: -webkit-box; - -webkit-box-orient: vertical; - -webkit-line-clamp: 2; - font-size: 0.875rem; - margin-top: 10px; - width: 100%; - max-height: 35px; -} -#imgContainer .imgitem .imgbox .bottom-img-message .other { - font-size: 0.75rem; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - height: 21px; - padding-top: 5px; - color: var(--content-textMessage); -} -#imgContainer .imgitem .imgbox .bottom-img-message .other .score{ - color: var(--stars); -} -#imgContainer .imgitem .imgbox .bottom-img-message .other .score.active{ - color: var(--starsActive); -} -#imgContainer .imgitem .imgbox .annotation{ - position: absolute; - right: 5px; - top: 5px; - font-size: 14px; - width: 22px; - height: 22px; - border: 2px solid #FFFFFF; - border-radius: 50%; - color: #FFFFFF; - text-align: center; - line-height: 20px; - background: var(--color-primary); -} -#imgContainer{ - position: relative; - margin: 0 auto; -} -#imgContainer .imgitem{ - position: absolute; - /* transition:all .2s; */ -} -#imgContainer .imgitem .imgbox { - padding-left: 4px; - padding-right: 4px; -} -#imgContainer .imgitem .imgbox .imgbox-border { - position: relative; - overflow: hidden; - cursor: zoom-in; - min-height: 120px; - height: 100%; -} -#imgContainer .imgitem .imgbox .imgbox-border.radius{ - border-radius: 18px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black { - width: 100%; - height: 100%; - position: relative; - display: -webkit-box; - display: -webkit-flex; - display: flex; - justify-content: center; - align-items: center; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black .bck{ - width: 100%; - height: 100%; - display: none; - background: var(--bg-poper); - top: 0; - left: 0; - position: absolute; - opacity: 0.7; -} -#imgContainer .imgitem .imgbox .imgbox-border .img { - max-width: 100%; - max-height: 100%; - width: auto; - height: auto; - border-radius: 18px; -} -#imgContainer .imgitem .imgbox .imgbox-border .img.opacity{ - opacity: 0; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box{ - display: none; - position: absolute; - z-index: 2; - width: 45px; - height: 45px; - border-radius: 50%; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box .circular-item{ - width: 45px; - height: 45px; - border-radius: 50%; - color: #333; - z-index: 100; - font-size: 21px; - text-align: center; - line-height: 45px; - background: #ffffff; - position: absolute; - transition: top .3s ease-in-out,left .3s ease-in-out; - /* transition: all .3s ease-in-out; */ - top: -22.5px; - left: -22.5px; - transform-origin: 0px; - /* transition-delay: 0.02s; */ -} - - -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed{ - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100%; - z-index: 100; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .bck{ - display: block; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .img{ - position: absolute; - z-index: 2; - max-width: inherit; - max-height: inherit; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box{ - display: block; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box .round{ - position: absolute; - width: 45px; - height: 45px; - border-radius: 50%; - background: transparent; - left: 0px; - top: 0px; - border: 3px solid var(--bg-poper); -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box .circular-item-box{ - position: absolute; - left: -67.5px; - top: -67.5px; - border: 90px solid transparent; -} - - -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top .circular-item.first{ - top: -22.5px; - left: -22.5px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top .circular-item.two{ - top: 0px; - left: -80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top .circular-item.three{ - top: -22.5px; - left: -138.5px; -} - - -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box .circular-item-box .icon{ - display: block; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top .circular-item.first{ - transform: rotate(0deg); - top: -80px; - left: -80px; - transform-origin: 80px 80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top .circular-item.two{ - transform: rotate(45deg); - top: -80px; - left: -80px; - transform-origin: 80px 80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top .circular-item.two .icon{ - transform: rotate(-45deg); -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top .circular-item.three{ - transform: rotate(90deg); - top: -80px; - left: -80px; - transform-origin: 80px 80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top .circular-item.three .icon{ - transform: rotate(-90deg); -} - - -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.right .circular-item.first{ - top: -80.5px; - left: 1px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.right .circular-item.two{ - top: -22.5px; - left: -22.5px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.right .circular-item.three{ - top: 0px; - left: -80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.first{ - transform: rotate(-45deg); - top: -80px; - left: -80px; - transform-origin: 80px 80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.first .icon{ - transform: rotate(45deg); -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.two{ - transform: rotate(0deg); - top: -80px; - left: -80px; - transform-origin: 80px 80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.two .icon{ - transform: rotate(0deg); -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.three{ - transform: rotate(45deg); - top: -80px; - left: -80px; - transform-origin: 80px 80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.right .circular-item.three .icon{ - transform: rotate(-45deg); -} - - - - -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.left .circular-item.first{ - top: 0px; - left: -80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.left .circular-item.two{ - top: -22.5px; - left: -136.5px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black .circular-box.top.left .circular-item.three{ - left: -160px; - top: -80px; -} - -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.first{ - transform: rotate(45deg); - top: -80px; - left: -80px; - transform-origin: 80px 80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.first .icon{ - transform: rotate(-45deg); -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.two{ - transform: rotate(90deg); - top: -80px; - left: -80px; - transform-origin: 80px 80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.two .icon{ - transform: rotate(-90deg); -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.three{ - transform: rotate(135deg); - top: -80px; - left: -80px; - transform-origin: 80px 80px; -} -#imgContainer .imgitem .imgbox .imgbox-border .div-black.fixed .circular-box.top.left .circular-item.three .icon{ - transform: rotate(-135deg); -} - -@media screen and (min-width: 768px) { - .#imgContainer .imgitem { - width: 33.3333%; - } -} - -@media screen and (min-width: 992px) { - .#imgContainer .imgitem { - width: 25%; - } -} - -@media screen and (min-width: 1024px) { - .#imgContainer .imgitem { - width: 20%; - } -} -.van-nav-bar .van-icon{ - color: var(--content-textHover); -} -.van-nav-bar .van-nav-bar__title{ - color: var(--content-textHover); -} - - - - - - - - -.about-popup, -.my-popup{ - height: 100%; - width: 100%; - background: var(--bg-content); - color: var(--content-textHover); - overflow: hidden; - padding-top: 46px; -} -.about-popup .van-nav-bar, -.my-popup .van-nav-bar{ - position: absolute; - top: 0; - left: 0; - width: 100%; -} -.about-popup .scroll-box, -.my-popup .scroll-box{ - width: 100%; - height: 100%; - overflow: auto; - padding-top: 0.9375rem; -} -.my-popup .scroll-box .van-cell-group{ - background: transparent; -} -.my-popup .scroll-box .van-cell { - background: transparent; -} -.my-popup .scroll-box .van-cell::after{ - display: none; -} -.my-popup .scroll-box .van-cell .van-cell__right-icon{ - color: var(--header-text); -} - -.about-popup .aboutlogo{ - text-align: center; - padding-top: 3.125rem; - padding-bottom: 1.875rem; -} -.about-popup .aboutmessage{ - padding: 0 2.1875rem; -} -.about-popup .aboutmessage .aboutlist{ - margin-bottom: 1.25rem; - overflow: hidden; - font-size: 1rem; -} -.about-popup .aboutmessage .aboutlist .title{ - float: left; -} -.about-popup .aboutmessage .aboutlist .address{ - color: var(--color-primary); - font-size: 1rem; - vertical-align: sub; -} -@media screen and (min-width: 768px) { - .about-popup .aboutmessage{ - padding: 0 6.25rem; - } -} \ No newline at end of file + text-decoration: none; +} +.pic-logo .h-left img{ + max-width: 100%; + max-height: 100%; + margin-right: 10px; +} + + + + +.van-nav-bar .van-icon{ + color: var(--content-textHover); +} +.van-nav-bar .van-nav-bar__title{ + color: var(--content-textHover); +} + +.screen-popup .van-cell::after{ + display: none; +} + + + + + + diff --git a/dzz/pichome/css/mobile/screen.css b/dzz/pichome/css/mobile/screen.css new file mode 100644 index 0000000..8ecdfe8 --- /dev/null +++ b/dzz/pichome/css/mobile/screen.css @@ -0,0 +1,289 @@ +.notScreen{ + width: 100%; + height: 100%; + position: relative; +} +.notScreen>div{ + height: 80px; + text-align: center; + margin: auto; + position: absolute; + top: 0; + bottom: 0; + right: 0; + left: 0; + font-size: var(--font-14); + color: var(--header-text); +} +.notScreen>div img{ + width: 3.125rem; + height: 3.125rem; +} +.sort-popup .van-popup__close-icon--top-right, +.screen-popup .van-popup__close-icon--top-right { + top: 10px; + right: 10px; +} +/* .sort-popup .van-tree-select{ + height: calc(100% - 41px) !important; + height: -moz-calc(100% - 41px) !important; + height: -webkit-calc(100% - 41px) !important; +} */ +.screen-popup .van-tree-select{ +} +.screen-popup .van-tree-select .van-sidebar{ + width: 6rem; + -webkit-box-flex: initial; + -webkit-flex: initial; + flex: initial; +} +.sort-popup .van-tree-select__content, +.screen-popup .van-tree-select__content{ + height: 100%; + overflow: hidden; + position: relative; + background-color: transparent; +} +.van-popup .van-tree-select__content .screen-item-box{ + height: 100%; + width: 100%; + position: relative; + overflow: hidden; + padding-top: 56px; +} +.van-popup .van-tree-select__content .screen-item .screen-item-option-box{ + padding: 0px 8px; +} +.van-popup .van-tree-select__content .screen-item .screen-item-option-box .screen-item-option{ + padding: 10px 16px; + margin-bottom: 8px; + border-radius: 8px; +} +.van-popup .van-tree-select__content .screen-item .screen-item-option-box .screen-item-option.active{ + background: var(--bg-poperHover); +} +.screen-popup .van-tree-select__content .screen-item{ + height: 100%; + overflow: auto; + padding: 0px 10px; +} +.screen-popup .van-tree-select__content .screen-item .swip-row{ + border: 1px solid var(--border-color-base); + border-radius: 18px; + overflow: hidden; +} +.screen-popup .van-tree-select__content .screen-item .swip-row .swip{ + height: 30px; + line-height: 30px; + text-align: center; + background-color: var(--bg-input); + color: var(--header-text); +} +.screen-popup .van-tree-select__content .screen-item .swip-row .swip.active{ + background: var(--color-primary); + color: #FFFFFF; +} +.van-popup .van-tree-select__content .screen-item .van-cell-group .van-cell.van-cell-tag{ + margin-bottom: 6px; + border-radius: 999px; +} +.van-popup .van-tree-select__content .screen-item .van-cell-group .van-cell.van-cell-tag.active{ + background-color: var(--bg-poperHover); +} +.sort-popup .van-tree-select__content .screen-item .van-cell-group, +.screen-popup .van-tree-select__content .screen-item .van-cell-group{ + background-color: transparent; +} +.sort-popup .van-tree-select__content .screen-item .van-cell-group .van-cell, +.screen-popup .van-tree-select__content .screen-item .van-cell-group .van-cell{ + background-color: transparent; +} + +.van-calendar__day--end, .van-calendar__day--multiple-middle, .van-calendar__day--multiple-selected, .van-calendar__day--start, .van-calendar__day--start-end{ + background-color: var(--color-primary); +} +.screen-popup .van-hairline--top-bottom::after, .screen-popup .van-hairline-unset--top-bottom::after { + border-width: 0; +} +.sort-popup .van-hairline--top-bottom::after, .sort-popup .van-hairline-unset--top-bottom::after { + border-width: 0; +} +.screen-popup .van-tree-select__content .screen-item .color-box .quick{ + overflow: hidden; + /* margin-left: -10px; */ +} +.screen-popup .van-tree-select__content .screen-item .color-box .quick .quick-list-box{ + width: 20%; + margin-bottom: 0.1875rem; + padding: 0 0.1875rem; + display: inline-block; + +} +.screen-popup .van-tree-select__content .screen-item .color-box .quick .quick-list{ +/* float: left; + height: calc(20% / 2); + width: 20%; + height: 2.5rem; + width: 2.5rem; + z-index: 1; + border-radius: 50%; + margin-bottom: 0.625rem; + margin-left: 0.625rem; + border: 1px solid transparent; + position: relative; */ + height: 0; + padding: 25% 0; + position: relative; + border-radius: 8px; +} +.screen-popup .van-tree-select__content .screen-item .color-box .quick .quick-list .van-icon{ + position: absolute; + color: #FFFFFF; + margin: auto; + top: 0; + left: 0; + bottom: 0; + right: 0; +} +@media screen and (max-width: 768px) { + .screen-popup .van-tree-select__content .screen-item .color-box .quick .quick-list .van-icon{ + font-size: 18px; + width: 18px; + height: 18px; + } +} +@media screen and (min-width: 768px) { + .screen-popup .van-tree-select__content .screen-item .color-box .quick .quick-list .van-icon{ + font-size: 30px; + width: 30px; + height: 30px; + } +} +.screen-popup .van-tree-select__content .screen-item .color-box .color-input{ + position: relative; + margin-bottom: 0.9375rem; +} +.screen-popup .van-tree-select__content .screen-item .color-box .color-input .van-field{ + /* padding: 0; */ + /* height: 35px; */ + padding-left: 35px; + /* height: 35px; */ + border-radius: 8px; +} +.screen-popup .van-tree-select__content .screen-item .color-box .color-input .color-show{ + position: absolute; + width: 18px; + height: 18px; + z-index: 1; + border-radius: 6px; + margin-top: auto; + margin-bottom: auto; + top: 0; + bottom: 0; + left: 8px; + border: 1px solid transparent; +} +.screen-popup .van-tree-select__content .screen-item .color-box .color-input .color-show.border{ + border: 1px solid var(--border-color-base); +} +.screen-popup .van-tree-select__content .screen-item .color-box .color-input .van-field .van-field__button{ + padding-left: 8px; + line-height: 35px; + padding-right: 8px; + border-left: 1px solid var(--border-color-base); +} +.screen-popup .van-tree-select__content .screen-item .color-box .color-input .van-field .van-field__button img{ + vertical-align: sub; + width: 16px; + height: 16px; +} +.screen-popup .van-tree-select__content .screen-item .color-box .color-slider{ + display: -webkit-box; + display: -webkit-flex; + display: flex; + align-items: center; + padding: 15px 0; +} +.screen-popup .van-calendar__popup .van-button--danger{ + background-color: var(--color-primary); + border-color: var(--color-primary); +} +.screen-popup .van-calendar__popup .van-calendar__month-mark{ + opacity: 0.5; +} + +.screen-popup .van-tree-select__content .van-tabs{ + height: 100%; +} +.screen-popup .van-tree-select__content .van-tabs--line .van-tabs__wrap{ + /* border-bottom: 1px solid var(--slider-line); */ + padding-right: 8px; + padding-left: 8px; +} +.screen-popup .van-tree-select__content .van-tabs .van-tabs__content{ + height: calc(100% - 44px); + height: -moz-calc(100% - 44px); + height: -webkit-calc(100% - 44px); +} +.screen-popup .van-tree-select__content .van-tabs .van-tabs__content .van-tab__pane{ + height: 100%; + padding-top: 10px; + overflow: hidden; +} + +.screen-popup .van-tree-select__content .van-tabs__nav{ + background-color: transparent; +} +.screen-popup .van-tree-select__content .van-tabs__nav .van-tab{ + color: var(--header-text); +} +.screen-popup .van-tree-select__content .van-tabs__nav .van-tab.van-tab--active{ + color: var(--header-active); +} +.screen-popup .van-tree-select__content .van-cell .num{ + margin-right: 6px; +} +.sort-popup .van-tree-select__content .van-cell::after, +.screen-popup .van-tree-select__content .van-cell::after{ + display: none; +} + +.screen-popup .screen-classify-collapse .van-cell{ + background-color: transparent; + margin-bottom: 6px; +} +.screen-popup .screen-classify-collapse .van-collapse-item.active>.van-cell{ + background-color: var(--bg-poperHover); + border-radius: 999px; +} +.screen-popup .screen-classify-collapse .van-hairline--top-bottom::after, +.screen-popup .screen-classify-collapse .van-collapse-item--border::after{ + display: none; +} +.screen-popup .screen-classify-collapse .van-collapse-item__content{ + background-color: transparent; + padding: 0; + padding-left: 1rem; +} +.screen-popup .screen-classify-collapse .van-cell__value{ + flex: none; +} +.van-calendar__day--middle{ + color: var(--header-active); +} +.van-calendar__day--start{ + border-radius: 16px 0 0 16px; +} +.van-calendar__day--end{ + border-radius: 0 16px 16px 0; +} +.screen-cell-input{ + margin-bottom: 16px; + border-radius: 8px; +} +.screen-cell-input::after{ + display: none; +} +.screen-cell-input .van-field{ + border-radius: 8px; +} \ No newline at end of file diff --git a/dzz/pichome/css/pc/AddcollectionDialog.css b/dzz/pichome/css/pc/AddcollectionDialog.css new file mode 100644 index 0000000..e0eee22 --- /dev/null +++ b/dzz/pichome/css/pc/AddcollectionDialog.css @@ -0,0 +1,108 @@ +.collection-dialog{ + padding: 0; +} +.collection-dialog-content{ + width: 360px; + height: 460px; +} +.collection-dialog-content .header{ + padding: 12px; + padding-bottom: 0; +} +.collection-dialog-content .content{ + padding: 12px 0; + height: 358px; +} +.collection-dialog-content .content .el-tree-node__content{ + height: 64px; + padding-right: 8px; + border-radius: 3px; +} +.collection-dialog-content .content .el-tree-node__content .el-tree-node__expand-icon{ + font-size: 16px; +} +.collection-dialog-content .content .custom-tree-node{ + width: 100%; + position: relative; + padding-left: 55px; + height: 100%; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.collection-dialog-content .content .custom-tree-node .img{ + width: 40px; + height: 40px; + border-radius: 3px; + overflow: hidden; + margin-top: auto; + margin-bottom: auto; + position: absolute; + left: 0; + top: 0; + bottom: 0; +} +.collection-dialog-content .content .custom-tree-node .img img{ + object-fit: cover; + width: 100%; + height: 100%; +} +.collection-dialog-content .content .custom-tree-node .name{ + width: 100%; + padding-right: 8px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + font-weight: 700; + font-size: 14px; +} +.collection-dialog-content .content .custom-tree-node .btn{ + display: none; +} +.collection-dialog-content .content .custom-tree-node:hover .btn{ + display: block; +} +.collection-dialog-content .content .custom-tree-node .avatar{ + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} +.collection-dialog-content .content .custom-tree-node .avatar>li{ + margin-left: -8px; +} +.collection-dialog-content .content .custom-tree-node .avatar>li:first-child{ + margin-left: 0; +} +.collection-dialog-content .content .custom-tree-node .avatar .img-circle{ + width: 24px; + height: 24px; + vertical-align: text-top; + border: 1px solid var(--border-color-base); +} +.collection-dialog-content .content .custom-tree-node:hover .avatar{ + display: none; +} +.collection-dialog-content .footer{ + height: 50px; + line-height: 50px; + font-size: 18px; + border-top: 1px solid var(--border-color-base); + text-align: center; + cursor: pointer; +} +.collection-dialog-content .footer:hover{ + background-color: var(--bg-poperHover); +} +.collection-dialog-content .footer i{ + font-size: 23px; + margin-right: 8px; + color: var(--starsActive); + vertical-align: text-bottom; +} \ No newline at end of file diff --git a/dzz/pichome/css/pc/common.css b/dzz/pichome/css/pc/common.css index 6d0ee5c..2c92f32 100644 --- a/dzz/pichome/css/pc/common.css +++ b/dzz/pichome/css/pc/common.css @@ -31,6 +31,26 @@ body, body{ background-color: var(--bg-content); } +.el-page-header__left{ + z-index: 100; + color: var(--header-text); + margin-right: 6px; +} +.el-page-header__left:hover{ + color: var(--header-active); +} +.el-page-header__left .el-icon-back{ + font-size: 21px; + font-weight: 700; +} +.el-page-header__left .el-page-header__title{ + font-size: 16px; + font-weight: 700; + white-space: nowrap; +} +.el-page-header__left::after{ + display: none; +} .tipTxt{ color: var(--tip-color); font-size: 12px; @@ -120,6 +140,9 @@ body{ .el-progress-bar__outer{ background-color: var(--bg-input); } +.el-dropdown-menu{ + min-width: 165px; +} .el-dropdown-menu__item--divided{ border-color: var(--border-color-base); } @@ -302,9 +325,15 @@ body{ height: 100%; flex: 1; } -.page-component__scroll>.el-scrollbar__wrap { +.el-scrollbar__wrap { overflow-x: hidden; } +#copyInput{ + opacity: 0; + position: fixed; + bottom: 0; + left: 0; +} .Topcarousel{ border-radius: 50%; text-align: center; @@ -314,17 +343,27 @@ body{ height: 100%; color: #FFF; } -#copyInput{ - opacity: 0; - position: fixed; - bottom: 0; - left: 0; -} + .img-circle{ border-radius: 50%; width: 100%; height: 100%; } +.img-circle,.Topcarousel{ + width: 40px; + height: 40px; + line-height: 40px; +} +.small .img-circle,.small .Topcarousel{ + width: 35px; + height: 35px; + line-height: 35px; +} +.mini .img-circle,.mini .Topcarousel{ + width: 24px; + height: 24px; + line-height: 24px; +} .hide{ display: none !important; } @@ -414,7 +453,7 @@ ul{ justify-content: left; background: var(--bg-header); margin-left: -20px; - + min-width: 150px; } #top_header .header-content .h-left>a{ width: 100%; @@ -422,6 +461,7 @@ ul{ padding-left: 41px; text-decoration: none; } + .container2 #top_header .header-content .h-left>a{ width: calc(100% - 45px); } diff --git a/dzz/pichome/css/pc/components/addcollect.css b/dzz/pichome/css/pc/components/addcollect.css new file mode 100644 index 0000000..1c633a2 --- /dev/null +++ b/dzz/pichome/css/pc/components/addcollect.css @@ -0,0 +1,33 @@ +.addcollection-dialog .el-checkbox{ + width: 100%; + overflow: hidden; + height: 50px; + margin: 0; + display: block; +} +.addcollection-dialog .el-checkbox .el-checkbox__input{ + float: right; + line-height: 50px; +} +.addcollection-dialog .el-checkbox .el-checkbox__label{ + float: left; + line-height: 50px; + padding-left: 0; +} +.addcollection-dialog .el-checkbox .el-checkbox__label .img-circle{ + width: 32px; + height: 32px; + margin-top: 9px; + vertical-align: top; + margin-right: 6px; +} +.addcollection-dialog .el-checkbox .el-checkbox__label .Topcarousel{ + width: 32px; + height: 32px; + margin-top: 9px; + margin-right: 6px; + color: #FFFFFF; + text-align: center; + line-height: 32px; + font-size: 14px; +} \ No newline at end of file diff --git a/dzz/pichome/css/pc/components/collect.css b/dzz/pichome/css/pc/components/collect.css new file mode 100644 index 0000000..a270043 --- /dev/null +++ b/dzz/pichome/css/pc/components/collect.css @@ -0,0 +1,132 @@ +.collection-dialog{ + padding: 0; +} +.collection-dialog .el-dialog__body{ + padding: 0; +} +.collection-dialog.el-dialog .collection-dialog-content{ + width: 100%; +} +.collection-dialog-content{ + width: 360px; + height: 460px; +} +.collection-dialog-content .header{ + padding: 12px; + padding-bottom: 0; +} +.collection-dialog-content .content{ + padding: 12px 0; + height: 358px; + position: relative; +} +.collection-dialog-content .content.notadd{ + height: 408px; +} +.collection-dialog-content .content .el-tree-node__content{ + height: 64px; + padding-right: 8px; + border-radius: 3px; +} +.collection-dialog-content .content .el-tree-node__content .el-tree-node__expand-icon{ + font-size: 16px; +} +.collection-dialog-content .content .custom-tree-node{ + width: 100%; + position: relative; + padding-left: 55px; + height: 100%; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} +.collection-dialog-content .content .custom-tree-node.notpadding{ + padding-left: 0px; +} +.collection-dialog-content .content .custom-tree-node .img{ + width: 40px; + height: 40px; + border-radius: 3px; + overflow: hidden; + margin-top: auto; + margin-bottom: auto; + position: absolute; + left: 0; + top: 0; + bottom: 0; + background: var(--content-imgbg); +} +.collection-dialog-content .content .custom-tree-node .img img{ + object-fit: cover; + width: 100%; + height: 100%; +} +.collection-dialog-content .content .custom-tree-node .name{ + width: 100%; + padding-right: 8px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + font-weight: 700; + font-size: 14px; +} +.collection-dialog-content .content .custom-tree-node .btn{ + display: none; +} +.collection-dialog-content .content .custom-tree-node:hover .btn{ + display: block; +} +.collection-dialog-content .content .custom-tree-node .avatar{ + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} +.collection-dialog-content .content .custom-tree-node .avatar>li{ + margin-left: -8px; +} +.collection-dialog-content .content .custom-tree-node .avatar>li:first-child{ + margin-left: 0; +} +.collection-dialog-content .content .custom-tree-node .avatar .img-circle{ + width: 24px; + height: 24px; + vertical-align: text-top; + border: 1px solid var(--border-color-base); +} +.collection-dialog-content .content .custom-tree-node .avatar .Topcarousel{ + width: 24px; + height: 24px; + border: 1px solid var(--border-color-base); + text-align: center; + line-height: 24px; + color: #FFFFFF; + font-size: 14px; +} +.collection-dialog-content .content .custom-tree-node:hover .avatar{ + display: none; +} +.collection-dialog-content .footer{ + height: 50px; + line-height: 50px; + font-size: 18px; + border-top: 1px solid var(--border-color-base); + text-align: center; + cursor: pointer; + color: var(--header-text); +} +.collection-dialog-content .footer:hover{ + background-color: var(--bg-poperHover); + color: var(--header-active); +} +.collection-dialog-content .footer i{ + font-size: 23px; + margin-right: 8px; + color: var(--starsActive); + vertical-align: text-bottom; +} \ No newline at end of file diff --git a/dzz/pichome/css/pc/image.css b/dzz/pichome/css/pc/image.css index e3e2f47..de0ff8a 100644 --- a/dzz/pichome/css/pc/image.css +++ b/dzz/pichome/css/pc/image.css @@ -1,3 +1,11 @@ +#Details_Iframe{ + position: fixed; + left: 0; + top: 0; + width: 100%; + height: 100%; + z-index: 1000; +} #container_scroll .el-loading-mask{ background: var(--bg-content); z-index: 20; @@ -21,6 +29,11 @@ width: 100%; height: 100%; } +#container_scroll .container-not.center{ + display: flex; + justify-content: center; + align-items: center; +} .image-container{ min-height: 100%; position: relative; @@ -34,12 +47,21 @@ position: absolute; } .image-container .image-wrapper .image-item .image-inside{ - padding: 0 4px; + padding: 0 4px; + position: relative; } .image-container .image-wrapper .image-item .image-inside .image-single{ cursor: pointer; position: relative; - background: var(--bg-content); + background: var(--bg-content); + border: 1px solid transparent; +} +.image-container .image-wrapper .image-item.checked .image-inside .image-single{ + border: 1px solid var(--border-color-base); + border-radius: 18px; +} +.container2 .image-container .image-wrapper .image-item.checked .image-inside .image-single{ + border-radius: 3px; } .image-container .image-wrapper .image-item .image-inside .image-single.radius{ border-radius: 18px; @@ -108,14 +130,54 @@ .image-container .image-wrapper .image-item .image-inside .message{ text-align: center; } -.image-container .image-wrapper .image-item .image-inside .image-single .topFlex{ + +.image-container .image-wrapper .image-item .image-inside .el-button-group{ position: absolute; - left: 8px; + z-index: 10; + left: 12px; + top: 8px; + display: none; +} +.image-container .image-wrapper .image-item .image-inside:hover .el-button-group{ + display: block; +} +.image-container .image-wrapper .image-item .image-inside .el-button-group .reference{ + margin-right: -1px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + float: left; + border-left: 0; + border-top-left-radius: 18px; + border-bottom-left-radius: 18px; +} + +.container2 .image-container .image-wrapper .image-item .image-inside .el-button-group .reference{ + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} +.container2 .image-container .image-wrapper .image-item .image-inside .el-button-group.border .reference{ + border-radius: 3px; + border-color: #f56c6c; +} +.image-container .image-wrapper .image-item .image-inside .el-button-group .el-dropdown__caret-button{ + height: 36px; + padding: 0px 3px; + border-top-right-radius: 18px; + border-bottom-right-radius: 18px; + width: 30px; +} +.container2 .image-container .image-wrapper .image-item .image-inside .el-button-group .el-dropdown__caret-button{ + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} +.image-container .image-wrapper .image-item .image-inside .topFlex{ + position: absolute; + right: 8px; top: 8px; overflow: hidden; z-index: 10; } -.image-container .image-wrapper .image-item .image-inside .image-single .circulars{ +.image-container .image-wrapper .image-item .image-inside .circulars{ background-color: var(--content-imgbg-btn); color: var(--content-imgbg-txt); border-radius: 50%; @@ -130,17 +192,17 @@ display: none; z-index: 10; } -.image-container .image-wrapper .image-item .image-inside .image-single.showoperation .circulars{ +.image-container .image-wrapper .image-item .image-inside:hover .circulars{ display: block; } -.image-container .image-wrapper .image-item .image-inside .image-single .circulars:first-child{ +.image-container .image-wrapper .image-item .image-inside .circulars:first-child{ margin-left: 0; } -.image-container .image-wrapper .image-item .image-inside .image-single .circulars:hover{ +.image-container .image-wrapper .image-item .image-inside .circulars:hover{ color: var(--content-imgbg-txtHover); background-color: var(--content-imgbg-btnHover); } -.image-container .image-wrapper .image-item .image-inside .image-single .circulars.link{ +.image-container .image-wrapper .image-item .image-inside .circulars.link{ position: absolute; bottom: 8px; left: 8px; @@ -151,13 +213,13 @@ z-index: 2; margin-left: 0; } -.image-container .image-wrapper .image-item .image-inside .image-single .circulars.link .el-link--inner{ +.image-container .image-wrapper .image-item .image-inside .circulars.link .el-link--inner{ font-size: 14px; vertical-align: top; } -.image-container .image-wrapper .image-item .image-inside .image-single .image-playurl .movies-box{ +.image-container .image-wrapper .image-item .image-inside .image-playurl .movies-box{ position: absolute; left: 0; top: 0; @@ -181,10 +243,13 @@ height: 100%; } .image-container .image-wrapper .image-item .image-inside .image-single .image-playurl .movies-box .voice{ - position: absolute; + position: absolute; + right: 46px; + top: 7px; + z-index: 2; +} +.image-container .image-wrapper .image-item .image-inside .image-single .image-playurl.exhibit .movies-box .voice{ right: 8px; - top: 8px; - z-index: 2; } .image-container .image-wrapper .image-item .image-inside .image-single .image-playurl .movies-box .voice.yes .no, .image-container .image-wrapper .image-item .image-inside .image-single .image-playurl .movies-box .voice.no .yes{ @@ -277,4 +342,55 @@ } .image-container .image-wrapper .image-item .image-inside .message .other .score.active{ color: var(--starsActive); +} +.image-container .image-wrapper .image-item .collect-checkeds{ + position: absolute; + width: 100%; + height: 100%; + z-index: 20; + display: none; + cursor: pointer; + /* border: 2px solid var(--border-color-base); */ +} +.image-container .image-wrapper .image-item.checked .collect-checkeds{ + display: block; +} +.image-container .image-wrapper .image-item .collect-checkeds .check{ + position: absolute; + left: 12px; + top: 8px; + border-radius: 8px; + background: #000; + width: 24px; + height: 24px; + font-size: 16px; + font-weight: 700; + text-align: center; + line-height: 24px; + color: #FFFFFF; +} +#imagelayout .collects-move-btn-box{ + position: fixed; + bottom: 30px; + left: 0; + z-index: 100; + width: 100%; + text-align: center; +} +#imagelayout .collects-move-btn-box .item{ + width: 58px; + height: 58px; + text-align: center; + line-height: 58px; + font-size: 22px; + background: var(--header-textHover); + border-radius: 50%; + color: var(--header-text); + display: inline-block; + box-shadow: rgb(0,0,0,0.1) 0px 0px 20px; + cursor: pointer; +} +#imagelayout .collects-move-btn-box .item:hover{ + background: var(--header-textHover); + color: var(--header-iconHover); } \ No newline at end of file diff --git a/dzz/pichome/css/pc/index.css b/dzz/pichome/css/pc/index.css index 99d4146..c9ba0f9 100644 --- a/dzz/pichome/css/pc/index.css +++ b/dzz/pichome/css/pc/index.css @@ -86,9 +86,6 @@ height: 100%; width: 100%; } -#container_scroll .el-scrollbar__wrap{ - overflow-x: hidden; -} #container_scroll .el-scrollbar__wrap .el-scrollbar__view{ min-height: 100%; width: 100%; @@ -99,14 +96,6 @@ #container_scroll .el-scrollbar__bar.is-vertical{ z-index: 10; } -#Details_Iframe{ - position: fixed; - left: 0; - top: 0; - width: 100%; - height: 100%; - z-index: 1000; -} .container2 .el-header{ padding: 0; z-index: 10; diff --git a/dzz/pichome/css/theme/black/root.css b/dzz/pichome/css/theme/black/root.css index 3bf8fd3..07c3f0a 100644 --- a/dzz/pichome/css/theme/black/root.css +++ b/dzz/pichome/css/theme/black/root.css @@ -8,6 +8,7 @@ --header-screenDel:#C9405A;/* 头部清除筛选的 × 背景色 */ --bg-content:#1E1E1E;/* 内容背景色 */ + --bg-contentopacity:rgb(30,30,30,0.6);/* 内容背景色透明 */ --content-text:#BCBCBC;/* 内容文字颜色 */ --content-textHover:#F4F4F4;/* 内容文字hover颜色 */ --content-imgbg:#161616;/* 图片背景色 */ diff --git a/dzz/pichome/css/theme/darkgrey/root.css b/dzz/pichome/css/theme/darkgrey/root.css index 9ea05fb..2f1ce31 100644 --- a/dzz/pichome/css/theme/darkgrey/root.css +++ b/dzz/pichome/css/theme/darkgrey/root.css @@ -8,6 +8,7 @@ --header-screenDel:#C33A54;/* 头部清除筛选的 × 背景色 */ --bg-content:#383838;/* 内容背景色 */ + --bg-contentopacity:rgb(56,56,56,0.6);/* 内容背景色透明 */ --content-text:#C4C4C4;/* 内容文字颜色 */ --content-textHover:#F6F6F6;/* 内容文字hover颜色 */ --content-imgbg:#303030;/* 图片背景色 */ diff --git a/dzz/pichome/css/theme/lightgrey/root.css b/dzz/pichome/css/theme/lightgrey/root.css index 26f998d..b705bb6 100644 --- a/dzz/pichome/css/theme/lightgrey/root.css +++ b/dzz/pichome/css/theme/lightgrey/root.css @@ -8,6 +8,7 @@ --header-screenDel:#F66E88;/* 头部清除筛选的 × 背景色 */ --bg-content:#E2E4E5;/* 内容背景色 */ + --bg-contentopacity:rgb(226,228,229,0.6);/* 内容背景色透明 */ --content-text:#26292A;/* 内容文字颜色 */ --content-textHover:#121516;/* 内容文字hover颜色 */ --content-imgbg:#FFFFFF;/* 图片背景色 */ diff --git a/dzz/pichome/css/theme/navyblue/root.css b/dzz/pichome/css/theme/navyblue/root.css index 38ec040..c1ab262 100644 --- a/dzz/pichome/css/theme/navyblue/root.css +++ b/dzz/pichome/css/theme/navyblue/root.css @@ -8,6 +8,7 @@ --header-screenDel:#CD4562;/* 头部清除筛选的 × 背景色 */ --bg-content:#303342;/* 内容背景色 */ + --bg-contentopacity:rgb(48,51,66,0.6);/* 内容背景色透明 */ --content-text:#C1C2C7;/* 内容文字颜色 */ --content-textHover:#F2F2F3;/* 内容文字hover颜色 */ --content-imgbg:#2A2C39;/* 图片背景色 */ diff --git a/dzz/pichome/css/theme/purple/root.css b/dzz/pichome/css/theme/purple/root.css index a27b4e0..7b0f7e3 100644 --- a/dzz/pichome/css/theme/purple/root.css +++ b/dzz/pichome/css/theme/purple/root.css @@ -8,6 +8,7 @@ --header-screenDel:#CE4462;/* 头部清除筛选的 × 背景色 */ --bg-content:#343141;/* 内容背景色 */ + --bg-contentopacity:rgb(52,49,65,0.6);/* 内容背景色透明 */ --content-text:#C2C2C6;/* 内容文字颜色 */ --content-textHover:#FFFFFF;/* 内容文字hover颜色 */ --content-imgbg:#2D2A38;/* 图片背景色 */ diff --git a/dzz/pichome/css/theme/white/root.css b/dzz/pichome/css/theme/white/root.css index 6366c97..4857e8e 100644 --- a/dzz/pichome/css/theme/white/root.css +++ b/dzz/pichome/css/theme/white/root.css @@ -8,6 +8,7 @@ --header-screenDel:#F46B85;/* 头部清除筛选的 × 背景色 */ --bg-content:#F8F8F8;/* 内容背景色 */ + --bg-contentopacity:rgb(248,248,248,0.6);/* 内容背景色透明 */ --content-text:#272727;/* 内容文字颜色 */ --content-textHover:#111111;/* 内容文字hover颜色 */ --content-imgbg:#FFFFFF;/* 图片背景色 */ diff --git a/dzz/pichome/download.php b/dzz/pichome/download.php index 131042e..08e3202 100644 --- a/dzz/pichome/download.php +++ b/dzz/pichome/download.php @@ -10,7 +10,6 @@ $librarydata = DB::fetch_first("select path,iswebsitefile from %t where appid = %s",array('pichome_vapp',$attach['appid'])); $attachurl = $librarydata['path'].BS.$attach['path']; - $d = new FileDownload(); $d->download($attachurl, $resourcesdata['name'], $resourcesdata['size'], 0, true); exit(); \ No newline at end of file diff --git a/dzz/pichome/exportfile.php b/dzz/pichome/exportfile.php index 10cbdd9..6f56134 100644 --- a/dzz/pichome/exportfile.php +++ b/dzz/pichome/exportfile.php @@ -3,16 +3,16 @@ if (!defined('IN_OAOOA')) { exit('Access Denied'); } - - @set_time_limit(0); - ini_set('memory_limit', -1); - @ini_set('max_execution_time', 0); - +@ignore_user_abort(true); +@set_time_limit(0); +@ini_set('memory_limit', -1); +@ini_set('max_execution_time', 0); + $appid = isset($_GET['appid']) ? trim($_GET['appid']):0; $processname = 'DZZ_EXPORTFILE_LOCK_'.$appid; - // dzz_process::unlock($processname); + //dzz_process::unlock($processname); $locked = true; - if (!dzz_process::islocked($processname, 60*5)) { + if (!dzz_process::islocked($processname, 60*60*24)) { $locked=false; } if ($locked) { @@ -22,7 +22,7 @@ $force = isset($_GET['force']) ? intval($_GET['force']):0; $data = C::t('pichome_vapp')->fetch($appid); if(!$data) exit(json_encode(array('error'=>'no data'))); - if($data['state'] != 2 || $data['isdelete'] != 0) exit(json_encode(array('error'=>'is deleted or state is not allow'))); + if($data['state'] != 2 && $data['isdelete'] != 0) exit(json_encode(array('error'=>'is deleted or state is not allow'))); if($data['type'] == 0){ include_once dzz_libfile('eagleexport'); $eagleexport = new eagleexport($data); @@ -38,5 +38,11 @@ $return = $billfishxport->execExport(); } dzz_process::unlock($processname); - exit('success'); + $data = C::t('pichome_vapp')->fetch($appid); + if($data['state'] == 2){ + dfsockopen(getglobal('localurl') . 'index.php?mod=pichome&op=exportfile&appid=' . $appid, 0, '', '', false, '', 1); + }elseif($data['state'] == 3){ + dfsockopen(getglobal('localurl') . 'index.php?mod=pichome&op=exportfilecheck&appid=' . $appid, 0, '', '', false, '', 1); + } + // exit('success'); \ No newline at end of file diff --git a/dzz/pichome/exportfilecheck.php b/dzz/pichome/exportfilecheck.php index 8e7edf6..78ca086 100644 --- a/dzz/pichome/exportfilecheck.php +++ b/dzz/pichome/exportfilecheck.php @@ -11,7 +11,7 @@ $processname = 'DZZ_EXPORTCHECKFILE_LOCK_' . $appid; //dzz_process::unlock($processname); $locked = true; -if (!dzz_process::islocked($processname, 60 * 5)) { +if (!dzz_process::islocked($processname, 60*60*24)) { $locked = false; } if ($locked) { @@ -21,7 +21,7 @@ $force = isset($_GET['force']) ? intval($_GET['force']) : 0; $data = C::t('pichome_vapp')->fetch($appid); if (!$data) exit(json_encode(array('error' => 'no data'))); -if ($data['state'] != 3 || $data['isdelete'] != 0) exit(json_encode(array('error' => 'is deleted or state is not allow'))); +if ($data['state'] != 3 && $data['isdelete'] != 0) exit(json_encode(array('error' => 'is deleted or state is not allow'))); if ($data['type'] == 0) { include_once dzz_libfile('eagleexport'); $eagleexport = new eagleexport($data); @@ -36,4 +36,8 @@ $return = $billfishxport->execCheckFile(); } dzz_process::unlock($processname); +$data = C::t('pichome_vapp')->fetch($appid); +if($data['state'] == 3){ + dfsockopen(getglobal('localurl') . 'index.php?mod=pichome&op=exportfilecheck&appid=' . $appid, 0, '', '', false, '', 1); +} \ No newline at end of file diff --git a/dzz/pichome/image/flashlight.png b/dzz/pichome/image/flashlight.png new file mode 100644 index 0000000..f8439a1 Binary files /dev/null and b/dzz/pichome/image/flashlight.png differ diff --git a/dzz/pichome/initexport.php b/dzz/pichome/initexport.php index 5b0b7f3..4cdaad5 100644 --- a/dzz/pichome/initexport.php +++ b/dzz/pichome/initexport.php @@ -2,9 +2,10 @@ if (!defined('IN_OAOOA')) { exit('Access Denied'); } - @set_time_limit(0); - @ini_set('memory_limit', -1); - @ini_set('max_execution_time', 0); +@ignore_user_abort(true); +@set_time_limit(0); +@ini_set('memory_limit', -1); +@ini_set('max_execution_time', 0); $appid = isset($_GET['appid']) ? trim($_GET['appid']):0; $force = isset($_GET['force']) ? intval($_GET['force']):0; @@ -24,5 +25,9 @@ $billfishxport = new billfishxport($data); $return = $billfishxport->initExport(); } + $data = C::t('pichome_vapp')->fetch($appid); + if($data['state'] == 2){ + dfsockopen(getglobal('localurl') . 'index.php?mod=pichome&op=exportfile&appid=' . $appid, 0, '', '', false, '', 1); + } exit(json_encode(array('success'=>true))); \ No newline at end of file diff --git a/dzz/pichome/js/common.js b/dzz/pichome/js/common.js index 3e9ddca..a350c78 100644 --- a/dzz/pichome/js/common.js +++ b/dzz/pichome/js/common.js @@ -1,76 +1,73 @@ -jQuery(document).ready(function() { +function debounce(fun, delay) { + var time; + return function(args) { + var that = this; + var _args = args; + if (time) clearTimeout(time); + time = setTimeout(function() { + fun.call(that, _args) + }, delay) + } +}; +function URLdecode(str) { + var ret = ""; + for(var i=0;i0x7f) { + ret += decodeURI("%"+ str.substring(i+1,i+9)); + i += 8; + }else { + ret += String.fromCharCode(parseInt("0x"+asc)); + i += 2; + } + }else { + ret += chr; + } + } + return ret; +}; -}); -function debounce(fun, delay) { - var time; - return function(args) { - var that = this; - var _args = args; - if (time) clearTimeout(time); - time = setTimeout(function() { - fun.call(that, _args) - }, delay) - } -}; -function URLdecode(str) { - var ret = ""; - for(var i=0;i0x7f) { - ret += decodeURI("%"+ str.substring(i+1,i+9)); - i += 8; - }else { - ret += String.fromCharCode(parseInt("0x"+asc)); - i += 2; - } - }else { - ret += chr; - } - } - return ret; -}; - -function GetDateVal(type){ - var str = ''; - var start = new Date(); - var end = new Date(); - switch(type){ - case '今日': - break; - case '昨日': - end.setTime(end.getTime() - 3600 * 1000 * 24); - start.setTime(start.getTime() - 3600 * 1000 * 24); - break; - case '最近7日': - start.setTime(start.getTime() - 3600 * 1000 * 24 * 6); - break; - case '最近30日': - start.setTime(start.getTime() - 3600 * 1000 * 24 * 29); - break; - case '最近90日': - start.setTime(start.getTime() - 3600 * 1000 * 24 * 89); - break; - case '最近365日': - start.setTime(start.getTime() - 3600 * 1000 * 24 * 364); - break; - } - str = start.getFullYear()+'-'+(start.getMonth()+1)+'-'+start.getDate()+'_'+end.getFullYear()+'-'+(end.getMonth()+1)+'-'+end.getDate(); - return str; -} - -function CopyTxt(item,text){ - var input = document.createElement('input'); input.setAttribute('id', 'copyInput'); - input.setAttribute('value', text); - document.getElementsByTagName('body')[0].appendChild(input); - document.getElementById('copyInput').select(); - document.execCommand('copy') - item.$message({ - message: '成功复制到剪切板', - type: 'success' - }); - document.getElementById('copyInput').remove(); +function GetDateVal(type){ + var str = ''; + var start = new Date(); + var end = new Date(); + switch(type){ + case '今日': + break; + case '昨日': + end.setTime(end.getTime() - 3600 * 1000 * 24); + start.setTime(start.getTime() - 3600 * 1000 * 24); + break; + case '最近7日': + start.setTime(start.getTime() - 3600 * 1000 * 24 * 6); + break; + case '最近30日': + start.setTime(start.getTime() - 3600 * 1000 * 24 * 29); + break; + case '最近90日': + start.setTime(start.getTime() - 3600 * 1000 * 24 * 89); + break; + case '最近365日': + start.setTime(start.getTime() - 3600 * 1000 * 24 * 364); + break; + } + str = start.getFullYear()+'-'+(start.getMonth()+1)+'-'+start.getDate()+'_'+end.getFullYear()+'-'+(end.getMonth()+1)+'-'+end.getDate(); + return str; +} + +function CopyTxt(item,text){ + var input = document.createElement('input'); input.setAttribute('id', 'copyInput'); + input.setAttribute('value', text); + document.getElementsByTagName('body')[0].appendChild(input); + document.getElementById('copyInput').select(); + document.execCommand('copy') + item.$message({ + message: '成功复制到剪切板', + type: 'success' + }); + document.getElementById('copyInput').remove(); }; \ No newline at end of file diff --git a/dzz/pichome/js/pc/components/addcollect.js b/dzz/pichome/js/pc/components/addcollect.js new file mode 100644 index 0000000..9803612 --- /dev/null +++ b/dzz/pichome/js/pc/components/addcollect.js @@ -0,0 +1,142 @@ +Vue.component('add-star-tree', { + props:['rids','dialogvisible'], + template: ` + + + + + + + 观察员 + 协作成员 + 管理员 + + + + +
+ + +
+
+
+ + 取 消 + 确 定 + +
`, + + data: function() { + return { + user:{ + data:[], + loading:true + }, + Userkeyword:'', + formdata:{ + name:'', + perm:1, + user:[], + } + } + }, + watch:{ + + }, + created() { + + }, + methods:{ + UserKeywordInput:debounce(function(val){//输入 + this.GetUsers(); + },800), + PopoverShow(){ + this.GetUsers(); + }, + PopoverHide(){ + var self = this; + self.user.loading = true; + self.Userkeyword = ''; + self.formdata = { + name:'', + perm:1, + user:[], + }; + self.$emit('closeaddcollectdialog'); + }, + handleSubmit(){ + var self = this; + var param = { + name:self.formdata.name, + perm:self.formdata.perm, + uids:self.formdata.user.join(','), + }; + $.post(SITEURL+DZZSCRIPT+'?mod=collection&op=collect&do=addcollect',param,function(json){ + if(json.success){ + self.addCollect(json.success.clid); + }else{ + self.$message.error(json.error); + } + + },'json'); + }, + addCollect(clid){ + var self = this; + var param = { + rids:this.rids.join(','), + clid:clid + }; + $.post(SITEURL+DZZSCRIPT+'?mod=collection&op=collect&do=addfilecollect',param,function(json){ + if(json.success){ + self.$message({ + type:'success', + message:'收藏夹创建成功' + }); + self.$message({ + type:'success', + message:'文件收藏成功' + }); + self.PopoverHide(); + }else{ + self.$message.error(json.error); + } + },'json'); + }, + GetUsers(){ + var self = this; + self.user.loading = true; + $.post(SITEURL+DZZSCRIPT+'?mod=collection&op=collect&do=getuser',{ + keyword:self.Userkeyword + },function(json){ + var data = []; + self.user.data = json.success; + self.user.loading = false; + },'json'); + } + }, + mounted() { + + }, + beforeRouteLeave() { + }, +}); diff --git a/dzz/pichome/js/pc/components/collect.js b/dzz/pichome/js/pc/components/collect.js new file mode 100644 index 0000000..412497f --- /dev/null +++ b/dzz/pichome/js/pc/components/collect.js @@ -0,0 +1,262 @@ + +Vue.component('star-tree', { + template: ` +
+
+ +
+
+
+
+ 加载中... +
+
+ +
+ +
+
+ +
+
{{ data.catname }}
+
    +
  • +
+ 收藏 +
+
+
+
+
+ +
+ +
`, + props:['rids'], + data: function() { + return { + filterText:'', + defaultProps: { + children: 'children', + label: 'catname' + }, + loading:true, + NodeShow:false, + ExpandedNodeKeys:[], + alreadyExpandedNodeKeys:[] + } + }, + watch:{ + filterText:debounce(function(val){ + var self = this; + if(val){ + self.alreadyExpandedNodeKeys = []; + self.ExpandedNodeKeys = []; + self.loading = true; + this.NodeShow = false; + $.post(SITEURL+DZZSCRIPT+'?mod=collection&op=collect&do=searchcollect',{ + keyword:val + },function(json){ + var data = []; + for(var i in json.clid){ + var id = json.clid[i]; + if(data.indexOf('p'+id)<0){ + data.push('p'+id); + } + } + for(var x in json.cids){ + var id = json.cids[x]; + if(data.indexOf(parseInt(id))<0){ + data.push(parseInt(id)); + } + } + self.ExpandedNodeKeys = data; + self.$nextTick(function(){ + self.NodeShow = true; + }); + },'json'); + }else{ + this.filterTextclear(); + } + },800) + }, + created() { + + }, + methods:{ + filterTextclear(){ + var self = this; + self.alreadyExpandedNodeKeys = []; + self.ExpandedNodeKeys = []; + self.loading = true; + self.NodeShow = false; + self.$nextTick(function(){ + self.NodeShow = true; + }); + }, + GetTreeData(node,resolve){ + var self = this; + var param = {}; + if(node.level == 1){ + param = { + clid:node.data.cid.replace('p','') + } + } + if(node.level > 1){ + param = { + cid:node.data.cid, + clid:node.data.clid + } + } + $.post(SITEURL+DZZSCRIPT+'?mod=collection&op=collect&do=collectlist',param,function(json){ + var data = []; + for(var i in json.success){ + var item = json.success[i]; + if(node.level == 0){ + item['cid'] = 'p'+item.clid; + item['catname'] = item.name; + item['parent'] = true; + self.alreadyExpandedNodeKeys.push(item['cid']); + }else{ + item['cid'] = parseInt(item.cid); + item['parent'] = false; + self.alreadyExpandedNodeKeys.push(parseInt(item['cid'])); + } + + data.push(item) + } + resolve(data); + self.$nextTick(function(){ + self.LeftGetTreeDataFinish(); + }) + },'json'); + }, + LeftGetTreeDataFinish(){ + var self = this; + var finish = false; + if(self.ExpandedNodeKeys.length){ + for(var i in self.ExpandedNodeKeys){ + var id = self.ExpandedNodeKeys[i]; + if(self.alreadyExpandedNodeKeys.indexOf(id)>-1){ + finish = true; + }else{ + return false; + } + } + if(finish){ + if(self.filterText){ + self.$refs['lefttree'].filter(self.filterText); + } + self.loading = false; + } + }else{ + if(self.filterText){ + self.$refs['lefttree'].filter(self.filterText); + } + self.loading = false; + } + }, + PopoverShow(){ + var self = this; + var collectkey = JSON.parse(localStorage.getItem('collectkey')); + if(collectkey){ + var keys = collectkey.key.split('-'); + if(keys.length>1){ + keys.pop(); + } + var newkeys = []; + for(var i in keys){ + if(keys[i].indexOf('p')>-1){ + newkeys.push(keys[i]); + }else{ + newkeys.push(parseInt(keys[i])); + } + } + this.ExpandedNodeKeys = newkeys; + } + + this.NodeShow = true; + }, + PopoverHide(){ + this.NodeShow = false; + }, + handleSubmit(cid,clid,parent){ + var param = {} + var self = this; + if(parent){ + param = { + rids:this.rids, + clid:cid.replace('p','') + } + }else{ + param = { + rids:this.rids, + cid:cid, + clid:clid + } + + } + $.post(SITEURL+DZZSCRIPT+'?mod=collection&op=collect&do=addfilecollect',param,function(json){ + if(json.success){ + var node = self.$refs['lefttree'].getNode(cid); + if(parent){ + var collect = { + name:node.data.catname, + key:cid + }; + }else{ + var collectkey = clid+'-'+node.data.pathkey; + var collect = { + name:node.data.catname, + key:'p'+clid+'-'+node.data.pathkey + }; + } + localStorage.setItem('collectkey', JSON.stringify(collect)); + self.$message({ + type:'success', + message:'收藏成功' + }); + self.$emit('addcollectsuccess'); + self.$refs['refcollectiondialog'].doClose(); + }else{ + self.$message.error(json.error); + } + },'json'); + }, + handleOpenAdd(){ + var self = this; + self.$refs['refcollectiondialog'].doClose(); + self.$emit('openaddcollect',this.rids); + }, + TreeDataFilterNode(value, data) { + if (!value) return true; + return data.catname.indexOf(value) !== -1; + }, + }, + mounted() { + var self = this; + }, + beforeRouteLeave() { + }, +}); diff --git a/dzz/pichome/js/pc/components/collectdialog.js b/dzz/pichome/js/pc/components/collectdialog.js new file mode 100644 index 0000000..ebbc7ed --- /dev/null +++ b/dzz/pichome/js/pc/components/collectdialog.js @@ -0,0 +1,256 @@ + +Vue.component('star-tree-dialog', { + props:['rids','dialogvisible'], + template: ` +
+
+ +
+
+ +
+ +
+
+ +
+
{{ data.catname }}
+
    +
  • +
+ 收藏 +
+
+
+
+
+ +
+
`, + data: function() { + return { + filterText:'', + defaultProps: { + children: 'children', + label: 'catname' + }, + loading:true, + NodeShow:false, + ExpandedNodeKeys:[], + alreadyExpandedNodeKeys:[] + } + }, + watch:{ + filterText:debounce(function(val){ + var self = this; + if(val){ + self.alreadyExpandedNodeKeys = []; + self.ExpandedNodeKeys = []; + self.loading = true; + this.NodeShow = false; + $.post(SITEURL+DZZSCRIPT+'?mod=collection&op=collect&do=searchcollect',{ + keyword:val + },function(json){ + var data = []; + for(var i in json.clid){ + var id = json.clid[i]; + if(data.indexOf('p'+id)<0){ + data.push('p'+id); + } + } + for(var x in json.cids){ + var id = json.cids[x]; + if(data.indexOf(parseInt(id))<0){ + data.push(parseInt(id)); + } + } + self.ExpandedNodeKeys = data; + self.$nextTick(function(){ + self.NodeShow = true; + }); + },'json'); + }else{ + self.filterTextclear(); + } + },800) + }, + created() { + // console.log(this.tabindex) + }, + methods:{ + filterTextclear(){ + var self = this; + self.alreadyExpandedNodeKeys = []; + self.ExpandedNodeKeys = []; + self.loading = true; + self.NodeShow = false; + self.$nextTick(function(){ + self.NodeShow = true; + }); + }, + GetTreeData(node,resolve){ + var self = this; + var param = {}; + if(node.level == 1){ + param = { + clid:node.data.cid.replace('p','') + } + } + if(node.level > 1){ + param = { + cid:node.data.cid, + clid:node.data.clid + } + } + $.post(SITEURL+DZZSCRIPT+'?mod=collection&op=collect&do=collectlist',param,function(json){ + var data = []; + for(var i in json.success){ + var item = json.success[i]; + if(node.level == 0){ + item['cid'] = 'p'+item.clid; + item['catname'] = item.name; + item['parent'] = true; + self.alreadyExpandedNodeKeys.push(item['cid']); + }else{ + item['cid'] = parseInt(item.cid); + item['parent'] = false; + self.alreadyExpandedNodeKeys.push(parseInt(item['cid'])); + } + + data.push(item) + } + resolve(data); + self.$nextTick(function(){ + self.GetTreeDataFinish(); + }) + },'json'); + }, + GetTreeDataFinish(){ + var self = this; + var finish = false; + if(self.ExpandedNodeKeys.length){ + for(var i in self.ExpandedNodeKeys){ + var id = self.ExpandedNodeKeys[i]; + if(self.alreadyExpandedNodeKeys.indexOf(id)>-1){ + finish = true; + }else{ + return false; + } + } + if(finish){ + if(self.filterText){ + self.$refs['lefttree'].filter(self.filterText); + } + self.loading = false; + } + }else{ + if(self.filterText){ + self.$refs['lefttree'].filter(self.filterText); + } + self.loading = false; + } + }, + handleSubmit(cid,clid,parent){ + var param = {} + var self = this; + if(parent){ + param = { + rids:this.rids.join(','), + clid:cid.replace('p','') + } + }else{ + param = { + rids:this.rids.join(','), + cid:cid, + clid:clid, + } + + } + $.post(SITEURL+DZZSCRIPT+'?mod=collection&op=collect&do=addfilecollect',param,function(json){ + if(json.success){ + var node = self.$refs['lefttree'].getNode(cid); + if(parent){ + var collect = { + name:node.data.catname, + key:cid + }; + }else{ + // var collectkey = clid+'-'+node.data.pathkey; + var collect = { + name:node.data.catname, + key:'p'+clid+'-'+node.data.pathkey.replaceAll('_','') + }; + } + localStorage.setItem('collectkey', JSON.stringify(collect)); + self.$message({ + type:'success', + message:'文件收藏成功' + }); + self.$emit('addcollectsuccess'); + self.PopoverHide(); + }else{ + self.$message.error(json.error); + } + },'json'); + }, + PopoverShow(){ + var self = this; + var collectkey = JSON.parse(localStorage.getItem('collectkey')); + if(collectkey){ + var keys = collectkey.key.split('-'); + if(keys.length>1){ + keys.pop(); + } + var newkeys = []; + for(var i in keys){ + if(keys[i].indexOf('p')>-1){ + newkeys.push(keys[i]); + }else{ + newkeys.push(parseInt(keys[i])); + } + } + this.ExpandedNodeKeys = newkeys; + } + + this.NodeShow = true; + }, + PopoverHide(){ + var self = this; + self.NodeShow = false; + self.filterText = ''; + self.alreadyExpandedNodeKeys = []; + self.$emit('closecollectdialog'); + }, + handleOpenAdd(){ + var self = this; + self.$emit('openaddcollect',this.rids); + }, + TreeDataFilterNode(value, data) { + if (!value) return true; + return data.catname.indexOf(value) !== -1; + } + }, + mounted() { + + }, + beforeRouteLeave() { + }, +}); diff --git a/dzz/pichome/js/pc/plug/element-ui.js b/dzz/pichome/js/pc/plug/element-ui.js index 70d9365..a9647a4 100644 --- a/dzz/pichome/js/pc/plug/element-ui.js +++ b/dzz/pichome/js/pc/plug/element-ui.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue")):"function"==typeof define&&define.amd?define("ELEMENT",["vue"],t):"object"==typeof exports?exports.ELEMENT=t(require("vue")):e.ELEMENT=t(e.Vue)}("undefined"!=typeof self?self:this,function(e){return function(e){var t={};function i(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,i),r.l=!0,r.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)i.d(n,r,function(t){return e[t]}.bind(null,r));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="/dist/",i(i.s=49)}([function(t,i){t.exports=e},function(e,t,i){var n=i(4);e.exports=function(e,t,i){return void 0===i?n(e,t,!1):n(e,i,!1!==t)}},function(e,t,i){var n;!function(r){"use strict";var s={},a=/d{1,4}|M{1,4}|yy(?:yy)?|S{1,3}|Do|ZZ|([HhMsDm])\1?|[aA]|"[^"]*"|'[^']*'/g,o="[^\\s]+",l=/\[([^]*?)\]/gm,u=function(){};function c(e,t){for(var i=[],n=0,r=e.length;n3?0:(e-e%10!=10)*e%10]}};var g={D:function(e){return e.getDay()},DD:function(e){return d(e.getDay())},Do:function(e,t){return t.DoFn(e.getDate())},d:function(e){return e.getDate()},dd:function(e){return d(e.getDate())},ddd:function(e,t){return t.dayNamesShort[e.getDay()]},dddd:function(e,t){return t.dayNames[e.getDay()]},M:function(e){return e.getMonth()+1},MM:function(e){return d(e.getMonth()+1)},MMM:function(e,t){return t.monthNamesShort[e.getMonth()]},MMMM:function(e,t){return t.monthNames[e.getMonth()]},yy:function(e){return d(String(e.getFullYear()),4).substr(2)},yyyy:function(e){return d(e.getFullYear(),4)},h:function(e){return e.getHours()%12||12},hh:function(e){return d(e.getHours()%12||12)},H:function(e){return e.getHours()},HH:function(e){return d(e.getHours())},m:function(e){return e.getMinutes()},mm:function(e){return d(e.getMinutes())},s:function(e){return e.getSeconds()},ss:function(e){return d(e.getSeconds())},S:function(e){return Math.round(e.getMilliseconds()/100)},SS:function(e){return d(Math.round(e.getMilliseconds()/10),2)},SSS:function(e){return d(e.getMilliseconds(),3)},a:function(e,t){return e.getHours()<12?t.amPm[0]:t.amPm[1]},A:function(e,t){return e.getHours()<12?t.amPm[0].toUpperCase():t.amPm[1].toUpperCase()},ZZ:function(e){var t=e.getTimezoneOffset();return(t>0?"-":"+")+d(100*Math.floor(Math.abs(t)/60)+Math.abs(t)%60,4)}},b={d:["\\d\\d?",function(e,t){e.day=t}],Do:["\\d\\d?"+o,function(e,t){e.day=parseInt(t,10)}],M:["\\d\\d?",function(e,t){e.month=t-1}],yy:["\\d\\d?",function(e,t){var i=+(""+(new Date).getFullYear()).substr(0,2);e.year=""+(t>68?i-1:i)+t}],h:["\\d\\d?",function(e,t){e.hour=t}],m:["\\d\\d?",function(e,t){e.minute=t}],s:["\\d\\d?",function(e,t){e.second=t}],yyyy:["\\d{4}",function(e,t){e.year=t}],S:["\\d",function(e,t){e.millisecond=100*t}],SS:["\\d{2}",function(e,t){e.millisecond=10*t}],SSS:["\\d{3}",function(e,t){e.millisecond=t}],D:["\\d\\d?",u],ddd:[o,u],MMM:[o,h("monthNamesShort")],MMMM:[o,h("monthNames")],a:[o,function(e,t,i){var n=t.toLowerCase();n===i.amPm[0]?e.isPm=!1:n===i.amPm[1]&&(e.isPm=!0)}],ZZ:["[^\\s]*?[\\+\\-]\\d\\d:?\\d\\d|[^\\s]*?Z",function(e,t){var i,n=(t+"").match(/([+-]|\d\d)/gi);n&&(i=60*n[1]+parseInt(n[2],10),e.timezoneOffset="+"===n[0]?i:-i)}]};b.dd=b.d,b.dddd=b.ddd,b.DD=b.D,b.mm=b.m,b.hh=b.H=b.HH=b.h,b.MM=b.M,b.ss=b.s,b.A=b.a,s.masks={default:"ddd MMM dd yyyy HH:mm:ss",shortDate:"M/D/yy",mediumDate:"MMM d, yyyy",longDate:"MMMM d, yyyy",fullDate:"dddd, MMMM d, yyyy",shortTime:"HH:mm",mediumTime:"HH:mm:ss",longTime:"HH:mm:ss.SSS"},s.format=function(e,t,i){var n=i||s.i18n;if("number"==typeof e&&(e=new Date(e)),"[object Date]"!==Object.prototype.toString.call(e)||isNaN(e.getTime()))throw new Error("Invalid Date in fecha.format");t=s.masks[t]||t||s.masks.default;var r=[];return(t=(t=t.replace(l,function(e,t){return r.push(t),"@@@"})).replace(a,function(t){return t in g?g[t](e,n):t.slice(1,t.length-1)})).replace(/@@@/g,function(){return r.shift()})},s.parse=function(e,t,i){var n=i||s.i18n;if("string"!=typeof t)throw new Error("Invalid format in fecha.parse");if(t=s.masks[t]||t,e.length>1e3)return null;var r={},o=[],u=[];t=t.replace(l,function(e,t){return u.push(t),"@@@"});var c,h=(c=t,c.replace(/[|\\{()[^$+*?.-]/g,"\\$&")).replace(a,function(e){if(b[e]){var t=b[e];return o.push(t[1]),"("+t[0]+")"}return e});h=h.replace(/@@@/g,function(){return u.shift()});var d=e.match(new RegExp(h,"i"));if(!d)return null;for(var p=1;pe?u():!0!==t&&(r=setTimeout(n?function(){r=void 0}:u,void 0===n?e-o:e))}}},function(e,t){var i=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=i)},function(e,t){var i=/^(attrs|props|on|nativeOn|class|style|hook)$/;function n(e,t){return function(){e&&e.apply(this,arguments),t&&t.apply(this,arguments)}}e.exports=function(e){return e.reduce(function(e,t){var r,s,a,o,l;for(a in t)if(r=e[a],s=t[a],r&&i.test(a))if("class"===a&&("string"==typeof r&&(l=r,e[a]=r={},r[l]=!0),"string"==typeof s&&(l=s,t[a]=s={},s[l]=!0)),"on"===a||"nativeOn"===a||"hook"===a)for(o in s)r[o]=n(r[o],s[o]);else if(Array.isArray(r))e[a]=r.concat(s);else if(Array.isArray(s))e[a]=[r].concat(s);else for(o in s)r[o]=s[o];else e[a]=t[a];return e},{})}},function(e,t){var i={}.hasOwnProperty;e.exports=function(e,t){return i.call(e,t)}},function(e,t,i){"use strict";t.__esModule=!0;var n,r=i(56),s=(n=r)&&n.__esModule?n:{default:n};t.default=s.default||function(e){for(var t=1;t0?n:i)(e)}},function(e,t,i){var n=i(28)("keys"),r=i(21);e.exports=function(e){return n[e]||(n[e]=r(e))}},function(e,t,i){var n=i(14),r=i(5),s=r["__core-js_shared__"]||(r["__core-js_shared__"]={});(e.exports=function(e,t){return s[e]||(s[e]=void 0!==t?t:{})})("versions",[]).push({version:n.version,mode:i(20)?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},function(e,t){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(e,t){t.f=Object.getOwnPropertySymbols},function(e,t){e.exports={}},function(e,t,i){var n=i(10).f,r=i(7),s=i(13)("toStringTag");e.exports=function(e,t,i){e&&!r(e=i?e:e.prototype,s)&&n(e,s,{configurable:!0,value:t})}},function(e,t,i){t.f=i(13)},function(e,t,i){var n=i(5),r=i(14),s=i(20),a=i(33),o=i(10).f;e.exports=function(e){var t=r.Symbol||(r.Symbol=s?{}:n.Symbol||{});"_"==e.charAt(0)||e in t||o(t,e,{value:a.f(e)})}},function(e,t,i){var n=i(4),r=i(1);e.exports={throttle:n,debounce:r}},function(e,t,i){e.exports=!i(11)&&!i(16)(function(){return 7!=Object.defineProperty(i(37)("div"),"a",{get:function(){return 7}}).a})},function(e,t,i){var n=i(15),r=i(5).document,s=n(r)&&n(r.createElement);e.exports=function(e){return s?r.createElement(e):{}}},function(e,t,i){var n=i(7),r=i(12),s=i(62)(!1),a=i(27)("IE_PROTO");e.exports=function(e,t){var i,o=r(e),l=0,u=[];for(i in o)i!=a&&n(o,i)&&u.push(i);for(;t.length>l;)n(o,i=t[l++])&&(~s(u,i)||u.push(i));return u}},function(e,t,i){var n=i(40);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(e){return"String"==n(e)?e.split(""):Object(e)}},function(e,t){var i={}.toString;e.exports=function(e){return i.call(e).slice(8,-1)}},function(e,t,i){var n=i(25);e.exports=function(e){return Object(n(e))}},function(e,t,i){"use strict";var n=i(20),r=i(23),s=i(43),a=i(9),o=i(31),l=i(69),u=i(32),c=i(72),h=i(13)("iterator"),d=!([].keys&&"next"in[].keys()),p=function(){return this};e.exports=function(e,t,i,f,m,v,g){l(i,t,f);var b,y,w,_=function(e){if(!d&&e in S)return S[e];switch(e){case"keys":case"values":return function(){return new i(this,e)}}return function(){return new i(this,e)}},x=t+" Iterator",C="values"==m,k=!1,S=e.prototype,D=S[h]||S["@@iterator"]||m&&S[m],$=D||_(m),E=m?C?_("entries"):$:void 0,T="Array"==t&&S.entries||D;if(T&&(w=c(T.call(new e)))!==Object.prototype&&w.next&&(u(w,x,!0),n||"function"==typeof w[h]||a(w,h,p)),C&&D&&"values"!==D.name&&(k=!0,$=function(){return D.call(this)}),n&&!g||!d&&!k&&S[h]||a(S,h,$),o[t]=$,o[x]=p,m)if(b={values:C?$:_("values"),keys:v?$:_("keys"),entries:E},g)for(y in b)y in S||s(S,y,b[y]);else r(r.P+r.F*(d||k),t,b);return b}},function(e,t,i){e.exports=i(9)},function(e,t,i){var n=i(17),r=i(70),s=i(29),a=i(27)("IE_PROTO"),o=function(){},l=function(){var e,t=i(37)("iframe"),n=s.length;for(t.style.display="none",i(71).appendChild(t),t.src="javascript:",(e=t.contentWindow.document).open(),e.write(" \ No newline at end of file diff --git a/dzz/pichome/template/mobile/components/index/JsIndex.htm b/dzz/pichome/template/mobile/components/index/JsIndex.htm index 9a3dd99..cbb12fa 100644 --- a/dzz/pichome/template/mobile/components/index/JsIndex.htm +++ b/dzz/pichome/template/mobile/components/index/JsIndex.htm @@ -8,10 +8,10 @@
@@ -51,11 +51,13 @@ + + \ No newline at end of file diff --git a/dzz/pichome/template/mobile/components/index/image/JsCollect.htm b/dzz/pichome/template/mobile/components/index/image/JsCollect.htm new file mode 100644 index 0000000..e4014ee --- /dev/null +++ b/dzz/pichome/template/mobile/components/index/image/JsCollect.htm @@ -0,0 +1,162 @@ + \ No newline at end of file diff --git a/dzz/pichome/template/mobile/components/index/image/classify.htm b/dzz/pichome/template/mobile/components/index/image/classify.htm new file mode 100644 index 0000000..9984a11 --- /dev/null +++ b/dzz/pichome/template/mobile/components/index/image/classify.htm @@ -0,0 +1,216 @@ + + +
+
+ +
+
+
+
+ +
+
+
+ +
搜索
+ +
+ + + 确定 + + + +
+
+ + \ No newline at end of file diff --git a/dzz/pichome/template/mobile/components/index/image/more.htm b/dzz/pichome/template/mobile/components/index/image/more.htm new file mode 100644 index 0000000..0dacdfd --- /dev/null +++ b/dzz/pichome/template/mobile/components/index/image/more.htm @@ -0,0 +1,54 @@ + + + \ No newline at end of file diff --git a/dzz/pichome/template/mobile/page/details.htm b/dzz/pichome/template/mobile/page/details.htm index 5c8d55c..2545067 100644 --- a/dzz/pichome/template/mobile/page/details.htm +++ b/dzz/pichome/template/mobile/page/details.htm @@ -1,593 +1,593 @@ - - - - -
-
- - - - - -
-
- - - -
- -
- - - -
- + + + + +
+
+ + + + + +
+
+ + + +
+ +
+ + + +
+ diff --git a/dzz/pichome/template/mobile/page/index.htm b/dzz/pichome/template/mobile/page/index.htm index 4ae9fd8..ec3e09c 100644 --- a/dzz/pichome/template/mobile/page/index.htm +++ b/dzz/pichome/template/mobile/page/index.htm @@ -1,7 +1,9 @@ - - - -
- -
+ + + + + +
+ +
diff --git a/dzz/pichome/template/mobile/page/share.htm b/dzz/pichome/template/mobile/page/share.htm index b4a5d9d..c50ce47 100644 --- a/dzz/pichome/template/mobile/page/share.htm +++ b/dzz/pichome/template/mobile/page/share.htm @@ -1,315 +1,315 @@ - - - -
-
- - - - -
-
-
-
- - - - - -
-
-
-
- - - - -
- -
-
{{imagesData.name}}.{{imagesData.ext}}
-
-
颜色
-
-
-
-
-
-
-
-
标签
-
-
{{item}}
-
-
-
-
链接
- -
-
-
分类
-
-
{{item}}
-
-
-
-
基本信息
-
- - -
评分
-
- -
- -
-
-
- - -
尺寸
-
- -
{{imagesData.width}}×{{imagesData.height}}
-
-
- - -
文件大小
-
- -
{{imagesData.fsize}}
-
-
- - -
类型
-
- -
{{imagesData.ext}}
-
-
- - -
创建时间
-
- -
{{imagesData.mtime}}
-
-
- - -
添加时间
-
- -
{{imagesData.btime}}
-
-
- - -
修改时间
-
- -
{{imagesData.dateline}}
-
-
-
-
-
- -
-
-
-
- + + + +
+
+ + + + +
+
+
+
+ + + + + +
+
+
+
+ + + + +
+ +
+
{{imagesData.name}}.{{imagesData.ext}}
+
+
颜色
+
+
+
+
+
+
+
+
标签
+
+
{{item}}
+
+
+
+
链接
+ +
+
+
分类
+
+
{{item}}
+
+
+
+
基本信息
+
+ + +
评分
+
+ +
+ +
+
+
+ + +
尺寸
+
+ +
{{imagesData.width}}×{{imagesData.height}}
+
+
+ + +
文件大小
+
+ +
{{imagesData.fsize}}
+
+
+ + +
类型
+
+ +
{{imagesData.ext}}
+
+
+ + +
创建时间
+
+ +
{{imagesData.mtime}}
+
+
+ + +
添加时间
+
+ +
{{imagesData.btime}}
+
+
+ + +
修改时间
+
+ +
{{imagesData.dateline}}
+
+
+
+
+
+ +
+
+
+
+ diff --git a/dzz/pichome/template/pc/components/headerAdmin/index.htm b/dzz/pichome/template/pc/components/headerAdmin/index.htm index 9c3e358..df0f959 100644 --- a/dzz/pichome/template/pc/components/headerAdmin/index.htm +++ b/dzz/pichome/template/pc/components/headerAdmin/index.htm @@ -2,11 +2,19 @@
-
+ +
+
+ +
+ + $_G['setting'][sitename] +
@@ -97,11 +105,11 @@ confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' - }).then(() => { + }).then(function() { jQuery.get('user.php?mod=login&op=logging&action=logout&formhash={FORMHASH}&t='+new Date().getTime(),function(data){ window.location.reload(); }); - }).catch(() => { + }).catch(function() { }); break; @@ -111,6 +119,9 @@ } }, + goBack(){ + window.location.href=MOD_URL; + } }, mounted() { diff --git a/dzz/pichome/template/pc/components/image/ImageAudioPlay.htm b/dzz/pichome/template/pc/components/image/ImageAudioPlay.htm index a18ad35..ac23a50 100644 --- a/dzz/pichome/template/pc/components/image/ImageAudioPlay.htm +++ b/dzz/pichome/template/pc/components/image/ImageAudioPlay.htm @@ -6,7 +6,7 @@ ImageAudioPlayMouseenter(tage){ var find = tage.find('.image-playurl'); - tage.addClass('showoperation'); + tage.closest('.image-inside').addClass('showoperation'); var status = find.data('status'); var type = find.data('type'); if(type == 'video' || type == 'audio'){ @@ -23,7 +23,7 @@ } }, ImageAudioPlayMouseleave(tage){ - tage.removeClass('showoperation'); + tage.closest('.image-inside').removeClass('showoperation'); tage.find('.image-playurl').removeClass('show'); }, ImageAudioPlayVideo(box){ diff --git a/dzz/pichome/template/pc/components/image/ImageRowGrid.htm b/dzz/pichome/template/pc/components/image/ImageRowGrid.htm index 9669810..5eed4ad 100644 --- a/dzz/pichome/template/pc/components/image/ImageRowGrid.htm +++ b/dzz/pichome/template/pc/components/image/ImageRowGrid.htm @@ -52,8 +52,8 @@ var str = JSON.parse(JSON.stringify(self.ImageDataList[findex])); var rid = str.rid; arr[rid] = str; - var w = parseInt(arr[rid]['width']); - var h = parseInt(arr[rid]['height']); + var w = parseInt(arr[rid]['thumbwidth']); + var h = parseInt(arr[rid]['thumbheight']); var r = w / h; var r1 = h / w; if (h > 360) { diff --git a/dzz/pichome/template/pc/components/image/ImageWaterfall.htm b/dzz/pichome/template/pc/components/image/ImageWaterfall.htm index e6a1879..2e0a33c 100644 --- a/dzz/pichome/template/pc/components/image/ImageWaterfall.htm +++ b/dzz/pichome/template/pc/components/image/ImageWaterfall.htm @@ -57,7 +57,7 @@ }else{ arr[i]['pwidth'] = pwidth; } - var h = ppwidth/parseFloat(arr[i].width)*parseInt(arr[i].height)>120?ppwidth/parseFloat(arr[i].width)*parseInt(arr[i].height):120; + var h = ppwidth/parseFloat(arr[i].thumbwidth)*parseInt(arr[i].thumbheight)>120?ppwidth/parseFloat(arr[i].thumbwidth)*parseInt(arr[i].thumbheight):120; arr[i]['pheight'] = h; if (index < self.ImageWaterfall.columns) { arr[i]['ptop'] = 0; diff --git a/dzz/pichome/template/pc/components/index/Jsimage.htm b/dzz/pichome/template/pc/components/index/Jsimage.htm index 32da1b6..fea452c 100644 --- a/dzz/pichome/template/pc/components/index/Jsimage.htm +++ b/dzz/pichome/template/pc/components/index/Jsimage.htm @@ -2,44 +2,96 @@
显示子分类内容
+
+
+ +
+ +
+
+ +
+ +
+