update
This commit is contained in:
parent
8425aa4942
commit
2acbe56e21
|
|
@ -220,8 +220,72 @@ def userList():
|
|||
return public.getJson(data)
|
||||
|
||||
|
||||
def projectAdd():
|
||||
args = getArgs()
|
||||
if not 'name' in args:
|
||||
return 'project name missing'
|
||||
path = getServerDir() + '/bin/svnadmin'
|
||||
dest = getServerDir() + '/data/repositories/' + args['name']
|
||||
cmd = path + ' create ' + dest
|
||||
data = public.execShell(cmd)
|
||||
print data
|
||||
if data[0] == '':
|
||||
return 'ok'
|
||||
return 'fail'
|
||||
|
||||
|
||||
def projectDel():
|
||||
args = getArgs()
|
||||
if not 'name' in args:
|
||||
return 'project name missing'
|
||||
|
||||
dest = getServerDir() + '/data/repositories/' + args['name']
|
||||
cmd = 'rm -rf ' + dest
|
||||
data = public.execShell(cmd)
|
||||
if data[0] == '':
|
||||
return 'ok'
|
||||
return 'fail'
|
||||
|
||||
|
||||
def projectList():
|
||||
return []
|
||||
import math
|
||||
args = getArgs()
|
||||
|
||||
path = getServerDir() + '/data/repositories'
|
||||
dlist = []
|
||||
data = {}
|
||||
if os.path.exists(path):
|
||||
for filename in os.listdir(path):
|
||||
tmp = {}
|
||||
filePath = path + '/' + filename
|
||||
if os.path.isdir(filePath):
|
||||
tmp['name'] = filename
|
||||
verPath = filePath + '/format'
|
||||
if os.path.exists(verPath):
|
||||
ver = public.readFile(verPath).strip()
|
||||
tmp['ver'] = ver
|
||||
dlist.append(tmp)
|
||||
|
||||
page = 1
|
||||
page_size = 10
|
||||
if 'page' in args:
|
||||
page = int(args['page'])
|
||||
|
||||
if 'page_size' in args:
|
||||
page_size = int(args['page_size'])
|
||||
|
||||
dlist_sum = len(dlist)
|
||||
page_info = {'count': dlist_sum, 'p': page,
|
||||
'row': 10, 'tojs': 'csvnProjectList'}
|
||||
data['list'] = public.getPage(page_info)
|
||||
data['page'] = page
|
||||
data['page_size'] = page_size
|
||||
data['page_count'] = int(math.ceil(dlist_sum / page_size))
|
||||
|
||||
start = (page - 1) * page_size
|
||||
data['data'] = dlist[start:start + page_size]
|
||||
|
||||
return public.getJson(data)
|
||||
|
||||
if __name__ == "__main__":
|
||||
func = sys.argv[1]
|
||||
|
|
@ -255,5 +319,9 @@ if __name__ == "__main__":
|
|||
print userDel()
|
||||
elif func == 'project_list':
|
||||
print projectList()
|
||||
elif func == 'project_del':
|
||||
print projectDel()
|
||||
elif func == 'project_add':
|
||||
print projectAdd()
|
||||
else:
|
||||
print 'fail'
|
||||
|
|
|
|||
|
|
@ -167,25 +167,27 @@ function csvnProjectList(page){
|
|||
return;
|
||||
}
|
||||
|
||||
var rdata = $.parseJSON(data.data);
|
||||
var rdata = $.parseJSON($.trim(data.data));
|
||||
// console.log(rdata);
|
||||
|
||||
content = '<div class="finduser"><input class="bt-input-text mr5" type="text" placeholder="查找项目" id="disable_function_val" style="height: 28px; border-radius: 3px;width: 410px;">';
|
||||
content = '<div class="finduser"><input class="bt-input-text mr5" type="text" placeholder="查找项目" id="disable_function_val" style="height: 28px; border-radius: 3px;width: 505px;">';
|
||||
content += '<button class="btn btn-success btn-sm">查找</button></div>';
|
||||
|
||||
content += '<div class="divtable" style="margin-top:5px;"><table class="table table-hover" width="100%" cellspacing="0" cellpadding="0" border="0">';
|
||||
content += '<thead><tr>';
|
||||
content += '<th>项目名</th>';
|
||||
content += '<th>操作</th>';
|
||||
content += '<th>当前版本</th>';
|
||||
content += '<th>操作(<a class="btlink" onclick="csvnAddProject();">添加</a>)</th>';
|
||||
content += '</tr></thead>';
|
||||
|
||||
content += '<tbody>';
|
||||
|
||||
ulist = rdata.data;
|
||||
for (i in ulist){
|
||||
content += '<tr><td>'+ulist[i]+'</td><td>'+
|
||||
'<a class="btlink" onclick="csvnDelUser(\''+ulist[i]+'\')">删除</a>|' +
|
||||
'<a class="btlink" onclick="csvnModUser(\''+ulist[i]+'\')">改密</a></td></tr>';
|
||||
content += '<tr><td>'+ulist[i]['name']+'</td>'+
|
||||
'<td>'+ulist[i]['ver']+'</td><td>'+
|
||||
'<a class="btlink" onclick="csvnDelProject(\''+ulist[i]['name']+'\')">删除</a>' +
|
||||
'</td></tr>';
|
||||
}
|
||||
|
||||
content += '</tbody>';
|
||||
|
|
@ -196,7 +198,93 @@ function csvnProjectList(page){
|
|||
page += '</div></ul></div>';
|
||||
|
||||
content += page;
|
||||
|
||||
$(".soft-man-con").html(content);
|
||||
},'json');
|
||||
}
|
||||
|
||||
function csvnDelProject(name){
|
||||
var loadOpen = layer.open({
|
||||
type: 1,
|
||||
title: '删除用户',
|
||||
area: '350px',
|
||||
content:"<div class='bt-form pd20 pb70 c6'>\
|
||||
<div class='version line'>你要确认要删除"+ name + "账户?</div>\
|
||||
<div class='bt-form-submit-btn'>\
|
||||
<button type='button' id='csvn_del_close' class='btn btn-danger btn-sm btn-title'>关闭</button>\
|
||||
<button type='button' id='csvn_del_ok' class='btn btn-success btn-sm btn-title bi-btn'>确认</button>\
|
||||
</div>\
|
||||
</div>"
|
||||
});
|
||||
|
||||
$('#csvn_del_close').click(function(){
|
||||
layer.close(loadOpen);
|
||||
});
|
||||
|
||||
$('#csvn_del_ok').click(function(){
|
||||
_data = {};
|
||||
_data['name'] = name;
|
||||
var loadT = layer.msg('正在获取...', { icon: 16, time: 0, shade: 0.3 });
|
||||
$.post('/plugins/run', {name:'csvn', func:'project_del', args:JSON.stringify(_data)}, function(data) {
|
||||
layer.close(loadT);
|
||||
if (!data.status){
|
||||
layer.msg(data.data,{icon:0,time:2000,shade: [0.3, '#000']});
|
||||
return;
|
||||
}
|
||||
|
||||
if (data.data !='ok'){
|
||||
layer.msg(data.data,{icon:2,time:2000,shade: [0.3, '#000']});
|
||||
return;
|
||||
}
|
||||
|
||||
csvnProjectList();
|
||||
layer.close(loadOpen);
|
||||
layer.msg("删除成功!",{icon:1,time:3000,shade: [0.3, '#000']});
|
||||
},'json');
|
||||
});
|
||||
}
|
||||
|
||||
function csvnAddProject(){
|
||||
|
||||
var loadOpen = layer.open({
|
||||
type: 1,
|
||||
title: '添加项目',
|
||||
area: '240px',
|
||||
content:"<div class='bt-form pd20 pb70 c6'>\
|
||||
<div class='version line'>\
|
||||
<div><input class='bt-input-text mr5 outline_no' type='text' id='csvn_name' name='username' style='height: 28px; border-radius: 3px;width: 200px;' placeholder='输入项目名'></div>\
|
||||
</div>\
|
||||
<div class='bt-form-submit-btn'>\
|
||||
<button type='button' id='csvn_project_close' class='btn btn-danger btn-sm btn-title'>关闭</button>\
|
||||
<button type='button' id='csvn_project_ok' class='btn btn-success btn-sm btn-title bi-btn'>确认</button>\
|
||||
</div>\
|
||||
</div>"
|
||||
});
|
||||
|
||||
$('#csvn_project_close').click(function(){
|
||||
layer.close(loadOpen);
|
||||
});
|
||||
|
||||
$('#csvn_project_ok').click(function(){
|
||||
_data = {};
|
||||
_data['name'] = $('#csvn_name').val();
|
||||
|
||||
var loadT = layer.msg('正在获取...', { icon: 16, time: 0, shade: 0.3 });
|
||||
$.post('/plugins/run', {name:'csvn', func:'project_add', args:JSON.stringify(_data)}, function(data) {
|
||||
layer.close(loadT);
|
||||
if (!data.status){
|
||||
layer.msg(data.data,{icon:0,time:2000,shade: [0.3, '#000']});
|
||||
return;
|
||||
}
|
||||
|
||||
if (data.data !='ok'){
|
||||
layer.msg(data.data,{icon:2,time:2000,shade: [0.3, '#000']});
|
||||
return;
|
||||
}
|
||||
|
||||
csvnProjectList();
|
||||
layer.close(loadOpen);
|
||||
layer.msg("操作成功!",{icon:1,time:3000,shade: [0.3, '#000']});
|
||||
},'json');
|
||||
});
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue