POC Campus Condorcet : recuperation des etablissements et unites, part1
cf doc d'analyse v0.4 (formulaire inscription, partie hote) : * Etablissement invitant (liste de valeurs basee sur ou=structures) (choix unique) (facultatif) * Unite ou service invitant (liste de valeurs basee sur ou=structures) (choix unique) (facultatif)
This commit is contained in:
parent
0e0626bde4
commit
56689e9b43
|
@ -1,4 +1,5 @@
|
|||
from django import forms
|
||||
from .utils import ldap_get_etablissements, ldap_get_unites
|
||||
|
||||
|
||||
AFFILIATION_CHOICES = (
|
||||
|
@ -17,12 +18,22 @@ AFFECTATION_CHOICES = (
|
|||
('R', 'Rouge'),
|
||||
)
|
||||
|
||||
ETABLISSEMENT_CHOICES = (
|
||||
('0', 'Etablissement 0'),
|
||||
('1', 'Etablissement 1'),
|
||||
)
|
||||
|
||||
UNITE_CHOICES = (
|
||||
('0', 'Unite 0'),
|
||||
('1', 'Unite 1'),
|
||||
)
|
||||
|
||||
class UnitAssignmentForm(forms.Form):
|
||||
unit = forms.CharField(max_length=100, label="Unite d'affectation")
|
||||
nom = forms.CharField(max_length=100, label="Nom")
|
||||
prenom = forms.CharField(max_length=100, label="Prenom")
|
||||
email = forms.CharField(max_length=100, label="Courriel")
|
||||
nameid = forms.CharField(max_length=100, label="NameID") #Obsolete
|
||||
nameid = forms.CharField(max_length=100, label="NameID") # deprecated
|
||||
|
||||
# Attributes from the Internet2 eduPerson and RENATER SupAnn2009 specifications.
|
||||
# ep_* -> eduPerson attributes:
|
||||
|
@ -45,6 +56,15 @@ class UnitAssignmentForm(forms.Form):
|
|||
s_emp_corps = forms.CharField(max_length=100, label="Corps d'appartenance") # supannEmpCorps
|
||||
s_liste_rouge = forms.BooleanField(initial=True, label="Liste rouge") # supannListeRouge
|
||||
|
||||
# hote_* -> host attributes:
|
||||
hote_nom = forms.CharField(max_length=100, label="Nom de la personne invitante")
|
||||
hote_prenom = forms.CharField(max_length=100, label="Prenom de la personne invitante")
|
||||
hote_etablissement = forms.ChoiceField(required=False,
|
||||
choices=ETABLISSEMENT_CHOICES,
|
||||
label="Etablissement invitant")
|
||||
hote_unite = forms.ChoiceField(required=False,
|
||||
choices=UNITE_CHOICES,
|
||||
label="Unite invitante")
|
||||
|
||||
class Meta:
|
||||
widgets= {'form' : forms.HiddenInput()}
|
||||
|
|
|
@ -6,7 +6,11 @@ from urllib2 import build_opener, HTTPHandler, Request, HTTPError
|
|||
from mellon.models import UserSAMLIdentifier
|
||||
from django.conf import settings
|
||||
|
||||
base = "ou=supannPeople,dc=condorcet,dc=dev,dc=entrouvert,dc=org"
|
||||
rootdn = 'dc=condorcet,dc=dev,dc=entrouvert,dc=org'
|
||||
people_base = 'ou=supannPeople,'+rootdn
|
||||
structures_base = 'ou=structures,'+rootdn
|
||||
groups_base = 'ou=Groups,'+rootdn
|
||||
|
||||
scope = ldap.SCOPE_SUBTREE
|
||||
pocform = 'traitement_supann'
|
||||
wcs = 'http://forms-condorcet.dev.entrouvert.org/'
|
||||
|
@ -30,6 +34,24 @@ def ldap_init():
|
|||
l = None
|
||||
return l
|
||||
|
||||
def ldap_get_etablissements():
|
||||
l = ldap_init()
|
||||
res = l.search(structures_base, scope, filter, None)
|
||||
|
||||
import pdb; pdb.set_trace()
|
||||
ldap_terminate(l)
|
||||
#return ['Etablissement 0', 'Etablissement 1']
|
||||
return 0
|
||||
|
||||
def ldap_get_unites():
|
||||
l = ldap_init()
|
||||
res = l.search(structures_base, scope, filter, None)
|
||||
|
||||
import pdb; pdb.set_trace()
|
||||
ldap_terminate(l)
|
||||
#return ['Unite 0', 'Unite 1']
|
||||
return 0
|
||||
|
||||
def ldap_terminate(l):
|
||||
l.unbind()
|
||||
|
||||
|
@ -41,7 +63,7 @@ def ldap_is_in_directory(id):
|
|||
l = ldap_init()
|
||||
|
||||
# Look for a user possessing the same uid:
|
||||
res = l.search(base, scope, filter, None)
|
||||
res = l.search(people_base, scope, filter, None)
|
||||
rtype, rdata = l.result(res, 0)
|
||||
|
||||
ldap_terminate(l)
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
dn: ou=etablissement0,ou=structures,dc=condorcet,dc=dev,dc=entrouvert,dc=org
|
||||
objectClass: organizationalUnit
|
||||
objectClass: supannEntite
|
||||
objectClass: supannOrg
|
||||
ou: etablissement0
|
||||
supannCodeEntite: ETA0
|
||||
supannEtablissement: {UAI}ETA0
|
Reference in New Issue