store: only keep first name, last name, email and username as required
This commit is contained in:
parent
203a370989
commit
ac1f4a3f8a
|
@ -1,7 +1,6 @@
|
|||
import random
|
||||
|
||||
import ldap
|
||||
from qommon.publisher import utf82sitecharset, sitecharset2utf8
|
||||
from qommon import get_logger
|
||||
from quixote import get_response
|
||||
import authentic.identities
|
||||
|
@ -15,95 +14,95 @@ class IdentitiesStoreIFEF(authentic.identities.IdentitiesStoreLdap):
|
|||
fields = [
|
||||
# Identification
|
||||
Field('personalTitle', N_('Personal Title'),
|
||||
on_register = False,
|
||||
required = False, size = 4, widget_class = 'SingleSelectWidget',
|
||||
options = [(None, None, '0'),
|
||||
on_register=False,
|
||||
size=4, widget_class='SingleSelectWidget',
|
||||
options=[(None, None, '0'),
|
||||
('Mme', N_('Madame'), '2'),
|
||||
('Mlle', N_('Mademoiselle'), '3'),
|
||||
('M.', N_('Monsieur'), '1'),]),
|
||||
Field('sn', N_('Nom'), required = True, admin_required = True),
|
||||
Field('givenName', N_('Prenom'), required = True, admin_required = True),
|
||||
Field('dateOfBirth', N_('Date de naissance'), hint = _('jj/mm/aaaa'),
|
||||
on_register = True, widget_class = 'DateWidget', jquery = False),
|
||||
Field('sn', N_('Nom'), required=True, admin_required=True),
|
||||
Field('givenName', N_('Prenom'), required=True, admin_required=True),
|
||||
Field('dateOfBirth', N_('Date de naissance'), hint=_('jj/mm/aaaa'),
|
||||
on_register=True, widget_class='DateWidget', jquery=False),
|
||||
Field('placeOfBirth', N_('Lieu de naissance')),
|
||||
# Contact
|
||||
Field('email', N_('Adresse email'),
|
||||
hint = _("exemple: jean@example.com"), required=True,
|
||||
admin_required = True,
|
||||
widget_class = 'ValidatedStringWidget',
|
||||
regex = r'[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}',
|
||||
unique = True),
|
||||
hint=_("exemple: jean@example.com"), required=True,
|
||||
admin_required=True,
|
||||
widget_class='ValidatedStringWidget',
|
||||
regex=r'[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}',
|
||||
unique=True),
|
||||
# Addresses postales
|
||||
Field('street', N_('Adresse'), required = True),
|
||||
Field('postalCode', N_('Code postal'), widget_class = 'ValidatedStringWidget',
|
||||
regex = r'[0-9]{5}', required = True, hint = _('Ce champ doit contenir cinq chiffres')),
|
||||
Field('l', N_('Ville pro'), required = True),
|
||||
Field('st', N_('Region pro'), on_register = False),
|
||||
Field('department', N_('Departement pro'), on_register = False),
|
||||
Field('homeStreetAddress', N_('Adresse perso'), on_register = False),
|
||||
Field('homePostalCode', N_('Code postal perso'), widget_class = 'ValidatedStringWidget',
|
||||
regex = r'[0-9]{5}', on_register = False, hint = _('Ce champ doit contenir cinq chiffres')),
|
||||
Field('homeLocalityName', N_('Ville perso'), on_register = False),
|
||||
Field('homeStateOrProvinceName', N_('Region perso'), on_register = False),
|
||||
Field('street', N_('Adresse')),
|
||||
Field('postalCode', N_('Code postal'), widget_class='ValidatedStringWidget',
|
||||
regex=r'[0-9]{5}', hint=_('Ce champ doit contenir cinq chiffres')),
|
||||
Field('l', N_('Ville pro')),
|
||||
Field('st', N_('Region pro'), on_register=False),
|
||||
Field('department', N_('Departement pro'), on_register=False),
|
||||
Field('homeStreetAddress', N_('Adresse perso'), on_register=False),
|
||||
Field('homePostalCode', N_('Code postal perso'), widget_class='ValidatedStringWidget',
|
||||
regex=r'[0-9]{5}', on_register=False, hint=_('Ce champ doit contenir cinq chiffres')),
|
||||
Field('homeLocalityName', N_('Ville perso'), on_register=False),
|
||||
Field('homeStateOrProvinceName', N_('Region perso'), on_register=False),
|
||||
Field('homeDepartment', N_('Departement perso'),
|
||||
on_register = False),
|
||||
Field('userClass', N_('Classe d\'utilisateur'), read_only = True, value = ['GRAND.PUBLIC'],
|
||||
admin_required = True, size = 4, widget_class = 'SingleSelectWidget',
|
||||
options = ['GRAND.PUBLIC', 'EMPLOYEUR', 'SAL.SPE/ASSMAT', 'PRO.FORMA',
|
||||
'INDIV.PART', 'SAL.IFEF' ], multivalued = True),
|
||||
on_register=False),
|
||||
Field('userClass', N_('Classe d\'utilisateur'), read_only=True, value=['GRAND.PUBLIC'],
|
||||
admin_required=True, size=4, widget_class='SingleSelectWidget',
|
||||
options=['GRAND.PUBLIC', 'EMPLOYEUR', 'SAL.SPE/ASSMAT', 'PRO.FORMA',
|
||||
'INDIV.PART', 'SAL.IFEF' ], multivalued=True),
|
||||
# Telephone
|
||||
Field('mobile', N_('Telephone mobile'),
|
||||
hint = _('Ce champ ne doit contenir que des chiffres, des points ou des espaces.'),
|
||||
widget_class = 'ValidatedStringWidget',
|
||||
regex = r'^ *(|[0-9][0-9. ]*) *$', on_register = False),
|
||||
hint=_('Ce champ ne doit contenir que des chiffres, des points ou des espaces.'),
|
||||
widget_class='ValidatedStringWidget',
|
||||
regex=r'^ *(|[0-9][0-9. ]*) *$', on_register=False),
|
||||
Field('homePhone', N_('Telephone perso'),
|
||||
hint = _('Ce champ ne doit contenir que des chiffres, des points ou des espaces.'),
|
||||
widget_class = 'ValidatedStringWidget',
|
||||
regex = r'^ *(|[0-9][0-9. ]*) *$'),
|
||||
hint=_('Ce champ ne doit contenir que des chiffres, des points ou des espaces.'),
|
||||
widget_class='ValidatedStringWidget',
|
||||
regex=r'^ *(|[0-9][0-9. ]*) *$'),
|
||||
Field('telephoneNumber', N_('Telephone pro'),
|
||||
hint = _('Ce champ ne doit contenir que des chiffres, des points ou des espaces.'),
|
||||
widget_class = 'ValidatedStringWidget',
|
||||
regex = r'^ *(|[0-9][0-9. ]*) *$', on_register = False),
|
||||
hint=_('Ce champ ne doit contenir que des chiffres, des points ou des espaces.'),
|
||||
widget_class='ValidatedStringWidget',
|
||||
regex=r'^ *(|[0-9][0-9. ]*) *$', on_register=False),
|
||||
# Web
|
||||
Field('microBlogURL', N_('Adresse de micro-blogging'),
|
||||
hint = _("exemple: twitter, identica, etc.")),
|
||||
hint=_("exemple: twitter, identica, etc.")),
|
||||
Field('socialNetworkURL', N_('Adresse de reseau social'),
|
||||
hint = _("exemple: compte facebook, linkedin, viadeo, etc.")),
|
||||
hint=_("exemple: compte facebook, linkedin, viadeo, etc.")),
|
||||
Field('labeledURI', N_('Page web'),
|
||||
hint = _("votre page web personnelle")),
|
||||
hint=_("votre page web personnelle")),
|
||||
Field('voipURI', N_("Adresse telephonie IP"),
|
||||
hint = _("exemple: skype, sip, gtalk"),
|
||||
on_register = False),
|
||||
hint=_("exemple: skype, sip, gtalk"),
|
||||
on_register=False),
|
||||
# Attributs specificiques IFEF
|
||||
Field('numeroPassFormaAssMat', N_('Numero de pass assistante maternelle'),
|
||||
read_only = True, on_register = False,
|
||||
hint = _('Entrez un nombre decimal'),
|
||||
widget_class = 'ValidatedStringWidget',
|
||||
regex = r'^[0-9]*$'),
|
||||
Field('numeroPassFormaSPE', N_('Numero de pass SPE'), read_only = True,
|
||||
on_register = False,
|
||||
hint = _('Entrez un nombre decimal'),
|
||||
widget_class = 'ValidatedStringWidget',
|
||||
regex = r'^[0-9]*$'),
|
||||
Field('numeroURSSAF', N_('Numero URSSAF'), read_only = True,
|
||||
on_register = False,
|
||||
hint = _('Entrez un nombre decimal'),
|
||||
widget_class = 'ValidatedStringWidget',
|
||||
regex = r'^[0-9]*$'),
|
||||
Field('numeroPAJE', N_('Numero PAJE'), read_only = True,
|
||||
on_register = False,
|
||||
hint = _('Entrez un nombre decimal'),
|
||||
widget_class = 'ValidatedStringWidget',
|
||||
regex = r'^[0-9]*$'),
|
||||
Field('numeroIRCEM', N_('Numero IRCEM'), read_only = True,
|
||||
on_register = False,
|
||||
hint = _('Entrez un nombre decimal'),
|
||||
widget_class = 'ValidatedStringWidget',
|
||||
regex = r'^[0-9]*$'),
|
||||
read_only=True, on_register=False,
|
||||
hint=_('Entrez un nombre decimal'),
|
||||
widget_class='ValidatedStringWidget',
|
||||
regex=r'^[0-9]*$'),
|
||||
Field('numeroPassFormaSPE', N_('Numero de pass SPE'), read_only=True,
|
||||
on_register=False,
|
||||
hint=_('Entrez un nombre decimal'),
|
||||
widget_class='ValidatedStringWidget',
|
||||
regex=r'^[0-9]*$'),
|
||||
Field('numeroURSSAF', N_('Numero URSSAF'), read_only=True,
|
||||
on_register=False,
|
||||
hint=_('Entrez un nombre decimal'),
|
||||
widget_class='ValidatedStringWidget',
|
||||
regex=r'^[0-9]*$'),
|
||||
Field('numeroPAJE', N_('Numero PAJE'), read_only=True,
|
||||
on_register=False,
|
||||
hint=_('Entrez un nombre decimal'),
|
||||
widget_class='ValidatedStringWidget',
|
||||
regex=r'^[0-9]*$'),
|
||||
Field('numeroIRCEM', N_('Numero IRCEM'), read_only=True,
|
||||
on_register=False,
|
||||
hint=_('Entrez un nombre decimal'),
|
||||
widget_class='ValidatedStringWidget',
|
||||
regex=r'^[0-9]*$'),
|
||||
Field('orgDn', N_('DN de l\'organisme d\'affiliation'), read_only =
|
||||
True, multivalued = True, invisible = True, widget_class =
|
||||
True, multivalued=True, invisible=True, widget_class =
|
||||
authentic.identities.IdentitiesStoreLdap.LdapDnWidget,
|
||||
on_register = False),
|
||||
on_register=False),
|
||||
]
|
||||
def init(self):
|
||||
authentic.identities.IdentitiesStoreLdap.init(self)
|
||||
|
@ -127,7 +126,7 @@ class IdentitiesStoreIFEF(authentic.identities.IdentitiesStoreLdap):
|
|||
callback.XmlRpcAction.TYPE_PERSONNE, id)
|
||||
response.add_after_job('''Send use information update to Ofbiz, \
|
||||
id: %r''' % id, callback.BatchJob(action))
|
||||
except Exception, e:
|
||||
except Exception:
|
||||
raise
|
||||
return res
|
||||
|
||||
|
|
Reference in New Issue