diff --git a/apps/applications/api.py b/apps/applications/api.py
index 968d32d2e..d30f9667c 100644
--- a/apps/applications/api.py
+++ b/apps/applications/api.py
@@ -4,6 +4,7 @@
from collections import OrderedDict
from django.core.cache import cache
from django.conf import settings
+from django.utils import timezone
import copy
from rest_framework.generics import ListCreateAPIView, RetrieveUpdateDestroyAPIView
from rest_framework import viewsets
@@ -80,21 +81,29 @@ class TerminalHeatbeatViewSet(viewsets.ModelViewSet):
task = tasks.get(terminal.name)
tasks[terminal.name] = []
return Response({'msg': 'Success',
- 'tasks': task,},
+ 'tasks': task},
status=201)
class TerminateConnectionView(APIView):
def post(self, request, *args, **kwargs):
- proxy_log_id = request.data.get('proxy_log_id')
- proxy_log = get_object_or_404(ProxyLog, id=proxy_log_id)
- terminal_id = proxy_log.terminal
- if terminal_id in tasks:
- tasks[terminal_id].append({'name': 'kill_proxy',
- 'proxy_log_id': proxy_log_id})
+ if isinstance(request.data, dict):
+ data = [request.data]
else:
- tasks[terminal_id] = [{'name': 'kill_proxy',
- 'proxy_log_id': proxy_log_id}]
+ data = request.data
+ for d in data:
+ proxy_log_id = d.get('proxy_log_id')
+ proxy_log = get_object_or_404(ProxyLog, id=proxy_log_id)
+ terminal_id = proxy_log.terminal
+ proxy_log.is_finished = True
+ proxy_log.date_finished = timezone.now()
+ proxy_log.save()
+ if terminal_id in tasks:
+ tasks[terminal_id].append({'name': 'kill_proxy',
+ 'proxy_log_id': proxy_log_id})
+ else:
+ tasks[terminal_id] = [{'name': 'kill_proxy',
+ 'proxy_log_id': proxy_log_id}]
print(tasks)
return Response({'msg': 'get it'})
diff --git a/apps/applications/templates/applications/terminal_detail.html b/apps/applications/templates/applications/terminal_detail.html
new file mode 100644
index 000000000..dee320c08
--- /dev/null
+++ b/apps/applications/templates/applications/terminal_detail.html
@@ -0,0 +1,77 @@
+{% extends 'base.html' %}
+{% load static %}
+{% load i18n %}
+
+{% block content %}
+
+
+
+
+
+
+
+
+
+
{{ terminal.name }}
+
+
+
+
+
+
+ {% trans 'Name' %}: |
+ {{ terminal.name }} |
+
+
+ {% trans 'Remote addr' %}: |
+ {{ terminal.remote_addr }} |
+
+
+ {% trans 'Terminal url' %}: |
+ {{ terminal.url }} |
+
+
+ {% trans 'Terminal type' %}: |
+ {{ terminal.get_type_display }} |
+
+
+ {% trans 'Date created' %}: |
+ {{ terminal.date_created }} |
+
+
+ {% trans 'Comment' %}: |
+ {{ asset.comment }} |
+
+
+
+
+
+
+
+
+
+
+
+{% endblock %}
+
diff --git a/apps/applications/templates/applications/terminal_list.html b/apps/applications/templates/applications/terminal_list.html
index 8dc7907ad..33a04c009 100644
--- a/apps/applications/templates/applications/terminal_list.html
+++ b/apps/applications/templates/applications/terminal_list.html
@@ -50,7 +50,7 @@ $(document).ready(function(){
buttons: [],
columnDefs: [
{targets: 1, createdCell: function (td, cellData, rowData) {
- var detail_btn = '' + cellData + '';
+ var detail_btn = '' + cellData + '';
$(td).html(detail_btn.replace('99991937', rowData.id));
}},
{targets: 5, createdCell: function (td, cellData) {
diff --git a/apps/applications/urls/views_urls.py b/apps/applications/urls/views_urls.py
index 96a044a61..717234aa3 100644
--- a/apps/applications/urls/views_urls.py
+++ b/apps/applications/urls/views_urls.py
@@ -10,6 +10,10 @@ app_name = 'applications'
urlpatterns = [
url(r'^terminal$', views.TerminalListView.as_view(), name='terminal-list'),
- url(r'^terminal/(?P\d+)/update$', views.TerminalUpdateView.as_view(), name='terminal-update'),
- url(r'^terminal/(?P\d+)/modal/accept$', views.TerminalModelAccept.as_view(), name='terminal-modal-accept'),
+ url(r'^terminal/(?P\d+)/$', views.TerminalDetailView.as_view(),
+ name='terminal-detail'),
+ url(r'^terminal/(?P\d+)/update$', views.TerminalUpdateView.as_view(),
+ name='terminal-update'),
+ url(r'^terminal/(?P\d+)/modal/accept$', views.TerminalModelAccept.as_view(),
+ name='terminal-modal-accept'),
]
diff --git a/apps/applications/views.py b/apps/applications/views.py
index c07cfc2d4..dcf1f182c 100644
--- a/apps/applications/views.py
+++ b/apps/applications/views.py
@@ -1,7 +1,7 @@
# ~*~ coding: utf-8 ~*~
#
-from django.views.generic import ListView, UpdateView, DeleteView, FormView
+from django.views.generic import ListView, UpdateView, DeleteView, DetailView
from django.views.generic.edit import BaseUpdateView
from django.utils.translation import ugettext as _
from django.urls import reverse_lazy
@@ -35,7 +35,21 @@ class TerminalUpdateView(UpdateView):
def get_context_data(self, **kwargs):
context = super(TerminalUpdateView, self).get_context_data(**kwargs)
- context.update({'app': _('Terminal'), 'action': _('Update applications')})
+ context.update({'app': _('Applications'), 'action': _('Update terminal')})
+ return context
+
+
+class TerminalDetailView(DetailView):
+ model = Terminal
+ template_name = 'applications/terminal_detail.html'
+ context_object_name = 'terminal'
+
+ def get_context_data(self, **kwargs):
+ context = super(TerminalDetailView, self).get_context_data(**kwargs)
+ context.update({
+ 'app': _('Applications'),
+ 'action': _('Terminal detail')
+ })
return context
diff --git a/apps/audits/templates/audits/example.html b/apps/audits/templates/audits/example.html
deleted file mode 100644
index e69de29bb..000000000
diff --git a/apps/audits/templates/audits/proxy_log_list.html b/apps/audits/templates/audits/proxy_log_list.html
index e89e19a85..b60b54e31 100644
--- a/apps/audits/templates/audits/proxy_log_list.html
+++ b/apps/audits/templates/audits/proxy_log_list.html
@@ -60,6 +60,7 @@
{% endblock %}
{% block table_head %}
+ |
{% trans 'ID' %} |
{% trans 'User' %} |
{% trans 'Asset' %} |
@@ -76,6 +77,7 @@
{% block table_body %}
{% for proxy_log in proxy_log_list %}
+ |
{{ proxy_log.id }}
|
@@ -100,7 +102,7 @@
{% else %}
-
+
|
@@ -112,9 +114,33 @@
{% endfor %}
{% endblock %}
+{% block content_bottom_left %}
+
+{% endblock %}
+
{% block custom_foot_js %}
{% endblock %}
|