forked from DGNum/gestioCOF
The end of Clipper
GestioCOF fetches the clipper accounts from an LDAP database and doesn't need to store clippers in a table anymore.
This commit is contained in:
parent
6e5c3c8c33
commit
3c7558c853
13 changed files with 133 additions and 114 deletions
|
@ -22,7 +22,7 @@ from django.db.models import F, Sum, Prefetch, Count, Func
|
|||
from django.db.models.functions import Coalesce
|
||||
from django.utils import timezone
|
||||
from django.utils.crypto import get_random_string
|
||||
from gestioncof.models import CofProfile, Clipper
|
||||
from gestioncof.models import CofProfile
|
||||
from kfet.decorators import teamkfet_required
|
||||
from kfet.models import (Account, Checkout, Article, Settings, AccountNegative,
|
||||
CheckoutStatement, GenericTeamToken, Supplier, SupplierArticle, Inventory,
|
||||
|
@ -216,19 +216,20 @@ def account_form_set_readonly_fields(user_form, cof_form):
|
|||
cof_form.fields['login_clipper'].widget.attrs['readonly'] = True
|
||||
cof_form.fields['is_cof'].widget.attrs['disabled'] = True
|
||||
|
||||
def get_account_create_forms(request=None, username=None, login_clipper=None):
|
||||
def get_account_create_forms(request=None, username=None, login_clipper=None,
|
||||
fullname=None):
|
||||
user = None
|
||||
clipper = None
|
||||
clipper = False
|
||||
if login_clipper and (login_clipper == username or not username):
|
||||
# à partir d'un clipper
|
||||
# le user associé à ce clipper ne devrait pas encore exister
|
||||
clipper = get_object_or_404(Clipper, username = login_clipper)
|
||||
clipper = True
|
||||
try:
|
||||
# Vérification que clipper ne soit pas déjà dans User
|
||||
user = User.objects.get(username=login_clipper)
|
||||
# Ici, on nous a menti, le user existe déjà
|
||||
username = user.username
|
||||
clipper = None
|
||||
clipper = False
|
||||
except User.DoesNotExist:
|
||||
# Clipper (sans user déjà existant)
|
||||
|
||||
|
@ -236,9 +237,9 @@ def get_account_create_forms(request=None, username=None, login_clipper=None):
|
|||
user_initial = {
|
||||
'username' : login_clipper,
|
||||
'email' : "%s@clipper.ens.fr" % login_clipper}
|
||||
if clipper.fullname:
|
||||
if fullname:
|
||||
# Prefill du nom et prénom
|
||||
names = clipper.fullname.split()
|
||||
names = fullname.split()
|
||||
# Le premier, c'est le prénom
|
||||
user_initial['first_name'] = names[0]
|
||||
if len(names) > 1:
|
||||
|
@ -302,8 +303,11 @@ def get_account_create_forms(request=None, username=None, login_clipper=None):
|
|||
|
||||
@login_required
|
||||
@teamkfet_required
|
||||
def account_create_ajax(request, username=None, login_clipper=None):
|
||||
forms = get_account_create_forms(request=None, username=username, login_clipper=login_clipper)
|
||||
def account_create_ajax(request, username=None, login_clipper=None,
|
||||
fullname=None):
|
||||
forms = get_account_create_forms(
|
||||
request=None, username=username, login_clipper=login_clipper,
|
||||
fullname=fullname)
|
||||
return render(request, "kfet/account_create_form.html", {
|
||||
'account_form' : forms['account_form'],
|
||||
'cof_form' : forms['cof_form'],
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue