member registration: use info and feedback pages; configurable sender email; login/register portlet
This commit is contained in:
		
							parent
							
								
									3f1ffdb8f4
								
							
						
					
					
						commit
						45eeac9a41
					
				
					 5 changed files with 49 additions and 22 deletions
				
			
		|  | @ -314,8 +314,13 @@ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| <metal:login define-macro="login"> | <metal:login define-macro="login"> | ||||||
|     <div><a href="login.html" |     <div> | ||||||
|  |       <a href="login.html" | ||||||
|             i18n:translate="">Log in</a></div> |             i18n:translate="">Log in</a></div> | ||||||
|  |     <div tal:define="register python:view.globalOptions('provideLogin')" | ||||||
|  |          tal:condition="register"> | ||||||
|  |       <a tal:attributes="href python:register[0]" | ||||||
|  |          i18n:translate="">Register new member</a></div> | ||||||
| </metal:login> | </metal:login> | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
										
											Binary file not shown.
										
									
								
							|  | @ -3,7 +3,7 @@ msgstr "" | ||||||
| 
 | 
 | ||||||
| "Project-Id-Version: 0.13.0\n" | "Project-Id-Version: 0.13.0\n" | ||||||
| "POT-Creation-Date: 2007-05-22 12:00 CET\n" | "POT-Creation-Date: 2007-05-22 12:00 CET\n" | ||||||
| "PO-Revision-Date: 2013-05-05 12:00 CET\n" | "PO-Revision-Date: 2013-06-05 12:00 CET\n" | ||||||
| "Last-Translator: Helmut Merz <helmutm@cy55.de>\n" | "Last-Translator: Helmut Merz <helmutm@cy55.de>\n" | ||||||
| "Language-Team: loops developers <helmutm@cy55.de>\n" | "Language-Team: loops developers <helmutm@cy55.de>\n" | ||||||
| "MIME-Version: 1.0\n" | "MIME-Version: 1.0\n" | ||||||
|  | @ -762,6 +762,9 @@ msgstr "Teilnehmerregistrierung" | ||||||
| msgid "Register" | msgid "Register" | ||||||
| msgstr "Benutzer registrieren" | msgstr "Benutzer registrieren" | ||||||
| 
 | 
 | ||||||
|  | msgid "Register new member" | ||||||
|  | msgstr "Neu registrieren" | ||||||
|  | 
 | ||||||
| msgid "Login name already taken." | msgid "Login name already taken." | ||||||
| msgstr "Die von Ihnen eingegebene Benutzerkennung ist schon vergeben." | msgstr "Die von Ihnen eingegebene Benutzerkennung ist schon vergeben." | ||||||
| 
 | 
 | ||||||
|  | @ -775,7 +778,7 @@ msgid "confirmation_mail_subject" | ||||||
| msgstr "Benutzer-Registrierung" | msgstr "Benutzer-Registrierung" | ||||||
| 
 | 
 | ||||||
| msgid "confirmation_mail_text" | msgid "confirmation_mail_text" | ||||||
| msgstr "Bitte clicken Sie auf den folgenden Link, um die Anmeldung abzschließen." | msgstr "Bitte clicken Sie auf den folgenden Link, um die Anmeldung abzuschließen." | ||||||
| 
 | 
 | ||||||
| msgid "The user account has been created." | msgid "The user account has been created." | ||||||
| msgstr "Ihr Benutzerkonto wurde eingerichtet." | msgstr "Ihr Benutzerkonto wurde eingerichtet." | ||||||
|  |  | ||||||
|  | @ -92,6 +92,7 @@ class BaseMemberRegistration(NodeView): | ||||||
| 
 | 
 | ||||||
|     label = _(u'Member Registration') |     label = _(u'Member Registration') | ||||||
|     label_submit = _(u'Register') |     label_submit = _(u'Register') | ||||||
|  |     title = _('Member Registration') | ||||||
| 
 | 
 | ||||||
|     permissions_key = u'registration.permissions' |     permissions_key = u'registration.permissions' | ||||||
|     roles_key = u'registration.roles' |     roles_key = u'registration.roles' | ||||||
|  | @ -104,6 +105,7 @@ class BaseMemberRegistration(NodeView): | ||||||
|     isInnerHtml = False |     isInnerHtml = False | ||||||
|     showAssignments = False |     showAssignments = False | ||||||
|     form_action = 'register' |     form_action = 'register' | ||||||
|  |     versionInfo = None | ||||||
| 
 | 
 | ||||||
|     def closeAction(self, submit=True): |     def closeAction(self, submit=True): | ||||||
|         return u'' |         return u'' | ||||||
|  | @ -202,6 +204,7 @@ class SecureMemberRegistration(BaseMemberRegistration, CreateForm): | ||||||
| 
 | 
 | ||||||
|     permissions_key = u'secure_registration.permissions' |     permissions_key = u'secure_registration.permissions' | ||||||
|     roles_key = u'secure_registration.roles' |     roles_key = u'secure_registration.roles' | ||||||
|  |     email_key = 'reg_email' | ||||||
| 
 | 
 | ||||||
