mirror of
https://github.com/aaPanel/aaPanel.git
synced 2026-09-21 08:57:43 +02:00
174 lines
7.2 KiB
HTML
174 lines
7.2 KiB
HTML
{% extends "layout.html" %}
|
|
|
|
{% block content %}
|
|
<div class="main-content pb55">
|
|
<div class="container-fluid">
|
|
<div class="pos-box bgw mtb15">
|
|
<div class="position f14 c9 pull-left">
|
|
<a class="plr10 c4" href="/">{{data['lan']['H1']}}</a>/<span class="plr10 c4">{{data['lan']['H2']}}</span>
|
|
</div>
|
|
<div class="search pull-right">
|
|
<form target="hid" onsubmit='ftp.get_list(1,$("#SearchValue").prop("value"))'>
|
|
<input type="text" id="SearchValue" class="ser-text pull-left" placeholder="{{data['lan']['SEARCH']}}" />
|
|
<button type="button" class="ser-sub pull-left" onclick='ftp.get_list(1,$("#SearchValue").prop("value"))'></button>
|
|
</form>
|
|
<iframe name='hid' id="hid" style="display:none"></iframe>
|
|
</div>
|
|
</div>
|
|
<div class="safe bgw mtb15 pd15">
|
|
<div class="info-title-tips">
|
|
<p><span class="glyphicon glyphicon-alert" style="color: #f39c12; margin-right: 10px;"></span>{{data['lan']['PS']}} ftp://{{session['address']}}:{{session['port']}}</p>
|
|
</div>
|
|
<button onclick="ftp.add_user()" class="btn btn-success btn-sm" type="button">{{data['lan']['BTN1']}}</button>
|
|
<button onclick="ftp.set_port()" class="btn btn-default btn-sm" type="button" style="margin-left:5px">{{data['lan']['BTN2']}}</button>
|
|
<span style="float:right">
|
|
<button batch="true" style="float: right;display: none;margin-left:10px;" onclick="ftp.batch_ftp('del');" class="btn btn-default btn-sm">{{data['lan']['BTN3']}}</button>
|
|
</span>
|
|
<div class="divtable mtb10">
|
|
<div class="tablescroll">
|
|
<table id="ftpData" class="table table-hover" style="min-width: 900px;border: 0 none;">
|
|
</table>
|
|
</div>
|
|
<div class="dataTables_paginate paging_bootstrap page">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|
|
|
|
{% block scripts %}
|
|
<script type="text/javascript">
|
|
|
|
var ftp = {
|
|
get_list:function(page,search){
|
|
if(page==undefined) page=1;
|
|
bt.ftp.get_list(page,search,function(rdata){
|
|
$('.dataTables_paginate').html(rdata.page);
|
|
var _tab = bt.render({
|
|
table:'#ftpData',
|
|
columns:[
|
|
{ field:'id',type:'checkbox',width:30},
|
|
{ field: 'name', title: lan.ftp.add_user,width:'20%'},
|
|
{ field: 'password',width:'15%', title: lan.ftp.add_pass,templet : function(item){
|
|
var _html = '<span class="password" data-pw="'+item.password+'">**********</span>';
|
|
_html += '<span onclick="bt.pub.show_hide_pass(this)" class="glyphicon glyphicon-eye-open cursor pw-ico" style="margin-left:10px"></span>';
|
|
_html += '<span class="ico-copy cursor btcopy" style="margin-left:10px" title="'+lan.ftp.copy+'" data-pw="'+item.password+'" onclick="bt.pub.copy_pass(\''+item.password+'\')"></span>';
|
|
return _html;
|
|
}},
|
|
{ field: 'status', title: lan.ftp.status,templet:function(item){
|
|
var _status = '<a href="javascript:;" title="'+lan.ftp.ftp_user+'"';
|
|
if(item.status=='1'){
|
|
_status+=' onclick="ftp.stop_user('+item.id+',\''+item.name+'\') " >';
|
|
_status+='<span style="color:#5CB85C">'+lan.ftp.start+' </span><span style="color:#5CB85C" class="glyphicon glyphicon-play"></span>';
|
|
}
|
|
else{
|
|
_status+=' onclick="ftp.start_user('+item.id+',\''+item.name+'\')"';
|
|
_status+='<span style="color:red">'+lan.ftp.stop+' </span><span style="color:red" class="glyphicon glyphicon-pause"></span>';
|
|
}
|
|
return _status;
|
|
},sort:function(){
|
|
ftp.get_list();
|
|
}},
|
|
{ field: 'path', title: lan.ftp.add_path,templet:function(item){
|
|
var _path = bt.format_path(item.path);
|
|
return '<a class="btlink" title="'+lan.ftp.open_path+'" href="javascript:openPath(\''+_path+'\');">'+_path+'</a>';
|
|
}},
|
|
{ field: 'ps', title: lan.ftp.add_ps,templet : function(item){
|
|
return "<span class='c9 input-edit' onclick=\"bt.pub.set_data_by_key('ftps','ps',this)\">"+item.ps+ "</span>";
|
|
}},
|
|
{ field: 'opt',width:130, title: lan.ftp.operate,align:'right',templet:function(item){
|
|
var option = "<a href=\"javascript:;\" class=\"btlink\" onclick=\"ftp.set_password("+item.id+",'"+item.name+"','"+item.password+"')\" title="+lan.ftp.change_pass+">"+lan.ftp.edit_pass+"</a> | ";
|
|
option += "<a href=\"javascript:;\" class=\"btlink\" onclick=\"ftp.del("+item.id+",'"+item.name+"')\" title="+lan.ftp.del_ftp_title+">"+lan.ftp.del+"</a>";
|
|
return option;
|
|
}},
|
|
],
|
|
data:rdata.data
|
|
})
|
|
})
|
|
},
|
|
batch_ftp:function(type,arr,result){
|
|
if(arr == undefined){
|
|
arr = [];
|
|
result = {count:0,error_list:[]};
|
|
$('input[type="checkbox"].check:checked').each(function(){
|
|
var _val = $(this).val();
|
|
if(!isNaN(_val)) arr.push($(this).parents('tr').data('item'));
|
|
})
|
|
bt.show_confirm(lan.ftp.del_all,"<a style='color:red;'>"+lan.get('del_all_ftp',[arr.length])+"</a>",function(){
|
|
bt.closeAll();
|
|
ftp.batch_ftp(type,arr,result);
|
|
});
|
|
return;
|
|
}
|
|
var item = arr[0];
|
|
switch(type){
|
|
case 'del':
|
|
if(arr.length<1){
|
|
ftp.get_list();
|
|
bt.msg({msg:lan.get('del_all_ftp_ok',[result.count]),icon:1,time:5000});
|
|
return;
|
|
}
|
|
bt.ftp.del(item.id,item.name,function(rdata){
|
|
if(rdata.status){
|
|
result.count+=1;
|
|
}else{
|
|
result.error_list.push({name:item.item,err_msg:rdata.msg});
|
|
}
|
|
arr.splice(0,1)
|
|
ftp.batch_ftp(type,arr,result);
|
|
})
|
|
break;
|
|
}
|
|
},
|
|
del:function(id,ftp_username){
|
|
bt.show_confirm(lan.public.del+"["+ftp_username+"]",lan.get('confirm_del',[ftp_username]),function(){
|
|
bt.ftp.del(id,ftp_username,function(rdata){
|
|
if(rdata.status) ftp.get_list();
|
|
bt.msg(rdata);
|
|
})
|
|
})
|
|
},
|
|
add_user:function(){
|
|
bt.ftp.add(function(rdata){
|
|
if(rdata.status) ftp.get_list();
|
|
})
|
|
},
|
|
set_password:function(id,name,password){
|
|
var bs = bt.ftp.set_password(function(rdata){
|
|
if(rdata.status) ftp.get_list();
|
|
})
|
|
$('.id'+bs).val(id);
|
|
$('.ftp_username'+bs).val(name);
|
|
$('.new_password'+bs).val(password);
|
|
},
|
|
set_port:function(){
|
|
var bs = bt.ftp.set_port(function(rdata){
|
|
if(rdata.status) ftp.get_list();
|
|
})
|
|
$('.port'+bs).val('{{session["port"]}}');
|
|
},
|
|
stop_user:function(id,username){
|
|
bt.confirm({msg:lan.ftp.stop_confirm.replace('{1}',username),title:lan.ftp.stop_title},function(index){
|
|
bt.ftp.set_status(id,username,0,function(rdata){
|
|
if(rdata.status) ftp.get_list();
|
|
})
|
|
})
|
|
},
|
|
start_user:function(id,username){
|
|
bt.ftp.set_status(id,username,1,function(rdata){
|
|
if(rdata.status) ftp.get_list();
|
|
})
|
|
}
|
|
|
|
}
|
|
bt.set_cookie('sites_path',"{{session['config']['sites_path']}}");
|
|
{% if not data['isSetup'] %}
|
|
layer.msg('{{data["lan"]["JS1"]}}<a href="/soft" style="color:#20a53a; float: right;">{{data["lan"]["JS2"]}}</a>',{icon:7,time:0,shade: [0.3, '#000']});
|
|
$(".layui-layer-shade").css("margin-left", "200px");
|
|
{% else %}
|
|
ftp.get_list();
|
|
{% endif %}
|
|
</script>
|
|
{% endblock %}
|