Commit bbc00fdb authored by Gabriel Detraz's avatar Gabriel Detraz Committed by root

Ajoute unicode literals + attribue les ip à l'enregistrement auto en fonction du nas

parent 3a1b4c3b
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.contrib import admin from django.contrib import admin
from reversion.admin import VersionAdmin from reversion.admin import VersionAdmin
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django import forms from django import forms
from django.forms import ModelForm, Form from django.forms import ModelForm, Form
from django import forms from django import forms
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.db import models from django.db import models
from django.db.models.signals import post_save, post_delete from django.db.models.signals import post_save, post_delete
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.conf.urls import url from django.conf.urls import url
from . import views from . import views
......
...@@ -23,6 +23,8 @@ ...@@ -23,6 +23,8 @@
# App de gestion des users pour re2o # App de gestion des users pour re2o
# Goulven Kermarec, Gabriel Détraz # Goulven Kermarec, Gabriel Détraz
# Gplv2 # Gplv2
from __future__ import unicode_literals
from django.shortcuts import render, redirect from django.shortcuts import render, redirect
from django.shortcuts import get_object_or_404 from django.shortcuts import get_object_or_404
from django.template.context_processors import csrf from django.template.context_processors import csrf
......
...@@ -32,6 +32,8 @@ Inspirés d'autres exemples trouvés ici : ...@@ -32,6 +32,8 @@ Inspirés d'autres exemples trouvés ici :
https://github.com/FreeRADIUS/freeradius-server/blob/master/src/modules/rlm_python/ https://github.com/FreeRADIUS/freeradius-server/blob/master/src/modules/rlm_python/
""" """
from __future__ import unicode_literals
import logging import logging
import netaddr import netaddr
import radiusd # Module magique freeradius (radiusd.py is dummy) import radiusd # Module magique freeradius (radiusd.py is dummy)
...@@ -238,8 +240,9 @@ def detach(_=None): ...@@ -238,8 +240,9 @@ def detach(_=None):
def decide_vlan_and_register_macauth(switch_id, port_number, mac_address): def decide_vlan_and_register_macauth(switch_id, port_number, mac_address):
# Get port from switch and port number # Get port from switch and port number
switch = Switch.objects.filter(switch_interface=Interface.objects.filter(Q(ipv4=IpList.objects.filter(ipv4=switch_id)) | Q(domain=Domain.objects.filter(name=switch_id)))) ipv4 = IpList.objects.filter(ipv4=switch_id)
if not switch: switch = Switch.objects.filter(switch_interface=Interface.objects.filter(Q(ipv4=ipv4) | Q(domain=Domain.objects.filter(name=switch_id))))
if not switch or not ipv4:
return ('?', 'Switch inconnu', VLAN_OK) return ('?', 'Switch inconnu', VLAN_OK)
sw_name = str(switch.first().switch_interface) sw_name = str(switch.first().switch_interface)
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.contrib import admin from django.contrib import admin
# Register your models here. # Register your models here.
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.db import models from django.db import models
# Create your models here. # Create your models here.
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.conf.urls import url from django.conf.urls import url
from . import views from . import views
......
...@@ -23,6 +23,9 @@ ...@@ -23,6 +23,9 @@
# App de gestion des statistiques pour re2o # App de gestion des statistiques pour re2o
# Gabriel Détraz # Gabriel Détraz
# Gplv2 # Gplv2
from __future__ import unicode_literals
from django.http import HttpResponse from django.http import HttpResponse
from django.shortcuts import render, redirect from django.shortcuts import render, redirect
from django.shortcuts import get_object_or_404 from django.shortcuts import get_object_or_404
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.contrib import admin from django.contrib import admin
from reversion.admin import VersionAdmin from reversion.admin import VersionAdmin
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.forms import ModelForm, Form, ValidationError from django.forms import ModelForm, Form, ValidationError
from django import forms from django import forms
from .models import Domain, Machine, Interface, IpList, MachineType, Extension, Mx, Text, Ns, Service, Vlan, Nas, IpType from .models import Domain, Machine, Interface, IpList, MachineType, Extension, Mx, Text, Ns, Service, Vlan, Nas, IpType
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.db import models from django.db import models
from django.db.models.signals import post_save, pre_delete, post_delete from django.db.models.signals import post_save, pre_delete, post_delete
from django.dispatch import receiver from django.dispatch import receiver
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.conf.urls import url from django.conf.urls import url
from . import views from . import views
......
...@@ -23,6 +23,9 @@ ...@@ -23,6 +23,9 @@
# App de gestion des machines pour re2o # App de gestion des machines pour re2o
# Gabriel Détraz, Augustin Lemesle # Gabriel Détraz, Augustin Lemesle
# Gplv2 # Gplv2
from __future__ import unicode_literals
from django.http import HttpResponse from django.http import HttpResponse
from django.shortcuts import render, redirect from django.shortcuts import render, redirect
from django.shortcuts import get_object_or_404 from django.shortcuts import get_object_or_404
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.contrib import admin from django.contrib import admin
from reversion.admin import VersionAdmin from reversion.admin import VersionAdmin
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.forms import ModelForm, Form, ValidationError from django.forms import ModelForm, Form, ValidationError
from django import forms from django import forms
from .models import OptionalUser, OptionalMachine, OptionalTopologie, GeneralOption, AssoOption, MailMessageOption, Service from .models import OptionalUser, OptionalMachine, OptionalTopologie, GeneralOption, AssoOption, MailMessageOption, Service
......
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
# 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.
from __future__ import unicode_literals
from django.db import models from django.db import models
from cotisations.models import Paiement from cotisations.models import Paiement
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.conf.urls import url from django.conf.urls import url
from . import views from . import views
......
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
# Gabriel Détraz, Augustin Lemesle # Gabriel Détraz, Augustin Lemesle
# Gplv2 # Gplv2
from __future__ import unicode_literals
from django.shortcuts import render from django.shortcuts import render
from django.shortcuts import get_object_or_404, render, redirect from django.shortcuts import get_object_or_404, render, redirect
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from machines.models import Interface, Machine from machines.models import Interface, Machine
from preferences.models import GeneralOption from preferences.models import GeneralOption
......
...@@ -33,6 +33,8 @@ For the full list of settings and their values, see ...@@ -33,6 +33,8 @@ For the full list of settings and their values, see
https://docs.djangoproject.com/en/1.8/ref/settings/ https://docs.djangoproject.com/en/1.8/ref/settings/
""" """
from __future__ import unicode_literals
# Build paths inside the project like this: os.path.join(BASE_DIR, ...) # Build paths inside the project like this: os.path.join(BASE_DIR, ...)
import os import os
from .settings_local import * from .settings_local import *
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
SECRET_KEY = 'SUPER_SECRET_KEY' SECRET_KEY = 'SUPER_SECRET_KEY'
DB_PASSWORD = 'SUPER_SECRET_DB' DB_PASSWORD = 'SUPER_SECRET_DB'
......
...@@ -34,6 +34,8 @@ Class-based views ...@@ -34,6 +34,8 @@ Class-based views
Including another URLconf Including another URLconf
1. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls')) 1. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls'))
""" """
from __future__ import unicode_literals
from django.conf.urls import include, url from django.conf.urls import include, url
from django.contrib import admin from django.contrib import admin
from django.contrib.auth import views as auth_views from django.contrib.auth import views as auth_views
......
...@@ -20,6 +20,8 @@ ...@@ -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.
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.shortcuts import get_object_or_404
from django.template.context_processors import csrf from django.template.context_processors import csrf
......
...@@ -29,6 +29,8 @@ For more information on this file, see ...@@ -29,6 +29,8 @@ For more information on this file, see
https://docs.djangoproject.com/en/1.8/howto/deployment/wsgi/ https://docs.djangoproject.com/en/1.8/howto/deployment/wsgi/
""" """
from __future__ import unicode_literals
import os import os
from django.core.wsgi import get_wsgi_application from django.core.wsgi import get_wsgi_application
from os.path import dirname from os.path import dirname
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.contrib import admin from django.contrib import admin
# Register your models here. # Register your models here.
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.db.models import Q from django.db.models import Q
from simple_search import BaseSearchForm from simple_search import BaseSearchForm
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.db import models from django.db import models
from django import forms from django import forms
from django.forms import Form from django.forms import Form
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.conf.urls import url from django.conf.urls import url
from . import views from . import views
......
...@@ -23,6 +23,9 @@ ...@@ -23,6 +23,9 @@
# App de recherche pour re2o # App de recherche pour re2o
# Augustin lemesle, Gabriel Détraz, Goulven Kermarec # Augustin lemesle, Gabriel Détraz, Goulven Kermarec
# Gplv2 # Gplv2
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.shortcuts import get_object_or_404
from django.template.context_processors import csrf from django.template.context_processors import csrf
......
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
# 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.
from __future__ import unicode_literals
from django.contrib import admin from django.contrib import admin
from reversion.admin import VersionAdmin from reversion.admin import VersionAdmin
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from .models import Port, Switch, Room, Stack from .models import Port, Switch, Room, Stack
from django.forms import ModelForm, Form from django.forms import ModelForm, Form
from machines.models import Interface from machines.models import Interface
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.db import models from django.db import models
from django.db.models.signals import post_delete from django.db.models.signals import post_delete
from django.dispatch import receiver from django.dispatch import receiver
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.conf.urls import url from django.conf.urls import url
from . import views from . import views
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.shortcuts import render, redirect from django.shortcuts import render, redirect
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, permission_required
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.contrib import admin from django.contrib import admin
from django.contrib.auth.models import Group from django.contrib.auth.models import Group
from django.contrib.auth.admin import UserAdmin as BaseUserAdmin from django.contrib.auth.admin import UserAdmin as BaseUserAdmin
......
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django import forms from django import forms
from django.forms import ModelForm, Form from django.forms import ModelForm, Form
......
...@@ -21,6 +21,8 @@ ...@@ -21,6 +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.
from __future__ import unicode_literals
from django.db import models from django.db import models
from django.db.models import Q from django.db.models import Q
from django import forms from django import forms
...@@ -47,7 +49,7 @@ from django.contrib.auth.models import AbstractBaseUser, BaseUserManager ...@@ -47,7 +49,7 @@ from django.contrib.auth.models import AbstractBaseUser, BaseUserManager
from django.core.validators import MinLengthValidator from django.core.validators import MinLengthValidator
from topologie.models import Room from topologie.models import Room
from cotisations.models import Cotisation, Facture, Paiement, Vente from cotisations.models import Cotisation, Facture, Paiement, Vente
from machines.models import Domain, Interface, MachineType, Machine, regen from machines.models import Domain, Interface, MachineType, Machine, Nas, MachineType, regen
from preferences.models import GeneralOption, AssoOption, OptionalUser, OptionalMachine, MailMessageOption from preferences.models import GeneralOption, AssoOption, OptionalUser, OptionalMachine, MailMessageOption
now = timezone.now() now = timezone.now()
...@@ -453,17 +455,21 @@ class User(AbstractBaseUser): ...@@ -453,17 +455,21 @@ class User(AbstractBaseUser):
general_options.email_from, [req.user.email], fail_silently=False) general_options.email_from, [req.user.email], fail_silently=False)
return return
def autoregister_machine(self, mac_address): def autoregister_machine(self, mac_address, nas_ip):
all_machines = self.all_machines() all_machines = self.all_machines()
options, created = OptionalMachine.objects.get_or_create() options, created = OptionalMachine.objects.get_or_create()
if all_macines.count() > options.max_lambdauser_interfaces: if all_machines.count() > options.max_lambdauser_interfaces:
return False, "Maximum de machines enregistrees atteinte" return False, "Maximum de machines enregistrees atteinte"
nas_object = Nas.objects.filter(nas_type__in=MachineType.objects.filter(ip_type=nas_ip.ip_type))
if not nas_object:
return False, "Re2o ne sait pas à quel machinetype affecter cette machine"
machine_type_cible = nas_object.first().machine_type
try: try:
machine_parent = Machine() machine_parent = Machine()
machine_parent.user = self machine_parent.user = self
interface_cible = Interface() interface_cible = Interface()
interface_cible.mac_address = mac_address interface_cible.mac_address = mac_address
interface_cible.type = MachineType.objects.all().first() interface_cible.type = machine_type_cible
interface_cible.clean() interface_cible.clean()
machine_parent.clean() machine_parent.clean()
domain = Domain() domain = Domain()
...@@ -481,7 +487,7 @@ class User(AbstractBaseUser): ...@@ -481,7 +487,7 @@ class User(AbstractBaseUser):
return True, "Ok" return True, "Ok"
def all_machines(self): def all_machines(self):
return Interfaces.objects.filter(machine__in=Machine.objects.filter(user=self)) return Interface.objects.filter(machine__in=Machine.objects.filter(user=self))
def __str__(self): def __str__(self):
return self.pseudo return self.pseudo
......
...@@ -20,6 +20,8 @@ ...@@ -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.
from __future__ import unicode_literals
from django.conf.urls import url from django.conf.urls import url
from . import views from . import views
......
...@@ -23,6 +23,9 @@ ...@@ -23,6 +23,9 @@
# App de gestion des users pour re2o # App de gestion des users pour re2o
# Goulven Kermarec, Gabriel Détraz, Lemesle Augustin # Goulven Kermarec, Gabriel Détraz, Lemesle Augustin
# Gplv2 # Gplv2
from __future__ import unicode_literals
from django.shortcuts import get_object_or_404, render, redirect from django.shortcuts import get_object_or_404, render, redirect
from django.template.context_processors import csrf from django.template.context_processors import csrf
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment