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

pep8 et pylint

This commit is contained in:
Maël Kervella 2017-11-02 19:58:20 +00:00
parent a5eb204c37
commit e5fbbec283
4 changed files with 42 additions and 44 deletions

View file

@ -21,8 +21,8 @@
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""The field used in the admin view for the search app"""
from __future__ import unicode_literals from __future__ import unicode_literals
from django.contrib import admin
# Register your models here. # Register your models here.

View file

@ -20,6 +20,8 @@
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""The forms used by the search app"""
from __future__ import unicode_literals from __future__ import unicode_literals
from django import forms from django import forms
@ -44,14 +46,18 @@ CHOICES_AFF = (
def initial_choices(c): def initial_choices(c):
"""Return the choices that should be activated by default for a
given set of choices"""
return [i[0] for i in c] return [i[0] for i in c]
class SearchForm(Form): class SearchForm(Form):
"""The form for a simple search"""
q = forms.CharField(label='Search', max_length=100) q = forms.CharField(label='Search', max_length=100)
class SearchFormPlus(Form): class SearchFormPlus(Form):
"""The form for an advanced search (with filters)"""
q = forms.CharField( q = forms.CharField(
label='Search', label='Search',
max_length=100, max_length=100,

View file

@ -20,6 +20,8 @@
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
"""The urls used by the search app"""
from __future__ import unicode_literals from __future__ import unicode_literals
from django.conf.urls import url from django.conf.urls import url

View file

@ -20,21 +20,19 @@
# with this program; if not, write to the Free Software Foundation, Inc., # with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# App de recherche pour re2o """The views for the search app, responsible for finding the matches
# Augustin lemesle, Gabriel Détraz, Goulven Kermarec Augustin lemesle, Gabriel Détraz, Goulven Kermarec, Maël Kervella
# Gplv2 Gplv2"""
from __future__ import unicode_literals from __future__ import unicode_literals
from django.shortcuts import render from django.shortcuts import render
from django.shortcuts import get_object_or_404
from django.template.context_processors import csrf
from django.template import Context, RequestContext, loader
from django.contrib.auth.decorators import login_required from django.contrib.auth.decorators import login_required
from django.db.models import Q from django.db.models import Q
from users.models import User, Ban, Whitelist from users.models import User, Ban, Whitelist
from machines.models import Machine, Interface from machines.models import Machine
from topologie.models import Port, Switch, Room from topologie.models import Port, Switch, Room
from cotisations.models import Facture from cotisations.models import Facture
from preferences.models import GeneralOption from preferences.models import GeneralOption
@ -72,36 +70,24 @@ def get_results(query, request, filters={}):
user_state = filters.get('u', initial_choices(CHOICES_USER)) user_state = filters.get('u', initial_choices(CHOICES_USER))
aff = filters.get('a', initial_choices(CHOICES_AFF)) aff = filters.get('a', initial_choices(CHOICES_AFF))
options, created = GeneralOption.objects.get_or_create() options, _ = GeneralOption.objects.get_or_create()
max_result = options.search_display_page max_result = options.search_display_page
user_state_filter = Q() user_state_filter = Q()
for s in user_state: for state in user_state:
user_state_filter |= Q(state = s) user_state_filter |= Q(state=state)
connexion = []
results = { results = {
'users_list': User.objects.none(), 'users_list': User.objects.none(),
'machines_list' : Machine.objects.none(), 'machines_list': Machine.objects.none(),
'factures_list' : Facture.objects.none(), 'factures_list': Facture.objects.none(),
'bans_list' : Ban.objects.none(), 'bans_list': Ban.objects.none(),
'whitelists_list': Whitelist.objects.none(), 'whitelists_list': Whitelist.objects.none(),
'rooms_list': Room.objects.none(), 'rooms_list': Room.objects.none(),
'switch_ports_list': Port.objects.none(), 'switch_ports_list': Port.objects.none(),
'switches_list': Switch.objects.none() 'switches_list': Switch.objects.none()
} }
users_filter = Q(
user__pseudo__icontains=query
) | Q(
user__adherent__name__icontains=query
) | Q(
user__surname__icontains=query
)
if not request.user.has_perms(('cableur',)):
users_filter &= Q(user=request.user)
# Users # Users
if '0' in aff: if '0' in aff:
filter_user_list = Q( filter_user_list = Q(
@ -155,9 +141,9 @@ def get_results(query, request, filters={}):
filter_facture_list = Q( filter_facture_list = Q(
user__pseudo__icontains=query user__pseudo__icontains=query
) )
if start != None: if start is not None:
filter_facture_list &= Q(date__gte=start) filter_facture_list &= Q(date__gte=start)
if end != None: if end is not None:
filter_facture_list &= Q(date__lte=end) filter_facture_list &= Q(date__lte=end)
results['factures_list'] = Facture.objects.filter(filter_facture_list) results['factures_list'] = Facture.objects.filter(filter_facture_list)
results['factures_list'] = SortTable.sort( results['factures_list'] = SortTable.sort(
@ -174,7 +160,7 @@ def get_results(query, request, filters={}):
) | Q( ) | Q(
raison__icontains=query raison__icontains=query
) )
if start != None: if start is not None:
date_filter &= ( date_filter &= (
Q(date_start__gte=start) & Q(date_end__gte=start) Q(date_start__gte=start) & Q(date_end__gte=start)
) | ( ) | (
@ -182,7 +168,7 @@ def get_results(query, request, filters={}):
) | ( ) | (
Q(date_start__gte=start) & Q(date_end__lte=start) Q(date_start__gte=start) & Q(date_end__lte=start)
) )
if end != None: if end is not None:
date_filter &= ( date_filter &= (
Q(date_start__lte=end) & Q(date_end__lte=end) Q(date_start__lte=end) & Q(date_end__lte=end)
) | ( ) | (
@ -205,7 +191,7 @@ def get_results(query, request, filters={}):
) | Q( ) | Q(
raison__icontains=query raison__icontains=query
) )
if start != None: if start is not None:
date_filter &= ( date_filter &= (
Q(date_start__gte=start) & Q(date_end__gte=start) Q(date_start__gte=start) & Q(date_end__gte=start)
) | ( ) | (
@ -213,7 +199,7 @@ def get_results(query, request, filters={}):
) | ( ) | (
Q(date_start__gte=start) & Q(date_end__lte=start) Q(date_start__gte=start) & Q(date_end__lte=start)
) )
if end != None: if end is not None:
date_filter &= ( date_filter &= (
Q(date_start__lte=end) & Q(date_end__lte=end) Q(date_start__lte=end) & Q(date_end__lte=end)
) | ( ) | (
@ -248,7 +234,7 @@ def get_results(query, request, filters={}):
# Switch ports # Switch ports
if '6' in aff and request.user.has_perms(('cableur',)): if '6' in aff and request.user.has_perms(('cableur',)):
filter_switch_ports_list = Q( filter_ports_list = Q(
room__name__icontains=query room__name__icontains=query
) | Q( ) | Q(
machine_interface__domain__name__icontains=query machine_interface__domain__name__icontains=query
@ -262,10 +248,10 @@ def get_results(query, request, filters={}):
details__icontains=query details__icontains=query
) )
if is_int(query): if is_int(query):
filter_switch_ports_list |= Q( filter_ports_list |= Q(
port=query port=query
) )
results['switch_ports_list'] = Port.objects.filter(filter_switch_ports_list) results['switch_ports_list'] = Port.objects.filter(filter_ports_list)
results['switch_ports_list'] = SortTable.sort( results['switch_ports_list'] = SortTable.sort(
results['switch_ports_list'], results['switch_ports_list'],
request.GET.get('col'), request.GET.get('col'),
@ -275,7 +261,7 @@ def get_results(query, request, filters={}):
# Switches # Switches
if '7' in aff and request.user.has_perms(('cableur',)): if '7' in aff and request.user.has_perms(('cableur',)):
filter_switches = Q( filter_switches_list = Q(
switch_interface__domain__name__icontains=query switch_interface__domain__name__icontains=query
) | Q( ) | Q(
switch_interface__ipv4__ipv4__icontains=query switch_interface__ipv4__ipv4__icontains=query
@ -291,12 +277,12 @@ def get_results(query, request, filters={}):
details__icontains=query details__icontains=query
) )
if is_int(query): if is_int(query):
filter_switch_ports_list |= Q( filter_switches_list |= Q(
number=query number=query
) | Q( ) | Q(
stack_member_id=query stack_member_id=query
) )
results['switches_list'] = Switch.objects.filter(filter_switches) results['switches_list'] = Switch.objects.filter(filter_switches_list)
results['switches_list'] = SortTable.sort( results['switches_list'] = SortTable.sort(
results['switches_list'], results['switches_list'],
request.GET.get('col'), request.GET.get('col'),
@ -304,16 +290,18 @@ def get_results(query, request, filters={}):
SortTable.TOPOLOGIE_INDEX SortTable.TOPOLOGIE_INDEX
) )
for r in results.keys(): for name, val in results.items():
results[r] = results[r].distinct()[:max_result] results[name] = val.distinct()[:max_result]
results.update({'max_result': max_result}) results.update({'max_result': max_result})
results.update({'search_term': query}) results.update({'search_term': query})
return results return results
@login_required @login_required
def search(request): def search(request):
""" La page de recherche standard """
search_form = SearchForm(request.GET or None) search_form = SearchForm(request.GET or None)
if search_form.is_valid(): if search_form.is_valid():
return render( return render(
@ -325,10 +313,12 @@ def search(request):
search_form.cleaned_data search_form.cleaned_data
) )
) )
return render(request, 'search/search.html', {'search_form' : search_form}) return render(request, 'search/search.html', {'search_form': search_form})
@login_required @login_required
def searchp(request): def searchp(request):
""" La page de recherche avancée """
search_form = SearchFormPlus(request.GET or None) search_form = SearchFormPlus(request.GET or None)
if search_form.is_valid(): if search_form.is_valid():
return render( return render(
@ -340,4 +330,4 @@ def searchp(request):
search_form.cleaned_data search_form.cleaned_data
) )
) )
return render(request, 'search/search.html', {'search_form' : search_form}) return render(request, 'search/search.html', {'search_form': search_form})