From 9a292d38d866cae3ccf16362cd1400168ef1b7f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABl=20Kervella?= Date: Thu, 2 Nov 2017 19:58:20 +0000 Subject: [PATCH] pep8 et pylint --- search/admin.py | 4 +-- search/forms.py | 6 ++++ search/urls.py | 2 ++ search/views.py | 74 +++++++++++++++++++++---------------------------- 4 files changed, 42 insertions(+), 44 deletions(-) diff --git a/search/admin.py b/search/admin.py index bcdc4f1d..decd096a 100644 --- a/search/admin.py +++ b/search/admin.py @@ -21,8 +21,8 @@ # with this program; if not, write to the Free Software Foundation, Inc., # 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 django.contrib import admin - # Register your models here. diff --git a/search/forms.py b/search/forms.py index 1a40899a..90f7407f 100644 --- a/search/forms.py +++ b/search/forms.py @@ -20,6 +20,8 @@ # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +"""The forms used by the search app""" + from __future__ import unicode_literals from django import forms @@ -44,14 +46,18 @@ CHOICES_AFF = ( 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] class SearchForm(Form): + """The form for a simple search""" q = forms.CharField(label='Search', max_length=100) class SearchFormPlus(Form): + """The form for an advanced search (with filters)""" q = forms.CharField( label='Search', max_length=100, diff --git a/search/urls.py b/search/urls.py index d7cb537f..93baa267 100644 --- a/search/urls.py +++ b/search/urls.py @@ -20,6 +20,8 @@ # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +"""The urls used by the search app""" + from __future__ import unicode_literals from django.conf.urls import url diff --git a/search/views.py b/search/views.py index b6979dec..2efbe9c7 100644 --- a/search/views.py +++ b/search/views.py @@ -20,21 +20,19 @@ # with this program; if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# App de recherche pour re2o -# Augustin lemesle, Gabriel Détraz, Goulven Kermarec -# Gplv2 +"""The views for the search app, responsible for finding the matches +Augustin lemesle, Gabriel Détraz, Goulven Kermarec, Maël Kervella +Gplv2""" + from __future__ import unicode_literals 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.db.models import Q 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 cotisations.models import Facture from preferences.models import GeneralOption @@ -72,36 +70,24 @@ def get_results(query, request, filters={}): user_state = filters.get('u', initial_choices(CHOICES_USER)) 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 user_state_filter = Q() - for s in user_state: - user_state_filter |= Q(state = s) - - connexion = [] - + for state in user_state: + user_state_filter |= Q(state=state) + results = { 'users_list': User.objects.none(), - 'machines_list' : Machine.objects.none(), - 'factures_list' : Facture.objects.none(), - 'bans_list' : Ban.objects.none(), + 'machines_list': Machine.objects.none(), + 'factures_list': Facture.objects.none(), + 'bans_list': Ban.objects.none(), 'whitelists_list': Whitelist.objects.none(), 'rooms_list': Room.objects.none(), 'switch_ports_list': Port.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 if '0' in aff: filter_user_list = Q( @@ -155,9 +141,9 @@ def get_results(query, request, filters={}): filter_facture_list = Q( user__pseudo__icontains=query ) - if start != None: + if start is not None: filter_facture_list &= Q(date__gte=start) - if end != None: + if end is not None: filter_facture_list &= Q(date__lte=end) results['factures_list'] = Facture.objects.filter(filter_facture_list) results['factures_list'] = SortTable.sort( @@ -174,7 +160,7 @@ def get_results(query, request, filters={}): ) | Q( raison__icontains=query ) - if start != None: + if start is not None: date_filter &= ( 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) ) - if end != None: + if end is not None: date_filter &= ( Q(date_start__lte=end) & Q(date_end__lte=end) ) | ( @@ -205,7 +191,7 @@ def get_results(query, request, filters={}): ) | Q( raison__icontains=query ) - if start != None: + if start is not None: date_filter &= ( 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) ) - if end != None: + if end is not None: date_filter &= ( Q(date_start__lte=end) & Q(date_end__lte=end) ) | ( @@ -248,7 +234,7 @@ def get_results(query, request, filters={}): # Switch ports if '6' in aff and request.user.has_perms(('cableur',)): - filter_switch_ports_list = Q( + filter_ports_list = Q( room__name__icontains=query ) | Q( machine_interface__domain__name__icontains=query @@ -262,10 +248,10 @@ def get_results(query, request, filters={}): details__icontains=query ) if is_int(query): - filter_switch_ports_list |= Q( + filter_ports_list |= Q( 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'], request.GET.get('col'), @@ -275,7 +261,7 @@ def get_results(query, request, filters={}): # Switches if '7' in aff and request.user.has_perms(('cableur',)): - filter_switches = Q( + filter_switches_list = Q( switch_interface__domain__name__icontains=query ) | Q( switch_interface__ipv4__ipv4__icontains=query @@ -291,12 +277,12 @@ def get_results(query, request, filters={}): details__icontains=query ) if is_int(query): - filter_switch_ports_list |= Q( + filter_switches_list |= Q( number=query ) | Q( 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'], request.GET.get('col'), @@ -304,16 +290,18 @@ def get_results(query, request, filters={}): SortTable.TOPOLOGIE_INDEX ) - for r in results.keys(): - results[r] = results[r].distinct()[:max_result] + for name, val in results.items(): + results[name] = val.distinct()[:max_result] results.update({'max_result': max_result}) results.update({'search_term': query}) return results + @login_required def search(request): + """ La page de recherche standard """ search_form = SearchForm(request.GET or None) if search_form.is_valid(): return render( @@ -325,10 +313,12 @@ def search(request): 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 def searchp(request): + """ La page de recherche avancée """ search_form = SearchFormPlus(request.GET or None) if search_form.is_valid(): return render( @@ -340,4 +330,4 @@ def searchp(request): search_form.cleaned_data ) ) - return render(request, 'search/search.html', {'search_form' : search_form}) + return render(request, 'search/search.html', {'search_form': search_form})