Add by service cutomization of the registration fields

This commit is contained in:
Benjamin Dauvergne 2010-12-17 16:56:40 +01:00
parent e321636527
commit 99d15cc886
1 changed files with 9 additions and 2 deletions

View File

@ -3,10 +3,12 @@ from authentic.form import *
import qommon.template
from qommon import get_cfg
from quixote import get_publisher, redirect
import authentic.identities as identities
STYLESHEET_URL = 'stylesheet_url'
REFERER_PREFIX_URL = 'referer_prefix_url'
CUSTOM_DOMAIN = 'custom_domain'
REGISTRATION_FIELD = 'registration_fields'
THEME = 'theme'
class NewLibertyProviderUI(settings.LibertyProviderUI):
@ -27,10 +29,15 @@ class NewLibertyProviderUI(settings.LibertyProviderUI):
hint=_('Theme to use when an interaction is initated by this service'),
options=names)
form.add(StringWidget, CUSTOM_DOMAIN,
title=_('Custom theme'),
title=_('Custom domain'),
value=self.lp.get(CUSTOM_DOMAIN,None),
hint=_('If the IdP is published on this domain, the used theme will the custom theme for this service.'),
options=names)
form.add(identities.WidgetList, REGISTRATION_FIELD,
title=_('Registration fields'),
element_type=StringWidget,
value=self.lp.get(REGISTRATION_FIELD,[]),
hint=_('List of specific fields to show on the registration page.'))
return form
def edit_submit(self):
return super(NewLibertyProviderUI, self).edit_submit()
@ -41,7 +48,7 @@ class NewLibertyProvidersDir(settings.LibertyProvidersDir):
key_provider_id)
if not error and form.get_widget(STYLESHEET_URL):
v = {}
for k in (STYLESHEET_URL, REFERER_PREFIX_URL, THEME, CUSTOM_DOMAIN):
for k in (STYLESHEET_URL, REFERER_PREFIX_URL, THEME, CUSTOM_DOMAIN, REGISTRATION_FIELD):
v[k] = form.get_widget(k).parse()
get_cfg('providers').get(lpk).update(v)
get_publisher().write_cfg()