Browse Source

when logged out redirect to /login

Roberto Berto 5 years ago
parent
commit
197fa8799a

+ 7 - 4
vycenter/accounts/views.py

@@ -5,6 +5,7 @@ from django.shortcuts import redirect
 from django.contrib.auth import authenticate
 from django.views.generic.base import TemplateView
 from django.conf import settings
+from django.urls import reverse
 
 
 from django.contrib.auth.models import User
@@ -15,12 +16,14 @@ import vyos
 
 
 def index(request):
+    users_admin = User.objects.filter(
+        is_active=True,
+        is_superuser=True
+    )
+
     if not request.user.is_authenticated:
 
-        users_admin = User.objects.filter(
-            is_active=True,
-            is_superuser=True
-        )
+
 
         if users_admin.count() == 0:
             if 'username' in request.POST and 'password' in request.POST:

+ 2 - 1
vycenter/arp/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 
 import vyos
@@ -11,7 +12,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
 
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)

+ 2 - 1
vycenter/bgp/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 
 import vyos
@@ -11,7 +12,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)

+ 46 - 0
vycenter/config/templates/config/groups_list.html

@@ -0,0 +1,46 @@
+{% extends "base.html" %}
+
+{% block debug %}
+{{ groups }}
+{{ x }}
+{% endblock %}
+
+
+{% block header_title %}Manage groups{% endblock %}
+{% block section_title %}Manage groups{% endblock %}
+
+{% block content %}
+
+
+
+
+
+{% if groups %}
+
+    <table border="1" width="100%">
+    <tr>
+        <th>alias</th>
+        <th>hostname</th>
+        <th>port</th>
+        <th>key</th>
+        <th>https</th>
+        <th>test connection</th>
+        <th>default</th>
+        <th>remove</th>
+    </tr>
+
+    {% for group in groups %}
+    <tr>
+        <td>{{ group }}</td>
+    
+    </tr>
+
+    {% endfor %}
+
+    </table>   
+{% else %}
+    <p>No groups.</p>
+{% endif %}
+
+
+{% endblock %}

+ 1 - 2
vycenter/config/urls.py

@@ -8,12 +8,11 @@ app_name = 'config'
 urlpatterns = [
     path('', views.index, name='index'),
     path('users-list', views.users_list, name='users-list'),
-
+    path('groups-list', views.groups_list, name='groups-list'),
     path('instance-add', views.instance_add, name='instance-add'),
     path('instance-conntry/<str:hostname>', views.instance_conntry, name='instance-conntry'),
     path('instance-default/<str:hostname>', views.instance_default, name='instance-default'),
     path('instance-remove/<str:hostname>', views.instance_remove, name='instance-remove'),
-
     path('instances', views.instances, name='instances'),
 
 ]

+ 30 - 8
vycenter/config/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 
 import pprint
@@ -11,12 +12,12 @@ import vyos
 from .models import Instance
 
 from django.contrib.auth.models import User
-
+from django.contrib.auth.models import Group
 
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     #interfaces = vyos.get_interfaces()
     all_instances = vyos.instance_getall()
@@ -34,7 +35,7 @@ def index(request):
 
 def users_list(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     #interfaces = vyos.get_interfaces()
     all_instances = vyos.instance_getall()
@@ -52,11 +53,32 @@ def users_list(request):
     return HttpResponse(template.render(context, request))
 
 
+def groups_list(request):
+    if not request.user.is_authenticated:
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
+
+
+    #interfaces = vyos.get_interfaces()
+    all_instances = vyos.instance_getall()
+    hostname_default = vyos.get_hostname_prefered(request)
+    groups = Group.objects.all()
+
+
+    template = loader.get_template('config/groups_list.html')
+    context = { 
+        #'interfaces': interfaces,
+        'instances': all_instances,
+        'hostname_default': hostname_default,
+        'groups' : groups,
+    }   
+    return HttpResponse(template.render(context, request))
+
+
 
 
 def instances(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)
@@ -82,7 +104,7 @@ def instances(request):
 
 def instance_add(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     #interfaces = vyos.get_interfaces()
     all_instances = vyos.instance_getall()
@@ -113,7 +135,7 @@ def instance_add(request):
 
 def instance_conntry(request, hostname):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)
@@ -137,7 +159,7 @@ def instance_conntry(request, hostname):
 
 def instance_default(request, hostname):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
 
@@ -157,7 +179,7 @@ def instance_default(request, hostname):
 
 def instance_remove(request, hostname):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
 

+ 2 - 1
vycenter/dhcp/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 import vyos
 
@@ -10,7 +11,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)

