From 1c930b31d9e30c0cb803daff97c40118258fd34b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 10:52:08 +0800 Subject: [PATCH 01/28] bug fix --- webroot/AutoSa/templates/base.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/webroot/AutoSa/templates/base.html b/webroot/AutoSa/templates/base.html index 2b4b3b3bc..7519be27f 100644 --- a/webroot/AutoSa/templates/base.html +++ b/webroot/AutoSa/templates/base.html @@ -12,13 +12,14 @@ - + + From a5abd9d620edf21c3709bcda72a0ade51e09c5d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 11:26:38 +0800 Subject: [PATCH 02/28] del --- .idea/.name | 1 - .idea/encodings.xml | 5 - .idea/inspectionProfiles/Project_Default.xml | 7 - .../inspectionProfiles/profiles_settings.xml | 7 - .idea/jumpserver.iml | 9 - .idea/misc.xml | 5 - .idea/modules.xml | 9 - .idea/scopes/scope_settings.xml | 5 - .idea/vcs.xml | 7 - .idea/workspace.xml | 793 ------------------ webroot/AutoSa/static/js/main.js | 3 +- 11 files changed, 2 insertions(+), 849 deletions(-) delete mode 100644 .idea/.name delete mode 100644 .idea/encodings.xml delete mode 100644 .idea/inspectionProfiles/Project_Default.xml delete mode 100644 .idea/inspectionProfiles/profiles_settings.xml delete mode 100644 .idea/jumpserver.iml delete mode 100644 .idea/misc.xml delete mode 100644 .idea/modules.xml delete mode 100644 .idea/scopes/scope_settings.xml delete mode 100644 .idea/vcs.xml delete mode 100644 .idea/workspace.xml diff --git a/.idea/.name b/.idea/.name deleted file mode 100644 index 9d00477b6..000000000 --- a/.idea/.name +++ /dev/null @@ -1 +0,0 @@ -jumpserver \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml deleted file mode 100644 index 7c62b52a1..000000000 --- a/.idea/encodings.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml deleted file mode 100644 index 8766f794e..000000000 --- a/.idea/inspectionProfiles/Project_Default.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml deleted file mode 100644 index 3b312839b..000000000 --- a/.idea/inspectionProfiles/profiles_settings.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/jumpserver.iml b/.idea/jumpserver.iml deleted file mode 100644 index 9dcd47829..000000000 --- a/.idea/jumpserver.iml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index 0e219b1ba..000000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index c0087f33b..000000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/.idea/scopes/scope_settings.xml b/.idea/scopes/scope_settings.xml deleted file mode 100644 index 0d5175ca0..000000000 --- a/.idea/scopes/scope_settings.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml deleted file mode 100644 index ab55cf163..000000000 --- a/.idea/vcs.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/.idea/workspace.xml b/.idea/workspace.xml deleted file mode 100644 index 16dd6d723..000000000 --- a/.idea/workspace.xml +++ /dev/null @@ -1,793 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1410786645479 - 1410786645479 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/webroot/AutoSa/static/js/main.js b/webroot/AutoSa/static/js/main.js index 85e79246a..2a4ccb879 100644 --- a/webroot/AutoSa/static/js/main.js +++ b/webroot/AutoSa/static/js/main.js @@ -28,8 +28,9 @@ $.fn.webSocket = function(opt){ }; var init = function(){ + var node = $(this); message.id = genUid(); - message.filename = $this.attr('filename'); + message.filename = node.attr('filename'); var socket = io.connect('ws://172.10.10.9:3000'); //告诉服务器端有用户登录 From 1c4adc1e389958804bb53dbeea6ceccd83c779a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 14:12:17 +0800 Subject: [PATCH 03/28] bug fix --- webroot/AutoSa/static/js/main.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/webroot/AutoSa/static/js/main.js b/webroot/AutoSa/static/js/main.js index 2a4ccb879..ccc137cbe 100644 --- a/webroot/AutoSa/static/js/main.js +++ b/webroot/AutoSa/static/js/main.js @@ -27,8 +27,8 @@ $.fn.webSocket = function(opt){ return new Date().getTime()+""+Math.floor(Math.random()*899+100); }; - var init = function(){ - var node = $(this); + var init = function(e){ + var node = $(e.target); message.id = genUid(); message.filename = node.attr('filename'); @@ -39,8 +39,8 @@ $.fn.webSocket = function(opt){ window.console.log(obj.content); }); } - $this.on("click",function(){ - init(); + $this.on("click",function(e){ + init(e); }); } From 1c9359bb4cf9bfdb79465bb2f73f2576d279447f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 14:27:05 +0800 Subject: [PATCH 04/28] bug fix --- webroot/AutoSa/static/js/main.js | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/webroot/AutoSa/static/js/main.js b/webroot/AutoSa/static/js/main.js index ccc137cbe..fd765c7de 100644 --- a/webroot/AutoSa/static/js/main.js +++ b/webroot/AutoSa/static/js/main.js @@ -32,13 +32,24 @@ $.fn.webSocket = function(opt){ message.id = genUid(); message.filename = node.attr('filename'); + BootstrapDialog.show({message:'
'}); + var socket = io.connect('ws://172.10.10.9:3000'); + + //告诉服务器端有用户登录 socket.emit('login', {userid:message.id, filename:message.filename}); socket.on('message',function(obj){ - window.console.log(obj.content); + $('#log').append(this.escape(obj.content)); }); } + + var escape = function (html){ + var elem = document.createElement('div') + var txt = document.createTextNode(html) + elem.appendChild(txt) + return elem.innerHTML; + } $this.on("click",function(e){ init(e); }); From 0e3c79fb7966f216d05272f1545132caa5cbee86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 15:18:52 +0800 Subject: [PATCH 05/28] bug fix --- webroot/AutoSa/static/js/main.js | 26 +++++++++++++++----------- webroot/AutoSa/templates/logView.html | 2 +- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/webroot/AutoSa/static/js/main.js b/webroot/AutoSa/static/js/main.js index fd765c7de..a5b383bdf 100644 --- a/webroot/AutoSa/static/js/main.js +++ b/webroot/AutoSa/static/js/main.js @@ -28,20 +28,23 @@ $.fn.webSocket = function(opt){ }; var init = function(e){ + + var socket = io.connect('ws://172.10.10.9:3000'); var node = $(e.target); message.id = genUid(); message.filename = node.attr('filename'); - - BootstrapDialog.show({message:'
'}); - - var socket = io.connect('ws://172.10.10.9:3000'); - - - //告诉服务器端有用户登录 - socket.emit('login', {userid:message.id, filename:message.filename}); - socket.on('message',function(obj){ - $('#log').append(this.escape(obj.content)); - }); + BootstrapDialog.show({message:function(){ + var tag = $('
'); + //告诉服务器端有用户登录 + socket.emit('login', {userid:message.id, filename:message.filename}); + socket.on('message',function(obj){ + tag.append(this.escape(obj.content)); + }); + } , + title:'日志', + onhide:function(){ + socket.emit('disconnect'); + }}); } var escape = function (html){ @@ -52,6 +55,7 @@ $.fn.webSocket = function(opt){ } $this.on("click",function(e){ init(e); + return false; }); } diff --git a/webroot/AutoSa/templates/logView.html b/webroot/AutoSa/templates/logView.html index 109441073..51ea713b3 100644 --- a/webroot/AutoSa/templates/logView.html +++ b/webroot/AutoSa/templates/logView.html @@ -28,7 +28,7 @@ 统计 阻断 {% else %} - 监控 + 监控 命令统计 阻断 {% endif %} From 0560ccaf177ebb24743bce08ef14c73cc1b24079 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 15:33:41 +0800 Subject: [PATCH 06/28] bug fix' --- webroot/AutoSa/static/js/main.js | 13 +++++++------ webroot/AutoSa/templates/logView.html | 1 + 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/webroot/AutoSa/static/js/main.js b/webroot/AutoSa/static/js/main.js index a5b383bdf..6bc3aa386 100644 --- a/webroot/AutoSa/static/js/main.js +++ b/webroot/AutoSa/static/js/main.js @@ -34,6 +34,12 @@ $.fn.webSocket = function(opt){ message.id = genUid(); message.filename = node.attr('filename'); BootstrapDialog.show({message:function(){ + var escape = function (html){ + var elem = document.createElement('div') + var txt = document.createTextNode(html) + elem.appendChild(txt) + return elem.innerHTML; + } var tag = $('
'); //告诉服务器端有用户登录 socket.emit('login', {userid:message.id, filename:message.filename}); @@ -47,12 +53,7 @@ $.fn.webSocket = function(opt){ }}); } - var escape = function (html){ - var elem = document.createElement('div') - var txt = document.createTextNode(html) - elem.appendChild(txt) - return elem.innerHTML; - } + $this.on("click",function(e){ init(e); return false; diff --git a/webroot/AutoSa/templates/logView.html b/webroot/AutoSa/templates/logView.html index 51ea713b3..7a3806aee 100644 --- a/webroot/AutoSa/templates/logView.html +++ b/webroot/AutoSa/templates/logView.html @@ -46,6 +46,7 @@ }}); return false; }) + $(".monitor").webSocket() From 21ab6cbe1e88694f181aeef0de7dfe0ea80bfce7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 15:36:25 +0800 Subject: [PATCH 07/28] bug fix --- webroot/AutoSa/static/js/main.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/webroot/AutoSa/static/js/main.js b/webroot/AutoSa/static/js/main.js index 6bc3aa386..5284be0b7 100644 --- a/webroot/AutoSa/static/js/main.js +++ b/webroot/AutoSa/static/js/main.js @@ -34,7 +34,7 @@ $.fn.webSocket = function(opt){ message.id = genUid(); message.filename = node.attr('filename'); BootstrapDialog.show({message:function(){ - var escape = function (html){ + var escapeString = function (html){ var elem = document.createElement('div') var txt = document.createTextNode(html) elem.appendChild(txt) @@ -44,7 +44,7 @@ $.fn.webSocket = function(opt){ //告诉服务器端有用户登录 socket.emit('login', {userid:message.id, filename:message.filename}); socket.on('message',function(obj){ - tag.append(this.escape(obj.content)); + tag.append(escapeString(obj.content)); }); } , title:'日志', From f5b02265a41e7bf8f7939c71fd9faa2f5620cf8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 15:38:19 +0800 Subject: [PATCH 08/28] bug fix --- webroot/AutoSa/static/js/main.js | 1 + 1 file changed, 1 insertion(+) diff --git a/webroot/AutoSa/static/js/main.js b/webroot/AutoSa/static/js/main.js index 5284be0b7..8da887809 100644 --- a/webroot/AutoSa/static/js/main.js +++ b/webroot/AutoSa/static/js/main.js @@ -46,6 +46,7 @@ $.fn.webSocket = function(opt){ socket.on('message',function(obj){ tag.append(escapeString(obj.content)); }); + return tag[0]; } , title:'日志', onhide:function(){ From b1aff5c9974e1d7c09680755e5298b9a7facc60a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 15:44:50 +0800 Subject: [PATCH 09/28] bug fix --- webroot/AutoSa/static/js/main.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webroot/AutoSa/static/js/main.js b/webroot/AutoSa/static/js/main.js index 8da887809..f16e70a1e 100644 --- a/webroot/AutoSa/static/js/main.js +++ b/webroot/AutoSa/static/js/main.js @@ -44,7 +44,7 @@ $.fn.webSocket = function(opt){ //告诉服务器端有用户登录 socket.emit('login', {userid:message.id, filename:message.filename}); socket.on('message',function(obj){ - tag.append(escapeString(obj.content)); + tag.append('

'+escapeString(obj.content)+'

'); }); return tag[0]; } , From d38a963dbd2c584e6e977267734e01a5745d8a30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 15:50:37 +0800 Subject: [PATCH 10/28] bug fix --- webroot/AutoSa/static/js/main.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webroot/AutoSa/static/js/main.js b/webroot/AutoSa/static/js/main.js index f16e70a1e..4d4948ca8 100644 --- a/webroot/AutoSa/static/js/main.js +++ b/webroot/AutoSa/static/js/main.js @@ -40,7 +40,7 @@ $.fn.webSocket = function(opt){ elem.appendChild(txt) return elem.innerHTML; } - var tag = $('
'); + var tag = $('
'); //告诉服务器端有用户登录 socket.emit('login', {userid:message.id, filename:message.filename}); socket.on('message',function(obj){ From 41b7110554c6ea70baaf548b6066d78b540cd451 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=BF=E5=8F=AC=E9=98=B3?= Date: Fri, 7 Nov 2014 16:12:45 +0800 Subject: [PATCH 11/28] bug fix --- webroot/AutoSa/static/js/main.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/webroot/AutoSa/static/js/main.js b/webroot/AutoSa/static/js/main.js index 4d4948ca8..6258f56ab 100644 --- a/webroot/AutoSa/static/js/main.js +++ b/webroot/AutoSa/static/js/main.js @@ -44,7 +44,9 @@ $.fn.webSocket = function(opt){ //告诉服务器端有用户登录 socket.emit('login', {userid:message.id, filename:message.filename}); socket.on('message',function(obj){ - tag.append('

'+escapeString(obj.content)+'

'); + //去除log中的颜色控制字符 + var regx = /\x1B\[([0-9]{1,3}((;[0-9]{1,3})*)?)?[m|K]/g; + tag.append('

'+escapeString(obj.content.replace(regx,''))+'

'); }); return tag[0]; } , From a5c3048a89040fc8855a1bebe764804154588218 Mon Sep 17 00:00:00 2001 From: ibuler Date: Sun, 9 Nov 2014 22:25:55 +0800 Subject: [PATCH 12/28] =?UTF-8?q?1.=20=E6=94=AF=E6=8C=81=E7=BB=9D=E5=AF=B9?= =?UTF-8?q?=E8=B7=AF=E5=BE=84=202.=20=E6=94=AF=E6=8C=81=E5=88=86=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jumpserver.py | 4 +- webroot/AutoSa/AutoSa/views.py | 50 ++++++++++++++++++++---- webroot/AutoSa/templates/showAssets.html | 15 +++++++ 3 files changed, 59 insertions(+), 10 deletions(-) diff --git a/jumpserver.py b/jumpserver.py index a86a20478..2c38a7371 100755 --- a/jumpserver.py +++ b/jumpserver.py @@ -18,9 +18,7 @@ import paramiko import pxssh import pexpect -cur_dir = os.path.dirname(__file__) -if not cur_dir: - cur_dir = "./" +cur_dir = os.path.abspath(os.path.dirname(__file__)) sys.path.append('%s/webroot/AutoSa/' % cur_dir) os.environ['DJANGO_SETTINGS_MODULE'] = 'AutoSa.settings' diff --git a/webroot/AutoSa/AutoSa/views.py b/webroot/AutoSa/AutoSa/views.py index ca765bbd2..c62cd6472 100644 --- a/webroot/AutoSa/AutoSa/views.py +++ b/webroot/AutoSa/AutoSa/views.py @@ -320,9 +320,21 @@ def showUser(request): error = '' if is_super_user(request): - users = User.objects.all() + users_all = User.objects.all() else: - users = group_member(request.session.get('username')) + users_all = group_member(request.session.get('username')) + + paginator = Paginator(users_all, 20) + + try: + page = int(request.GET.get('page', 1)) + except ValueError: + page = 1 + + try: + users = paginator.page(page) + except (EmptyPage, InvalidPage): + users = paginator.page(paginator.num_pages) if request.method == 'POST': selected_user = request.REQUEST.getlist('selected') @@ -680,13 +692,25 @@ def showAssets(request): """查看服务器""" info = '' if request.session.get('admin') < 2: - assets = [] + assets_all = [] username = request.session.get('username') user = User.objects.get(username=username) for asset in user.assetsuser_set.all().order_by('ip'): - assets.append(asset.aid) + assets_all.append(asset.aid) else: - assets = Assets.objects.all().order_by('ip') + assets_all = Assets.objects.all().order_by('ip') + paginator = Paginator(assets_all, 20) + + try: + page = int(request.GET.get('page', 1)) + except ValueError: + page = 1 + + try: + assets = paginator.page(page) + except (EmptyPage, InvalidPage): + assets = paginator.page(paginator.num_pages) + if request.method == 'POST': if request.session.get('admin') < 2: return HttpResponseRedirect('/showAssets/') @@ -727,9 +751,21 @@ def addAssets(request): def showPerm(request): """查看权限""" if is_super_user(request): - users = User.objects.all() + users_all = User.objects.all() else: - users = group_member(request.session.get('username')) + users_all = group_member(request.session.get('username')) + + paginator = Paginator(users_all, 20) + + try: + page = int(request.GET.get('page', 1)) + except ValueError: + page = 1 + + try: + users = paginator.page(page) + except (EmptyPage, InvalidPage): + users = paginator.page(paginator.num_pages) if request.method == 'POST': assets_del = request.REQUEST.getlist('selected') diff --git a/webroot/AutoSa/templates/showAssets.html b/webroot/AutoSa/templates/showAssets.html index 92c120438..2064da62e 100644 --- a/webroot/AutoSa/templates/showAssets.html +++ b/webroot/AutoSa/templates/showAssets.html @@ -33,4 +33,19 @@ + {% endblock %} \ No newline at end of file From dc11f34585df00b926b79f57f519773b42d2e68b Mon Sep 17 00:00:00 2001 From: ibuler Date: Mon, 10 Nov 2014 23:28:44 +0800 Subject: [PATCH 13/28] =?UTF-8?q?=E6=B7=BB=E5=8A=A0IDC=E7=9A=84=E6=94=AF?= =?UTF-8?q?=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- webroot/AutoSa/Assets/models.py | 13 ++++- webroot/AutoSa/AutoSa/urls.py | 3 + webroot/AutoSa/AutoSa/views.py | 78 +++++++++++++++++++++++-- webroot/AutoSa/templates/addAssets.html | 6 +- webroot/AutoSa/templates/addIDC.html | 36 ++++++++++++ webroot/AutoSa/templates/chgGroup.html | 2 +- webroot/AutoSa/templates/chgIDC.html | 41 +++++++++++++ webroot/AutoSa/templates/showIDC.html | 31 ++++++++++ 8 files changed, 202 insertions(+), 8 deletions(-) create mode 100644 webroot/AutoSa/templates/addIDC.html create mode 100644 webroot/AutoSa/templates/chgIDC.html create mode 100644 webroot/AutoSa/templates/showIDC.html diff --git a/webroot/AutoSa/Assets/models.py b/webroot/AutoSa/Assets/models.py index 50dbe37c1..52c6f05ac 100644 --- a/webroot/AutoSa/Assets/models.py +++ b/webroot/AutoSa/Assets/models.py @@ -2,11 +2,18 @@ from django.db import models from UserManage.models import User +class IDC(models.Model): + name = models.CharField(max_length=20) + + def __unicode__(self): + return self.name + + class Assets(models.Model): id = models.AutoField(primary_key=True) ip = models.CharField(max_length=20) port = models.IntegerField(max_length=5) - idc = models.CharField(max_length=50) + idc = models.ForeignKey(IDC) comment = models.CharField(max_length=100, blank=True, null=True) def __unicode__(self): @@ -15,4 +22,6 @@ class Assets(models.Model): class AssetsUser(models.Model): uid = models.ForeignKey(User) - aid = models.ForeignKey(Assets) \ No newline at end of file + aid = models.ForeignKey(Assets) + + diff --git a/webroot/AutoSa/AutoSa/urls.py b/webroot/AutoSa/AutoSa/urls.py index d0bcec57d..6254b8503 100644 --- a/webroot/AutoSa/AutoSa/urls.py +++ b/webroot/AutoSa/AutoSa/urls.py @@ -20,6 +20,9 @@ urlpatterns = patterns('', (r'^showGroup/$', views.showGroup), (r'^addGroup/$', views.addGroup), (r'^chgGroup/$', views.chgGroup), + (r'^showIDC/$', views.showGroup), + (r'^addIDC/$', views.addGroup), + (r'^chgIDC/$', views.chgGroup), (r'^showSudo/$', views.showSudo), (r'^chgSudo/$', views.chgSudo), (r'^showAssets/$', views.showAssets), diff --git a/webroot/AutoSa/AutoSa/views.py b/webroot/AutoSa/AutoSa/views.py index c62cd6472..2d5895fc4 100644 --- a/webroot/AutoSa/AutoSa/views.py +++ b/webroot/AutoSa/AutoSa/views.py @@ -5,7 +5,7 @@ from django.template import RequestContext from django.shortcuts import render_to_response from django.http import HttpResponseRedirect from UserManage.models import User, Group, Logs, Pid -from Assets.models import Assets, AssetsUser +from Assets.models import Assets, AssetsUser, IDC import subprocess from Crypto.Cipher import AES from binascii import b2a_hex, a2b_hex @@ -599,10 +599,15 @@ def chgGroup(request): group_id = request.GET.get('id') group = Group.objects.get(id=group_id) else: - group_id = request.POST.get('id') - group_name = request.POST.get('name') + group_id = request.POST.filter('id') + if group_id: + group_id = group_id[0] + group_name = request.POST.get('name') + else: + return HttpResponseRedirect('/showGroup/') if not group_name: error = u'不能为空' + return render_to_response('info.html', {'error': error}) else: group = Group.objects.get(id=group_id) group.name = group_name @@ -613,6 +618,68 @@ def chgGroup(request): context_instance=RequestContext(request)) +@superuser_required +def showIDC(request): + error = '' + msg = '' + idcs = IDC.objects.all() + + if request.method == 'POST': + selected_idc = request.REQUEST.getlist('selected') + if selected_idc: + for idc_id in selected_idc: + idc = IDC.objects.get(id=idc_id) + idc.delete() + msg = '删除成功' + + return render_to_response('showIDC.html', + {'idcs': idcs, 'error': error, 'msg': msg, 'asset_menu': 'active'}, + context_instance=RequestContext(request)) + + +@superuser_required +def chgIDC(request): + error = '' + msg = '' + if request.method == 'GET': + idc_id = request.GET.filter('id') + if idc_id: + idc_id = idc_id[0] + idc = Group.objects.get(id=idc_id) + else: + return HttpResponseRedirect('/showIDC/') + else: + idc_id = request.POST.get('id') + idc_name = request.POST.get('name') + if not idc_name: + error = u'不能为空' + return render_to_response('info.html', {'error': error}) + else: + idc = Group.objects.get(id=idc_id) + idc.name = idc_name + idc.save() + msg = u'修改成功' + + return render_to_response('chgGroup.html', {'group': idc, 'error': error, 'msg': msg, 'asset_menu': 'active'}, + context_instance=RequestContext(request)) + + +@superuser_required +def addIDC(request): + error = '' + msg = '' + if request.method == 'POST': + idc_name = request.POST.get('name') + if idc_name: + group = Group(name=idc_name) + group.save() + msg = u'%s IDC添加成功' % idc_name + else: + error = u'不能为空' + return render_to_response('addIDC.html', + {'error': error, 'msg': msg, 'user_menu': 'active'}, + context_instance=RequestContext(request)) + @admin_required def showSudo(request): if request.method == 'GET': @@ -728,12 +795,15 @@ def addAssets(request): """添加服务器""" error = '' msg = '' + idcs = IDC.objects.all() if request.method == 'POST': ip = request.POST.get('ip') port = request.POST.get('port') idc = request.POST.get('idc') comment = request.POST.get('comment') + idc = IDC.objects.get(id=idc) + if '' in (ip, port): error = '带*号内容不能为空。' elif Assets.objects.filter(ip=ip): @@ -743,7 +813,7 @@ def addAssets(request): asset.save() msg = u'%s 添加成功' % ip - return render_to_response('addAssets.html', {'msg': msg, 'error': error, 'asset_menu': 'active'}, + return render_to_response('addAssets.html', {'msg': msg, 'error': error, 'idcs': idcs, 'asset_menu': 'active'}, context_instance=RequestContext(request)) diff --git a/webroot/AutoSa/templates/addAssets.html b/webroot/AutoSa/templates/addAssets.html index f230b7b7a..95efb47aa 100644 --- a/webroot/AutoSa/templates/addAssets.html +++ b/webroot/AutoSa/templates/addAssets.html @@ -28,7 +28,11 @@
- +
diff --git a/webroot/AutoSa/templates/addIDC.html b/webroot/AutoSa/templates/addIDC.html new file mode 100644 index 000000000..0ca0221da --- /dev/null +++ b/webroot/AutoSa/templates/addIDC.html @@ -0,0 +1,36 @@ +{% extends 'base.html' %} +{% block content %} +
+
+ 添加IDC + {% if error %} +
+ {{ error }} +
+ {% endif %} + {% if msg %} +
+ {{ msg }} +
+ {% endif %} +
+ +
+ +
+
+ 添加IDC +
+
+ 删除IDC +
+
+ +
+
+ +
+
+
+
+{% endblock %} \ No newline at end of file diff --git a/webroot/AutoSa/templates/chgGroup.html b/webroot/AutoSa/templates/chgGroup.html index ae44b6cc0..45c30dab8 100644 --- a/webroot/AutoSa/templates/chgGroup.html +++ b/webroot/AutoSa/templates/chgGroup.html @@ -2,7 +2,7 @@ {% block content %}
- 修改用户信息 + 修改属组信息 {% if error %}
{{ error }} diff --git a/webroot/AutoSa/templates/chgIDC.html b/webroot/AutoSa/templates/chgIDC.html new file mode 100644 index 000000000..a0fc64f43 --- /dev/null +++ b/webroot/AutoSa/templates/chgIDC.html @@ -0,0 +1,41 @@ +{% extends 'base.html' %} +{% block content %} + +
+ 修改IDC信息 + {% if error %} +
+ {{ error }} +
+ {% endif %} + + {% if msg %} +
+ {{ msg }} +
+ {% endif %} +
+
+ +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+
+
+ +{% endblock %} \ No newline at end of file diff --git a/webroot/AutoSa/templates/showIDC.html b/webroot/AutoSa/templates/showIDC.html new file mode 100644 index 000000000..985b2aeb1 --- /dev/null +++ b/webroot/AutoSa/templates/showIDC.html @@ -0,0 +1,31 @@ +{% extends 'base.html' %} +{% block content %} +
+ {% if info %} +

+ {{ info }} +

+ {% endif %} + + + + + + + + + + + {% for idc in idcs %} + + + + + + + {% endfor %} + +
IDIDC修改
{{ idc.id }}{{ idc.name }}修改
+ +
+{% endblock %} \ No newline at end of file From 62bc814a44d37fce0b292a1174464805b6a457f8 Mon Sep 17 00:00:00 2001 From: ibuler Date: Mon, 10 Nov 2014 23:31:43 +0800 Subject: [PATCH 14/28] bug fix --- webroot/AutoSa/AutoSa/views.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/webroot/AutoSa/AutoSa/views.py b/webroot/AutoSa/AutoSa/views.py index 2d5895fc4..5537e2331 100644 --- a/webroot/AutoSa/AutoSa/views.py +++ b/webroot/AutoSa/AutoSa/views.py @@ -596,15 +596,16 @@ def chgGroup(request): error = '' msg = '' if request.method == 'GET': - group_id = request.GET.get('id') - group = Group.objects.get(id=group_id) - else: - group_id = request.POST.filter('id') + group_id = request.GET.filter('id') if group_id: group_id = group_id[0] - group_name = request.POST.get('name') else: return HttpResponseRedirect('/showGroup/') + group = Group.objects.get(id=group_id) + else: + group_id = request.POST.get('id') + group_name = request.POST.get('name') + if not group_name: error = u'不能为空' return render_to_response('info.html', {'error': error}) From 532cefe338d43465055aaec84c921e6838a7211e Mon Sep 17 00:00:00 2001 From: ibuler Date: Mon, 10 Nov 2014 23:35:12 +0800 Subject: [PATCH 15/28] bug fix --- webroot/AutoSa/AutoSa/views.py | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/webroot/AutoSa/AutoSa/views.py b/webroot/AutoSa/AutoSa/views.py index 5537e2331..901dc4955 100644 --- a/webroot/AutoSa/AutoSa/views.py +++ b/webroot/AutoSa/AutoSa/views.py @@ -596,12 +596,11 @@ def chgGroup(request): error = '' msg = '' if request.method == 'GET': - group_id = request.GET.filter('id') + group_id = request.GET.filter('id', None) if group_id: - group_id = group_id[0] + group = Group.objects.get(id=group_id) else: return HttpResponseRedirect('/showGroup/') - group = Group.objects.get(id=group_id) else: group_id = request.POST.get('id') group_name = request.POST.get('name') @@ -643,12 +642,11 @@ def chgIDC(request): error = '' msg = '' if request.method == 'GET': - idc_id = request.GET.filter('id') - if idc_id: - idc_id = idc_id[0] - idc = Group.objects.get(id=idc_id) - else: + idc_id = request.GET.get('id', None) + if not idc_id: return HttpResponseRedirect('/showIDC/') + else: + idc = IDC.objects.get(id=idc_id) else: idc_id = request.POST.get('id') idc_name = request.POST.get('name') @@ -661,7 +659,7 @@ def chgIDC(request): idc.save() msg = u'修改成功' - return render_to_response('chgGroup.html', {'group': idc, 'error': error, 'msg': msg, 'asset_menu': 'active'}, + return render_to_response('chgGroup.html', {'idc': idc, 'error': error, 'msg': msg, 'asset_menu': 'active'}, context_instance=RequestContext(request)) From f947a753dbc256bf1ce46eb44e11763f275ea2f0 Mon Sep 17 00:00:00 2001 From: ibuler Date: Mon, 10 Nov 2014 23:36:52 +0800 Subject: [PATCH 16/28] bugfix --- webroot/AutoSa/AutoSa/urls.py | 6 +++--- webroot/AutoSa/AutoSa/views.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/webroot/AutoSa/AutoSa/urls.py b/webroot/AutoSa/AutoSa/urls.py index 6254b8503..f6ca92c95 100644 --- a/webroot/AutoSa/AutoSa/urls.py +++ b/webroot/AutoSa/AutoSa/urls.py @@ -20,9 +20,9 @@ urlpatterns = patterns('', (r'^showGroup/$', views.showGroup), (r'^addGroup/$', views.addGroup), (r'^chgGroup/$', views.chgGroup), - (r'^showIDC/$', views.showGroup), - (r'^addIDC/$', views.addGroup), - (r'^chgIDC/$', views.chgGroup), + (r'^showIDC/$', views.showIDC), + (r'^addIDC/$', views.addIDC), + (r'^chgIDC/$', views.chgIDC), (r'^showSudo/$', views.showSudo), (r'^chgSudo/$', views.chgSudo), (r'^showAssets/$', views.showAssets), diff --git a/webroot/AutoSa/AutoSa/views.py b/webroot/AutoSa/AutoSa/views.py index 901dc4955..21b0ae836 100644 --- a/webroot/AutoSa/AutoSa/views.py +++ b/webroot/AutoSa/AutoSa/views.py @@ -596,7 +596,7 @@ def chgGroup(request): error = '' msg = '' if request.method == 'GET': - group_id = request.GET.filter('id', None) + group_id = request.GET.get('id', None) if group_id: group = Group.objects.get(id=group_id) else: From 44ef066ede56e70904246229044e6cce342b6263 Mon Sep 17 00:00:00 2001 From: ibuler Date: Mon, 10 Nov 2014 23:41:38 +0800 Subject: [PATCH 17/28] bugfix --- webroot/AutoSa/templates/addAssets.html | 6 ++++++ webroot/AutoSa/templates/addIDC.html | 7 +------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/webroot/AutoSa/templates/addAssets.html b/webroot/AutoSa/templates/addAssets.html index 95efb47aa..4ff30c536 100644 --- a/webroot/AutoSa/templates/addAssets.html +++ b/webroot/AutoSa/templates/addAssets.html @@ -34,6 +34,12 @@ {% endfor %}
+
+ 添加IDC +
+
+ 删除IDC +
diff --git a/webroot/AutoSa/templates/addIDC.html b/webroot/AutoSa/templates/addIDC.html index 0ca0221da..59f018405 100644 --- a/webroot/AutoSa/templates/addIDC.html +++ b/webroot/AutoSa/templates/addIDC.html @@ -18,12 +18,7 @@
-
- 添加IDC -
-
- 删除IDC -
+
From 16ec34c46343270f3819ad6678c87e209cb61564 Mon Sep 17 00:00:00 2001 From: ibuler Date: Mon, 10 Nov 2014 23:42:45 +0800 Subject: [PATCH 18/28] bugfix --- webroot/AutoSa/templates/addAssets.html | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/webroot/AutoSa/templates/addAssets.html b/webroot/AutoSa/templates/addAssets.html index 4ff30c536..cbbcc5cb3 100644 --- a/webroot/AutoSa/templates/addAssets.html +++ b/webroot/AutoSa/templates/addAssets.html @@ -36,10 +36,9 @@
- +
From c424cad2448ff530de98b2101d597aa32dce0c2e Mon Sep 17 00:00:00 2001 From: ibuler Date: Mon, 10 Nov 2014 23:46:20 +0800 Subject: [PATCH 19/28] bugfix --- webroot/AutoSa/AutoSa/views.py | 4 ++-- webroot/AutoSa/templates/addAssets.html | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/webroot/AutoSa/AutoSa/views.py b/webroot/AutoSa/AutoSa/views.py index 21b0ae836..969e90dd0 100644 --- a/webroot/AutoSa/AutoSa/views.py +++ b/webroot/AutoSa/AutoSa/views.py @@ -670,8 +670,8 @@ def addIDC(request): if request.method == 'POST': idc_name = request.POST.get('name') if idc_name: - group = Group(name=idc_name) - group.save() + idc = IDC(name=idc_name) + idc.save() msg = u'%s IDC添加成功' % idc_name else: error = u'不能为空' diff --git a/webroot/AutoSa/templates/addAssets.html b/webroot/AutoSa/templates/addAssets.html index cbbcc5cb3..65c440b1c 100644 --- a/webroot/AutoSa/templates/addAssets.html +++ b/webroot/AutoSa/templates/addAssets.html @@ -38,7 +38,7 @@ 添加IDC 删除IDC
- +
From 6c762b865a35d8107a67a82f6954b1f16a2a1033 Mon Sep 17 00:00:00 2001 From: ibuler Date: Tue, 11 Nov 2014 00:05:50 +0800 Subject: [PATCH 20/28] bugfix --- webroot/AutoSa/AutoSa/views.py | 4 ++-- webroot/AutoSa/templates/addAssets.html | 4 ++-- webroot/AutoSa/templates/addPerm.html | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/webroot/AutoSa/AutoSa/views.py b/webroot/AutoSa/AutoSa/views.py index 969e90dd0..80c8925dc 100644 --- a/webroot/AutoSa/AutoSa/views.py +++ b/webroot/AutoSa/AutoSa/views.py @@ -842,7 +842,7 @@ def showPerm(request): user = User.objects.get(username=username) for asset_id in assets_del: - asset = Assets.objects.get(id=asset_id) + asset = Assets.objects.get(id=int(asset_id)) asset_user_del = AssetsUser.objects.get(uid=user, aid=asset) asset_user_del.delete() return HttpResponseRedirect('/showPerm/?username=%s' % username) @@ -1080,7 +1080,7 @@ def downFile(request): def logView(request): thirtyDayAgo = (datetime.datetime.now() - datetime.timedelta(30)) thirtyDayAgoStamp = int(time.mktime(thirtyDayAgo.timetuple())) - logs_all = Logs.objects.filter(start_time__gt=thirtyDayAgoStamp) + logs_all = Logs.objects.filter(start_time__gt=thirtyDayAgoStamp).order_by("-id") paginator = Paginator(logs_all, 20) try: diff --git a/webroot/AutoSa/templates/addAssets.html b/webroot/AutoSa/templates/addAssets.html index 65c440b1c..be1100757 100644 --- a/webroot/AutoSa/templates/addAssets.html +++ b/webroot/AutoSa/templates/addAssets.html @@ -28,9 +28,9 @@
- {% for idc in idcs %} - + {% endfor %}
diff --git a/webroot/AutoSa/templates/addPerm.html b/webroot/AutoSa/templates/addPerm.html index 2c28bd213..ff505b54a 100644 --- a/webroot/AutoSa/templates/addPerm.html +++ b/webroot/AutoSa/templates/addPerm.html @@ -26,7 +26,7 @@ {% endfor %} - + {% endblock %} %} \ No newline at end of file From a4e6fef2a6b3a12d2014363627d72c98f2717627 Mon Sep 17 00:00:00 2001 From: ibuler Date: Tue, 11 Nov 2014 14:17:03 +0800 Subject: [PATCH 21/28] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- webroot/AutoSa/templates/base.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/webroot/AutoSa/templates/base.html b/webroot/AutoSa/templates/base.html index 7519be27f..9305e4c47 100644 --- a/webroot/AutoSa/templates/base.html +++ b/webroot/AutoSa/templates/base.html @@ -2,8 +2,8 @@ -运维管理系统 - +Jumpserver +