ftp基本ok

pull/109/head
Mr Chen 6 years ago
parent 9437e90678
commit bf5ddcab83
  1. 57
      plugins/pureftp/index.py
  2. 42
      plugins/pureftp/js/ftp.js

@ -208,6 +208,16 @@ def pftpMod(username, password):
return public.execShell(cmd) return public.execShell(cmd)
def pftpStop(username):
cmd = getServerDir() + '/bin/pure-pw usermod ' + username + ' -r 1'
return public.execShell(cmd)
def pftpStart(username):
cmd = getServerDir() + '/bin/pure-pw usermod ' + username + " -r ''"
return public.execShell(cmd)
def pftpReload(): def pftpReload():
public.execShell(getServerDir() + '/bin/pure-pw mkdb ' + public.execShell(getServerDir() + '/bin/pure-pw mkdb ' +
getServerDir() + '/etc/pureftpd.pdb') getServerDir() + '/etc/pureftpd.pdb')
@ -362,10 +372,51 @@ def modFtpPort():
restart() restart()
return 'ok' return 'ok'
except Exception as ex: except Exception as ex:
return str(ex) return str(ex)
def stopPort():
args = getArgs()
if not 'id' in args:
return 'id missing'
if not 'username' in args:
return 'username missing'
if not 'status' in args:
return 'status missing'
data = pftpStop(args['username'])
conn = pftpDB()
conn.where('id=?', (int(args['id']),)).save(
'status', (args['status'],))
if data[1] == '':
return 'ok'
return data[0]
def startPort():
args = getArgs()
if not 'id' in args:
return 'id missing'
if not 'username' in args:
return 'username missing'
if not 'status' in args:
return 'status missing'
data = pftpStart(args['username'])
conn = pftpDB()
conn.where('id=?', (int(args['id']),)).save(
'status', (args['status'],))
if data[1] == '':
return 'ok'
return data[0]
if __name__ == "__main__": if __name__ == "__main__":
func = sys.argv[1] func = sys.argv[1]
if func == 'status': if func == 'status':
@ -398,5 +449,9 @@ if __name__ == "__main__":
print modFtp() print modFtp()
elif func == 'mod_ftp_port': elif func == 'mod_ftp_port':
print modFtpPort() print modFtpPort()
elif func == 'stop_ftp':
print stopPort()
elif func == 'start_ftp':
print startPort()
else: else:
print 'error' print 'error'

@ -284,18 +284,18 @@ function ftpStop(id, username) {
if (index > 0) { if (index > 0) {
var loadT = layer.load({shade: true,shadeClose: false}); var loadT = layer.load({shade: true,shadeClose: false});
var data='id=' + id + '&username=' + username + '&status=0'; var data='id=' + id + '&username=' + username + '&status=0';
$.post('/ftp?action=SetStatus',data, function(rdata) { ftpPost('stop_ftp', data, function(data){
layer.close(loadT); layer.close(loadT);
if (rdata.status == true) { if (data.data == 'ok'){
layer.msg(rdata.msg, {icon: 1}); showMsg('启动成功!', function(){
getFtp(1); ftpList();
},{icon: 1});
} else { } else {
layer.msg(rdata.msg, {icon: 5}); layer.msg(data.data, {icon: 2});
} }
}); });
} else {
layer.closeAll();
} }
$('.layui-layer-close1').click();
}); });
} }
@ -304,17 +304,19 @@ function ftpStop(id, username) {
* @param {Number} id FTP的ID * @param {Number} id FTP的ID
* @param {String} username FTP用户名 * @param {String} username FTP用户名
*/ */
// function ftpStart(id, username) { function ftpStart(id, username) {
// var loadT = layer.load({shade: true,shadeClose: false}); var loadT = layer.load({shade: true,shadeClose: false});
// var data='id=' + id + '&username=' + username + '&status=1'; var data='id=' + id + '&username=' + username + '&status=1';
// $.post('/ftp?action=SetStatus',data, function(rdata) { ftpPost('start_ftp', data, function(data){
// layer.close(loadT); layer.close(loadT);
// if (rdata.status == true) { if (data.data == 'ok'){
// layer.msg(rdata.msg, {icon: 1}); showMsg('启动成功!', function(){
// getFtp(1); ftpList();
// } else { },{icon: 1});
// layer.msg(rdata.msg, {icon: 5}); } else {
// } layer.msg(data.data, {icon: 2});
// }); }
// }
});
}

Loading…
Cancel
Save