From e40b32db550ce77b906b0d92e1fa7f928c528b89 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9E=97=E4=B8=80=E5=B3=B0?= <1feng.0595@gmail.com>
Date: Fri, 16 Jun 2017 15:41:04 +0800
Subject: [PATCH] wap
---
app/Common/function.php | 49 ++-
app/Http/Controllers/Api/IndexController.php | 3 +-
app/Http/Controllers/Home/IndexController.php | 106 +++---
app/Http/Controllers/Wap/CommonController.php | 12 +
app/Http/Controllers/Wap/IndexController.php | 263 ++++++++++++++-
public/css/style.css | 313 ++++++------------
public/css/style博客.css | 231 +++++++++++++
public/images/logo.png | Bin 1889 -> 3113 bytes
public/images/screenshots.png | Bin 0 -> 498469 bytes
public/{images => images2}/0.png | Bin
public/images2/1.jpg | Bin 0 -> 110955 bytes
public/{images => images2}/1.png | Bin
public/images2/2.jpg | Bin 0 -> 147705 bytes
.../{images => images2}/20160820232652166.png | Bin
public/images2/20161108163616914.jpg | Bin 0 -> 337462 bytes
public/images2/20161108163633172.jpg | Bin 0 -> 165120 bytes
.../{images => images2}/20161108163706251.png | Bin
public/images2/3.jpg | Bin 0 -> 286306 bytes
public/images2/4.jpg | Bin 0 -> 101406 bytes
public/images2/applead.png | Bin 0 -> 486037 bytes
public/{images => images2}/b.gif | Bin
public/{images => images2}/banner.gif | Bin
public/images2/banner.jpg | Bin 0 -> 49552 bytes
public/images2/blue_icon.png | Bin 0 -> 8895 bytes
public/{images => images2}/chinese.png | Bin
public/{images => images2}/foundation.png | Bin
.../{images => images2}/ico_specific02_8.png | Bin
public/{images => images2}/icon.gif | Bin
public/{images => images2}/iconfont-close.png | Bin
public/{images => images2}/index.png | Bin
public/{images => images2}/left_li.gif | Bin
public/{images => images2}/li.png | Bin
public/images2/logo.png | Bin 0 -> 1889 bytes
public/{images => images2}/mobile.png | Bin
public/{images => images2}/nopic.gif | Bin
public/{images => images2}/off.png | Bin
public/{images => images2}/on.png | Bin
public/{images => images2}/online_bg.png | Bin
public/{images => images2}/title_line.jpg | Bin
public/{images => images2}/toolbar.png | Bin
public/{images => images2}/top_bg.jpg | Bin
public/{images => images2}/w1.png | Bin
public/{images => images2}/web.png | Bin
public/{images => images2}/yi-img-icon.png | Bin
resources/views/home/common/footer.blade.php | 2 +-
resources/views/home/common/header.blade.php | 41 ++-
resources/views/home/index/category.blade.php | 78 ++---
resources/views/home/index/detail.blade.php | 78 ++---
resources/views/home/index/index.blade.php | 161 ++++++---
resources/views/home/index/page.blade.php | 38 ++-
resources/views/home/index/product.blade.php | 25 ++
.../views/home/index/productcat.blade.php | 25 ++
resources/views/home/index/search.blade.php | 27 +-
resources/views/home/index/tag.blade.php | 73 ++--
resources/views/home2/404.blade.php | 20 ++
resources/views/home2/common/footer.blade.php | 1 +
resources/views/home2/common/header.blade.php | 5 +
.../views/home2/index/category.blade.php | 62 ++++
.../views/home2/index/category2.blade.php | 57 ++++
resources/views/home2/index/detail.blade.php | 60 ++++
resources/views/home2/index/index.blade.php | 66 ++++
resources/views/home2/index/login.blade.php | 171 ++++++++++
resources/views/home2/index/page.blade.php | 8 +
resources/views/home2/index/search.blade.php | 35 ++
resources/views/home2/index/sitemap.blade.php | 9 +
resources/views/home2/index/tag.blade.php | 62 ++++
resources/views/home2/index/tag2.blade.php | 58 ++++
resources/views/home2/index/tag3.blade.php | 57 ++++
resources/views/home2/index/tags.blade.php | 7 +
resources/views/wap/404.blade.php | 20 ++
resources/views/wap/common/footer.blade.php | 1 +
resources/views/wap/common/header.blade.php | 6 +
resources/views/wap/index/category.blade.php | 16 +
resources/views/wap/index/category2.blade.php | 57 ++++
resources/views/wap/index/detail.blade.php | 66 ++++
resources/views/wap/index/index.blade.php | 83 +++++
resources/views/wap/index/login.blade.php | 171 ++++++++++
resources/views/wap/index/page.blade.php | 12 +
resources/views/wap/index/product.blade.php | 16 +
.../views/wap/index/productcat.blade.php | 17 +
resources/views/wap/index/search.blade.php | 26 ++
resources/views/wap/index/sitemap.blade.php | 8 +
resources/views/wap/index/tag.blade.php | 16 +
resources/views/wap/index/tag2.blade.php | 58 ++++
resources/views/wap/index/tag3.blade.php | 57 ++++
resources/views/wap/index/tags.blade.php | 20 ++
routes/web.php | 37 ++-
87 files changed, 2321 insertions(+), 569 deletions(-)
create mode 100644 app/Http/Controllers/Wap/CommonController.php
create mode 100644 public/css/style博客.css
create mode 100644 public/images/screenshots.png
rename public/{images => images2}/0.png (100%)
create mode 100644 public/images2/1.jpg
rename public/{images => images2}/1.png (100%)
create mode 100644 public/images2/2.jpg
rename public/{images => images2}/20160820232652166.png (100%)
create mode 100644 public/images2/20161108163616914.jpg
create mode 100644 public/images2/20161108163633172.jpg
rename public/{images => images2}/20161108163706251.png (100%)
create mode 100644 public/images2/3.jpg
create mode 100644 public/images2/4.jpg
create mode 100644 public/images2/applead.png
rename public/{images => images2}/b.gif (100%)
rename public/{images => images2}/banner.gif (100%)
create mode 100644 public/images2/banner.jpg
create mode 100644 public/images2/blue_icon.png
rename public/{images => images2}/chinese.png (100%)
rename public/{images => images2}/foundation.png (100%)
rename public/{images => images2}/ico_specific02_8.png (100%)
rename public/{images => images2}/icon.gif (100%)
rename public/{images => images2}/iconfont-close.png (100%)
rename public/{images => images2}/index.png (100%)
rename public/{images => images2}/left_li.gif (100%)
rename public/{images => images2}/li.png (100%)
create mode 100644 public/images2/logo.png
rename public/{images => images2}/mobile.png (100%)
rename public/{images => images2}/nopic.gif (100%)
rename public/{images => images2}/off.png (100%)
rename public/{images => images2}/on.png (100%)
rename public/{images => images2}/online_bg.png (100%)
rename public/{images => images2}/title_line.jpg (100%)
rename public/{images => images2}/toolbar.png (100%)
rename public/{images => images2}/top_bg.jpg (100%)
rename public/{images => images2}/w1.png (100%)
rename public/{images => images2}/web.png (100%)
rename public/{images => images2}/yi-img-icon.png (100%)
create mode 100644 resources/views/home/index/product.blade.php
create mode 100644 resources/views/home/index/productcat.blade.php
create mode 100644 resources/views/home2/404.blade.php
create mode 100644 resources/views/home2/common/footer.blade.php
create mode 100644 resources/views/home2/common/header.blade.php
create mode 100644 resources/views/home2/index/category.blade.php
create mode 100644 resources/views/home2/index/category2.blade.php
create mode 100644 resources/views/home2/index/detail.blade.php
create mode 100644 resources/views/home2/index/index.blade.php
create mode 100644 resources/views/home2/index/login.blade.php
create mode 100644 resources/views/home2/index/page.blade.php
create mode 100644 resources/views/home2/index/search.blade.php
create mode 100644 resources/views/home2/index/sitemap.blade.php
create mode 100644 resources/views/home2/index/tag.blade.php
create mode 100644 resources/views/home2/index/tag2.blade.php
create mode 100644 resources/views/home2/index/tag3.blade.php
create mode 100644 resources/views/home2/index/tags.blade.php
create mode 100644 resources/views/wap/404.blade.php
create mode 100644 resources/views/wap/common/footer.blade.php
create mode 100644 resources/views/wap/common/header.blade.php
create mode 100644 resources/views/wap/index/category.blade.php
create mode 100644 resources/views/wap/index/category2.blade.php
create mode 100644 resources/views/wap/index/detail.blade.php
create mode 100644 resources/views/wap/index/index.blade.php
create mode 100644 resources/views/wap/index/login.blade.php
create mode 100644 resources/views/wap/index/page.blade.php
create mode 100644 resources/views/wap/index/product.blade.php
create mode 100644 resources/views/wap/index/productcat.blade.php
create mode 100644 resources/views/wap/index/search.blade.php
create mode 100644 resources/views/wap/index/sitemap.blade.php
create mode 100644 resources/views/wap/index/tag.blade.php
create mode 100644 resources/views/wap/index/tag2.blade.php
create mode 100644 resources/views/wap/index/tag3.blade.php
create mode 100644 resources/views/wap/index/tags.blade.php
diff --git a/app/Common/function.php b/app/Common/function.php
index 13f9610..26e2afe 100644
--- a/app/Common/function.php
+++ b/app/Common/function.php
@@ -95,6 +95,16 @@ function get_front_url($param='')
//tags页面
$url .= '/s'.$param['searchid'];
}
+ else if($param['type'] == 'productlist')
+ {
+ //商品列表页
+ $url .= '/product'.$param['catid'];
+ }
+ else if($param['type'] == 'productdetail')
+ {
+ //商品内容页
+ $url .= '/goods/'.$param['id'];
+ }
return $url;
}
@@ -103,7 +113,7 @@ function get_front_url($param='')
function get_wap_front_url(array $param)
{
$url = '';
-
+
if($param['type'] == 'list')
{
//列表页
@@ -129,7 +139,17 @@ function get_wap_front_url(array $param)
//tags页面
$url .= '/s'.$param['searchid'];
}
-
+ else if($param['type'] == 'productlist')
+ {
+ //商品列表页
+ $url .= '/product'.$param['catid'];
+ }
+ else if($param['type'] == 'productdetail')
+ {
+ //商品内容页
+ $url .= '/goods/'.$param['id'];
+ }
+
return $url;
}
@@ -240,11 +260,12 @@ function arclist(array $param)
*/
function tagslist($param="")
{
+ $tagindex = \DB::table("tagindex");
$orderby=$limit="";
- if(isset($param['limit'])){$limit=$param['limit'];}else{if(isset($param['row'])){$limit=$param['row'];}}
- if(isset($param['orderby'])){$orderby=$param['orderby'];}else{$orderby='id desc';}
+ if(isset($param['row'])){$tagindex = $tagindex->take($param['row']);}
+ if(isset($param['orderby'])){if($param['orderby']=='rand()'){$tagindex = $tagindex->orderBy(\DB::Raw('rand()'));}else{$tagindex = $tagindex->orderBy($param['orderby'][0],$param['orderby'][1]);}}else{$tagindex = $tagindex->orderBy('id','desc');}
- return \DB::table("tagindex")->get();
+ return object_to_array($tagindex->get());
}
/**
@@ -676,17 +697,17 @@ function category_tree($list,$pid=0)
}
//递归获取面包屑导航
-function get_cat_path($cat)
+function get_cat_path($cat,$table='arctype',$type='list')
{
global $temp;
- $row = db("arctype")->field('typename,reid,id')->where("id=$cat")->find();
+ $row = \DB::table($table)->select('name','pid','id')->where('id',$cat)->first();
- $temp = ''.$row["typename"]." > ".$temp;
+ $temp = '$row->id,"type"=>$type)).'">'.$row->name." > ".$temp;
- if($row["reid"]<>0)
+ if($row->pid<>0)
{
- get_cat_path($row["reid"]);
+ get_cat_path($row->pid);
}
return $temp;
@@ -698,19 +719,19 @@ function taglist($id,$tagid=0)
$tags="";
if($tagid!=0)
{
- $Taglist = db("taglist")->where("aid=$id and tid<>$tagid")->select();
+ $Taglist = \DB::table("taglist")->where('aid',$id)->where('tid', '<>', $tagid)->get();
}
else
{
- $Taglist = db("taglist")->where("aid=$id")->select();
+ $Taglist = \DB::table("taglist")->where('aid',$id)->get();
}
foreach($Taglist as $row)
{
- if($tags==""){$tags='id='.$row['tid'];}else{$tags=$tags.' or id='.$row['tid'];}
+ if($tags==""){$tags='id='.$row->tid;}else{$tags=$tags.' or id='.$row->tid;}
}
- if($tags!=""){return db("tagindex")->where($tags)->select();}
+ if($tags!=""){return object_to_array(\DB::table("tagindex")->whereRaw(\DB::raw($tags))->get());}
}
//读取动态配置
diff --git a/app/Http/Controllers/Api/IndexController.php b/app/Http/Controllers/Api/IndexController.php
index 6e99f95..be3e849 100644
--- a/app/Http/Controllers/Api/IndexController.php
+++ b/app/Http/Controllers/Api/IndexController.php
@@ -67,7 +67,8 @@ class IndexController extends CommonController
foreach($list as $key=>$row)
{
- $list[$key]["url"] = get_front_url(array("id"=>$row['id'],"catid"=>$row['typeid'],"type"=>'content'));
+ $list[$key]["url"] = get_front_url(array("id"=>$row['id'],"type"=>'content'));
+ $list[$key]["pubdate"] = date("Y-m-d", $list[$key]["pubdate"]);
}
$res["data"] = $list;
diff --git a/app/Http/Controllers/Home/IndexController.php b/app/Http/Controllers/Home/IndexController.php
index a9e61a1..29d6fcd 100644
--- a/app/Http/Controllers/Home/IndexController.php
+++ b/app/Http/Controllers/Home/IndexController.php
@@ -22,9 +22,9 @@ class IndexController extends CommonController
{
$pagenow = $page;
- if(empty($cat) || !preg_match('/[0-9]+/',$cat)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}
+ if(empty($cat) || !preg_match('/[0-9]+/',$cat)){return redirect()->route('page404');}
- if(cache("catid$cat")){$post = cache("catid$cat");}else{$post = object_to_array(DB::table('arctype')->where('id', $cat)->first(), 1);if(empty($post)){error_jump('您访问的页面不存在或已被删除!', route('page404'));} cache(["catid$cat"=>$post], \Carbon\Carbon::now()->addMinutes(2592000));}
+ if(cache("catid$cat")){$post = cache("catid$cat");}else{$post = object_to_array(DB::table('arctype')->where('id', $cat)->first(), 1);if(empty($post)){return redirect()->route('page404');} cache(["catid$cat"=>$post], \Carbon\Carbon::now()->addMinutes(2592000));}
$data['post'] = $post;
$subcat="";$sql="";
@@ -40,7 +40,7 @@ class IndexController extends CommonController
if($counts % $pagesize){//取总数据量除以每页数的余数
$pages = intval($counts/$pagesize) + 1; //如果有余数,则页数等于总数据量除以每页数的结果取整再加一,如果没有余数,则页数等于总数据量除以每页数的结果
}else{$pages = $counts/$pagesize;}
- if(!empty($pagenow)){if($pagenow==1 || $pagenow>$pages){error_jump('您访问的页面不存在或已被删除!', route('page404'));}$page = $pagenow-1;$nextpage=$pagenow+1;$previouspage=$pagenow-1;}else{$page = 0;$nextpage=2;$previouspage=0;}
+ if(!empty($pagenow)){if($pagenow==1 || $pagenow>$pages){return redirect()->route('page404');}$page = $pagenow-1;$nextpage=$pagenow+1;$previouspage=$pagenow-1;}else{$page = 0;$nextpage=2;$previouspage=0;}
$data['page'] = $page;
$data['pages'] = $pages;
$data['counts'] = $counts;
@@ -49,7 +49,7 @@ class IndexController extends CommonController
$data['posts'] = arclist(array("sql"=>$sql, "limit"=>"$start,$pagesize")); //获取列表
$data['pagenav'] = get_listnav(array("counts"=>$counts,"pagesize"=>$pagesize,"pagenow"=>$page+1,"catid"=>$cat)); //获取分页列表
- if($post['templist']=='category2'){if(!empty($pagenow)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}}
+ if($post['templist']=='category2'){if(!empty($pagenow)){return redirect()->route('page404');}}
return view('home.index.'.$post['templist'], $data);
}
@@ -57,9 +57,9 @@ class IndexController extends CommonController
//文章详情页
public function detail($id)
{
- if(empty($id) || !preg_match('/[0-9]+/',$id)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}
+ if(empty($id) || !preg_match('/[0-9]+/',$id)){return redirect()->route('page404');}
- if(cache("detailid$id")){$post = cache("detailid$id");}else{$post = object_to_array(DB::table('article')->where('id', $id)->first(), 1);if(empty($post)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}$post['name'] = DB::table('arctype')->where('id', $post['typeid'])->value('name');cache(["detailid$id"=>$post], \Carbon\Carbon::now()->addMinutes(2592000));}
+ if(cache("detailid$id")){$post = cache("detailid$id");}else{$post = object_to_array(DB::table('article')->where('id', $id)->first(), 1);if(empty($post)){return redirect()->route('page404');}$post['name'] = DB::table('arctype')->where('id', $post['typeid'])->value('name');cache(["detailid$id"=>$post], \Carbon\Carbon::now()->addMinutes(2592000));}
if($post)
{
$cat = $post['typeid'];
@@ -71,7 +71,7 @@ class IndexController extends CommonController
}
else
{
- error_jump('您访问的页面不存在或已被删除!', route('page404'));
+ return redirect()->route('page404');
}
if(cache("catid$cat")){$post=cache("catid$cat");}else{$post = object_to_array(DB::table('arctype')->where('id', $cat)->first(), 1);cache(["catid$cat"=>$post], \Carbon\Carbon::now()->addMinutes(2592000));}
@@ -80,28 +80,28 @@ class IndexController extends CommonController
}
//标签详情页,共有3种显示方式,1正常列表,2列表显示文章,3显示描述
- public function tag($tag, $page)
+ public function tag($tag, $page=0)
{
$pagenow = $page;
- if(empty($tag) || !preg_match('/[0-9]+/',$tag)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}
+ if(empty($tag) || !preg_match('/[0-9]+/',$tag)){return redirect()->route('page404');}
- if(cache("tagid$tag")){$post=cache("tagid$tag");}else{$post = DB::table('tagindex')->where("id=$tag")->first();cache("tagid$tag",$post,2592000);}
- $this->assign('post',$post);
+ $post = object_to_array(DB::table('tagindex')->where('id',$tag)->first(), 1);
+ $data['post'] = $post;
- $counts=DB::table("taglist")->where("tid=$tag")->count('aid');
- if($counts>CMS_MAXARC){$counts=CMS_MAXARC;}
- $pagesize=CMS_PAGESIZE;$page=0;
+ $counts=DB::table("taglist")->where('tid',$tag)->count('aid');
+ if($counts>sysconfig('CMS_MAXARC')){$counts=sysconfig('CMS_MAXARC');}
+ $pagesize=sysconfig('CMS_PAGESIZE');$page=0;
if($counts % $pagesize){//取总数据量除以每页数的余数
$pages = intval($counts/$pagesize) + 1; //如果有余数,则页数等于总数据量除以每页数的结果取整再加一,如果没有余数,则页数等于总数据量除以每页数的结果
}else{$pages = $counts/$pagesize;}
- if(!empty($pagenow)){if($pagenow==1 || $pagenow>$pages){header("HTTP/1.0 404 Not Found");error_jump('您访问的页面不存在或已被删除!', route('page404'));}$page = $pagenow-1;$nextpage=$pagenow+1;$previouspage=$pagenow-1;}else{$page = 0;$nextpage=2;$previouspage=0;}
- $this->assign('page',$page);
- $this->assign('pages',$pages);
- $this->assign('counts',$counts);
+ if(!empty($pagenow)){if($pagenow==1 || $pagenow>$pages){return redirect()->route('page404');}$page = $pagenow-1;$nextpage=$pagenow+1;$previouspage=$pagenow-1;}else{$page = 0;$nextpage=2;$previouspage=0;}
+ $data['page'] = $page;
+ $data['pages'] = $pages;
+ $data['counts'] = $counts;
$start=$page*$pagesize;
- $posts=DB::table("taglist")->where("tid=$tag")->order('aid desc')->limit("$start,$pagesize")->select();
+ $posts=object_to_array(DB::table("taglist")->where('tid',$tag)->orderBy('aid', 'desc')->skip($start)->take($pagesize)->get());
foreach($posts as $row)
{
$aid[] = $row["aid"];
@@ -112,23 +112,23 @@ class IndexController extends CommonController
{
if($post['template']=='tag2')
{
- $this->assign('posts',arclist(array("sql"=>"id in ($aid)","orderby"=>"id desc","limit"=>"$pagesize","field"=>"title,body"))); //获取列表
+ $data['posts'] = arclist(array("sql"=>"id in ($aid)","orderby"=>['id', 'desc'],"row"=>"$pagesize","field"=>"title,body")); //获取列表
}
else
{
- $this->assign('posts',arclist(array("sql"=>"id in ($aid)","orderby"=>"id desc","limit"=>"$pagesize"))); //获取列表
+ $data['posts'] = arclist(array("sql"=>"id in ($aid)","orderby"=>['id', 'desc'],"row"=>"$pagesize")); //获取列表
}
}
else
{
- $this->assign('posts',""); //获取列表
+ $data['posts'] = ''; //获取列表
}
- $this->assign('pagenav',get_listnav(array("counts"=>$counts,"pagesize"=>$pagesize,"pagenow"=>$page+1,"catid"=>$tag,"urltype"=>"tag"))); //获取分页列表
+ $data['pagenav'] = get_listnav(array("counts"=>$counts,"pagesize"=>$pagesize,"pagenow"=>$page+1,"catid"=>$tag,"urltype"=>"tag")); //获取分页列表
+
+ if($post['template']=='tag2' || $post['template']=='tag3'){if(!empty($pagenow)){return redirect()->route('page404');}}
- if($post['template']=='tag2' || $post['template']=='tag3'){if(!empty($pagenow)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}}
- return $this->fetch($post['template']);
- return view('home.index.index');
+ return view('home.index.'.$post['template'], $data);
}
//标签页
@@ -138,24 +138,19 @@ class IndexController extends CommonController
}
//搜索页
- public function search()
+ public function search($keyword)
{
- if(!empty($_GET["keyword"]))
+ if(empty($keyword))
{
- $keyword = $_GET["keyword"]; //搜索的关键词
- if(strstr($keyword,"&")) exit;
-
- $map['title'] = array('LIKE',"%$keyword%");
-
- $this->assign('posts',DB::table("article")->field('body',true)->where($map)->order('id desc')->limit(30)->select());
- $this->assign('keyword',$keyword);
- }
- else
- {
- $this->error('请输入正确的关键词', '/' , 3);exit;
+ echo '请输入正确的关键词';exit;
}
- return view('home.index.search');
+ if(strstr($keyword,"&")) exit;
+
+ $data['posts']= object_to_array(DB::table("article")->where("title", "like", "%$keyword%")->orderBy('id', 'desc')->take(30)->get());
+ $data['keyword']= $keyword;
+
+ return view('home.index.search', $data);
}
//单页面
@@ -174,15 +169,17 @@ class IndexController extends CommonController
}
else
{
- error_jump('您访问的页面不存在或已被删除!', route('page404'));
+ return redirect()->route('page404');
}
}
else
{
- error_jump('您访问的页面不存在或已被删除!', route('page404'));
+ return redirect()->route('page404');
}
+ $data['posts'] = object_to_array(DB::table('page')->orderBy(\DB::raw('rand()'))->take(5)->get());
+
return view('home.index.'.$post['template'], $data);
}
@@ -191,12 +188,12 @@ class IndexController extends CommonController
{
$pagenow = $page;
- if(empty($cat) || !preg_match('/[0-9]+/',$cat)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}
+ if(empty($cat) || !preg_match('/[0-9]+/',$cat)){return redirect()->route('page404');}
- $post = object_to_array(DB::table('product_type')->where('id', $cat)->first(), 1);if(empty($post)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}
+ $post = object_to_array(DB::table('product_type')->where('id', $cat)->first(), 1);if(empty($post)){return redirect()->route('page404');}
$data['post'] = $post;
- $subcat="";$sql="";
+ $subcat="";
$post2 = object_to_array(DB::table('product_type')->select('id')->where('pid', $cat)->get());
if(!empty($post2)){foreach($post2 as $row){$subcat=$subcat."typeid=".$row["id"]." or ";}}
$subcat=$subcat."typeid=".$cat;
@@ -208,15 +205,16 @@ class IndexController extends CommonController
if($counts % $pagesize){//取总数据量除以每页数的余数
$pages = intval($counts/$pagesize) + 1; //如果有余数,则页数等于总数据量除以每页数的结果取整再加一,如果没有余数,则页数等于总数据量除以每页数的结果
}else{$pages = $counts/$pagesize;}
- if(!empty($pagenow)){if($pagenow==1 || $pagenow>$pages){error_jump('您访问的页面不存在或已被删除!', route('page404'));}$page = $pagenow-1;$nextpage=$pagenow+1;$previouspage=$pagenow-1;}else{$page = 0;$nextpage=2;$previouspage=0;}
+ if(!empty($pagenow)){if($pagenow==1 || $pagenow>$pages){return redirect()->route('page404');}$page = $pagenow-1;$nextpage=$pagenow+1;$previouspage=$pagenow-1;}else{$page = 0;$nextpage=2;$previouspage=0;}
$data['page'] = $page;
$data['pages'] = $pages;
$data['counts'] = $counts;
$start = $page*$pagesize;
- $data['posts'] = DB::table('article')->whereRaw($subcat)->paginate($pagesize); //获取列表
-
- if($post['templist']=='category2'){if(!empty($pagenow)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}}
+ $data['posts'] = arclist(array("table"=>"product","sql"=>$subcat, "limit"=>"$start,$pagesize")); //获取列表
+ $data['pagenav'] = get_listnav(array("counts"=>$counts,"pagesize"=>$pagesize,"pagenow"=>$page+1,"catid"=>$cat,"urltype"=>"product")); //获取分页列表
+
+ if($post['templist']=='category2'){if(!empty($pagenow)){return redirect()->route('page404');}}
return view('home.index.'.$post['templist'], $data);
}
@@ -224,9 +222,9 @@ class IndexController extends CommonController
//商品详情页
public function product($id)
{
- if(empty($id) || !preg_match('/[0-9]+/',$id)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}
+ if(empty($id) || !preg_match('/[0-9]+/',$id)){return redirect()->route('page404');}
- $post = object_to_array(DB::table('product')->where('id', $id)->first(), 1);if(empty($post)){error_jump('您访问的页面不存在或已被删除!', route('page404'));}$post['name'] = DB::table('arctype')->where('id', $post['typeid'])->value('name');
+ $post = object_to_array(DB::table('product')->where('id', $id)->first(), 1);if(empty($post)){return redirect()->route('page404');}$post['name'] = DB::table('product_type')->where('id', $post['typeid'])->value('name');
if($post)
{
$cat = $post['typeid'];
@@ -238,14 +236,14 @@ class IndexController extends CommonController
}
else
{
- error_jump('您访问的页面不存在或已被删除!', route('page404'));
+ return redirect()->route('page404');
}
$post = object_to_array(DB::table('product_type')->where('id', $cat)->first(), 1);
return view('home.index.'.$post['temparticle'], $data);
}
-
+
//sitemap页面
public function sitemap()
{
@@ -263,4 +261,4 @@ class IndexController extends CommonController
{
return date("Y-m-d H:i:s",strtotime("2017-04"));
}
-}
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Wap/CommonController.php b/app/Http/Controllers/Wap/CommonController.php
new file mode 100644
index 0000000..31a690b
--- /dev/null
+++ b/app/Http/Controllers/Wap/CommonController.php
@@ -0,0 +1,12 @@
+middleware('guest')->except('logout');
+ parent::__construct();
+ }
+
+ //首页
+ public function index()
+ {
+ return view('wap.index.index');
}
- public function index()
+ //列表页
+ public function category($cat, $page=0)
{
- dd('wap/index');
+ $pagenow = $page;
+
+ if(empty($cat) || !preg_match('/[0-9]+/',$cat)){return redirect()->route('page404');}
+
+ if(cache("catid$cat")){$post = cache("catid$cat");}else{$post = object_to_array(DB::table('arctype')->where('id', $cat)->first(), 1);if(empty($post)){return redirect()->route('page404');} cache(["catid$cat"=>$post], \Carbon\Carbon::now()->addMinutes(2592000));}
+ $data['post'] = $post;
+
+ $subcat="";$sql="";
+ $post2 = object_to_array(DB::table('arctype')->select('id')->where('pid', $cat)->get());
+ if(!empty($post2)){foreach($post2 as $row){$subcat=$subcat."typeid=".$row["id"]." or ";}}
+ $subcat=$subcat."typeid=".$cat;
+ $sql=$subcat." or typeid2 in (".$cat.")";//echo $subcat2;exit;
+ $data['sql'] = $sql;
+
+ $counts = DB::table("article")->whereRaw($sql)->count();
+ if($counts>sysconfig('CMS_MAXARC')){$counts=sysconfig('CMS_MAXARC');dd($counts);}
+ $pagesize = sysconfig('CMS_PAGESIZE');$page=0;
+ if($counts % $pagesize){//取总数据量除以每页数的余数
+ $pages = intval($counts/$pagesize) + 1; //如果有余数,则页数等于总数据量除以每页数的结果取整再加一,如果没有余数,则页数等于总数据量除以每页数的结果
+ }else{$pages = $counts/$pagesize;}
+ if(!empty($pagenow)){if($pagenow==1 || $pagenow>$pages){return redirect()->route('page404');}$page = $pagenow-1;$nextpage=$pagenow+1;$previouspage=$pagenow-1;}else{$page = 0;$nextpage=2;$previouspage=0;}
+ $data['page'] = $page;
+ $data['pages'] = $pages;
+ $data['counts'] = $counts;
+ $start = $page*$pagesize;
+
+ $data['posts'] = arclist(array("sql"=>$sql, "limit"=>"$start,$pagesize")); //获取列表
+ $data['pagenav'] = get_listnav(array("counts"=>$counts,"pagesize"=>$pagesize,"pagenow"=>$page+1,"catid"=>$cat)); //获取分页列表
+
+ if($post['templist']=='category2'){if(!empty($pagenow)){return redirect()->route('page404');}}
+
+ return view('wap.index.'.$post['templist'], $data);
}
-}
+
+ //文章详情页
+ public function detail($id)
+ {
+ if(empty($id) || !preg_match('/[0-9]+/',$id)){return redirect()->route('page404');}
+
+ if(cache("detailid$id")){$post = cache("detailid$id");}else{$post = object_to_array(DB::table('article')->where('id', $id)->first(), 1);if(empty($post)){return redirect()->route('page404');}$post['name'] = DB::table('arctype')->where('id', $post['typeid'])->value('name');cache(["detailid$id"=>$post], \Carbon\Carbon::now()->addMinutes(2592000));}
+ if($post)
+ {
+ $cat = $post['typeid'];
+ $post['body'] = ReplaceKeyword($post['body']);
+ if(!empty($post['writer'])){$post['writertitle']=$post['title'].' '.$post['writer'];}
+
+ $data['post'] = $post;
+ $data['pre'] = get_article_prenext(array('aid'=>$post["id"],'typeid'=>$post["typeid"],'type'=>"pre"));
+ }
+ else
+ {
+ return redirect()->route('page404');
+ }
+
+ if(cache("catid$cat")){$post=cache("catid$cat");}else{$post = object_to_array(DB::table('arctype')->where('id', $cat)->first(), 1);cache(["catid$cat"=>$post], \Carbon\Carbon::now()->addMinutes(2592000));}
+
+ return view('wap.index.'.$post['temparticle'], $data);
+ }
+
+ //标签详情页,共有3种显示方式,1正常列表,2列表显示文章,3显示描述
+ public function tag($tag, $page=0)
+ {
+ $pagenow = $page;
+
+ if(empty($tag) || !preg_match('/[0-9]+/',$tag)){return redirect()->route('page404');}
+
+ $post = object_to_array(DB::table('tagindex')->where('id',$tag)->first(), 1);
+ $data['post'] = $post;
+
+ $counts=DB::table("taglist")->where('tid',$tag)->count('aid');
+ if($counts>sysconfig('CMS_MAXARC')){$counts=sysconfig('CMS_MAXARC');}
+ $pagesize=sysconfig('CMS_PAGESIZE');$page=0;
+ if($counts % $pagesize){//取总数据量除以每页数的余数
+ $pages = intval($counts/$pagesize) + 1; //如果有余数,则页数等于总数据量除以每页数的结果取整再加一,如果没有余数,则页数等于总数据量除以每页数的结果
+ }else{$pages = $counts/$pagesize;}
+ if(!empty($pagenow)){if($pagenow==1 || $pagenow>$pages){return redirect()->route('page404');}$page = $pagenow-1;$nextpage=$pagenow+1;$previouspage=$pagenow-1;}else{$page = 0;$nextpage=2;$previouspage=0;}
+ $data['page'] = $page;
+ $data['pages'] = $pages;
+ $data['counts'] = $counts;
+ $start=$page*$pagesize;
+
+ $posts=object_to_array(DB::table("taglist")->where('tid',$tag)->orderBy('aid', 'desc')->skip($start)->take($pagesize)->get());
+ foreach($posts as $row)
+ {
+ $aid[] = $row["aid"];
+ }
+ $aid = isset($aid)?implode(',',$aid):"";
+
+ if($aid!="")
+ {
+ if($post['template']=='tag2')
+ {
+ $data['posts'] = arclist(array("sql"=>"id in ($aid)","orderby"=>['id', 'desc'],"row"=>"$pagesize","field"=>"title,body")); //获取列表
+ }
+ else
+ {
+ $data['posts'] = arclist(array("sql"=>"id in ($aid)","orderby"=>['id', 'desc'],"row"=>"$pagesize")); //获取列表
+ }
+ }
+ else
+ {
+ $data['posts'] = ''; //获取列表
+ }
+
+ $data['pagenav'] = get_listnav(array("counts"=>$counts,"pagesize"=>$pagesize,"pagenow"=>$page+1,"catid"=>$tag,"urltype"=>"tag")); //获取分页列表
+
+ if($post['template']=='tag2' || $post['template']=='tag3'){if(!empty($pagenow)){return redirect()->route('page404');}}
+
+ return view('wap.index.'.$post['template'], $data);
+ }
+
+ //标签页
+ public function tags()
+ {
+ return view('wap.index.tags');
+ }
+
+ //搜索页
+ public function search($keyword)
+ {
+ if(empty($keyword))
+ {
+ echo '请输入正确的关键词';exit;
+ }
+
+ if(strstr($keyword,"&")) exit;
+
+ $data['posts']= object_to_array(DB::table("article")->where("title", "like", "%$keyword%")->orderBy('id', 'desc')->take(30)->get());
+ $data['keyword']= $keyword;
+
+ return view('wap.index.search', $data);
+ }
+
+ //单页面
+ public function page($id)
+ {
+ $data = [];
+
+ if(!empty($id) && preg_match('/[a-z0-9]+/',$id))
+ {
+ $map['filename']=$id;
+ if(cache("pageid$id")){$post=cache("pageid$id");}else{$post = object_to_array(DB::table('page')->where($map)->first(), 1);cache("pageid$id", $post, 2592000);cache(["pageid$id"=>$post], \Carbon\Carbon::now()->addMinutes(2592000));}
+
+ if($post)
+ {
+ $data['post'] = $post;
+ }
+ else
+ {
+ return redirect()->route('page404');
+ }
+
+ }
+ else
+ {
+ return redirect()->route('page404');
+ }
+
+ $data['posts'] = object_to_array(DB::table('page')->orderBy(\DB::raw('rand()'))->take(5)->get());
+
+ return view('wap.index.'.$post['template'], $data);
+ }
+
+ //商品列表页
+ public function productcat($cat, $page=0)
+ {
+ $pagenow = $page;
+
+ if(empty($cat) || !preg_match('/[0-9]+/',$cat)){return redirect()->route('page404');}
+
+ $post = object_to_array(DB::table('product_type')->where('id', $cat)->first(), 1);if(empty($post)){return redirect()->route('page404');}
+ $data['post'] = $post;
+
+ $subcat="";
+ $post2 = object_to_array(DB::table('product_type')->select('id')->where('pid', $cat)->get());
+ if(!empty($post2)){foreach($post2 as $row){$subcat=$subcat."typeid=".$row["id"]." or ";}}
+ $subcat=$subcat."typeid=".$cat;
+ $data['sql'] = $subcat;
+
+ $counts = DB::table("product")->whereRaw($subcat)->count();
+ if($counts>sysconfig('CMS_MAXARC')){$counts=sysconfig('CMS_MAXARC');dd($counts);}
+ $pagesize = sysconfig('CMS_PAGESIZE');$page=0;
+ if($counts % $pagesize){//取总数据量除以每页数的余数
+ $pages = intval($counts/$pagesize) + 1; //如果有余数,则页数等于总数据量除以每页数的结果取整再加一,如果没有余数,则页数等于总数据量除以每页数的结果
+ }else{$pages = $counts/$pagesize;}
+ if(!empty($pagenow)){if($pagenow==1 || $pagenow>$pages){return redirect()->route('page404');}$page = $pagenow-1;$nextpage=$pagenow+1;$previouspage=$pagenow-1;}else{$page = 0;$nextpage=2;$previouspage=0;}
+ $data['page'] = $page;
+ $data['pages'] = $pages;
+ $data['counts'] = $counts;
+ $start = $page*$pagesize;
+
+ $data['posts'] = arclist(array("table"=>"product","sql"=>$subcat, "limit"=>"$start,$pagesize")); //获取列表
+ $data['pagenav'] = get_listnav(array("counts"=>$counts,"pagesize"=>$pagesize,"pagenow"=>$page+1,"catid"=>$cat,"urltype"=>"product")); //获取分页列表
+
+ if($post['templist']=='category2'){if(!empty($pagenow)){return redirect()->route('page404');}}
+
+ return view('wap.index.'.$post['templist'], $data);
+ }
+
+ //商品详情页
+ public function product($id)
+ {
+ if(empty($id) || !preg_match('/[0-9]+/',$id)){return redirect()->route('page404');}
+
+ $post = object_to_array(DB::table('product')->where('id', $id)->first(), 1);if(empty($post)){return redirect()->route('page404');}$post['name'] = DB::table('product_type')->where('id', $post['typeid'])->value('name');
+ if($post)
+ {
+ $cat = $post['typeid'];
+ $post['body'] = ReplaceKeyword($post['body']);
+ if(!empty($post['writer'])){$post['writertitle']=$post['title'].' '.$post['writer'];}
+
+ $data['post'] = $post;
+ $data['pre'] = get_article_prenext(array('aid'=>$post["id"],'typeid'=>$post["typeid"],'type'=>"pre"));
+ }
+ else
+ {
+ return redirect()->route('page404');
+ }
+
+ $post = object_to_array(DB::table('product_type')->where('id', $cat)->first(), 1);
+
+ return view('wap.index.'.$post['temparticle'], $data);
+ }
+
+ //sitemap页面
+ public function sitemap()
+ {
+ return view('wap.index.sitemap');
+ }
+
+ //404页面
+ public function page404()
+ {
+ return view('home.404');
+ }
+
+ //测试页面
+ public function test()
+ {
+ return date("Y-m-d H:i:s",strtotime("2017-04"));
+ }
+}
\ No newline at end of file
diff --git a/public/css/style.css b/public/css/style.css
index da98153..6d1f392 100644
--- a/public/css/style.css
+++ b/public/css/style.css
@@ -1,231 +1,104 @@
-body,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dd,form,input,textarea,select,button{margin:0;padding:0;}em,i{font-style:normal;}
-li,ul{list-style:none;}ul{zoom:1;}img{border:none;border:0;margin:0;padding:0;vertical-align:middle;}.cl{clear:both;}.fl,.mfl{float:left;}.fr,.mfr{float:right;}.m-auto{margin:0 auto;}
-body{font-size:14px;color:#313131;font-family:arial,'Hiragino Sans GB',"Microsoft YaHei","Lucida Grande","Lucida Sans Unicode",Helvetica,Arial,Verdana,tahoma,simsun,sans-serif;}.yaheis a,.yahei{font-family:Microsoft YaHei,"Lucida Grande","Lucida Sans Unicode",Helvetica,Arial,Verdana,tahoma,simsun,sans-serif;}
-a{color:#313131;text-decoration:none;}a:hover{text-decoration:underline;color:#22ac38;}.clear{zoom:1;}.clear:after,.imglist2:after{content:"";display:block;clear:both;}
-.mt10{margin-top:10px;}.mb10{margin-bottom:10px;}.zcs a,.zc{color:#c39;}.reds a,.red{color:#22ac38;}.blues a,.blue{color:#0078b6;}.grey,.greys a{color:#999;}.chs a:hover{color:#22ac38;}
-img:hover{filter:alpha(opacity=90);opacity:0.9;}
+/* GLOBAL STYLES
+-------------------------------------------------- */
+/* Padding below the footer and lighter body text */
+
+body {color: #5a5a5a;}
+.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4;}
+.bs-docs-featurette-title{margin-bottom:10px;font-size:30px;font-weight:400;color:#333;}
+.half-rule{width:100px;margin:40px auto;}
+.bs-docs-featurette{padding-top:40px;padding-bottom:40px;font-size:16px;line-height:1.5;color:#555;text-align:center;}
+.projects-header{width:60%;text-align:center;margin:60px 0 10px;font-weight:200;margin-bottom:40px;display:block;margin-left:auto;margin-right:auto}
+.projects-header h2{font-size:30px;letter-spacing:1px}
+@media screen and (min-width:768px){
+.projects-header h2{font-size:36px}
+}
+/* CUSTOMIZE THE NAVBAR
+-------------------------------------------------- */
-.box{width:960px;margin-left:auto;margin-right:auto;overflow:hidden;}
-.fl_640{width:640px;float:left;overflow:hidden;}.fr_300{width:300px;float:right;overflow:hidden;}
+/* Special class on .container surrounding .navbar, used for positioning it into place. */
+.navbar-wrapper {position: absolute;top: 0;right: 0;left: 0;z-index: 20;}
-#header{width:100%;background-color:#22ac38;}
-#navlink{height:50px;line-height:50px;white-space:nowrap;overflow:hidden;}
-.webname{float:left;background:url(../images/logo.png) no-repeat left 7px;padding-left:90px;font-size:1.35em;margin-right:15px;color:#9f9f9f;text-indent:-999em;overflow:hidden;}
-.nav a{font-size:18px;float:left;display:block;padding:0 20px;color:#fff;}
-.nav a:hover{background-color:#179500;color:#fff;}
+/* Flip around the padding for proper display in narrow viewports */
+.navbar-wrapper > .container {padding-right: 0;padding-left: 0;}
+.navbar-wrapper .navbar {padding-right: 15px;padding-left: 15px;}
+.navbar-wrapper .navbar .container {width: auto;}
-.m-sch{width:185px;height:24px;*margin-top:6px;}.m-sch .sch-txt{border:0;background-color:#fff;width:180px;height:24px;line-height:23px;color:#898989;padding-left:5px;}
+/* CUSTOMIZE THE CAROUSEL
+-------------------------------------------------- */
-#tad{width:960px;height:90px;margin:10px auto 0 auto;overflow:hidden;}#itad{width:960px;margin:10px auto 0 auto;overflow:hidden;height:90px;}
-.notice{font-family:SimSun;color:#e53333;line-height:1.5;padding:6px 10px;background:#feffe6;border:1px solid #e6d8b9;font-size:12px;}
+/* Carousel base class */
+.carousel {height: 500px;margin-bottom: 60px;}
+/* Since positioning the image, we need to help out the caption */
+.carousel-caption {z-index: 10;}
-.imglist{margin-top:10px;margin-right:-8px;}.imglist li{margin-right:8px;position:relative;float:left;overflow:hidden;}.imglist img{display:block;height:115px;width:154px;}
-.imglist span,.imglist2 span{background:#000;filter:alpha(opacity=60);opacity:0.6;bottom:0;color:#fff;font-size:14px;height:28px;line-height:28px;text-align:center;width:100%;position:absolute;overflow:hidden;white-space:nowrap;}
-.imglist2{margin-right:-20px;}.imglist2 li{margin-right:20px;position:relative;float:left;overflow:hidden;}.imglist2 img{display:block;height:105px;width:140px;}
+/* Declare heights because of positioning of img element */
+.carousel .item {height: 500px;background-color: #777;}
+.carousel-inner > .item > img {position: absolute;top: 0;left: 0;min-width: 100%;height: 500px;}
-.list{padding:28px 15px 30px 15px;border-bottom:1px solid #ebebeb;}.list:hover{border-color:#f8f8f8;background-color:#f8f8f8;}.list:hover .tit a{color:#22ac38;}
-.tit{display:block;font-weight:700;font-size:22px;line-height:1.5;color:#333;padding-bottom:6px;}
-.list p{word-break:break-all;color:#777;font-size:16px;line-height:26px;}.list p a{color:#f60;}
-.info{margin-top:9px;color:#999;font-size:14px;}.info a{color:#22ac38;margin-right:8px;}.info .fr{color:#444;}.info .fl i{color:#f60;margin-right:8px;}
-.list .limg{width:169px;height:119px;float:left;margin-right:20px;}.list .limg img{width:169px;height:119px;vertical-align:top;}
+/* MARKETING CONTENT
+-------------------------------------------------- */
+
+/* Center align the text within the three columns below the carousel */
+.marketing .col-lg-4 {margin-bottom: 20px;text-align: center;}
+.marketing h2 {font-weight: normal;}
+.marketing .col-lg-4 p {margin-right: 10px;margin-left: 10px;}
+
+
+/* Featurettes
+------------------------- */
+
+.featurette-divider {margin: 80px 0; /* Space out the Bootstrap
more */}
+
+/* Thin out the marketing headings */
+.featurette-heading {font-weight: 300;line-height: 1;letter-spacing: -1px;}
+
+/* RESPONSIVE CSS
+-------------------------------------------------- */
+
+@media (min-width: 768px) {
+/* Navbar positioning foo */
+.navbar-wrapper {margin-top: 20px;}
+.navbar-wrapper .container {padding-right: 15px;padding-left: 15px;}
+.navbar-wrapper .navbar {padding-right: 0;padding-left: 0;}
+
+/* The navbar becomes detached from the top, so we round the corners */
+.navbar-wrapper .navbar {border-radius: 4px;}
-.side{margin-top:20px;}.stit{border-bottom:1px solid #e5e5e5;height:40px;margin-bottom:15px;}
-.stit h2,.stit h3,.stit .stith{float:left;height:20px;line-height:20px;border-left:5px solid #22ac38;padding-left:9px;font-size:20px;font-weight:normal;}
-.stit .more{float:right;font-size:12px;margin-top:3px;color:#22ac38;}.stith strong{font-weight:normal;}
-.uli{padding:0 0 20px 8px;margin-top:15px;}.uli li{line-height:28px;height:28px;}.stit + .uli{margin-top:0;}
-.uli li a{background:url('../images/icon.gif') 0 12px no-repeat;padding-left:12px;color:#2d64b3;word-break:normal;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
-
-.uli2{margin-top:-16px;padding-bottom:20px;}
-.suli{line-height:1.1;padding:14px 0;border-top:1px solid #e5e5e5;}
-.suli a{_width:290px;line-height:1.3;font-size:16px;}.sulii{font-size:14px;margin-top:8px;}.time{color:#f60;margin-right:8px;}
-.suli .limg{width:80px;height:60px;float:left;margin-right:10px;}.suli .limg img{width:80px;height:60px;border:none;}
-
-.cat-box{margin-top:10px;border:1px solid #ccd3e4;border-top:none;}
-.cat-box .cat-title{height:38px;line-height:38px;border-top:2px solid #22ac38;border-bottom:1px solid #ccd3e4;font-size:1.17em;background-color:#fafbfc;}.cat-box .cat-title b a,.cat-box .cat-title strong{margin:0 0 0 15px;color:#22ac38;}
-.cat-title .more{float:right;margin-right:10px;}
-.line-one-thumbnail{float:left;width:200px;height:145px;margin:0 15px 0 0;overflow:hidden;transition-duration:.3s;}.line-one-thumbnail a img{width:200px;height:145px;transition:transform .3s linear;}
-.cat-site{padding:15px 20px 18px 20px;}
-.cat-site .entry-title{font-weight:bold;font-size:16px;display:block;line-height:30px;margin:0 0 5px 0;width:95%;white-space:nowrap;word-wrap:normal;text-overflow:ellipsis;overflow:hidden;}
-.cat-des{border-bottom:1px solid #ccd3e4;padding-bottom:8px;margin-bottom:5px;}.cat-des p{color:#999;}
-.cat-list li{padding-left:20px;background:url(../images/icon5.png) no-repeat left center;line-height:32px;height:32px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:16px;*width:250px;}.cat-list li span{float:right;color:#999;}
-.line-small{margin-right:-10px;}.line-small .cat-box{width:313px;float:left;margin-right:10px;}.cat-main{color:#777;margin:0 0 5px 0;height:80px;overflow:hidden;}
-.line-small .thumbnail,.line-small .thumbnail img{width:120px;height:80px;}
-.thumbnail{float:left;width:200px;height:145px;margin:0 15px 5px 0;clear:both;overflow:hidden;transition-duration:.3s;}
-
-.uli3{padding-bottom:20px;}
-.uli3 li{padding:5px 0 0 20px;margin-bottom:15px;position:relative;}
-.uli3 li i{position:absolute;top:16px;left:0;background:#22ac38;width:5px;height:5px;}
-.uli3 li a{display:block;font-size:16px;line-height:1.7em;}
-
-.hot_ht a{display:inline-block;padding:8px 10px;font-size:14px;background:#f6f6f6;color:#808080;transition:all .1s;margin:0 4px 10px;border-radius:3px;box-shadow:1px 1px 2px #eee;}
-.hot_ht a:hover{background:#22ac38;color:#fff;box-shadow:1px 1px 1px #1da633;text-decoration:none;}
-.ws-tag a{display:inline-block;font-size:14px;color:#666;border:1px solid #ccc;padding:0 12px;margin-right:12px;margin-bottom:10px;height:30px;line-height:30px;border-radius:30px;cursor:pointer;}
-.ws-tag a:hover{color:#f60;border:1px solid #f60;}
+/* Bump up size of carousel content */
+.carousel-caption p {margin-bottom: 20px;font-size: 21px;line-height: 1.4;}
+
+.featurette-heading {font-size: 50px;}
+.bs-docs-featurette-title{font-size:36px;}
+.bs-docs-featurette .lead{max-width:80%;margin-right:auto;margin-left:auto;}
+.lead{font-size:21px;}
+.bs-docs-featurette{padding-top:80px;padding-bottom:80px;}
+}
+
+@media (min-width: 992px) {
+.featurette-heading {margin-top: 120px;}
+}
+img:hover{filter:alpha(opacity=90);opacity:0.9;}
+.cl{clear:both;}.fl,.mfl{float:left;}.fr,.mfr{float:right;}.m-auto{margin:0 auto;}
+
+.list{padding:20px 0;border-bottom:1px solid #e5e5e5;}
+.tit{display:block;font-weight:normal;font-size:24px;line-height:1.3;}
+.list p{margin-top:10px;word-break:break-all;color:#999;font-size:14px;line-height:1.5;}.list p a{color:#e74c3c;}.list p:after{content:"..";}
+.info{margin-top:8px;color:#bbb;font-size:12px;}.info a{color:#ea5a3d;margin-right:8px;}.info .fr{color:#444;}
+.list .limg{width:169px;height:119px;float:left;margin-right:20px;}.list .limg img{width:169px;height:119px;vertical-align:top;}
.page,.pages{text-align:center;padding:15px 0px;}.page a:hover{background:#FF5E52;color:#fff;}
-.page a{display:inline-block;height:32px;line-height:32px;padding:0 45px;font-size:14px;color:#fff;background:#22ac38;margin-right:8px;border-radius:3px;box-shadow:1px 1px 2px #eee;}
-
-.pages li{display:inline-block;height:35px;line-height:35px;text-align:center;font-size:14px;color:#808080;background-color:#f4f4f4;padding-right:15px;padding-left:15px;margin-right:1px;*display:inline;}
-.pages li a{color:#808080;}.pages .thisclass{background-color:#22ac38;color:#fff;}
-.pages li:hover,.pages li:hover a{background-color:#22ac38;color:#fff;}
-
-.bth{font-weight:normal;font-family:"Microsoft Yahei";}.bread{color:#ccc;}.bread a{color:#22ac38;}
-.arct{font-size:36px;color:#333;font-weight:600;margin-bottom:12px;}
-#ztinfo{margin-top:8px;border:1px solid #f1f1f1;height:96px;background:#f6f6f6;}#ztinfo h1{width:150px;height:96px;line-height:98px;font-size:22px;font-weight:normal;text-align:center;color:#fff;background-color:#22ac38;}
-#ztinfo p{width:460px;line-height:1.54;padding-top:9px;margin-right:10px;font-family:arial;font-size:13px;color:#808080;}#ztinfo p a{color:#22ac38;}
-.zinfo h1{margin-bottom:8px;}.zkws a:hover{background-color:#179500;color:#fff;}.zkws a{color:#fff;background-color:#22ac38;border-radius:3px;padding:5px 10px;margin:0 5px 5px 0;display:inline-block;font-size:14px;-webkit-transition:all .1s;-moz-transition:all .1s;transition:all .1s;}
-
-.tagb{overflow:hidden;padding:5px 0 10px;border:1px solid #E8E6E3;border-radius:3px;}
-.tagb dl{float:left;width:182px;padding:0 10px 0 20px;border-right:1px solid #E8E6E3;}
-.tagb dt{font-size:16px;color:#38245D;line-height:26px;}.tagb dt a{color:#22ac38;}
-.tagb dd{line-height:24px;padding-top:5px;}.tagb dd a{color:#666;display:inline-block;margin-right:10px;}
-
-.content{font:normal 18px/180% "Microsoft YaHei";color:#222;margin-bottom:15px;}
-.content p{/* margin-bottom:1.35em; */}.content u{color:#1570a6;text-decoration:none;}.content h2,.tagarct{font-size:22px;line-height:1.176;color:#22ac38;padding-top:15px;padding-bottom:10px;}.content strong,.content b{color:#22ac38;font-size:18px;}
-.content img{max-width:640px;width:expression(this.width > 640 ? "640px" :this.width);height:auto;}
+.page a{display:inline-block;height:32px;line-height:32px;padding:0 45px;font-size:14px;color:#fff;background:#ea5a3d;margin-right:8px;border-radius:3px;box-shadow:1px 1px 2px #eee;}
+
+.pages li a{color:#808080;}.pages li{display:inline-block;height:35px;line-height:35px;text-align:center;font-size:14px;color:#808080;background-color:#f4f4f4;padding-right:15px;padding-left:15px;margin-right:1px;}
+.pages .thisclass{background-color:#ea5a3d;}.pages .thisclass a{color:#fff;}
+.pages li:hover,.pages li:hover a{background-color:#ea5a3d;color:#fff;}
+
+.content{margin-bottom:15px;font-size:16px;}
+.content p{margin-bottom:0;}.content u{color:red;text-decoration:none;}
+.content img{max-width:100%;height:auto;}
.content blockquote{padding:.6em 1em;border-left:.4em solid #cad4f2;background:#f0f0f0;}
-.dinfo,.timely{color:#aaa;font-size:12px;line-height:1.5;font-family:SimSun;margin:5px 0 8px;}.dinfo a,.timely #atime{color:#22ac38;}
-
-#slideBox{width:640px;height:347px;overflow:hidden;position:relative;}
-#slideBox ul#show_pic{margin:0;padding:0;list-style:none;width:6400px;height:347px;position:absolute;}
-#slideBox ul#show_pic li{float:left;margin:0;padding:0;height:347px;}
-#slideBox ul#show_pic li img{display:block;}
-#iconBall{position:absolute;bottom:0;right:0;}
-#iconBall li{float:left;color:#7a7a7a;width:32px;height:28px;line-height:28px;cursor:pointer;text-align:center;font-size:14px;padding-top:4px;}
-#iconBall li.active{background:url(../images/ibg.png) no-repeat;color:#fff;}
-#slideText{width:640px;height:28px;background:rgba(0,0,0,0.7);color:#fff;position:absolute;left:0px;bottom:0px;*background:transparent;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#b2000000,endColorstr=#b2000000);}
-#textBall{position:absolute;left:10px;bottom:5px;}
-#textBall li{float:left;cursor:pointer;display:none;color:#fff;font-size:14px;}
-#textBall li.active{display:block;}
-#textBall li a{text-decoration:none;color:#fff;}
-
-.hdp{margin-bottom:10px;font-size:12px;font-family:simsun,sans-serif;}
-.hdp .fl{width:640px;overflow:hidden;}
-.hdp .fr{width:290px;overflow:hidden;padding:10px 10px 4px 10px;border:1px solid #e0e0e0;line-height:22px;color:#555;}.hdp .fr a{margin-right:10px;}
-.ttit{border-left:2px solid #f60;padding-left:8px;margin-right:8px;line-height:16px;margin-bottom:5px;}
-.titem{padding-bottom:10px;border-bottom:1px dotted #e0e0e0;margin-bottom:10px;}
-.iad1{height:60px;overflow:hidden;margin-top:8px;}
-
-.rtags a{margin-right:10px;line-height:1.5;}
-.bqtag{border-bottom:1px #EAEAEA solid;padding:15px 0 20px;}.bqtag strong{color:#000;font:300 22px/36px 'Microsoft YaHei';}.bqtag a{margin-right:24px;font:14px/36px 'Tahoma';color:#333;display:inline-block;}
-
-.zmBox li{width:23px;height:23px;float:left;margin-bottom:5px;}
-.zmBox li a{width:100%;height:00%;display:block;text-align:center;color:#333;font:300 12px/22px 'Tahoma';}
-.nameBox{margin-top:25px;padding:0 6px;}
-.nameBox .name{padding:26px 0 32px;border-bottom:1px #EAEAEA solid;}
-.nameBox .name h3 a{width:36px;height:36px;color:#333;font:300 22px/36px 'Tahoma';background:#EAEAEA;display:block;text-align:center;text-decoration:none;}
-.nameBox .name ul{margin-top:24px;}
-.nameBox .name li{display:inline;display:inline-block;margin-right:24px;}
-.nameBox .name li a{font:14px/36px 'Tahoma';color:#333;display:inline-block;}
-
-#footer{text-align:center;margin-bottom:5px;margin-top:10px;color:#5D5D5D;}
-.tm{overflow:hidden;position:fixed;left:1px;bottom:15px;z-index:999;_position:absolute;}
-
-.labels a{padding:0 8px;border:1px solid #e5e5e5;color:#2393df;margin-right:5px;display:inline-block;height:20px;line-height:20px;}.labels a:hover{background-color:#2393df;color:#fff;border:1px solid #2393df;}
-#iadimg{height:280px;width:100%;display:block;}.zdes{margin-bottom:8px;}
-.uzlist{padding-left:5px;}.uzlist li{padding-left:30px;position:relative;line-height:38px;height:38px;overflow:hidden;}.side .uzlist{margin-top:-5px;}
-.uzlist li .num{position:absolute;left:0;width:20px;height:20px;text-align:center;line-height:20px;top:9px;font-size:16px;color:#22ac38;}
-.uzlist li .top3{background:#22ac38;color:#fff;}.uzlist li a{color:#333;font-size:16px;display:block;overflow:hidden;}
-.readmore a{display:block;height:42px;line-height:42px;text-align:center;background:#f4f4f4;font-size:18px;color:#333;}.readmore a:hover{background:#22ac38;color:#fff;}
-
-/*==========right images==========*/
-.hotPic{margin-top:15px;margin-right:-20px;}.hotPic img{display:block;height:105px;width:140px;}
-.hotPic li{margin-right:20px;margin-bottom:5px;float:left;overflow:hidden;width:140px;}
-.hotPic span{height:30px;line-height:28px;text-align:center;padding-left:5px;padding-right:5px;display:block;overflow:hidden;white-space:nowrap;}
-
-/*TAB标签*/
-.nTab{background:#22ac38;}
-.nTab .TabTitle{clear:both;height:30px;line-height:30px;overflow:hidden;font-size:14px;color:white;}
-.nTab .TabTitle ul{margin:0;padding:0;}
-.nTab .TabTitle li{float:left;width:84px;cursor:pointer;list-style-type:none;text-align:center;}
-.nTab .TabTitle .active{background:white;color:#22ac38;border-left:1px #ebebeb solid;border-top:1px #ebebeb solid;border-bottom:1px #fff solid;}
-.nTab .TabTitle .normal{background:border-top:1px #ebebeb solid;border-bottom:1px #ebebeb solid;}
-.nTab .TabContent{width:auto;background:#fff;margin:0px auto;padding:10px;border-right:1px #ebebeb solid;border-left:1px #ebebeb solid;padding:5px 5px;overflow:hidden;line-height:23px;}
-.TabContent ul{margin-left:8px;}
-.TabContent ul li{display:inline-block;width:205px;font-size:14px;}
-.TabContent ul p{font-weight:bolder;font-size:14px;margin-top:5px;}
-.none{display:none;}
-
-#hot{border-top-width:3px;border-right-width:1px;border-bottom-width:1px;border-left-width:1px;border-top-style:solid;border-right-style:solid;border-bottom-style:solid;border-left-style:solid;border-top-color:#1A5F97;border-right-color:#ebebeb;border-bottom-color:#ebebeb;border-left-color:#ebebeb;overflow:hidden;}
-#hot h2{font-size:18px;line-height:62px;background-color:#D7E7F7;background-image:url(../images/hot.png);background-repeat:no-repeat;background-position:10px center;height:62px;padding-left:70px;}
-#hot h2 a{color:#000000;}#hot dl{padding:15px;line-height:26px;font-size:16px;color:#777;}
-#hot dl .tags{margin-top:8px;text-decoration:none;line-height:25px;height:25px;overflow:hidden;color:#999999;}
-
-/* pic list */
-.tcol{font-size:12px;height:60px;line-height:60px;overflow:hidden;font-family:SimSun;}.tcol span.fl{color:#bbb;}
-.tcol .tith{font-weight:normal;color:#ddd;width:250px;}
-.tname{color:#cb44a2;font-size:26px;font-family:SimHei,"Microsoft YaHei";}
-.hname{color:#bbb;letter-spacing:1px;font-size:12px;}
-.tcol .more{font-family:"Microsoft Yahei";color:#666;}
-
-.pul{margin-right:-16px;font-family:SimSun;}
-.pul li{float:left;overflow:hidden;margin-right:16px; margin-bottom:15px;}
-.pul li a{color:#717171;font-size:12px;}
-.pul li a img{width:228px;height:152px;display:block;}
-.pul li a p{width:210px;height:30px;line-height:30px;overflow:hidden;padding:0 9px;}.pul li a:hover p{background-color:#f7f7f7;color:#c39;}
-.pul li span{padding:0 9px;color:#999;font-size:12px;}
-
-.pul2{margin-right:-16px;font-family:SimSun;}
-.pul2 li{float:left;margin-right:16px;margin-bottom:10px;overflow:hidden;}
-.pul2 li a{color:#717171;font-size:12px;font-family:SimSun;}
-.pul2 li a img{width:228px;height:152px;display:block;}
-.pul2 li a p{width:210px;height:43px;line-height:43px;text-align:center;overflow:hidden;background-color:#fff; color:#5d5d5d;padding:0 9px;}
-.pul2 li a:hover p{background-color:#f7f7f7;color:#c39;}
-
-.tagl{font-family:SimSun;font-size:12px;padding:10px 0px;height:25px;line-height:25px;color:#9F9F9F;width:960px;margin:0 auto;}.tagl span{float:right;}.tagl span b{color:#FF5B90;font-weight:normal;}
-.tagsl a{display:inline-block;height:25px;line-height:25px;padding:0px 10px;background-color:#F6F6F6;color:#9F9F9F;}.tagsl a:hover{background-color:#FF5B90;color:#fff;}
-
-.tas{color:#CCC;}
-.tas a{font-size:12px;font-family:SimSun;margin:0 5px; color:#666;padding:5px 10px;border-radius:3px;}.tas a:hover{background:#FF5B90;color:#FFF;}
-
-#selection{border:solid 1px #e1e1e1;padding-bottom:10px;padding-top:10px;clear:both;font-size:12px;color:gray;font-family:Arial,simsun,sans-serif,"宋体";}
-.secitem{clear:both;line-height:24px;overflow:hidden;padding-left:10px;padding-right:10px;}
-.secitem dt{float:left;width:60px;text-align:right;white-space:nowrap;}
-.secitem_brand{width:50px!important;text-align:right!important;}
-.secitem dd{overflow:hidden;display:block;zoom:1;}
-.secitem a{margin-right:10px;color:#25d;}.secitem a:hover{color:red;}
-.secitem span,.secitem a{display:inline-block;float:left;white-space:nowrap;}
-.secitem a.select{color:#333;font-weight:700;text-decoration:none;}
-
-.sbox{width:920px;margin:10px auto 0 auto;overflow:hidden;padding:15px 19px 19px 19px; border:1px solid #E8E8E8;font-family:SimSun;}
-.sbox h1{font-family:"Microsoft Yahei",simsun;font-size:25px;color:#5d5d5d;font-weight:normal;color:#f60;}
-.sbox div.fl{width:670px;overflow:hidden;}.sbox div.fr{width:250px;overflow:hidden;}
-.sinfo{height:30px;line-height:30px;padding-bottom:9px;color:#9f9f9f;font-size:12px;}#nowp{color:#FF5B90;}
-.position{width:960px;margin:10px auto 0 auto;color:#666;}
-
-.pbox{padding-top:20px;text-align:center;width:920px;padding-bottom:10px;border-top:1px solid #e8e8e8;}
-.pbox img{max-width:920px;width:expression(this.width > 920 ? "920px" :this.width);height:auto;}
-.ptext{line-height:22px;text-align:left;}.ptext p{margin-bottom:15px;}
-.stx{height:30px;line-height:30px;padding-top:9px;margin-top:10px;color:#9f9f9f;margin-bottom:-8px;border-top:1px solid #E8E8E8;font-size:12px;}
-.stx p.fl span a{display:inline-block;height:22px;line-height:22px;padding:0px 7px;margin-left:5px;background-color:#F6F6F6;color:#9F9F9F;border-radius:3px; font-size:12px;}
-.stx p.fl span a:hover{background-color:#FF5B90;color:#fff;}
-
-
-/*==========zishiying==========*/
-@media screen and (min-width:641px) and (max-width:960px){
-.box{width:640px;margin-left:auto;margin-right:auto;overflow:hidden;}
-.m-sch{width:105px;margin-right:5px;}.m-sch .sch-txt{width:100px;}
-.fl_640,#header,.fr_300{width:100%;}
-#tad,#itad,#footer,#SOHUCS,.nav,.tm,.imglist2,.box .hdp{display:none;}
-}
-@media screen and (max-width:640px){
-body{font-size:14px;font-family:'Microsoft YaHei',Hei,arial,sans-serif;overflow-x:hidden;}
-.box{width:100%;margin-left:auto;margin-right:auto;overflow:hidden;}
-.list{padding:20px 6px;border-bottom:1px solid #e5e5e5;}
-.tit{display:block;font-weight:normal;font-size:20px;line-height:1.2;}
-.list p{margin-top:10px;word-break:break-all;color:#777;font-size:14px;line-height:20px;}
-.info,.dinfo,.list p{font-family:'Microsoft YaHei',Hei,arial,sans-serif;}
-.list .limg{height:52px;width:84px;float:left;margin-right:20px;}.list .limg img{height:52px;width:84px;border:none;}
-.suli .limg{width:60px;height:40px;float:left;margin-right:10px;}.suli .limg img{width:60px;height:40px;border:none;}
-.imglist li,.imglist2 li,.hotPic li{margin-left:1%;margin-right:1%;width:48%;margin-bottom:6px;}.imglist img,.imglist2 img,.hotPic img{height:32vw;width:100%;}.imglist,.imglist2,.hotPic{margin-right:0;}
-
-.tagb{padding:5px 0 8px;}
-.tagb dl{width:100%;padding:0 10px 0 10px;border-right:none;}
-.m-sch{width:105px;margin-right:5px;}.m-sch .sch-txt{width:100px;}
-.arct{font-size:24px;font-weight:600;}
-.content img,#iadimg{width:100%;height:auto;}.line-small .cat-box{width:auto;float:none;margin-right:0px;margin-left:0px;}
-.lmdh,.side,.content,.bread,.arct,.bqtag,.tagb,.cat-box,.line-small,.zinfo,.timely{margin-left:6px;margin-right:6px;}
-.fl_640,#header,.fr_300{width:100%;}.mfl,.mfr{float:none;}
-#tad,#itad,#ztinfo p.fr,.nav,.tm,.notice,#SOHUCS,#ztinfo,.w120,.zstu,.ipage,.line-one-thumbnail,#footer,#akeyword,.box .hdp{display:none;}
-}
\ No newline at end of file
+.banner{text-align:center;padding-top:100px;color: #fff;background:url(../images/banner.jpg);}
+.imgzsy{width:100%;/* height:14vw; */}
+footer{margin-top:40px;}
+footer p{text-align:center;}
\ No newline at end of file
diff --git a/public/css/style博客.css b/public/css/style博客.css
new file mode 100644
index 0000000..da98153
--- /dev/null
+++ b/public/css/style博客.css
@@ -0,0 +1,231 @@
+body,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dd,form,input,textarea,select,button{margin:0;padding:0;}em,i{font-style:normal;}
+li,ul{list-style:none;}ul{zoom:1;}img{border:none;border:0;margin:0;padding:0;vertical-align:middle;}.cl{clear:both;}.fl,.mfl{float:left;}.fr,.mfr{float:right;}.m-auto{margin:0 auto;}
+body{font-size:14px;color:#313131;font-family:arial,'Hiragino Sans GB',"Microsoft YaHei","Lucida Grande","Lucida Sans Unicode",Helvetica,Arial,Verdana,tahoma,simsun,sans-serif;}.yaheis a,.yahei{font-family:Microsoft YaHei,"Lucida Grande","Lucida Sans Unicode",Helvetica,Arial,Verdana,tahoma,simsun,sans-serif;}
+a{color:#313131;text-decoration:none;}a:hover{text-decoration:underline;color:#22ac38;}.clear{zoom:1;}.clear:after,.imglist2:after{content:"";display:block;clear:both;}
+.mt10{margin-top:10px;}.mb10{margin-bottom:10px;}.zcs a,.zc{color:#c39;}.reds a,.red{color:#22ac38;}.blues a,.blue{color:#0078b6;}.grey,.greys a{color:#999;}.chs a:hover{color:#22ac38;}
+img:hover{filter:alpha(opacity=90);opacity:0.9;}
+
+.box{width:960px;margin-left:auto;margin-right:auto;overflow:hidden;}
+.fl_640{width:640px;float:left;overflow:hidden;}.fr_300{width:300px;float:right;overflow:hidden;}
+
+#header{width:100%;background-color:#22ac38;}
+#navlink{height:50px;line-height:50px;white-space:nowrap;overflow:hidden;}
+.webname{float:left;background:url(../images/logo.png) no-repeat left 7px;padding-left:90px;font-size:1.35em;margin-right:15px;color:#9f9f9f;text-indent:-999em;overflow:hidden;}
+.nav a{font-size:18px;float:left;display:block;padding:0 20px;color:#fff;}
+.nav a:hover{background-color:#179500;color:#fff;}
+
+.m-sch{width:185px;height:24px;*margin-top:6px;}.m-sch .sch-txt{border:0;background-color:#fff;width:180px;height:24px;line-height:23px;color:#898989;padding-left:5px;}
+
+#tad{width:960px;height:90px;margin:10px auto 0 auto;overflow:hidden;}#itad{width:960px;margin:10px auto 0 auto;overflow:hidden;height:90px;}
+.notice{font-family:SimSun;color:#e53333;line-height:1.5;padding:6px 10px;background:#feffe6;border:1px solid #e6d8b9;font-size:12px;}
+
+.imglist{margin-top:10px;margin-right:-8px;}.imglist li{margin-right:8px;position:relative;float:left;overflow:hidden;}.imglist img{display:block;height:115px;width:154px;}
+.imglist span,.imglist2 span{background:#000;filter:alpha(opacity=60);opacity:0.6;bottom:0;color:#fff;font-size:14px;height:28px;line-height:28px;text-align:center;width:100%;position:absolute;overflow:hidden;white-space:nowrap;}
+.imglist2{margin-right:-20px;}.imglist2 li{margin-right:20px;position:relative;float:left;overflow:hidden;}.imglist2 img{display:block;height:105px;width:140px;}
+
+.list{padding:28px 15px 30px 15px;border-bottom:1px solid #ebebeb;}.list:hover{border-color:#f8f8f8;background-color:#f8f8f8;}.list:hover .tit a{color:#22ac38;}
+.tit{display:block;font-weight:700;font-size:22px;line-height:1.5;color:#333;padding-bottom:6px;}
+.list p{word-break:break-all;color:#777;font-size:16px;line-height:26px;}.list p a{color:#f60;}
+.info{margin-top:9px;color:#999;font-size:14px;}.info a{color:#22ac38;margin-right:8px;}.info .fr{color:#444;}.info .fl i{color:#f60;margin-right:8px;}
+.list .limg{width:169px;height:119px;float:left;margin-right:20px;}.list .limg img{width:169px;height:119px;vertical-align:top;}
+
+.side{margin-top:20px;}.stit{border-bottom:1px solid #e5e5e5;height:40px;margin-bottom:15px;}
+.stit h2,.stit h3,.stit .stith{float:left;height:20px;line-height:20px;border-left:5px solid #22ac38;padding-left:9px;font-size:20px;font-weight:normal;}
+.stit .more{float:right;font-size:12px;margin-top:3px;color:#22ac38;}.stith strong{font-weight:normal;}
+.uli{padding:0 0 20px 8px;margin-top:15px;}.uli li{line-height:28px;height:28px;}.stit + .uli{margin-top:0;}
+.uli li a{background:url('../images/icon.gif') 0 12px no-repeat;padding-left:12px;color:#2d64b3;word-break:normal;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
+
+.uli2{margin-top:-16px;padding-bottom:20px;}
+.suli{line-height:1.1;padding:14px 0;border-top:1px solid #e5e5e5;}
+.suli a{_width:290px;line-height:1.3;font-size:16px;}.sulii{font-size:14px;margin-top:8px;}.time{color:#f60;margin-right:8px;}
+.suli .limg{width:80px;height:60px;float:left;margin-right:10px;}.suli .limg img{width:80px;height:60px;border:none;}
+
+.cat-box{margin-top:10px;border:1px solid #ccd3e4;border-top:none;}
+.cat-box .cat-title{height:38px;line-height:38px;border-top:2px solid #22ac38;border-bottom:1px solid #ccd3e4;font-size:1.17em;background-color:#fafbfc;}.cat-box .cat-title b a,.cat-box .cat-title strong{margin:0 0 0 15px;color:#22ac38;}
+.cat-title .more{float:right;margin-right:10px;}
+.line-one-thumbnail{float:left;width:200px;height:145px;margin:0 15px 0 0;overflow:hidden;transition-duration:.3s;}.line-one-thumbnail a img{width:200px;height:145px;transition:transform .3s linear;}
+.cat-site{padding:15px 20px 18px 20px;}
+.cat-site .entry-title{font-weight:bold;font-size:16px;display:block;line-height:30px;margin:0 0 5px 0;width:95%;white-space:nowrap;word-wrap:normal;text-overflow:ellipsis;overflow:hidden;}
+.cat-des{border-bottom:1px solid #ccd3e4;padding-bottom:8px;margin-bottom:5px;}.cat-des p{color:#999;}
+.cat-list li{padding-left:20px;background:url(../images/icon5.png) no-repeat left center;line-height:32px;height:32px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:16px;*width:250px;}.cat-list li span{float:right;color:#999;}
+.line-small{margin-right:-10px;}.line-small .cat-box{width:313px;float:left;margin-right:10px;}.cat-main{color:#777;margin:0 0 5px 0;height:80px;overflow:hidden;}
+.line-small .thumbnail,.line-small .thumbnail img{width:120px;height:80px;}
+.thumbnail{float:left;width:200px;height:145px;margin:0 15px 5px 0;clear:both;overflow:hidden;transition-duration:.3s;}
+
+.uli3{padding-bottom:20px;}
+.uli3 li{padding:5px 0 0 20px;margin-bottom:15px;position:relative;}
+.uli3 li i{position:absolute;top:16px;left:0;background:#22ac38;width:5px;height:5px;}
+.uli3 li a{display:block;font-size:16px;line-height:1.7em;}
+
+.hot_ht a{display:inline-block;padding:8px 10px;font-size:14px;background:#f6f6f6;color:#808080;transition:all .1s;margin:0 4px 10px;border-radius:3px;box-shadow:1px 1px 2px #eee;}
+.hot_ht a:hover{background:#22ac38;color:#fff;box-shadow:1px 1px 1px #1da633;text-decoration:none;}
+.ws-tag a{display:inline-block;font-size:14px;color:#666;border:1px solid #ccc;padding:0 12px;margin-right:12px;margin-bottom:10px;height:30px;line-height:30px;border-radius:30px;cursor:pointer;}
+.ws-tag a:hover{color:#f60;border:1px solid #f60;}
+
+.page,.pages{text-align:center;padding:15px 0px;}.page a:hover{background:#FF5E52;color:#fff;}
+.page a{display:inline-block;height:32px;line-height:32px;padding:0 45px;font-size:14px;color:#fff;background:#22ac38;margin-right:8px;border-radius:3px;box-shadow:1px 1px 2px #eee;}
+
+.pages li{display:inline-block;height:35px;line-height:35px;text-align:center;font-size:14px;color:#808080;background-color:#f4f4f4;padding-right:15px;padding-left:15px;margin-right:1px;*display:inline;}
+.pages li a{color:#808080;}.pages .thisclass{background-color:#22ac38;color:#fff;}
+.pages li:hover,.pages li:hover a{background-color:#22ac38;color:#fff;}
+
+.bth{font-weight:normal;font-family:"Microsoft Yahei";}.bread{color:#ccc;}.bread a{color:#22ac38;}
+.arct{font-size:36px;color:#333;font-weight:600;margin-bottom:12px;}
+#ztinfo{margin-top:8px;border:1px solid #f1f1f1;height:96px;background:#f6f6f6;}#ztinfo h1{width:150px;height:96px;line-height:98px;font-size:22px;font-weight:normal;text-align:center;color:#fff;background-color:#22ac38;}
+#ztinfo p{width:460px;line-height:1.54;padding-top:9px;margin-right:10px;font-family:arial;font-size:13px;color:#808080;}#ztinfo p a{color:#22ac38;}
+.zinfo h1{margin-bottom:8px;}.zkws a:hover{background-color:#179500;color:#fff;}.zkws a{color:#fff;background-color:#22ac38;border-radius:3px;padding:5px 10px;margin:0 5px 5px 0;display:inline-block;font-size:14px;-webkit-transition:all .1s;-moz-transition:all .1s;transition:all .1s;}
+
+.tagb{overflow:hidden;padding:5px 0 10px;border:1px solid #E8E6E3;border-radius:3px;}
+.tagb dl{float:left;width:182px;padding:0 10px 0 20px;border-right:1px solid #E8E6E3;}
+.tagb dt{font-size:16px;color:#38245D;line-height:26px;}.tagb dt a{color:#22ac38;}
+.tagb dd{line-height:24px;padding-top:5px;}.tagb dd a{color:#666;display:inline-block;margin-right:10px;}
+
+.content{font:normal 18px/180% "Microsoft YaHei";color:#222;margin-bottom:15px;}
+.content p{/* margin-bottom:1.35em; */}.content u{color:#1570a6;text-decoration:none;}.content h2,.tagarct{font-size:22px;line-height:1.176;color:#22ac38;padding-top:15px;padding-bottom:10px;}.content strong,.content b{color:#22ac38;font-size:18px;}
+.content img{max-width:640px;width:expression(this.width > 640 ? "640px" :this.width);height:auto;}
+.content blockquote{padding:.6em 1em;border-left:.4em solid #cad4f2;background:#f0f0f0;}
+.dinfo,.timely{color:#aaa;font-size:12px;line-height:1.5;font-family:SimSun;margin:5px 0 8px;}.dinfo a,.timely #atime{color:#22ac38;}
+
+#slideBox{width:640px;height:347px;overflow:hidden;position:relative;}
+#slideBox ul#show_pic{margin:0;padding:0;list-style:none;width:6400px;height:347px;position:absolute;}
+#slideBox ul#show_pic li{float:left;margin:0;padding:0;height:347px;}
+#slideBox ul#show_pic li img{display:block;}
+#iconBall{position:absolute;bottom:0;right:0;}
+#iconBall li{float:left;color:#7a7a7a;width:32px;height:28px;line-height:28px;cursor:pointer;text-align:center;font-size:14px;padding-top:4px;}
+#iconBall li.active{background:url(../images/ibg.png) no-repeat;color:#fff;}
+#slideText{width:640px;height:28px;background:rgba(0,0,0,0.7);color:#fff;position:absolute;left:0px;bottom:0px;*background:transparent;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#b2000000,endColorstr=#b2000000);}
+#textBall{position:absolute;left:10px;bottom:5px;}
+#textBall li{float:left;cursor:pointer;display:none;color:#fff;font-size:14px;}
+#textBall li.active{display:block;}
+#textBall li a{text-decoration:none;color:#fff;}
+
+.hdp{margin-bottom:10px;font-size:12px;font-family:simsun,sans-serif;}
+.hdp .fl{width:640px;overflow:hidden;}
+.hdp .fr{width:290px;overflow:hidden;padding:10px 10px 4px 10px;border:1px solid #e0e0e0;line-height:22px;color:#555;}.hdp .fr a{margin-right:10px;}
+.ttit{border-left:2px solid #f60;padding-left:8px;margin-right:8px;line-height:16px;margin-bottom:5px;}
+.titem{padding-bottom:10px;border-bottom:1px dotted #e0e0e0;margin-bottom:10px;}
+.iad1{height:60px;overflow:hidden;margin-top:8px;}
+
+.rtags a{margin-right:10px;line-height:1.5;}
+.bqtag{border-bottom:1px #EAEAEA solid;padding:15px 0 20px;}.bqtag strong{color:#000;font:300 22px/36px 'Microsoft YaHei';}.bqtag a{margin-right:24px;font:14px/36px 'Tahoma';color:#333;display:inline-block;}
+
+.zmBox li{width:23px;height:23px;float:left;margin-bottom:5px;}
+.zmBox li a{width:100%;height:00%;display:block;text-align:center;color:#333;font:300 12px/22px 'Tahoma';}
+.nameBox{margin-top:25px;padding:0 6px;}
+.nameBox .name{padding:26px 0 32px;border-bottom:1px #EAEAEA solid;}
+.nameBox .name h3 a{width:36px;height:36px;color:#333;font:300 22px/36px 'Tahoma';background:#EAEAEA;display:block;text-align:center;text-decoration:none;}
+.nameBox .name ul{margin-top:24px;}
+.nameBox .name li{display:inline;display:inline-block;margin-right:24px;}
+.nameBox .name li a{font:14px/36px 'Tahoma';color:#333;display:inline-block;}
+
+#footer{text-align:center;margin-bottom:5px;margin-top:10px;color:#5D5D5D;}
+.tm{overflow:hidden;position:fixed;left:1px;bottom:15px;z-index:999;_position:absolute;}
+
+.labels a{padding:0 8px;border:1px solid #e5e5e5;color:#2393df;margin-right:5px;display:inline-block;height:20px;line-height:20px;}.labels a:hover{background-color:#2393df;color:#fff;border:1px solid #2393df;}
+#iadimg{height:280px;width:100%;display:block;}.zdes{margin-bottom:8px;}
+.uzlist{padding-left:5px;}.uzlist li{padding-left:30px;position:relative;line-height:38px;height:38px;overflow:hidden;}.side .uzlist{margin-top:-5px;}
+.uzlist li .num{position:absolute;left:0;width:20px;height:20px;text-align:center;line-height:20px;top:9px;font-size:16px;color:#22ac38;}
+.uzlist li .top3{background:#22ac38;color:#fff;}.uzlist li a{color:#333;font-size:16px;display:block;overflow:hidden;}
+.readmore a{display:block;height:42px;line-height:42px;text-align:center;background:#f4f4f4;font-size:18px;color:#333;}.readmore a:hover{background:#22ac38;color:#fff;}
+
+/*==========right images==========*/
+.hotPic{margin-top:15px;margin-right:-20px;}.hotPic img{display:block;height:105px;width:140px;}
+.hotPic li{margin-right:20px;margin-bottom:5px;float:left;overflow:hidden;width:140px;}
+.hotPic span{height:30px;line-height:28px;text-align:center;padding-left:5px;padding-right:5px;display:block;overflow:hidden;white-space:nowrap;}
+
+/*TAB标签*/
+.nTab{background:#22ac38;}
+.nTab .TabTitle{clear:both;height:30px;line-height:30px;overflow:hidden;font-size:14px;color:white;}
+.nTab .TabTitle ul{margin:0;padding:0;}
+.nTab .TabTitle li{float:left;width:84px;cursor:pointer;list-style-type:none;text-align:center;}
+.nTab .TabTitle .active{background:white;color:#22ac38;border-left:1px #ebebeb solid;border-top:1px #ebebeb solid;border-bottom:1px #fff solid;}
+.nTab .TabTitle .normal{background:border-top:1px #ebebeb solid;border-bottom:1px #ebebeb solid;}
+.nTab .TabContent{width:auto;background:#fff;margin:0px auto;padding:10px;border-right:1px #ebebeb solid;border-left:1px #ebebeb solid;padding:5px 5px;overflow:hidden;line-height:23px;}
+.TabContent ul{margin-left:8px;}
+.TabContent ul li{display:inline-block;width:205px;font-size:14px;}
+.TabContent ul p{font-weight:bolder;font-size:14px;margin-top:5px;}
+.none{display:none;}
+
+#hot{border-top-width:3px;border-right-width:1px;border-bottom-width:1px;border-left-width:1px;border-top-style:solid;border-right-style:solid;border-bottom-style:solid;border-left-style:solid;border-top-color:#1A5F97;border-right-color:#ebebeb;border-bottom-color:#ebebeb;border-left-color:#ebebeb;overflow:hidden;}
+#hot h2{font-size:18px;line-height:62px;background-color:#D7E7F7;background-image:url(../images/hot.png);background-repeat:no-repeat;background-position:10px center;height:62px;padding-left:70px;}
+#hot h2 a{color:#000000;}#hot dl{padding:15px;line-height:26px;font-size:16px;color:#777;}
+#hot dl .tags{margin-top:8px;text-decoration:none;line-height:25px;height:25px;overflow:hidden;color:#999999;}
+
+/* pic list */
+.tcol{font-size:12px;height:60px;line-height:60px;overflow:hidden;font-family:SimSun;}.tcol span.fl{color:#bbb;}
+.tcol .tith{font-weight:normal;color:#ddd;width:250px;}
+.tname{color:#cb44a2;font-size:26px;font-family:SimHei,"Microsoft YaHei";}
+.hname{color:#bbb;letter-spacing:1px;font-size:12px;}
+.tcol .more{font-family:"Microsoft Yahei";color:#666;}
+
+.pul{margin-right:-16px;font-family:SimSun;}
+.pul li{float:left;overflow:hidden;margin-right:16px; margin-bottom:15px;}
+.pul li a{color:#717171;font-size:12px;}
+.pul li a img{width:228px;height:152px;display:block;}
+.pul li a p{width:210px;height:30px;line-height:30px;overflow:hidden;padding:0 9px;}.pul li a:hover p{background-color:#f7f7f7;color:#c39;}
+.pul li span{padding:0 9px;color:#999;font-size:12px;}
+
+.pul2{margin-right:-16px;font-family:SimSun;}
+.pul2 li{float:left;margin-right:16px;margin-bottom:10px;overflow:hidden;}
+.pul2 li a{color:#717171;font-size:12px;font-family:SimSun;}
+.pul2 li a img{width:228px;height:152px;display:block;}
+.pul2 li a p{width:210px;height:43px;line-height:43px;text-align:center;overflow:hidden;background-color:#fff; color:#5d5d5d;padding:0 9px;}
+.pul2 li a:hover p{background-color:#f7f7f7;color:#c39;}
+
+.tagl{font-family:SimSun;font-size:12px;padding:10px 0px;height:25px;line-height:25px;color:#9F9F9F;width:960px;margin:0 auto;}.tagl span{float:right;}.tagl span b{color:#FF5B90;font-weight:normal;}
+.tagsl a{display:inline-block;height:25px;line-height:25px;padding:0px 10px;background-color:#F6F6F6;color:#9F9F9F;}.tagsl a:hover{background-color:#FF5B90;color:#fff;}
+
+.tas{color:#CCC;}
+.tas a{font-size:12px;font-family:SimSun;margin:0 5px; color:#666;padding:5px 10px;border-radius:3px;}.tas a:hover{background:#FF5B90;color:#FFF;}
+
+#selection{border:solid 1px #e1e1e1;padding-bottom:10px;padding-top:10px;clear:both;font-size:12px;color:gray;font-family:Arial,simsun,sans-serif,"宋体";}
+.secitem{clear:both;line-height:24px;overflow:hidden;padding-left:10px;padding-right:10px;}
+.secitem dt{float:left;width:60px;text-align:right;white-space:nowrap;}
+.secitem_brand{width:50px!important;text-align:right!important;}
+.secitem dd{overflow:hidden;display:block;zoom:1;}
+.secitem a{margin-right:10px;color:#25d;}.secitem a:hover{color:red;}
+.secitem span,.secitem a{display:inline-block;float:left;white-space:nowrap;}
+.secitem a.select{color:#333;font-weight:700;text-decoration:none;}
+
+.sbox{width:920px;margin:10px auto 0 auto;overflow:hidden;padding:15px 19px 19px 19px; border:1px solid #E8E8E8;font-family:SimSun;}
+.sbox h1{font-family:"Microsoft Yahei",simsun;font-size:25px;color:#5d5d5d;font-weight:normal;color:#f60;}
+.sbox div.fl{width:670px;overflow:hidden;}.sbox div.fr{width:250px;overflow:hidden;}
+.sinfo{height:30px;line-height:30px;padding-bottom:9px;color:#9f9f9f;font-size:12px;}#nowp{color:#FF5B90;}
+.position{width:960px;margin:10px auto 0 auto;color:#666;}
+
+.pbox{padding-top:20px;text-align:center;width:920px;padding-bottom:10px;border-top:1px solid #e8e8e8;}
+.pbox img{max-width:920px;width:expression(this.width > 920 ? "920px" :this.width);height:auto;}
+.ptext{line-height:22px;text-align:left;}.ptext p{margin-bottom:15px;}
+.stx{height:30px;line-height:30px;padding-top:9px;margin-top:10px;color:#9f9f9f;margin-bottom:-8px;border-top:1px solid #E8E8E8;font-size:12px;}
+.stx p.fl span a{display:inline-block;height:22px;line-height:22px;padding:0px 7px;margin-left:5px;background-color:#F6F6F6;color:#9F9F9F;border-radius:3px; font-size:12px;}
+.stx p.fl span a:hover{background-color:#FF5B90;color:#fff;}
+
+
+/*==========zishiying==========*/
+@media screen and (min-width:641px) and (max-width:960px){
+.box{width:640px;margin-left:auto;margin-right:auto;overflow:hidden;}
+.m-sch{width:105px;margin-right:5px;}.m-sch .sch-txt{width:100px;}
+.fl_640,#header,.fr_300{width:100%;}
+#tad,#itad,#footer,#SOHUCS,.nav,.tm,.imglist2,.box .hdp{display:none;}
+}
+
+@media screen and (max-width:640px){
+body{font-size:14px;font-family:'Microsoft YaHei',Hei,arial,sans-serif;overflow-x:hidden;}
+.box{width:100%;margin-left:auto;margin-right:auto;overflow:hidden;}
+.list{padding:20px 6px;border-bottom:1px solid #e5e5e5;}
+.tit{display:block;font-weight:normal;font-size:20px;line-height:1.2;}
+.list p{margin-top:10px;word-break:break-all;color:#777;font-size:14px;line-height:20px;}
+.info,.dinfo,.list p{font-family:'Microsoft YaHei',Hei,arial,sans-serif;}
+.list .limg{height:52px;width:84px;float:left;margin-right:20px;}.list .limg img{height:52px;width:84px;border:none;}
+.suli .limg{width:60px;height:40px;float:left;margin-right:10px;}.suli .limg img{width:60px;height:40px;border:none;}
+.imglist li,.imglist2 li,.hotPic li{margin-left:1%;margin-right:1%;width:48%;margin-bottom:6px;}.imglist img,.imglist2 img,.hotPic img{height:32vw;width:100%;}.imglist,.imglist2,.hotPic{margin-right:0;}
+
+.tagb{padding:5px 0 8px;}
+.tagb dl{width:100%;padding:0 10px 0 10px;border-right:none;}
+.m-sch{width:105px;margin-right:5px;}.m-sch .sch-txt{width:100px;}
+.arct{font-size:24px;font-weight:600;}
+.content img,#iadimg{width:100%;height:auto;}.line-small .cat-box{width:auto;float:none;margin-right:0px;margin-left:0px;}
+.lmdh,.side,.content,.bread,.arct,.bqtag,.tagb,.cat-box,.line-small,.zinfo,.timely{margin-left:6px;margin-right:6px;}
+.fl_640,#header,.fr_300{width:100%;}.mfl,.mfr{float:none;}
+#tad,#itad,#ztinfo p.fr,.nav,.tm,.notice,#SOHUCS,#ztinfo,.w120,.zstu,.ipage,.line-one-thumbnail,#footer,#akeyword,.box .hdp{display:none;}
+}
\ No newline at end of file
diff --git a/public/images/logo.png b/public/images/logo.png
index 629e41304fbc399e7d9070b0cb56f6214887d356..11e550c74e07cdbae3192894aacdd5e3cb271def 100644
GIT binary patch
literal 3113
zcmeHJ`8O1b7iY#UWH(AuCR>;xGGu2kH1_d^d7{C4F;m9&EG-6=eHmMlvdpB$KK8NA
z(AXwRj1tO7dMM&$DWR|TXME3j=iJZzoX`E?{_r{XbIwh1LE4FlD2nj#@Q69s+qfOE
z%fAo;9`*Jyz!M%Gz<`UBhwYK%i75ZC{&V2}+JPX%T*J{Ne~EBIy7TY?fPDM{fqPn=XbrF>fD%vn|NIW=_+O|A3VIuNLy{sjX=Bbc$tB~vqV
z3rj0&8(X-Yy#vD0=`zyU#nsIn<@Fod+XwTzub=-_Y(UT-f8uY162c=Q|B8-@jk|g4
z_MP~I#H73T?kA_Drln_OW#^D`^YRM{9~3<-epK@KNoiSm1)1`+^4W80Rdr2mU3~+s
zv8lPGwXL1r(b?7A!(jIIyV>=e=o1B
ze*Uty{&i#XpKn{+JG*uloqLjhF6%&_Kc^A2oYEJ@%J>{K5b
zx^{+})zn$B(x2x(rzHAmEXV+-yrxxY%3aMcm5SqO4AylJ#?
z4GD%(a@)p~8#?B{?j8^X&9dv{3!#5{FU`<_lC0)0bv}(v5vRRI&BG%ra3ciT-Kt?)
zJHQm-n}ram^KsLA>a0k(cB?<{JX*ehL+_sMYt5B5K5rZHNuoT>@>@u`TXas=I=dEE
za0nY4v;F?}l%tw8I>LG85q2VEkq~o#-c_$AB5Yy1i;!{WaC6Oj)@&|0iL_g>95V`~L^z>yta{|+O>iEYq
z@RD(qIl9Of4@DHB_<$O>G2S~*GF8VME&;|2D5f92iVw|=){d40{uN!wLidR+P0ofz5xfq=7lqh
zTs-s|Lid-M?Ov8eI5RiAyO13+94Aw9U^lUOfxfCcYvh(O<)GY>{W_<5tlp>6v@WT~
zx#!jc39qb>x}L@N-fvHVhng8d+PxEt_1Dk5RYOFTtHI}^B8^DM`(OrMB+g#_71C`V
zp^-|M(j2lf#wm;6Bwv;C_2REr7sIx>btZhi4gN7d)n-`7_bC`iI9x{S2DCacwo^#9
z;gG!+tsxOiU2`;389yQr6s!dC8T$}xukmSNrdG9~7!vgi@XQrd?`_WCLWKd(mdcnA
zMm%Y|(ADj8p--ss@NNG2m}|zhu@rU2Al{ueWQ3#|NDF8lOWcCFoOv$bWv_9H*=#%1
zg6)7$sB*If^e%fca!E7)KmdqMaBVvRdXmlO(8EjhL{Q`aCbGNXm~8|>3x2(rq|K5d
zH7P~gJEE&n7$DZIbS<)s76I={+ik$*L?}F<8gQp=>UpRQ6|)DXf$VBzuZVU
z9i=3gC%hOCbMnn~iaKkr`833*MHADJUwx|3oT_TZ^+gX8gUS*a7v6f)
zAg4TN$CZLPW%+H2=pev|l^yXaY@IdeMdMM@MG6*;PP}hEP}F`F@4txmp(e&rd*u
z2J;0EW&^+ViBYi`=Kyv~(`g}<>9Ojsm7$$AVf&)Lot}l3{uY9!-esUbScu%95K~d<
zYf6J<<^b^>tqZtsm7llD&n1A^P=Oa8g|b08PyJqIV*$qs7NLF_2+*^!cn7`ASV+_`
zN@5b+m9T)%Um^=yg*gEf^CbM2EMLcfa-njAatUIj?osCSX|^MyC-5iz;xU)AE)+CF
z4ip02Yhg<<=BaHl3W2nj@e5&{y!%d`7DZHIyWVIZmZMpAN;7YR7an9oz{55|U_rnW
zo&o`_a6P7c4peaQHaLlkM*|e5QsX4PTeawSF=rLGrCWWM7@DB3{#$r2O#GZ7S`)hN
zItSb^g`ohA%{fU|*LdLlACs4`90c|L51IjaVKCiZQG^|k#!obs&E*P*TyW9G3ilt7
ztX#AP_|k({!tF)bJ9?pw4`cn%WO-uF{NN_&C`%fQ_$b(8R-2u-cq==~jHk1lHGNYJ
zdzM%kIG51ixm|Ao57#|eBq`e~^0oko#g4#?tY-Kyx12J~{a<7SO4pZVE9>s7{f_}r9(qAg*a<4_j
z+JLxah^O$CPXKorkX0($__orf$e0sx%et?!sSF_g8M^jwXv0o^L`v*@Xh4U
z;go1VUmVKK{rJY3r)){!mkGE8WGh=L!3eH3G$
zUTm5~>PgyVY$0{HF`j}y3B1g6H9I^j&JMx$eWaEvCDqIVY5bj+KynYY!cs?lnw)`t
zart^)KNeIuIvRv6nsu>%bR#V@^TU}0vAt#E546H3zeEevrdYW1=EJJj2Yr=}g}KIb
zM06%6aotUmJ64nF(OKfG$}NJqj>;m8bvQ2SRYp%;THH89@A>HJ;9rB*Iz+J)dNS^0
z;@Y}(a8X~NEH2kDy%~wF%}`fe9JUqF%pYMFlY3P+vp?T#xy8g0aT}sD
zF8xOP1f@^*T7)xdncP%yDK~9n^ex!n*M#Hl54pP(`|avW^kwrn>ncvu^jPbnhVQ)Q
zN~63S@>tN-Aw|O<%&9Ag)a&Xyq5L#9wU_qDBy5A*fI=%)4ew*xi4?~-oV6RS7&ejK
foKN|Infb*#*Sp&c!PU3@`|~^4B5i7|{1W~LxiNf@
literal 1889
zcmaJ?c~BE~7!8Dg#tUt5L_xO!s)$L*h8!D+5{O{X&YGEoRVuE8Id3AXrqFmNLq9~`lz;aDgdjp^lDgdl{`Ch;e%XYx%__|THKIpyfyRYlFEYDgj%!F&6&+klpJLJ-J
zcA^~}?RY!zvbMaw!s(^cE2xTiU887=+tCr;#22=>20bF8IJ{
z$*bb)=N}YU1CX)Sm3JD!CY$p1pM28P>d<-L)a+e!i#Sg)+sAaVtmlg9Zb@@!<}{ma
zq~s(LxvPkhcJJv0i7%aeZTFsag>e}>j6Y2f`p!y+KZ%C6S=-vjQ)&xm26|1miJ=Gj
zn5(P^dWh+|IrmBm{LH~gJ+0Y&ZO|-wsrlzgv+9!Xx5H=hdW9DpNJK$odbjmn2akrd
zw>|GAu7n`R2duS$WIBoO`V2B}rtCP_oh80(itg=_PJfuQ%kfucde70{X@ckb)*kG7
zcG=19ZuVjO5ZV0vJGKogWpNdvBS~eQ{*`I6-~$@
z5Ti&|g{&fNZmDBexWmH7ZK-;iodgp*uAs^f#
zHAVX=EMbI|M11nO?fq)<@e&XBftltnVuzfc)JUa3W-2Eq+HFJ41u5K^vZHEmCTSUQ
zgU$S#t%dAQ8)gb=;nTns)*&sIGGExQX((rq&-JpM-Z~3b+E(2RYc$4JbIy4@rA?`;
zP9<_Rqzw_1xHIEb>iWX!&;!0VG*44cRwWNutJ;2?zUB75_HGB6_g$!ea(b(C`pS~N
zgRDGLPB(Fz-K#2?Wi0#h#sl)pRmXeI=(1y{=J#JUCUHrMRh^3{{Vyo}haP?$ylJ;*
zjTeacR&o<>mbNl~@ylKAe#*6>*_eNfS6Y+hefXvE!@X%+u9en5O5aueeUsgbnyoJm
zu(LUp*DoC|w&`nOO=4HJEGe69mdrL!>HaEp$U#OJN^bX0YQHu7(-SWZ7FGDkQvU`}
CRqD|eB9ox2TTRYrwzB%7n_n!0KU%giS
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%0A#p@qvKGT%qdS0T`!Tp)twayil
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 | |