8
0
Fork 0
mirror of https://gitlab2.federez.net/re2o/re2o synced 2024-12-25 08:23:46 +00:00

can_xxx sur les vues de logs.

This commit is contained in:
Hugo LEVY-FALK 2017-12-28 16:32:48 +01:00
parent 81f9aeb7df
commit 253801065e

View file

@ -41,7 +41,7 @@ from django.urls import reverse
from django.shortcuts import render, redirect from django.shortcuts import render, redirect
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
from django.contrib import messages from django.contrib import messages
from django.contrib.auth.decorators import login_required, permission_required from django.contrib.auth.decorators import login_required
from django.db.models import Count from django.db.models import Count
from reversion.models import Revision from reversion.models import Revision
@ -93,7 +93,15 @@ from topologie.models import (
) )
from preferences.models import GeneralOption from preferences.models import GeneralOption
from re2o.views import form from re2o.views import form
from re2o.utils import all_whitelisted, all_baned, all_has_access, all_adherent from re2o.utils import (
all_whitelisted,
all_baned,
all_has_access,
all_adherent,
can_view_all,
can_view_app,
can_edit_history,
)
from re2o.utils import all_active_assigned_interfaces_count from re2o.utils import all_active_assigned_interfaces_count
from re2o.utils import all_active_interfaces_count, SortTable from re2o.utils import all_active_interfaces_count, SortTable
@ -108,7 +116,7 @@ STATS_DICT = {
@login_required @login_required
@permission_required('cableur') @can_view_app('logs')
def index(request): def index(request):
"""Affiche les logs affinés, date reformatées, selectionne """Affiche les logs affinés, date reformatées, selectionne
les event importants (ajout de droits, ajout de ban/whitelist)""" les event importants (ajout de droits, ajout de ban/whitelist)"""
@ -167,7 +175,7 @@ def index(request):
@login_required @login_required
@permission_required('cableur') @can_view_all(GeneralOption)
def stats_logs(request): def stats_logs(request):
"""Affiche l'ensemble des logs et des modifications sur les objets, """Affiche l'ensemble des logs et des modifications sur les objets,
classés par date croissante, en vrac""" classés par date croissante, en vrac"""
@ -197,7 +205,7 @@ def stats_logs(request):
@login_required @login_required
@permission_required('bureau') @can_edit_history
def revert_action(request, revision_id): def revert_action(request, revision_id):
""" Annule l'action en question """ """ Annule l'action en question """
try: try:
@ -215,7 +223,9 @@ def revert_action(request, revision_id):
@login_required @login_required
@permission_required('cableur') @can_view_all(IpList)
@can_view_all(Interface)
@can_view_all(User)
def stats_general(request): def stats_general(request):
"""Statistiques générales affinées sur les ip, activées, utilisées par """Statistiques générales affinées sur les ip, activées, utilisées par
range, et les statistiques générales sur les users : users actifs, range, et les statistiques générales sur les users : users actifs,
@ -298,7 +308,10 @@ def stats_general(request):
@login_required @login_required
@permission_required('cableur') @can_view_app('users')
@can_view_app('cotisations')
@can_view_app('machines')
@can_view_app('topologie')
def stats_models(request): def stats_models(request):
"""Statistiques générales, affiche les comptages par models: """Statistiques générales, affiche les comptages par models:
nombre d'users, d'écoles, de droits, de bannissements, nombre d'users, d'écoles, de droits, de bannissements,
@ -340,7 +353,7 @@ def stats_models(request):
OuverturePortList.objects.count() OuverturePortList.objects.count()
], ],
'vlan': [Vlan.PRETTY_NAME, Vlan.objects.count()], 'vlan': [Vlan.PRETTY_NAME, Vlan.objects.count()],
'SOA': [Mx.PRETTY_NAME, Mx.objects.count()], 'SOA': [SOA.PRETTY_NAME, SOA.objects.count()],
'Mx': [Mx.PRETTY_NAME, Mx.objects.count()], 'Mx': [Mx.PRETTY_NAME, Mx.objects.count()],
'Ns': [Ns.PRETTY_NAME, Ns.objects.count()], 'Ns': [Ns.PRETTY_NAME, Ns.objects.count()],
'nas': [Nas.PRETTY_NAME, Nas.objects.count()], 'nas': [Nas.PRETTY_NAME, Nas.objects.count()],
@ -368,7 +381,7 @@ def stats_models(request):
@login_required @login_required
@permission_required('cableur') @can_view_app('users')
def stats_users(request): def stats_users(request):
"""Affiche les statistiques base de données aggrégées par user : """Affiche les statistiques base de données aggrégées par user :
nombre de machines par user, d'etablissements par user, nombre de machines par user, d'etablissements par user,
@ -422,7 +435,7 @@ def stats_users(request):
@login_required @login_required
@permission_required('cableur') @can_view_app('users')
def stats_actions(request): def stats_actions(request):
"""Vue qui affiche les statistiques de modifications d'objets par """Vue qui affiche les statistiques de modifications d'objets par
utilisateurs. utilisateurs.