You've already forked qlg.tsgz.moe
Init Repo
This commit is contained in:
176
hyhproject/home/view/default/shops/shopcats/list.html
Executable file
176
hyhproject/home/view/default/shops/shopcats/list.html
Executable file
@ -0,0 +1,176 @@
|
||||
{extend name="default/shops/base" /}
|
||||
{block name="title"}商品分类 - 卖家中心{__block__}{/block}
|
||||
{block name="css"}
|
||||
<!--mark 20180518 by zl-->
|
||||
<meta http-equiv="Access-Control-Allow-Origin" content="*">
|
||||
<link rel="stylesheet" type="text/css" href="__STATIC__/plugins/webuploader/webuploader.css?v={$v}" />
|
||||
<link rel="stylesheet" type="text/css" href="__STATIC__/plugins/webuploader/batchupload.css?v={$v}" />
|
||||
<link href="__STATIC__/plugins/validator/jquery.validator.css?v={$v}" rel="stylesheet">
|
||||
<!--end-->
|
||||
{/block}
|
||||
{block name="content"}
|
||||
<div class="wst-body">
|
||||
<div class="wst-shop-head"><span>商品分类</span></div>
|
||||
<div class="wst-clear"></div>
|
||||
<div style='text-align:right;height: 36px;'>
|
||||
<span></span>
|
||||
<a href='javascript:addCat(1);' style='float:right;margin:9px 30px 0px 0px;'><img class="wst-lfloat" style="margin:-3px 5px 0px 0px;" src="__STYLE__/img/seller_icon_xz.png">新增</a>
|
||||
</div>
|
||||
<form autocomplete="off">
|
||||
<table id="cat_list_tab" class='wst-list wst-form'>
|
||||
<thead>
|
||||
<tr class="wst-colour">
|
||||
<th class="wst-fre-th">名称</th>
|
||||
<th width='60'>排序号</th>
|
||||
<th width='80' style="line-height: normal;">是否显示<br/><span style="font-weight:normal;color:red;">(双击可修改)</span></th>
|
||||
<th width="150">操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
{volist name="list" id="vo" key='i'}
|
||||
<tbody>
|
||||
<tr id='tr_{$i}' isLoad='1'>
|
||||
<td class="wst-fre-td">
|
||||
<span class='wst-tree-open active' onclick='javascript:treeCatOpen(this,{$vo.catId})'><img class="wst-lfloat" style="margin-top:-3px;" src="__STYLE__/img/seller_icon_zk.png"></span>
|
||||
<input type='text' style='width:400px;' value='{$vo['catName']}' dataId="{$vo.catId}" onchange='javascript:editCatName(this)'/>
|
||||
</td>
|
||||
<td><input class='catsort' type='text' style='width:35px;' value="{$vo['catSort']}" dataId="{$vo.catId}" onchange='javascript:editCatSort(this)' onkeyup="javascript:WST.isChinese(this,1)" onkeypress="return WST.isNumberKey(event)"/></td>
|
||||
{if condition="$vo['isShow']==0 "}
|
||||
<td style="cursor:pointer;" ondblclick="changeCatStatus(1,{$vo['catId']},0)"><span class='wst-state_no'><img class="wst-lfloat" style="margin-top:-3px;" src="__STYLE__/img/seller_icon_error.png"></span></td>
|
||||
{else/}
|
||||
<td style="cursor:pointer;" ondblclick="changeCatStatus(0,{$vo['catId']},0)"><span class='wst-state_yes'><img class="wst-lfloat" style="margin-top:-3px;" src="__STYLE__/img/seller_icon_right.png"></span></td>
|
||||
{/if}
|
||||
<td>
|
||||
<a href="javascript:void(0);" onclick='javascript:addCat(this,{$vo["catId"]},{$i});' class='add btn' title='新增'>[新增]</a>
|
||||
<a href="javascript:void(0);" onclick="javascript:delCat({$vo['catId']},0)" class='del btn' title='删除'>[删除]</a>
|
||||
<!--mark 20180518 by zll-->
|
||||
{if condition="$shopId eq 1"}
|
||||
<a href="javascript:void(0);" onclick="javascript:setSpecial('{$vo['catId']}','{$vo['provId']}','{$vo['catImg']}','{$vo['isHot']}')" class='del btn' title='设为特产'>[设为特产]</a>
|
||||
{/if}
|
||||
<!--end-->
|
||||
</td>
|
||||
</tr>
|
||||
{if isset($vo['childNum'])}
|
||||
{if condition="$vo['childNum'] gt 0 "}
|
||||
{volist name="vo['child']" id="vo2" key='i2'}
|
||||
<tr id='tr_{$i}_{$i2}' class="tr_{$i} tree_{$vo.catId}" isLoad='1'>
|
||||
<td class="wst-fre-td">
|
||||
<span class="wst-tree-second"></span>
|
||||
<input type='text' style='width:400px;' value='{$vo2['catName']}' dataId="{$vo2.catId}" onchange='javascript:editCatName(this)'/>
|
||||
</td>
|
||||
<td><input class='catsort' type='text' style='width:35px;' value="{$vo2['catSort']}" dataId="{$vo2.catId}" onchange='javascript:editCatSort(this)' onkeyup="javascript:WST.isChinese(this,1)" onkeypress="return WST.isNumberKey(event)"/></td>
|
||||
{if condition="$vo2['isShow']==0 "}
|
||||
<td style="cursor:pointer;" onclick="changeCatStatus(1,{$vo2['catId']},{$vo['catId']})"><span class='wst-state_no'><img class="wst-lfloat" style="margin-top:-3px;" src="__STYLE__/img/seller_icon_error.png"></span></td>
|
||||
{else/}
|
||||
<td style="cursor:pointer;" onclick="changeCatStatus(0,{$vo2['catId']},{$vo['catId']})"><span class='wst-state_yes'><img class="wst-lfloat" style="margin-top:-3px;" src="__STYLE__/img/seller_icon_right.png"></span></td>
|
||||
{/if}
|
||||
<td>
|
||||
<a href="javascript:delCat({$vo2['catId']},0)" class='del btn' title='删除'>[删除]</a>
|
||||
</td>
|
||||
</tr>
|
||||
{/volist}
|
||||
{/if}
|
||||
{/if}
|
||||
</tbody>
|
||||
{/volist}
|
||||
</table>
|
||||
</form>
|
||||
<div class='wst-tbar-group' style='height: 76px;text-align: center'>
|
||||
<button class='wst-shop-but hide' style='margin-top:40px;;width:80px;height: 30px;' type="button" onclick='javascript:batchSaveCats()'>保 存</button>
|
||||
<button class='wst-shop-but hide' style='margin-top:40px;margin-left:5px;width:80px;height: 30px;;' type="button" onclick='javascript:location.reload()'>取 消</button>
|
||||
<a style='float:right;margin:30px 30px 0px 0px;' href='javascript:addCat(1);'><img class="wst-lfloat" style="margin:-3px 5px 0px 0px;" src="__STYLE__/img/seller_icon_xz.png">新增</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<script id="cat_p_tr" type="text/html">
|
||||
<tbody class='tbody_new'>
|
||||
<tr class="tr_new" isload="1">
|
||||
<td class="wst-fre-td">
|
||||
<span class="wst-tree-open"><img class="wst-lfloat" style="margin-top:-3px;" src="__STYLE__/img/seller_icon_zk.png"></span>
|
||||
<input class="catname" type="text" style="width:400px;height:22px;margin-left:6px;" dataid="">
|
||||
</td>
|
||||
<td>
|
||||
<input class="catsort" type="text" style="width:35px;" value="0" onkeyup="javascript:WST.isChinese(this,1)" onkeypress="return WST.isNumberKey(event)">
|
||||
</td>
|
||||
<td style="cursor:pointer;">
|
||||
<input class="catshow" type="checkbox" checked=""/>
|
||||
</td>
|
||||
<td>
|
||||
<a href="javascript:void(0);" onclick="addCat(this,0,0);" class="add btn" title="新增">[新增]</a>
|
||||
<a href="javascript:void(0);" class="del btn" title="删除" onclick="delCatObj(this,1)">[删除]</a>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</script>
|
||||
|
||||
<script id="cat_c_tr" type="text/html">
|
||||
<tr class="{{d.className}}" isload="1" catid="{{d.p}}">
|
||||
<td class="wst-fre-td">
|
||||
<span class="wst-tree-second"></span>
|
||||
<input class="catname" type="text" style='width:400px' dataid="">
|
||||
</td>
|
||||
<td>
|
||||
<input class="catsort" type="text" style="width:35px;" value="0" onkeyup="javascript:WST.isChinese(this,1)" onkeypress="return WST.isNumberKey(event)">
|
||||
</td>
|
||||
<td style="cursor:pointer;">
|
||||
<input class="catshow" type="checkbox" checked=""/>
|
||||
</td>
|
||||
<td>
|
||||
<a href="javascript:void(0);" class="del btn" title="删除" onclick="delCatObj(this,2)">[删除]</a>
|
||||
</td>
|
||||
</tr>
|
||||
</script>
|
||||
|
||||
|
||||
<!--模态框 mark 20180518 zll-->
|
||||
<div id='shopcatsBox' style='display:none' class='layui-form'>
|
||||
<form id='shopcatsForm' autocomplete="off">
|
||||
<table class='wst-form wst-box-top'>
|
||||
<tr>
|
||||
<th>特产省份<font color='red'>*</font>:</th>
|
||||
<td>
|
||||
<select name="provId" id="provId" class="ipt" >
|
||||
<option value ='0'>--请选择--</option>
|
||||
|
||||
{volist name="areas" id="vv"}
|
||||
<option value="{$vv['areaId']}" >{$vv['areaName']}</option>
|
||||
{/volist}
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>分类图标<font color='red'>*</font>:</th>
|
||||
<td>
|
||||
<div id='catFilePicker'>上传图标</div><span id='uploadMsg'></span>
|
||||
<input type='hidden' id='catImg' name="catImg" class="ipt" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>预览图:</th>
|
||||
<td><div style="min-height:75px;" id="preview"></div></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>是否热门:</th>
|
||||
<td>
|
||||
<input type="checkbox" id="isHot" name="isHot" value="1" class="ipt" />
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
</form>
|
||||
</div>
|
||||
<!--end-->
|
||||
|
||||
|
||||
{/block}
|
||||
{block name="footer"}
|
||||
{include file="default/footer" /}
|
||||
{/block}
|
||||
{block name="js"}
|
||||
<!--mark 20180518-->
|
||||
<script type='text/javascript' src='__STATIC__/plugins/webuploader/webuploader.js?v={$v}'></script>
|
||||
<script type="text/javascript" src="__STATIC__/plugins/validator/jquery.validator.min.js?v={$v}"></script>
|
||||
<!--end-->
|
||||
<script type='text/javascript' src='__STYLE__/shops/shopcats/shopcats.js?v={$v}'></script>
|
||||
{/block}
|
48
hyhproject/home/view/default/shops/shopcats/php/get.php
Executable file
48
hyhproject/home/view/default/shops/shopcats/php/get.php
Executable file
@ -0,0 +1,48 @@
|
||||
<?php
|
||||
function gmt_iso8601($time) {
|
||||
$dtStr = date("c", $time);
|
||||
$mydatetime = new DateTime($dtStr);
|
||||
$expiration = $mydatetime->format(DateTime::ISO8601);
|
||||
$pos = strpos($expiration, '+');
|
||||
$expiration = substr($expiration, 0, $pos);
|
||||
return $expiration."Z";
|
||||
}
|
||||
|
||||
$id= 'LTAIOUxnwu01rA9g';
|
||||
$key= 'k0eigaxy8Gnz2V6AwcMNmwMSbQXsCf';
|
||||
$host = 'http://dianshanglian.oss-cn-beijing.aliyuncs.com';
|
||||
|
||||
$now = time();
|
||||
$expire = 30; //设置该policy超时时间是10s. 即这个policy过了这个有效时间,将不能访问
|
||||
$end = $now + $expire;
|
||||
$expiration = gmt_iso8601($end);
|
||||
$save_dir = $_GET['dir'];
|
||||
$dir = 'upload/'.$save_dir."/".date('Y-m').'/';
|
||||
|
||||
//最大文件大小.用户可以自己设置
|
||||
$condition = array(0=>'content-length-range', 1=>0, 2=>1048576000);
|
||||
$conditions[] = $condition;
|
||||
|
||||
//表示用户上传的数据,必须是以$dir开始, 不然上传会失败,这一步不是必须项,只是为了安全起见,防止用户通过policy上传到别人的目录
|
||||
$start = array(0=>'starts-with', 1=>'$key', 2=>$dir);
|
||||
$conditions[] = $start;
|
||||
|
||||
|
||||
$arr = array('expiration'=>$expiration,'conditions'=>$conditions);
|
||||
//echo json_encode($arr);
|
||||
//return;
|
||||
$policy = json_encode($arr);
|
||||
$base64_policy = base64_encode($policy);
|
||||
$string_to_sign = $base64_policy;
|
||||
$signature = base64_encode(hash_hmac('sha1', $string_to_sign, $key, true));
|
||||
|
||||
$response = array();
|
||||
$response['accessid'] = $id;
|
||||
$response['host'] = $host;
|
||||
$response['policy'] = $base64_policy;
|
||||
$response['signature'] = $signature;
|
||||
$response['expire'] = $end;
|
||||
//这个参数是设置用户上传指定的前缀
|
||||
$response['dir'] = $dir;
|
||||
echo json_encode($response);
|
||||
?>
|
401
hyhproject/home/view/default/shops/shopcats/shopcats webuploader╔╧┤лoss.js
Executable file
401
hyhproject/home/view/default/shops/shopcats/shopcats webuploader╔╧┤лoss.js
Executable file
@ -0,0 +1,401 @@
|
||||
function addCat(obj,p,catNo){
|
||||
var html = new Array();
|
||||
if(typeof(obj)=="number"){
|
||||
$("#cat_list_tab").append($("#cat_p_tr").html());
|
||||
}else{
|
||||
var className = (p==0)?"tr_c_new":"tr_"+catNo+" tr_0";
|
||||
var gettpl = $("#cat_c_tr").html();
|
||||
laytpl(gettpl).render({"className":className,"p":p}, function(html){
|
||||
$(obj).parent().parent().parent().append(html);
|
||||
});
|
||||
}
|
||||
$('.wst-shop-but').show();
|
||||
}
|
||||
|
||||
function delCatObj(obj,vk){
|
||||
if(vk==1){
|
||||
$(obj).parent().parent().parent().remove();
|
||||
}else{
|
||||
$(obj).parent().parent().remove();
|
||||
}
|
||||
if($(".tr_0").size()==0 && $(".tbody_new").size()==0)$('.wst-shop-but').hide();
|
||||
}
|
||||
|
||||
function treeCatOpen(obj,id){
|
||||
if( $(obj).attr('class').indexOf('active') > -1 ){
|
||||
$(obj).removeClass('active');
|
||||
$(obj).html('<img class="wst-lfloat" style="margin-top:-3px;" src="'+WST.conf.ROOT+'/hyhproject/home/view/default/img/seller_icon_sq.png">');
|
||||
$('.tree_'+id).hide();
|
||||
}else{
|
||||
$(obj).addClass('active');
|
||||
$(obj).html('<img class="wst-lfloat" style="margin-top:-3px;" src="'+WST.conf.ROOT+'/hyhproject/home/view/default/img/seller_icon_zk.png">');
|
||||
$('.tree_'+id).show();
|
||||
}
|
||||
}
|
||||
|
||||
function delCat(id){
|
||||
var box = WST.confirm({content:"您确定要删除该商品分类吗?",yes:function(){
|
||||
var loading = WST.msg('正在提交数据,请稍后...', {icon: 16,time:60000});
|
||||
$.post(WST.U('home/shopcats/del'),{id:id},function(data,textStatus){
|
||||
layer.close(loading);
|
||||
var json = WST.toJson(data);
|
||||
if(json.status=='1'){
|
||||
WST.msg("操作成功",{icon:1});
|
||||
layer.close(box);
|
||||
location.reload();
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2});
|
||||
}
|
||||
});
|
||||
}});
|
||||
}
|
||||
|
||||
|
||||
function batchSaveCats(){
|
||||
var params = {};
|
||||
var fristNo = 0;
|
||||
var secondNo = 0;
|
||||
$(".tbody_new").each(function(){
|
||||
secondNo = 0;
|
||||
var pobj = $(this).find(".tr_new");
|
||||
params['catName_'+fristNo] = $.trim(pobj.find(".catname").val());
|
||||
if(params['catName_'+fristNo]==''){
|
||||
WST.msg('请输入商品分类名称!', {icon: 5});
|
||||
return;
|
||||
}
|
||||
params['catSort_'+fristNo] = pobj.find(".catsort").val();
|
||||
params['catShow_'+fristNo] = pobj.find(".catshow").prop("checked")?1:0
|
||||
$(this).find(".tr_c_new").each(function(){
|
||||
params['catId_'+fristNo+'_'+secondNo] = fristNo;
|
||||
params['catName_'+fristNo+'_'+secondNo] = $.trim($(this).find(".catname").val());
|
||||
if(params['catName_'+fristNo+'_'+secondNo]==''){
|
||||
WST.msg('请输入商品分类名称!', {icon: 5});
|
||||
return;
|
||||
}
|
||||
params['catSort_'+fristNo+'_'+secondNo] = $(this).find(".catsort").val();
|
||||
params['catShow_'+fristNo+'_'+secondNo] = $(this).find(".catshow").prop("checked")?1:0
|
||||
params['catSecondNo_'+fristNo] = ++secondNo;
|
||||
});
|
||||
params['fristNo'] = ++fristNo;
|
||||
});
|
||||
var otherNo = 0;
|
||||
$(".tr_0").each(function(){
|
||||
params['catId_o_'+otherNo] = $(this).attr('catId');
|
||||
params['catName_o_'+otherNo] = $.trim($(this).find(".catname").val());
|
||||
if(params['catName_o_'+otherNo]==''){
|
||||
WST.msg('请输入商品分类名称!', {icon: 5});
|
||||
return;
|
||||
}
|
||||
params['catSort_o_'+otherNo] = $(this).find(".catsort").val();
|
||||
params['catShow_o_'+otherNo] = $(this).find(".catshow").prop("checked")?1:0;
|
||||
params['otherNo'] = ++otherNo;
|
||||
});
|
||||
$.post(WST.U('home/shopcats/batchSaveCats'),params,function(data,textStatus){
|
||||
var json = WST.toJson(data);
|
||||
if(json.status==1){
|
||||
WST.msg('新增成功!', {icon: 1,time:500},function(){
|
||||
location.reload();
|
||||
});
|
||||
}else{
|
||||
WST.msg('新增失败!', {icon: 5});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function editCatName(obj){
|
||||
$.post(WST.U('home/shopcats/editName'),{"id":$(obj).attr('dataId'),"catName":obj.value},function(data,textStatus){
|
||||
var json = WST.toJson(data);
|
||||
if(json.status=='1'){
|
||||
WST.msg('操作成功!',{icon: 1,time:500});
|
||||
}else{
|
||||
WST.msg('操作失败!', {icon: 5});
|
||||
}
|
||||
});
|
||||
}
|
||||
function editCatSort(obj){
|
||||
$.post(WST.U('home/shopcats/editSort'),{"id":$(obj).attr('dataId'),"catSort":obj.value},function(data,textStatus){
|
||||
var json = WST.toJson(data);
|
||||
if(json.status=='1'){
|
||||
WST.msg('操作成功!',{icon: 1,time:500});
|
||||
}else{
|
||||
WST.msg('操作失败!', {icon: 5});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function changeCatStatus(isShow,id,pid){
|
||||
var params = {};
|
||||
params.id = id;
|
||||
params.isShow = isShow;
|
||||
params.pid = pid;
|
||||
$.post(WST.U('home/shopcats/changeCatStatus'),params,function(data,textStatus){
|
||||
location.reload();
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//mark 修改特产省份 20180518 by zll
|
||||
var isInitUpload = false;
|
||||
function setSpecial(catId,provId,catImg,isHot){
|
||||
if(provId>0)$('#provId').val(provId);
|
||||
if(catImg !=''){
|
||||
$('#preview').html('<img src="'+WST.conf.IMGURL+'/'+catImg+'" height="75px" />');
|
||||
$('#catImg').val(catImg);
|
||||
}else{
|
||||
$('#preview').html('');
|
||||
$('#catImg').val('');
|
||||
};
|
||||
(isHot==1)?$('#isHot').prop('checked',true):$('#isHot').prop('checked',false);
|
||||
if(!isInitUpload)initUpload();
|
||||
var box = layer.open({
|
||||
type:1,
|
||||
title:'设置特产省份',
|
||||
btn:['设置','消除特产','取消'],
|
||||
content:$('#shopcatsBox'),
|
||||
area:['400px','500px'],
|
||||
|
||||
yes:function(){
|
||||
var params = WST.getParams('.ipt');
|
||||
params.provName = $('#provId option:selected').text();
|
||||
params.catId = catId;
|
||||
if(params.provId == '0'){
|
||||
layer.msg('请选择省份');
|
||||
return false;
|
||||
}
|
||||
if(params.catImg==''){
|
||||
layer.msg('请选择图片');
|
||||
return false;
|
||||
}
|
||||
$.post(WST.U('home/shopcats/setSpecial'),params,function(data){
|
||||
var json = WST.toJson(data);
|
||||
if(json.status == '1'){
|
||||
WST.msg(json.msg,{icon:1});
|
||||
layer.close(box);
|
||||
window.parent.location.reload();
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2})
|
||||
}
|
||||
});
|
||||
},
|
||||
btn2:function(){
|
||||
var params = {};
|
||||
params.catId = catId;
|
||||
params.provName='';
|
||||
params.provId = '0';
|
||||
params.isHot = '0';
|
||||
params.catImg = '';
|
||||
$.post(WST.U('home/shopcats/setSpecial'),params,function(data){
|
||||
var json = WST.toJson(data);
|
||||
if(json.status == '1'){
|
||||
WST.msg(json.msg,{icon:1});
|
||||
window.location.reload();
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2})
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
});
|
||||
}
|
||||
// function initUpload(){
|
||||
// isInitUpload = true;
|
||||
// //文件上传
|
||||
// WST.upload({
|
||||
// pick:'#catFilePicker',
|
||||
// formData: {dir:'shopcats'},
|
||||
// accept: {extensions: 'gif,jpg,jpeg,png',mimeTypes: 'image/jpg,image/jpeg,image/png,image/gif'},
|
||||
// callback:function(f){
|
||||
// var json = WST.toJson(f);
|
||||
// if(json.status==1){
|
||||
// $('#uploadMsg').empty().hide();
|
||||
// //将上传的图片路径赋给全局变量
|
||||
// $('#catImg').val(json.savePath+json.thumb);
|
||||
// $('#preview').html('<img src="'+WST.conf.ROOT+'/'+json.savePath+json.thumb+'" height="75" />');
|
||||
// }else{
|
||||
// WST.msg(json.msg,{icon:2});
|
||||
// }
|
||||
// },
|
||||
// progress:function(rate){
|
||||
// $('#uploadMsg').show().html('已上传'+rate+"%");
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
accessid = '';
|
||||
accesskey = '';
|
||||
host = '';
|
||||
policyBase64 = '';
|
||||
signature = '';
|
||||
callbackbody = '';
|
||||
filename = '';
|
||||
key = '';
|
||||
expire = 0;
|
||||
g_object_name = '';
|
||||
g_object_name_type = '';
|
||||
now = timestamp = Date.parse(new Date()) / 1000;
|
||||
dir = 'test';
|
||||
|
||||
function send_request()
|
||||
{
|
||||
var xmlhttp = null;
|
||||
if (window.XMLHttpRequest)
|
||||
{
|
||||
xmlhttp=new XMLHttpRequest();
|
||||
}
|
||||
else if (window.ActiveXObject)
|
||||
{
|
||||
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
|
||||
}
|
||||
|
||||
if (xmlhttp!=null)
|
||||
{
|
||||
// serverUrl = './php/get.php?dir='+dir
|
||||
xmlhttp.open( "GET", "http://localhost/oss/get.php?dir="+dir, false );
|
||||
xmlhttp.send( null );
|
||||
return xmlhttp.responseText
|
||||
}
|
||||
else
|
||||
{
|
||||
alert("Your browser does not support XMLHTTP.");
|
||||
}
|
||||
};
|
||||
|
||||
// function check_object_radio() {
|
||||
// var tt = document.getElementsByName('myradio');
|
||||
// for (var i = 0; i < tt.length ; i++ )
|
||||
// {
|
||||
// if(tt[i].checked)
|
||||
// {
|
||||
// g_object_name_type = tt[i].value;
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
function get_signature()
|
||||
{
|
||||
//可以判断当前expire是否超过了当前时间,如果超过了当前时间,就重新取一下.3s 做为缓冲
|
||||
now = timestamp = Date.parse(new Date()) / 1000;
|
||||
if (expire < now + 3)
|
||||
{
|
||||
body = send_request();
|
||||
var obj = eval ("(" + body + ")");
|
||||
host = obj['host']
|
||||
policyBase64 = obj['policy']
|
||||
accessid = obj['accessid']
|
||||
signature = obj['signature']
|
||||
expire = parseInt(obj['expire'])
|
||||
callbackbody = obj['callback']
|
||||
key = obj['dir']
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
||||
function random_string(len) {
|
||||
len = len || 32;
|
||||
var chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678';
|
||||
var maxPos = chars.length;
|
||||
var pwd = '';
|
||||
for (i = 0; i < len; i++) {
|
||||
pwd += chars.charAt(Math.floor(Math.random() * maxPos));
|
||||
}
|
||||
return pwd;
|
||||
}
|
||||
|
||||
function get_suffix(filename) {
|
||||
pos = filename.lastIndexOf('.')
|
||||
suffix = ''
|
||||
if (pos != -1) {
|
||||
suffix = filename.substring(pos)
|
||||
}
|
||||
return suffix;
|
||||
}
|
||||
|
||||
function calculate_object_name(filename)
|
||||
{
|
||||
|
||||
suffix = get_suffix(filename);
|
||||
g_object_name = key + random_string(10) + suffix;
|
||||
return '';
|
||||
}
|
||||
|
||||
function get_uploaded_object_name(filename)
|
||||
{
|
||||
|
||||
return g_object_name;
|
||||
|
||||
}
|
||||
|
||||
function set_upload_param(up, filename, ret)
|
||||
{
|
||||
if (ret == false)
|
||||
{
|
||||
ret = get_signature();
|
||||
}
|
||||
g_object_name = key;
|
||||
if (filename != '') {
|
||||
suffix = get_suffix(filename)
|
||||
calculate_object_name(filename)
|
||||
}
|
||||
new_multipart_params = {
|
||||
'key' : g_object_name,
|
||||
'policy': policyBase64,
|
||||
'OSSAccessKeyId':accessid ,
|
||||
// 'success_action_status' : '200', //让服务端返回200,不然,默认会返回204
|
||||
'callback' : callbackbody,
|
||||
'signature': signature,
|
||||
};
|
||||
up.option('server',host);
|
||||
up.option('formData',new_multipart_params);
|
||||
console.log(up.option());
|
||||
up.upload();
|
||||
}
|
||||
function initUpload(){
|
||||
|
||||
isInitUpload = true;
|
||||
//文件上传
|
||||
uploader = new WebUploader.create({
|
||||
pick:'#catFilePicker',
|
||||
auto: true,
|
||||
swf: WST.conf.ROOT +'/plugins/webuploader/Uploader.swf',
|
||||
server:'http://heyuanhui.oss-cn-qingdao.aliyuncs.com',
|
||||
accept: {extensions: 'gif,jpg,jpeg,png',mimeTypes: 'image/jpg,image/jpeg,image/png,image/gif'},
|
||||
|
||||
});
|
||||
uploader.on('beforeFileQueued',function(file){
|
||||
set_upload_param(uploader,'',false);
|
||||
});
|
||||
// uploader.on('uploadBeforeSend', function(obj,data, headers) {
|
||||
// // console.log(obj.file);
|
||||
// set_upload_param(uploader,obj.file.name,true);
|
||||
|
||||
// });
|
||||
uploader.on('uploadStart',function(file){
|
||||
set_upload_param(uploader,file.name,true);
|
||||
});
|
||||
uploader.on('uploadSuccess', function(file,response) {
|
||||
console.log(response);
|
||||
|
||||
pic_name = get_uploaded_object_name(file.name)
|
||||
console.log(pic_name);
|
||||
$('#uploadMsg').empty().hide();
|
||||
//将上传的图片路径赋给全局变量
|
||||
$('#catImg').val(pic_name);
|
||||
$('#preview').html('<img src="http://img.juzi199.com/'+pic_name+'" height="75"/>');
|
||||
|
||||
});
|
||||
uploader.on('uploadError', function( file ) {
|
||||
console.log(2222);
|
||||
});
|
||||
uploader.on( 'uploadProgress', function( file, percentage ) {
|
||||
// console.log(file);
|
||||
rate = percentage.toFixed(2)*100;
|
||||
$('#uploadMsg').show().html('已上传'+rate+"%");
|
||||
});
|
||||
}
|
||||
|
||||
//end
|
228
hyhproject/home/view/default/shops/shopcats/shopcats.js
Executable file
228
hyhproject/home/view/default/shops/shopcats/shopcats.js
Executable file
@ -0,0 +1,228 @@
|
||||
function addCat(obj,p,catNo){
|
||||
var html = new Array();
|
||||
if(typeof(obj)=="number"){
|
||||
$("#cat_list_tab").append($("#cat_p_tr").html());
|
||||
}else{
|
||||
var className = (p==0)?"tr_c_new":"tr_"+catNo+" tr_0";
|
||||
var gettpl = $("#cat_c_tr").html();
|
||||
laytpl(gettpl).render({"className":className,"p":p}, function(html){
|
||||
$(obj).parent().parent().parent().append(html);
|
||||
});
|
||||
}
|
||||
$('.wst-shop-but').show();
|
||||
}
|
||||
|
||||
function delCatObj(obj,vk){
|
||||
if(vk==1){
|
||||
$(obj).parent().parent().parent().remove();
|
||||
}else{
|
||||
$(obj).parent().parent().remove();
|
||||
}
|
||||
if($(".tr_0").size()==0 && $(".tbody_new").size()==0)$('.wst-shop-but').hide();
|
||||
}
|
||||
|
||||
function treeCatOpen(obj,id){
|
||||
if( $(obj).attr('class').indexOf('active') > -1 ){
|
||||
$(obj).removeClass('active');
|
||||
$(obj).html('<img class="wst-lfloat" style="margin-top:-3px;" src="'+WST.conf.ROOT+'/hyhproject/home/view/default/img/seller_icon_sq.png">');
|
||||
$('.tree_'+id).hide();
|
||||
}else{
|
||||
$(obj).addClass('active');
|
||||
$(obj).html('<img class="wst-lfloat" style="margin-top:-3px;" src="'+WST.conf.ROOT+'/hyhproject/home/view/default/img/seller_icon_zk.png">');
|
||||
$('.tree_'+id).show();
|
||||
}
|
||||
}
|
||||
|
||||
function delCat(id){
|
||||
var box = WST.confirm({content:"您确定要删除该商品分类吗?",yes:function(){
|
||||
var loading = WST.msg('正在提交数据,请稍后...', {icon: 16,time:60000});
|
||||
$.post(WST.U('home/shopcats/del'),{id:id},function(data,textStatus){
|
||||
layer.close(loading);
|
||||
var json = WST.toJson(data);
|
||||
if(json.status=='1'){
|
||||
WST.msg("操作成功",{icon:1});
|
||||
layer.close(box);
|
||||
location.reload();
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2});
|
||||
}
|
||||
});
|
||||
}});
|
||||
}
|
||||
|
||||
|
||||
function batchSaveCats(){
|
||||
var params = {};
|
||||
var fristNo = 0;
|
||||
var secondNo = 0;
|
||||
$(".tbody_new").each(function(){
|
||||
secondNo = 0;
|
||||
var pobj = $(this).find(".tr_new");
|
||||
params['catName_'+fristNo] = $.trim(pobj.find(".catname").val());
|
||||
if(params['catName_'+fristNo]==''){
|
||||
WST.msg('请输入商品分类名称!', {icon: 5});
|
||||
return;
|
||||
}
|
||||
params['catSort_'+fristNo] = pobj.find(".catsort").val();
|
||||
params['catShow_'+fristNo] = pobj.find(".catshow").prop("checked")?1:0
|
||||
$(this).find(".tr_c_new").each(function(){
|
||||
params['catId_'+fristNo+'_'+secondNo] = fristNo;
|
||||
params['catName_'+fristNo+'_'+secondNo] = $.trim($(this).find(".catname").val());
|
||||
if(params['catName_'+fristNo+'_'+secondNo]==''){
|
||||
WST.msg('请输入商品分类名称!', {icon: 5});
|
||||
return;
|
||||
}
|
||||
params['catSort_'+fristNo+'_'+secondNo] = $(this).find(".catsort").val();
|
||||
params['catShow_'+fristNo+'_'+secondNo] = $(this).find(".catshow").prop("checked")?1:0
|
||||
params['catSecondNo_'+fristNo] = ++secondNo;
|
||||
});
|
||||
params['fristNo'] = ++fristNo;
|
||||
});
|
||||
var otherNo = 0;
|
||||
$(".tr_0").each(function(){
|
||||
params['catId_o_'+otherNo] = $(this).attr('catId');
|
||||
params['catName_o_'+otherNo] = $.trim($(this).find(".catname").val());
|
||||
if(params['catName_o_'+otherNo]==''){
|
||||
WST.msg('请输入商品分类名称!', {icon: 5});
|
||||
return;
|
||||
}
|
||||
params['catSort_o_'+otherNo] = $(this).find(".catsort").val();
|
||||
params['catShow_o_'+otherNo] = $(this).find(".catshow").prop("checked")?1:0;
|
||||
params['otherNo'] = ++otherNo;
|
||||
});
|
||||
$.post(WST.U('home/shopcats/batchSaveCats'),params,function(data,textStatus){
|
||||
var json = WST.toJson(data);
|
||||
if(json.status==1){
|
||||
WST.msg('新增成功!', {icon: 1,time:500},function(){
|
||||
location.reload();
|
||||
});
|
||||
}else{
|
||||
WST.msg('新增失败!', {icon: 5});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
function editCatName(obj){
|
||||
$.post(WST.U('home/shopcats/editName'),{"id":$(obj).attr('dataId'),"catName":obj.value},function(data,textStatus){
|
||||
var json = WST.toJson(data);
|
||||
if(json.status=='1'){
|
||||
WST.msg('操作成功!',{icon: 1,time:500});
|
||||
}else{
|
||||
WST.msg('操作失败!', {icon: 5});
|
||||
}
|
||||
});
|
||||
}
|
||||
function editCatSort(obj){
|
||||
$.post(WST.U('home/shopcats/editSort'),{"id":$(obj).attr('dataId'),"catSort":obj.value},function(data,textStatus){
|
||||
var json = WST.toJson(data);
|
||||
if(json.status=='1'){
|
||||
WST.msg('操作成功!',{icon: 1,time:500});
|
||||
}else{
|
||||
WST.msg('操作失败!', {icon: 5});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function changeCatStatus(isShow,id,pid){
|
||||
var params = {};
|
||||
params.id = id;
|
||||
params.isShow = isShow;
|
||||
params.pid = pid;
|
||||
$.post(WST.U('home/shopcats/changeCatStatus'),params,function(data,textStatus){
|
||||
location.reload();
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//mark 修改特产省份 20180518 by zll
|
||||
var isInitUpload = false;
|
||||
function setSpecial(catId,provId,catImg,isHot){
|
||||
if(provId>0)$('#provId').val(provId);
|
||||
if(catImg !=''){
|
||||
$('#preview').html('<img src="'+WST.conf.IMGURL+'/'+catImg+'" height="75px" />');
|
||||
$('#catImg').val(catImg);
|
||||
}else{
|
||||
$('#preview').html('');
|
||||
$('#catImg').val('');
|
||||
};
|
||||
(isHot==1)?$('#isHot').prop('checked',true):$('#isHot').prop('checked',false);
|
||||
if(!isInitUpload)initUpload();
|
||||
var box = layer.open({
|
||||
type:1,
|
||||
title:'设置特产省份',
|
||||
btn:['设置','消除特产','取消'],
|
||||
content:$('#shopcatsBox'),
|
||||
area:['400px','500px'],
|
||||
|
||||
yes:function(){
|
||||
var params = WST.getParams('.ipt');
|
||||
params.provName = $('#provId option:selected').text();
|
||||
params.catId = catId;
|
||||
if(params.provId == '0'){
|
||||
layer.msg('请选择省份');
|
||||
return false;
|
||||
}
|
||||
if(params.catImg==''){
|
||||
layer.msg('请选择图片');
|
||||
return false;
|
||||
}
|
||||
$.post(WST.U('home/shopcats/setSpecial'),params,function(data){
|
||||
var json = WST.toJson(data);
|
||||
if(json.status == '1'){
|
||||
WST.msg(json.msg,{icon:1});
|
||||
layer.close(box);
|
||||
window.parent.location.reload();
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2})
|
||||
}
|
||||
});
|
||||
},
|
||||
btn2:function(){
|
||||
var params = {};
|
||||
params.catId = catId;
|
||||
params.provName='';
|
||||
params.provId = '0';
|
||||
params.isHot = '0';
|
||||
params.catImg = '';
|
||||
$.post(WST.U('home/shopcats/setSpecial'),params,function(data){
|
||||
var json = WST.toJson(data);
|
||||
if(json.status == '1'){
|
||||
WST.msg(json.msg,{icon:1});
|
||||
window.location.reload();
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2})
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
});
|
||||
}
|
||||
function initUpload(){
|
||||
isInitUpload = true;
|
||||
//文件上传
|
||||
WST.upload({
|
||||
pick:'#catFilePicker',
|
||||
formData: {dir:'shopcats'},
|
||||
accept: {extensions: 'gif,jpg,jpeg,png',mimeTypes: 'image/jpg,image/jpeg,image/png,image/gif'},
|
||||
callback:function(f){
|
||||
var json = WST.toJson(f);
|
||||
if(json.status==1){
|
||||
$('#uploadMsg').empty().hide();
|
||||
//将上传的图片路径赋给全局变量
|
||||
$('#catImg').val(json.savePath+json.thumb);
|
||||
$('#preview').html('<img src="'+WST.conf.IMGURL+'/'+json.savePath+json.thumb+'" height="75" />');
|
||||
}else{
|
||||
WST.msg(json.msg,{icon:2});
|
||||
}
|
||||
},
|
||||
progress:function(rate){
|
||||
$('#uploadMsg').show().html('已上传'+rate+"%");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//end
|
Reference in New Issue
Block a user