From 29542bc6407f06edb5bebedc64b84802f1ccb154 Mon Sep 17 00:00:00 2001 From: Simo Sorce Date: Sun, 22 Feb 2015 23:53:33 -0500 Subject: Use the new Policy engine for login/info mapping The InfoMapping class is now only used to prettify the default set of wellknown attributes. Signed-off-by: Simo Sorce Reviewed-by: Patrick Uiterwijk --- ipsilon/login/authfas.py | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) (limited to 'ipsilon/login') diff --git a/ipsilon/login/authfas.py b/ipsilon/login/authfas.py index 3697c1a..a44b470 100644 --- a/ipsilon/login/authfas.py +++ b/ipsilon/login/authfas.py @@ -1,9 +1,9 @@ # Copyright (C) 2014 Ipsilon contributors, see COPYING file for license -from ipsilon.info.common import InfoMapping from ipsilon.login.common import LoginFormBase, LoginManagerBase from ipsilon.util.plugin import PluginObject +from ipsilon.util.policy import Policy from ipsilon.util import config as pconfig import cherrypy @@ -27,22 +27,21 @@ try: except ImportError: CLA_GROUPS = dict() -fas_mapping = { - 'username': 'nickname', - 'telephone': 'phone', - 'country_code': 'country', - 'human_name': 'fullname', - 'email': 'email', - 'timezone': 'timezone', -} +fas_mapping = [ + ['username', 'nickname'], + ['telephone', 'phone'], + ['country_code', 'country'], + ['human_name', 'fullname'], + ['email', 'email'], + ['timezone', 'timezone'], +] class FAS(LoginFormBase): def __init__(self, site, mgr, page): super(FAS, self).__init__(site, mgr, page) - self.mapper = InfoMapping() - self.mapper.set_mapping(fas_mapping) + self.mapper = Policy(fas_mapping) def POST(self, *args, **kwargs): username = kwargs.get("login_name") @@ -79,7 +78,7 @@ class FAS(LoginFormBase): return self._template(self.formtemplate, **context) def make_userdata(self, fas_data): - userdata, fas_extra = self.mapper.map_attrs(fas_data) + userdata, fas_extra = self.mapper.map_attributes(fas_data) # compute and store groups and cla groups userdata['_groups'] = [] -- cgit