X-Git-Url: https://scm.cri.ensmp.fr/git/Plinn.git/blobdiff_plain/278ef7b50e5fcbf8b896e12fcf3c03fd43971d49..55fa8d8e6b6b1562174b12c2658dd463c9b018dc:/Products/Plinn/skins/custom_generic/join_form.py diff --git a/Products/Plinn/skins/custom_generic/join_form.py b/Products/Plinn/skins/custom_generic/join_form.py index d65c8ef..8e82159 100644 --- a/Products/Plinn/skins/custom_generic/join_form.py +++ b/Products/Plinn/skins/custom_generic/join_form.py @@ -1,4 +1,4 @@ -##parameters=member_id='', given_name='', name='', member_email='', email_as_login='', password='', confirm='', add='', ajax='' +##parameters=member_id='', given_name='', name='', member_email='', password='', confirm='', add='', ajax='' ## from Products.CMFCore.utils import getToolByName from Products.CMFDefault.permissions import ManageUsers @@ -6,7 +6,6 @@ from Products.Plinn.RegistrationTool import MODE_ANONYMOUS, MODE_REVIEWED from Products.Plinn.utils import translate def _(message) : return translate(message, context).encode('utf-8') - mtool = getToolByName(script, 'portal_membership') ptool = getToolByName(script, 'portal_properties') rtool = getToolByName(script, 'portal_registration') @@ -18,8 +17,8 @@ is_anon = mtool.isAnonymousUser() is_newmember = False is_usermanager = mtool.checkPermission(ManageUsers, mtool) - form = context.REQUEST.form +email_as_login = bool(form.get('email_as_login', True if context.REQUEST.method == 'GET' else False)) if add : if validate_email : @@ -31,24 +30,26 @@ if add : try : if email_as_login : member_id = member_email - rtool.addMember(id=member_id, password=password, - properties={'username': member_id, - 'given_name' : given_name, - 'name' : name, - 'email': member_email}) + + rtool.addMember(id=member_id, password=password, + properties={'username': member_id, + 'given_name' : given_name, + 'name' : name, + 'email': member_email}) if validate_email : rtool.requestPasswordReset(member_id, initial=True) context.setStatus(True, _('Success!')) is_newmember = True is_anon = False except ValueError, errmsg: - context.setStatus(False, errmsg) + context.setStatus(False, errmsg) options = {} options['member_id'] = member_id options['given_name'] = given_name options['name'] = name options['member_email'] = member_email +options['email_as_login'] = email_as_login options['password'] = is_newmember and context.REQUEST.get('password', '') or '' options['portal_url'] = portal_url options['isAnon'] = is_anon @@ -60,12 +61,12 @@ options['isReviewedRegistration'] = rtool.getMode() == MODE_REVIEWED buttons = [] if is_newmember: - target = atool.getActionInfo('user/logged_in')['url'] - buttons.append( {'name': 'login', 'value': 'Log in'} ) + target = atool.getActionInfo('user/logged_in')['url'] + buttons.append( {'name': 'login', 'value': 'Log in'} ) else: - target = atool.getActionInfo('user/join')['url'] - buttons.append( {'name': 'add', 'value': _('Join')} ) + target = atool.getActionInfo('user/join')['url'] + buttons.append( {'name': 'add', 'value': _('Join')} ) options['form'] = { 'action': target, - 'listButtonInfos': tuple(buttons) } + 'listButtonInfos': tuple(buttons) } options['ajax']=ajax return context.join_template(**options)