|     @Lazy |     @Lazy | ||||||
|     def schema(self): |     def schema(self): | ||||||
|  | @ -265,17 +268,19 @@ class SecureMemberRegistration(BaseMemberRegistration, CreateForm): | ||||||
|                                     baseUrl, userid, id,) |                                     baseUrl, userid, id,) | ||||||
|         recipients = [recipient] |         recipients = [recipient] | ||||||
|         subject = _(u'confirmation_mail_subject') |         subject = _(u'confirmation_mail_subject') | ||||||
|         name = '.'.join((self.text_names_prefix, self.feedback_key)) |         name = '.'.join((self.text_names_prefix, self.email_key)) | ||||||
|         text = self.resourceManager.get(name) |         text = self.resourceManager.get(name) | ||||||
|         if text: |         if text: | ||||||
|             message = text.data % url |             message = (text.data % url).encode('UTF-8') | ||||||
|             subject = text.description or subject |             subject = text.description or subject | ||||||
|         else: |         else: | ||||||
|             message = _(u'confirmation_mail_text') + u':\n\n' |             message = _(u'confirmation_mail_text') + u':\n\n' | ||||||
|             message = (message + url).encode('UTF-8') |             message = (message + url).encode('UTF-8') | ||||||
|         sender = 'helmutm@cy55.de' |         senderInfo = self.globalOptions('email.sender') | ||||||
|  |         sender = senderInfo and senderInfo[0] or 'info@loops.cy55.de' | ||||||
|  |         sender = sender.encode('UTF-8') | ||||||
|         msg = MIMEText(message, 'plain', 'utf-8') |         msg = MIMEText(message, 'plain', 'utf-8') | ||||||
|         msg['Subject'] = subject |         msg['Subject'] = subject.encode('UTF-8') | ||||||
|         msg['From'] = sender |         msg['From'] = sender | ||||||
|         msg['To'] = ', '.join(recipients) |         msg['To'] = ', '.join(recipients) | ||||||
|         mailhost = component.getUtility(IMailDelivery, 'Mail') |         mailhost = component.getUtility(IMailDelivery, 'Mail') | ||||||
|  | @ -286,8 +291,9 @@ class ConfirmMemberRegistration(BaseMemberRegistration, Form): | ||||||
| 
 | 
 | ||||||
|     permissions_key = u'secure_registration.permissions' |     permissions_key = u'secure_registration.permissions' | ||||||
|     roles_key = u'secure_registration.roles' |     roles_key = u'secure_registration.roles' | ||||||
|     info_key = 'conf_info' |     info_key = 'confirm_info' | ||||||
|     feedback_key = 'conf_feedback' |     feedback_key = 'confirm_feedback' | ||||||
|  |     email_key = 'confirm_email' | ||||||
| 
 | 
 | ||||||
|     form_action = 'confirm_registration' |     form_action = 'confirm_registration' | ||||||
| 
 | 
 | ||||||
|  | @ -303,6 +309,8 @@ class ConfirmMemberRegistration(BaseMemberRegistration, Form): | ||||||
|     @Lazy |     @Lazy | ||||||
|     def schema(self): |     def schema(self): | ||||||
|         schema = super(ConfirmMemberRegistration, self).schema |         schema = super(ConfirmMemberRegistration, self).schema | ||||||
|  |         schema.fields.remove('salutation') | ||||||
|  |         schema.fields.remove('academicTitle') | ||||||
|         schema.fields.remove('birthDate') |         schema.fields.remove('birthDate') | ||||||
|         schema.fields.remove('phoneNumbers') |         schema.fields.remove('phoneNumbers') | ||||||
|         schema.fields.remove('loginName') |         schema.fields.remove('loginName') | ||||||
|  |  | ||||||
|  | @ -2,16 +2,26 @@ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| <metal:block define-macro="register"> | <metal:block define-macro="register"> | ||||||
|  |   <metal:data use-macro="view/form_macros/edit"> | ||||||
|  |     <metal:custom fill-slot="custom_header"> | ||||||
|  |       <tbody> | ||||||
|  |         <tr><td colspan="5"> | ||||||
|           <tal:info content="structure item/infoText" /> |           <tal:info content="structure item/infoText" /> | ||||||
|   <metal:data use-macro="view/form_macros/edit" /> |         </td></tr> | ||||||
|  |       </tbody> | ||||||
|  |     </metal:custom> | ||||||
|  |   </metal:data> | ||||||
| </metal:block> | </metal:block> | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| <metal:block define-macro="confirm"> | <metal:block define-macro="confirm"> | ||||||
|   <tal:info content="structure item/infoText" /> |  | ||||||
|   <metal:data use-macro="view/form_macros/edit"> |   <metal:data use-macro="view/form_macros/edit"> | ||||||
|     <metal:custom fill-slot="custom_header"> |     <metal:custom fill-slot="custom_header"> | ||||||
|       <tbody><tr><td colspan="5"> |       <tbody> | ||||||
|  |         <tr><td colspan="5"> | ||||||
|  |           <tal:info content="structure item/infoText" /> | ||||||
|  |         </td></tr> | ||||||
|  |         <tr><td colspan="5"> | ||||||
|           <input type="hidden" name="login" |           <input type="hidden" name="login" | ||||||
|                  tal:attributes="value item/data/loginName" /> |                  tal:attributes="value item/data/loginName" /> | ||||||
|           <input type="hidden" name="id" |           <input type="hidden" name="id" | ||||||
|  | @ -20,7 +30,8 @@ | ||||||
|             <td i18n:translate="">Login Name</td> |             <td i18n:translate="">Login Name</td> | ||||||
|             <td tal:content="item/data/loginName" /> |             <td tal:content="item/data/loginName" /> | ||||||
|           </tr></table> |           </tr></table> | ||||||
|       </td></tr></tbody> |         </td></tr> | ||||||
|  |       </tbody> | ||||||
|     </metal:custom> |     </metal:custom> | ||||||
|   </metal:data> |   </metal:data> | ||||||
| </metal:block> | </metal:block> | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue