add working oauth and ldap client

This commit is contained in:
Jens Langhammer
2018-11-11 13:41:48 +01:00
parent 935155ce94
commit 5aa245cac0
212 changed files with 198506 additions and 0 deletions

View File

@ -0,0 +1,2 @@
"""passbook admin"""
default_app_config = 'passbook.admin.apps.PassbookAdminConfig'

9
passbook/admin/apps.py Normal file
View File

@ -0,0 +1,9 @@
"""passbook admin app config"""
from django.apps import AppConfig
class PassbookAdminConfig(AppConfig):
"""passbook admin app config"""
name = 'passbook.admin'
label = 'passbook_admin'

View File

@ -0,0 +1,7 @@
{% extends "administration/base.html" %}
{% block content %}
<form action="">
{{ form }}
</form>
{% endblock %}

View File

@ -0,0 +1,21 @@
{% extends "overview/base.html" %}
{% load i18n %}
{% load is_active %}
{% block nav_secondary %}
<ul class="nav navbar-nav navbar-persistent">
<li class="active">
<a href="#">{% trans 'Overview' %}</a>
</li>
<li class="{% is_active 'applications'}">
<a href="#">{% trans 'Applications' %}</a>
</li>
<li>
<a href="#">{% trans 'Rules' %}</a>
</li>
<li>
<a href="#">{% trans 'Users' %}</a>
</li>
</ul>
{% endblock %}

View File

@ -0,0 +1,5 @@
{% extends "administration/base.html" %}
{% block content %}
{% endblock %}

View File

@ -0,0 +1,42 @@
{% extends "administration/base.html" %}
{% load i18n %}
{% block content %}
<div class="col-xs-6 col-sm-2 col-md-2">
<div class="card-pf card-pf-accented card-pf-aggregate-status">
<h2 class="card-pf-title">
<a href="#"><span class="fa fa-shield"></span><span class="card-pf-aggregate-status-count"></span> {% trans 'Applications' %}</a>
</h2>
<div class="card-pf-body">
<p class="card-pf-aggregate-status-notifications">
<span class="card-pf-aggregate-status-notification"><a href="#"><span class="pficon pficon-ok"></span>{{ application_count }}</a></span>
</p>
</div>
</div>
</div>
<div class="col-xs-6 col-sm-2 col-md-2">
<div class="card-pf card-pf-accented card-pf-aggregate-status">
<h2 class="card-pf-title">
<a href="#"><span class="fa fa-shield"></span><span class="card-pf-aggregate-status-count"></span> {% trans 'Rules' %}</a>
</h2>
<div class="card-pf-body">
<p class="card-pf-aggregate-status-notifications">
<span class="card-pf-aggregate-status-notification"><a href="#"><span class="pficon pficon-ok"></span>{{ rule_count }}</a></span>
</p>
</div>
</div>
</div>
<div class="col-xs-6 col-sm-2 col-md-2">
<div class="card-pf card-pf-accented card-pf-aggregate-status">
<h2 class="card-pf-title">
<a href="#"><span class="fa fa-shield"></span><span class="card-pf-aggregate-status-count"></span> {% trans 'Users' %}</a>
</h2>
<div class="card-pf-body">
<p class="card-pf-aggregate-status-notifications">
<span class="card-pf-aggregate-status-notification"><a href="#"><span class="pficon pficon-ok"></span>{{ user_count }}</a></span>
</p>
</div>
</div>
</div>
{% endblock %}

11
passbook/admin/urls.py Normal file
View File

@ -0,0 +1,11 @@
"""passbook URL Configuration"""
from django.urls import path
from passbook.admin.views import applications, overview
urlpatterns = [
path('', overview.AdministrationOverviewView.as_view(), name='admin-overview'),
path('applications/', applications.ApplicationListView.as_view(), name='admin-applications'),
path('applications/create/', applications.ApplicationCreateView.as_view(),
name='admin-application-create'),
]

View File

View File

@ -0,0 +1,16 @@
"""passbook application administration"""
from django.views.generic import CreateView, DeleteView, ListView, UpdateView
from passbook.core.models import Application
class ApplicationListView(ListView):
model = Application
template_name = 'administration/list.html'
class ApplicationCreateView(CreateView):
model = Application
template_name = 'administration/application/create.html'
fields = ['name', 'launch_url', 'icon_url']

View File

@ -0,0 +1,15 @@
from django.contrib.auth.mixins import LoginRequiredMixin
from django.views.generic import TemplateView
from passbook.core.models import Application, Rule, User
class AdministrationOverviewView(LoginRequiredMixin, TemplateView):
template_name = 'administration/overview.html'
def get_context_data(self, **kwargs):
kwargs['application_count'] = len(Application.objects.all())
kwargs['rule_count'] = len(Rule.objects.all())
kwargs['user_count'] = len(User.objects.all())
return super().get_context_data(**kwargs)