+ 5 - 4
vycenter/firewall/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 
 import vyos
@@ -11,7 +12,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     #interfaces = vyos.get_interfaces()
     all_instances = vyos.instance_getall()
@@ -38,7 +39,7 @@ def index(request):
 
 def create(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     #interfaces = vyos.get_interfaces()
     all_instances = vyos.instance_getall()
@@ -72,7 +73,7 @@ def create(request):
 
 def show(request, firewall_name):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     #interfaces = vyos.get_interfaces()
     all_instances = vyos.instance_getall()
@@ -95,7 +96,7 @@ def show(request, firewall_name):
 
 def addrule(request, firewall_name):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     #interfaces = vyos.get_interfaces()
     all_instances = vyos.instance_getall()

+ 4 - 3
vycenter/interface/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.conf import settings
 from django.shortcuts import redirect
+from django.urls import reverse
 
 
 import vyos
@@ -13,7 +14,7 @@ import pprint
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     hostname_default = vyos.get_hostname_prefered(request)
     all_instances = vyos.instance_getall()
@@ -64,7 +65,7 @@ def index(request):
 
 def interfaceshow(request, interface_type, interface_name):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)
@@ -85,7 +86,7 @@ def interfaceshow(request, interface_type, interface_name):
 
 def interfacefirewall(request, interface_type, interface_name):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
 

+ 2 - 1
vycenter/ipsec/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 
 import vyos
@@ -11,7 +12,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)

+ 2 - 1
vycenter/nat/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 
 import vyos
@@ -11,7 +12,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)

+ 2 - 1
vycenter/openvpn/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 
 import vyos
@@ -11,7 +12,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)

+ 2 - 1
vycenter/ospf/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 
 import vyos
@@ -11,7 +12,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
 
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)

+ 2 - 1
vycenter/qos/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 
 import vyos
@@ -13,7 +14,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
 
     
     all_instances = vyos.instance_getall()

+ 2 - 1
vycenter/ssh/views.py

@@ -3,6 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
+from django.urls import reverse
 
 
 import vyos
@@ -11,7 +12,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)

+ 2 - 2
vycenter/static/views.py

@@ -3,7 +3,7 @@ from django.http import HttpResponse
 from django.template import loader
 from django.shortcuts import redirect
 from django.conf import settings
-
+from django.urls import reverse
 
 import vyos
 
@@ -11,7 +11,7 @@ import vyos
 
 def index(request):
     if not request.user.is_authenticated:
-        return redirect('%s?next=%s' % (settings.LOGIN_URL, request.path))
+        return redirect('%s?next=%s' % (reverse('registration-login'), request.path))
         
     all_instances = vyos.instance_getall()
     hostname_default = vyos.get_hostname_prefered(request)

+ 2 - 2
vycenter/vycenter/templates/base.html

@@ -35,7 +35,6 @@
               </select>
             
 
-              <span id="vycenter-config-menu"><a href="{% url 'registration-login' %}">Login</a></span>
               <span id="vycenter-config-menu"><a href="{% url 'registration-logout' %}">Logout</a></span>
 
               <span id="vycenter-config-menu"><a href="/admin">Admin</a></span>
@@ -103,7 +102,8 @@
     <ul>
     <li><a href="{% url 'config:instance-add' %}">Add new instance</a></li>
     <li><a href="{% url 'config:instances' %}">List instances</a></li>
-    <li><a href="{% url 'config:users-list' %}">Manage user permissions</a></li>
+    <li><a href="{% url 'config:users-list' %}">Manage users</a></li>
+    <li><a href="{% url 'config:groups-list' %}">Manage groups</a></li>
     </ul>