Commit 20d4ebd3 by wanggang

Merge remote-tracking branch 'origin/master'

parents 3029fdf4 7ce83c00
-----BEGIN CERTIFICATE-----
MIIFizCCBHOgAwIBAgIQBRuGSHbKF1m62w0FiPW5KzANBgkqhkiG9w0BAQsFADBy
MQswCQYDVQQGEwJDTjElMCMGA1UEChMcVHJ1c3RBc2lhIFRlY2hub2xvZ2llcywg
SW5jLjEdMBsGA1UECxMURG9tYWluIFZhbGlkYXRlZCBTU0wxHTAbBgNVBAMTFFRy
dXN0QXNpYSBUTFMgUlNBIENBMB4XDTE4MDkyOTAwMDAwMFoXDTE5MDkyOTEyMDAw
MFowGjEYMBYGA1UEAxMPYXBwLm1hdmVsZXIuY29tMIIBIjANBgkqhkiG9w0BAQEF
AAOCAQ8AMIIBCgKCAQEAo6NpLGqv4ugmcuSeA67V9CyoaBRomKdhYkZvk0EN0U9Z
fOCqBLtxhexT13dIVEUAatbJbOdIvB0tGFyH2s9exDBx5UaTNRXZonn60puZddK8
6PhUSuZuWFdHIBdnarJFGYyEYapPQ/d5AfiMOcJbbJznmAXTcCQZwWvqvRxWwU7z
+Qa/GKgZdqLa+PlkNVlDPefQZ/yFiP7K/nR7ib0+y3jQtpH9xuICUT+o5csfCDGz
DoHsV2NYHwuWik6UOKUG+ZMrchRNDHmoC47YeV9ABxxx3YXgnPIEd7W/K+q1uAPS
KKsIBaSCx6u0nJrJAwJWkdv+YVLYYJuWEdpE029MEwIDAQABo4ICczCCAm8wHwYD
VR0jBBgwFoAUf9OZ86BHDjEAVlYijrfMnt3KAYowHQYDVR0OBBYEFEnJRMN6T2is
PCy0jsX4NupdNoT1MBoGA1UdEQQTMBGCD2FwcC5tYXZlbGVyLmNvbTAOBgNVHQ8B
Af8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMEwGA1UdIARF
MEMwNwYJYIZIAYb9bAECMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3LmRpZ2lj
ZXJ0LmNvbS9DUFMwCAYGZ4EMAQIBMIGBBggrBgEFBQcBAQR1MHMwJQYIKwYBBQUH
MAGGGWh0dHA6Ly9vY3NwMi5kaWdpY2VydC5jb20wSgYIKwYBBQUHMAKGPmh0dHA6
Ly9jYWNlcnRzLmRpZ2l0YWxjZXJ0dmFsaWRhdGlvbi5jb20vVHJ1c3RBc2lhVExT
UlNBQ0EuY3J0MAkGA1UdEwQCMAAwggEDBgorBgEEAdZ5AgQCBIH0BIHxAO8AdgCk
uQmQtBhYFIe7E6LMZ3AKPDWYBPkb37jjd80OyA3cEAAAAWYl5h4PAAAEAwBHMEUC
IAqABS/+KKuTvrfmCd+ONrbwtPbqSvLXkJAR8CDll+56AiEAsKxcNTs3DfexqxtE
Y74uokwy4ek9Zbb3eJUnLmKO9NMAdQCHdb/nWXz4jEOZX73zbv9WjUdWNv9KtWDB
tOr/XqCDDwAAAWYl5h7yAAAEAwBGMEQCIF0nbhRb1Ggt98q4/q8a+NvfWJofbmii
rxnGB4JHo4IrAiAqLqgXAIdCZMhhEpnnSyproxJQnzr3Pav/GpCmjhEi6zANBgkq
hkiG9w0BAQsFAAOCAQEAL5AowXwgNIZBCTxaW/CQjFRcitsLlxxkHBClXqzkQG9M
JIPc6SWqTLmfJvZc+IythbUoXmneFfj+sJGUryxmldh+yxelC4MjkMD9kF6GxAak
hQ/Mi71nOss1Te87G+M+DEMclKXH5YQNoUSoCJtMCeVXhtbesV3Q7IIlIbApfWGb
BP4pWmCqS45tkLbAUAmq+kN7ZE5UoXgc0525A0pRkZOXllOGfu7xSDy5/iB6pbSr
rD/WpMG4zLTrLtCXN60hIcgCoHc9E2eKcYTdTGqM04HzIe96SRRNye1RcALWhVk0
hUDgxTrtq9WGFyHNjFFrY8qB6zeMesQJ0AXxaps7QQ==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIErjCCA5agAwIBAgIQBYAmfwbylVM0jhwYWl7uLjANBgkqhkiG9w0BAQsFADBh
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD
QTAeFw0xNzEyMDgxMjI4MjZaFw0yNzEyMDgxMjI4MjZaMHIxCzAJBgNVBAYTAkNO
MSUwIwYDVQQKExxUcnVzdEFzaWEgVGVjaG5vbG9naWVzLCBJbmMuMR0wGwYDVQQL
ExREb21haW4gVmFsaWRhdGVkIFNTTDEdMBsGA1UEAxMUVHJ1c3RBc2lhIFRMUyBS
U0EgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCgWa9X+ph+wAm8
Yh1Fk1MjKbQ5QwBOOKVaZR/OfCh+F6f93u7vZHGcUU/lvVGgUQnbzJhR1UV2epJa
e+m7cxnXIKdD0/VS9btAgwJszGFvwoqXeaCqFoP71wPmXjjUwLT70+qvX4hdyYfO
JcjeTz5QKtg8zQwxaK9x4JT9CoOmoVdVhEBAiD3DwR5fFgOHDwwGxdJWVBvktnoA
zjdTLXDdbSVC5jZ0u8oq9BiTDv7jAlsB5F8aZgvSZDOQeFrwaOTbKWSEInEhnchK
ZTD1dz6aBlk1xGEI5PZWAnVAba/ofH33ktymaTDsE6xRDnW97pDkimCRak6CEbfe
3dXw6OV5AgMBAAGjggFPMIIBSzAdBgNVHQ4EFgQUf9OZ86BHDjEAVlYijrfMnt3K
AYowHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUwDgYDVR0PAQH/BAQD
AgGGMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjASBgNVHRMBAf8ECDAG
AQH/AgEAMDQGCCsGAQUFBwEBBCgwJjAkBggrBgEFBQcwAYYYaHR0cDovL29jc3Au
ZGlnaWNlcnQuY29tMEIGA1UdHwQ7MDkwN6A1oDOGMWh0dHA6Ly9jcmwzLmRpZ2lj
ZXJ0LmNvbS9EaWdpQ2VydEdsb2JhbFJvb3RDQS5jcmwwTAYDVR0gBEUwQzA3Bglg
hkgBhv1sAQIwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly93d3cuZGlnaWNlcnQuY29t
L0NQUzAIBgZngQwBAgEwDQYJKoZIhvcNAQELBQADggEBAK3dVOj5dlv4MzK2i233
lDYvyJ3slFY2X2HKTYGte8nbK6i5/fsDImMYihAkp6VaNY/en8WZ5qcrQPVLuJrJ
DSXT04NnMeZOQDUoj/NHAmdfCBB/h1bZ5OGK6Sf1h5Yx/5wR4f3TUoPgGlnU7EuP
ISLNdMRiDrXntcImDAiRvkh5GJuH4YCVE6XEntqaNIgGkRwxKSgnU3Id3iuFbW9F
UQ9Qqtb1GX91AJ7i4153TikGgYCdwYkBURD8gSVe8OAco6IfZOYt/TEwii1Ivi1C
qnuUlWpsF1LdQNIdfbW3TSe0BhQa7ifbVIfvPWHYOu3rkg1ZeMo6XRU9B4n5VyJY
RmE=
-----END CERTIFICATE-----
\ No newline at end of file
-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEAo6NpLGqv4ugmcuSeA67V9CyoaBRomKdhYkZvk0EN0U9ZfOCq
BLtxhexT13dIVEUAatbJbOdIvB0tGFyH2s9exDBx5UaTNRXZonn60puZddK86PhU
SuZuWFdHIBdnarJFGYyEYapPQ/d5AfiMOcJbbJznmAXTcCQZwWvqvRxWwU7z+Qa/
GKgZdqLa+PlkNVlDPefQZ/yFiP7K/nR7ib0+y3jQtpH9xuICUT+o5csfCDGzDoHs
V2NYHwuWik6UOKUG+ZMrchRNDHmoC47YeV9ABxxx3YXgnPIEd7W/K+q1uAPSKKsI
BaSCx6u0nJrJAwJWkdv+YVLYYJuWEdpE029MEwIDAQABAoIBAB90/fZmafp2Q1Hp
5gByPzoJzbP4XGUgJCXmwXMu2c+nb94EOFrhh8DFfhaZHSPqAdsIAD+5tG9JMo6Q
1yL2o1KWt4ZqS0k0spo71b5f4B/Yy60Dc/zUEFlWKdue9Cf8LjFrpFU8DrHTpIT+
+UHvPXEDNrgwQoW3wuW+b6k8BedyDboE2Yv3bwN2bu2I9pH4Yu60YdY4qWb7dbVj
piOOOB03ywCxhoKOqkR6emrjMdEP19eGfcOCo3oKPsl6RUrQBaT+CrMgfIw1pfk4
JKyP/5oV97EjizINd7nVgC2htd4X9DtF/+vu2yQoRsxrpNdEKFZb0gsLiKVRNcZe
wtmukC0CgYEA2VfD1vfMJzDTZBDHTQqicFobm5GCmGull/5Q+zKe3isiVw+6flku
l98qrNnvgAAmdFnQFsA4vBpjW00NDH4F2aoX0DnoE3gHxDrJY2pliMahYFCsOusQ
yJ75X0xrC7MQc5hMIWmJYxQ4SVhGGdJUky76k9cWDWftS/zAVr7p87UCgYEAwL5T
z8ImCxCnmV7DrieykZmnejUv8GS0Wa64RdM3DXAhefokfu3TBEtwUHpn6mm35Q6k
3UgSw6s29jVHfRRmFtOEQz+qwNXMvxw/RFZgQbrqsK7kL7xpkHkI5h+xAs+f8IRb
YasYrHyrjbcb2r9lPU4hd2e7lcRPK49yUSagracCgYEAxcUSBKOZlrPcN3r5EAa0
R04HPylKT83scgFNyTaHz5wqdFRwnBYkyrecyorJX41DcK5lJr6lIa1VabgUPqDS
S/12C9kVb9nSH2Jq7NbdK3erUsw13KsXq6bVPj14Tr4TI0ybQfAZvxmgGkWEDG0S
3pdqFmsquuotyO5mSskQc90CgYBN2FD3Vx2QWICoU/rKSuQ3JAzdMcAT4kho9EUe
hmj0t3X90saMsTcJxAIvrtBrf5kzHQ//A0340xzWobwmy2dUDsebdYpcab1Q7nKr
AgvMYFbLV0d39Cvamte6QdB3Jy4csQhLURQdDhknmm3YknasJPMlS7MakPe8yynL
lsNMfwKBgA2LRfcaxvDZWcodukgbvpxI/3bjR6JYZ6FJrLgAfUONB2esGMvOCS2u
H2UBCb6K6VlaGCyYAIutmil+Y5eu33ctB9EUVDio51MtJkEDpT8Vj+IpEOuaFu/y
qwlNqxeKO4z1LtCKF86oQQ/ZlFhE0JsGc8x44yD7nY8NzL11LzMC
-----END RSA PRIVATE KEY-----
\ No newline at end of file
......@@ -35,14 +35,15 @@
<form name="myFrom" id="myFrom" class="form-horizontal" enctype="multipart/form-data" method="POST" action="{:url('admin/banner/create')}" id="article-create-form">
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right" >图片</label>
<div class="col-lg-10">
<div class="col-lg-10 col-md-8 col-lg-6">
<input id="input-b1" name="image" class="validate[required]" type="file">
<span class="form-group-tip"> * 尺寸建议:375px*360px </span>
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">Banner类型</label>
<div class="col-lg-10">
<label for="title" class="col-sm-1 control-label text-right">类型</label>
<div class="col-lg-10 col-md-8 col-lg-6">
<select class="form-control" name="type" id="post_type">
<option value="1">小程序页面路径</option>
<option value="2">跳转到网页链接地址</option>
......@@ -51,15 +52,15 @@
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">请输入链接</label>
<div class="col-lg-10">
<label for="title" class="col-sm-1 control-label text-right">链接</label>
<div class="col-lg-10 col-md-8 col-lg-6">
<input type="text" name="url" class="form-control validate[required]" >
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">是否显示</label>
<div class="col-lg-10">
<label for="title" class="col-sm-1 control-label text-right">状态</label>
<div class="col-lg-10 col-md-8 col-lg-6">
<select class="form-control" name="status" id="post_type">
<option value="1">显示</option>
<option value="2">不显示</option>
......@@ -68,7 +69,7 @@
</div>
<div class="form-group">
<div class="col-sm-offset-1 col-sm-10">
<button type="submit" class="btn btn-default" id="btn-save">提交</button>
<button type="submit" class="btn btn-success" id="btn-save">提交</button>
</div>
</div>
</form>
......
......@@ -35,14 +35,15 @@
<form name="myFrom" id="myFrom" class="form-horizontal" enctype="multipart/form-data" method="POST" action="{:url('admin/banner/update',['id'=>$banner_info.id])}" id="article-create-form">
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right" >图片</label>
<div class="col-lg-10">
<div class="col-lg-10 col-md-8 col-lg-6">
<input id="input-b1" name="image" type="file">
<span class="form-group-tip"> * 尺寸建议:375px*360px </span>
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">文章类型</label>
<div class="col-lg-10">
<label for="title" class="col-sm-1 control-label text-right">类型</label>
<div class="col-lg-10 col-md-8 col-lg-6">
<select class="form-control" name="type" id="post_type">
<option value="1" {if condition="$banner_info.type == 1"}selected{/if}>小程序页面路径</option>
<option value="2" {if condition="$banner_info.type == 2"}selected{/if}>跳转到网页链接地址</option>
......@@ -51,15 +52,15 @@
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">请输入链接</label>
<div class="col-lg-10">
<label for="title" class="col-sm-1 control-label text-right">链接</label>
<div class="col-lg-10 col-md-8 col-lg-6">
<input type="text" name="url" class="form-control validate[required]" value="{$banner_info.url}">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-1 control-label text-right">是否显示</label>
<div class="col-lg-10">
<label for="title" class="col-sm-1 control-label text-right">状态</label>
<div class="col-lg-10 col-md-8 col-lg-6">
<select class="form-control" name="status" id="post_type">
<option value="1" {if condition="$banner_info.status == 1"}selected{/if}>显示</option>
<option value="2" {if condition="$banner_info.status == 2"}selected{/if}>不显示</option>
......@@ -68,7 +69,7 @@
</div>
<div class="form-group">
<div class="col-sm-offset-1 col-sm-10">
<button type="submit" class="btn btn-default" id="btn-save">提交</button>
<button type="submit" class="btn btn-success" id="btn-save">提交</button>
</div>
</div>
</form>
......
{layout name="public/layout_main"}
{layout name="public/fullscreen"}
<link rel="stylesheet" href="/static/fileinput/css/fileinput.css">
<link rel="stylesheet" href="/static/bootstrap-select/css/bootstrap-select.min.css">
<style type="text/css">
......@@ -39,7 +39,7 @@
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">攻略描述</label>
<label for="title" class="col-sm-2 control-label text-right">攻略简介</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<textarea name="intro" id="" cols="30" rows="3" class="form-control" placeholder="请输入美行攻略的简单描述"></textarea>
</div>
......@@ -48,6 +48,7 @@
<label for="title" class="col-sm-2 control-label text-right" >攻略封面</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<input id="input-b1" name="poster" type="file">
<span class="form-group-tip"> * 尺寸建议:260px*190px </span>
</div>
</div>
<div class="form-group">
......
......@@ -29,6 +29,8 @@
<tr>
<th>ID</th>
<th>攻略标题</th>
<th>类型</th>
<th>简介</th>
<th>封面</th>
<th>发布时间</th>
<th>操作</th>
......@@ -49,7 +51,13 @@
</a>
{/if}
</td>
<td><img style="width: 90px" src="{$article->poster}" alt=""></td>
<td> <?=$article->type=='1'?'自建文章':'网络文章';?> </td>
<td style="max-width:200px;"> <?=$article->intro;?> </td>
<td>
<a href="<?=$article->poster?>" target="_blank" data-fancybox="images">
<img src="<?=$article->poster?>" width='100' height='50'>
</a>
</td>
<td><?php echo $article->created_at;?></td>
<td style="min-width:100px;">
<a href="<?php echo url('@admin/Guide/update', 'id='.$article->id);?>" type="button" class="btn btn-primary btn-xs" data-toggle="tooltip" data-placement="top" data-original-title="编辑">
......
{layout name="public/layout_main"}
<link rel="stylesheet" href="/static/fileinput/css/fileinput.css">
<section class="wrapper">
<h3><i class="fa fa-angle-right"></i> <a href="{:url('admin/project/catalogs')}">分类管理</a> <i class="fa fa-angle-right"></i> 添加分类</h3>
<h3><i class="fa fa-angle-right"></i> <a href="{:url('admin/project/catalogs')}">分类管理</a> <i class="fa fa-angle-right"></i> 修改分类</h3>
<!-- 分割线 -->
<hr>
<div class="col-xs-12" >
<form method="post" class="form-horizontal" enctype="multipart/form-data" action="{:url('admin/project/addCatalogs')}">
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">分类名</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<label for="title" class="col-sm-1 control-label text-right">分类名</label>
<div class="col-lg-10">
<input type="text" class="form-control" name="name">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right" >分类图标</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<label for="title" class="col-sm-1 control-label text-right" >分类图标</label>
<div class="col-lg-10">
<input type="hidden" name='old_poster'>
<input id="input-b1" name="poster" type="file">
</div>
</div>
<div class="form-group">
<label for="title" class="col-sm-2 control-label text-right">排序</label>
<div class="col-sm-10 col-md-8 col-lg-6">
<label for="title" class="col-sm-1 control-label text-right">排序</label>
<div class="col-lg-10">
<input type="number" class="form-control" name="sort">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button class="btn btn-success" id="btn-save">提交</button>
</div>
</div>
<button type="submit" class="btn btn-success">修改</button>
</form>
</div>
......
{layout name="public/layout_main"}
{layout name="public/fullscreen"}
<link rel="stylesheet" href="/static/validation/css/validationEngine.jquery.css">
<link rel="stylesheet" href="/static/fileinput/css/fileinput.css">
<link rel="stylesheet" href="/static/bootstrap-select/css/bootstrap-select.min.css">
......
{layout name="public/layout_main"}
{layout name="public/fullscreen"}
<link rel="stylesheet" href="/static/validation/css/validationEngine.jquery.css">
<link rel="stylesheet" href="/static/fileinput/css/fileinput.css">
<link rel="stylesheet" href="/static/bootstrap-select/css/bootstrap-select.min.css">
......
......@@ -7,7 +7,8 @@
<meta name="author" content="Arron">
<meta name="keyword" content="Dashboard, Bootstrap, Admin, Template, Theme, Responsive, Fluid, Retina">
<title><?=config('app_name')?>后台管理</title>
<title><?=config('app_name')?></title>
<!-- Bootstrap core CSS -->
<link href="/static/css/bootstrap.css" rel="stylesheet">
<!--external css-->
......@@ -31,7 +32,6 @@
<script src="/static/js/bootstrap.min.js"></script>
<script src="/static/js/jquery.dcjqaccordion.2.7.js" class="include" type="text/javascript"></script>
<script src="/static/js/jquery.scrollTo.min.js"></script>
<!-- <script src="/static/js/jquery.nicescroll.js" type="text/javascript"></script> -->
<script src="/static/pnotify/js/pnotify.js" type="text/javascript"></script>
<script src="/static/js/art-template.js" type="text/javascript"></script>
<script src="/static/fancybox/jquery.fancybox.min.js" type="text/javascript"></script>
......@@ -81,23 +81,151 @@
$('#right-detail').css({'margin-right': '-320px'});
$('#right-detail').hide();
}
function isNull( str ){
if ( str == "" ) return true;
var regu = "^[ ]+$";
var re = new RegExp(regu);
return re.test(str);
}
/**
* 七牛云上传图片到一个input输入框
*@param button_id 上传图片的按钮ID
*@param input_id 输入框的ID
*/
function setImageUp(button_id, input_id){
//上传图片
var imgUploader = Qiniu.uploader({
runtimes: 'html5,flash,html4', // 上传模式,依次退化
browse_button: button_id, // 上传选择的点选按钮,必需
uptoken_url: '/admin/upload/uptoken', // Ajax请求uptoken的Url
get_new_uptoken: true, // 设置上传文件的时候是否每次都重新获取新的uptoken
domain: "<?=config('qiniu.domain')?>", // bucket域名,下载资源时用到,必需
max_file_size: '100mb', // 最大文件体积限制
flash_swf_url: '/static/plupload/Moxie.swf', //引入flash,相对路径
max_retries: 3, // 上传失败最大重试次数
dragdrop: true, // 开启可拖曳上传
drop_element: 'chating-text', // 拖曳上传区域元素的ID,拖曳文件或文件夹后可触发上传
chunk_size: '4mb', // 分块上传时,每块的体积
auto_start: true, // 选择文件后自动上传,若关闭需要自己绑定事件触发上传
multi_selection: false,
unique_names: true,
filters : {
mime_types: [
{title : "Image files", extensions : "jpg, gif,png,jpeg"} // 限定jpg,gif,png后缀上传
]
},
init: {
'FilesAdded': function(up, files) {
},
'BeforeUpload': function(up, file) {
},
'UploadProgress': function(up, file) {
showLoading();
},
'UploadComplete': function() {
},
'FileUploaded': function(up, file, info) {
var domain = up.getOption('domain');
var res = $.parseJSON(info);
// 获取上传成功后的文件的Url
var sourceLink = domain + res.key;
$('#'+input_id).val(sourceLink);
$('#'+input_id).change();
// 图片预览重载
var imgpreview = $('#'+input_id).siblings('.imgpreview');
if (imgpreview.length > 0) {
imgpreview.children('a').attr('href', sourceLink);
}
imgUploader.stop();
imgUploader.removeFile(file);
hideLoading();
},
'Error': function(up, err, errTip) {
//上传出错时,处理相关的事情
new PNotify({title: '提示', text: "图片上传出错"});
imgUploader.stop();
imgUploader.removeFile(err.file);
hideLoading();
},
}
});
}
/**
* 七牛云上传文件到一个input输入框
*@param button_id 上传文件的按钮ID
*@param input_id 输入框的ID
*/
function setFileUp(button_id, input_id){
//上传图片
var imgUploader = Qiniu.uploader({
runtimes: 'html5,flash,html4', // 上传模式,依次退化
browse_button: button_id, // 上传选择的点选按钮,必需
uptoken_url: '/admin/upload/uptoken', // Ajax请求uptoken的Url
get_new_uptoken: true, // 设置上传文件的时候是否每次都重新获取新的uptoken
domain: "<?=config('qiniu.domain')?>", // bucket域名,下载资源时用到,必需
max_file_size: '300mb', // 最大文件体积限制
flash_swf_url: '/static/plupload/Moxie.swf', //引入flash,相对路径
max_retries: 3, // 上传失败最大重试次数
dragdrop: true, // 开启可拖曳上传
drop_element: 'chating-text', // 拖曳上传区域元素的ID,拖曳文件或文件夹后可触发上传
chunk_size: '4mb', // 分块上传时,每块的体积
auto_start: true, // 选择文件后自动上传,若关闭需要自己绑定事件触发上传
multi_selection: false,
unique_names: true,
filters : {
mime_types: [
{title : "Image files", extensions : "swf,mp4,xlsx,xls"}
]
},
init: {
'FilesAdded': function(up, files) {
},
'BeforeUpload': function(up, file) {
},
'UploadProgress': function(up, file) {
showLoading();
},
'UploadComplete': function() {
},
'FileUploaded': function(up, file, info) {
var domain = up.getOption('domain');
var res = $.parseJSON(info);
// 获取上传成功后的文件的Url
var sourceLink = domain + res.key;
$('#'+input_id).val(sourceLink);
$('#'+input_id).change();
imgUploader.stop();
imgUploader.removeFile(file);
hideLoading();
},
'Error': function(up, err, errTip) {
//上传出错时,处理相关的事情
new PNotify({title:'提示', text: "文件上传出错"});
imgUploader.stop();
imgUploader.removeFile(err.file);
hideLoading();
},
}
});
}
</script>
</head>
<style type="text/css">
#main-content {
margin-left: 0px;
height: inherit;
position: relative;
}
</style>
<body>
<section id="container" >
{include file="public/header" /}
{include file="public/sidebar" admin_name="<?php echo session('username');?>"/}
<section id="main-content">
{__CONTENT__}
<!--main content end-->
</section>
<aside>
......
......@@ -13,7 +13,7 @@ class Base extends Controller
{
protected $userinfo;
// 控制器方法的前置执行的操作方法,可以指定某个方法为其他方法的前置操作
// 控制器方法的前置执行的操作方法,可以指定某1个方法为其他方法的前置操作
// 在所有接口执行之前执行validSignature验证签名和token,如果不需验证则将方法名写入except数组中,以逗号分割
protected $beforeActionList = [
'validSignature' => ['except' => 'login,token'],
......@@ -28,10 +28,10 @@ class Base extends Controller
// echo $this->getSignature($params); exit;
//验证签名
if (!$this->checkSignature($params)) {
echo json_encode(["code" => 1, "msg" => "auth failed"]);
die;
}
// if (!$this->checkSignature($params)) {
// echo json_encode(["code" => 1, "msg" => "auth failed"]);
// die;
// }
// 用户信息
if (input('post.token')) {
......
......@@ -65,7 +65,7 @@ class Comment extends Base
]);
//检验是否重复写入
if (!$order) {
return ['code' => 1, 'msg' => '您已评价,或评价正在审核中!'];
return ['code' => 1, 'msg' => '无此订单!'];
}
//写入数据库
......
......@@ -357,9 +357,10 @@ class Order extends Base
$p = input('post.p/d', 1);
$page = input('post.page/d', 8);
$status = input('post.status/d', 1);
$uid = $this->userinfo[0];
$order = OrderModel::with('project')
->where('status', $status)
->where('uid', $this->userinfo[0])
->where('uid', $uid)
->where('type', 1)
->page($p, $page)
->select();
......@@ -394,6 +395,6 @@ class Order extends Base
'order_id' => $order->id,
'uid' => $this->userinfo[0]
]);
return ['code' => 0, 'msg' => 'success'];
return ['code' => 0, 'msg' => '提交成功'];
}
}
\ No newline at end of file
......@@ -95,7 +95,7 @@ class Project extends Base
->order('id', 'desc')
->limit(3);
});
$newProjects = $newProjects ? collection($newProjects)->visible(['id', 'title', 'poster', 'night_num', 'price'])->toArray() : [];
$newProjects = $newProjects ? collection($newProjects)->visible(['id', 'title', 'poster', 'night_num', 'price', 'vip_price'])->toArray() : [];
//爆款专区-只显示3个
$heatProjects = ProjectModel::all(function ($query) {
......@@ -105,15 +105,15 @@ class Project extends Base
->order('id', 'desc')
->limit(3);
});
$heatProjects = $heatProjects ? collection($heatProjects)->visible(['id', 'title', 'poster', 'night_num', 'price'])->toArray() : [];
$heatProjects = $heatProjects ? collection($heatProjects)->visible(['id', 'title', 'poster', 'night_num', 'price', 'vip_price'])->toArray() : [];
//酒店预订
// 酒店预订
$businessProjects = ProjectModel::all(function ($query) {
$query->where('type', 2)
->order('id', 'desc')
->limit(4);
});
$businessProjects = $businessProjects ? collection($businessProjects)->visible(['id', 'title', 'poster', 'night_num', 'price'])->toArray() : [];
$businessProjects = $businessProjects ? collection($businessProjects)->visible(['id', 'title', 'poster', 'night_num', 'price', 'vip_price'])->toArray() : [];
//美行攻略
$guides = GuideModel::all(function ($query) {
......
<?php
namespace app\mob\controller;
use app\mob\controller\Base;
use app\common\model\Post as PostModel;
class Guide extends Base
{
/**
* 查看文章
*/
public function read($id=0)
{
$post = PostModel::get($id);
if ($post) {
$this->assign('post', $post);
return view();
}else{
$this->error('没有此文章');
}
}
}
......@@ -31,6 +31,14 @@ class Index extends Base
$this->redirect(url('@mob/Post/read', ['id'=>2]));
}
/**
* 商家入驻
*/
public function shopjoin($id=0)
{
return view();
}
}
......
{layout name="layout/main"}
<style type="text/css">
.wrapper{
top: 0;
background: white;
box-sizing: border-box;
padding: 10px;
}
.post_title{
word-wrap: break-word;
font-weight: bold;
font-size: 18px;
text-align: center;
}
#first_div{
padding: 15px 10px;
}
#seconde_div {
color: #494949;
padding-top: 15px;
border-top: 1px solid #ccc;
overflow: hidden;
}
#seconde_div img
{
max-width: 480px;
}
</style>
<section class="wrapper">
<div id="first_div">
<span class="post_title">
<?=$post->title?>
</span>
</div>
<div id="seconde_div">
<?php echo htmlspecialchars_decode($post->content); ?>
</div>
</section>
<script type="text/javascript">
$(function(){
var width = $(document).width();
if (width <= 480) {
$('#seconde_div img').css({"max-width": width+"px"});
}
});
</script>
</script>
{layout name="layout/main"}
<style type="text/css">
.wrapper{
top: 0;
background: white;
box-sizing: border-box;
padding: 10px;
}
.post_title{
word-wrap: break-word;
font-weight: bold;
font-size: 18px;
text-align: center;
}
#first_div{
padding: 15px 10px;
}
#seconde_div {
color: #494949;
padding: 15px 15px;
border-top: 1px solid #ccc;
}
</style>
<section class="wrapper">
<div id="first_div">
<span class="post_title">
<?=config('app_name')?>H5 Web
</span>
</div>
<div id="seconde_div">
美行者 商家入驻H5网页<br/>
美行者 商家入驻H5网页<br/>
美行者 商家入驻H5网页<br/>
美行者 商家入驻H5网页<br/>
美行者 商家入驻H5网页<br/>
美行者 商家入驻H5网页<br/>
美行者 商家入驻H5网页<br/>
</div>
</section>
<script type="text/javascript">
$(function(){
});
</script>
</script>
......@@ -2566,3 +2566,9 @@ label {
max-width: 100%;
vertical-align: middle;
}
.form-group-tip {
display: block;
margin-top: 6px;
float: right;
}
......@@ -195,20 +195,22 @@ var Script = function () {
$('.btn_left').unbind('click').bind('click', function(){
history.go(-1)
});
//表格图片预览
$('.table td img').click(function(){
if($("#imageview")[0]){
$("#imageview img").attr('src',$(this).attr('src'));
$("#imageview").show();
}else{
$("body").append('<div class="imageview" id="imageview"><span class="remove">&times;</span><img src=\"'+$(this).attr('src')+'\" alt=""></div>');
}
var width = $("#imageview").width();
var height = $("#imageview").height();
var left = ($(window).width() - width)/2;
var top = ($(window).height() - height)/2;
$("#imageview").css({'top':top+'px','left':left+'px'});
})
// $('.table td img').click(function(){
// if($("#imageview")[0]){
// $("#imageview img").attr('src',$(this).attr('src'));
// $("#imageview").show();
// }else{
// $("body").append('<div class="imageview" id="imageview"><span class="remove">&times;</span><img src=\"'+$(this).attr('src')+'\" alt=""></div>');
// }
// var width = $("#imageview").width();
// var height = $("#imageview").height();
// var left = ($(window).width() - width)/2;
// var top = ($(window).height() - height)/2;
// $("#imageview").css({'top':top+'px','left':left+'px'});
// })
$('body').on('click','#imageview .remove',function(){
$(this).parent().hide();
})
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment