[Erp5-report] r34544 ivan - in /erp5/trunk/bt5/erp5_discussion: SkinTemplateItem/portal_ski...
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Apr 14 13:26:27 CEST 2010
Author: ivan
Date: Wed Apr 14 13:26:24 2010
New Revision: 34544
URL: http://svn.erp5.org?rev=34544&view=rev
Log:
Make it possible that use can send a notification to an email or person about a post creation (disabled by default).
Added:
erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewCreateNewDiscussionPostDialog/your_send_notification_text.xml
Modified:
erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_createNewDiscussionPost.xml
erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewCreateNewDiscussionPostDialog.xml
erp5/trunk/bt5/erp5_discussion/bt/revision
Modified: erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_createNewDiscussionPost.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_createNewDiscussionPost.xml?rev=34544&r1=34543&r2=34544&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_createNewDiscussionPost.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_createNewDiscussionPost.xml [utf8] Wed Apr 14 13:26:24 2010
@@ -56,6 +56,7 @@
<value> <string>"""\n
This script allows to create a new Discussion Post in context.\n
"""\n
+from DateTime import DateTime\n
\n
portal = context.getPortalObject()\n
person = portal.ERP5Site_getAuthenticatedMemberPersonValue()\n
@@ -73,6 +74,35 @@
# depending on security model Post can be submited for review\n
portal_status_message = "New post created."\n
discussion_post.release()\n
+if send_notification_text not in (\'\', None):\n
+ # we can send notifications\n
+ email_list = []\n
+ notification_list = send_notification_text.split(\'\\r\\n\')\n
+ for notification in notification_list:\n
+ if \'@\' in notification:\n
+ # user specified an email\n
+ email_list.append(notification)\n
+ else:\n
+ # we can assume user wanted to specify Person\'s title\n
+ person_list = portal.portal_catalog(portal_type=\'Person\',\n
+ title=notification)\n
+ email_list.extend([x.getDefaultEmailText() for x in person_list])\n
+ email_from = portal.email_from_address\n
+ email_subject = "New forum post"\n
+ email_template = """\n
+\n
+New forum post has been created at this url:\n
+\n
+${url}""" \n
+ email_body = context.Base_translateString(email_template, mapping={\'url\':discussion_post.absolute_url()})\n
+ for email_to in email_list:\n
+ mail_headers = """\n
+To: %s\n
+From: %s\n
+Subject: %s\n
+Date: %s""" %(email_to, email_from, email_subject, DateTime().rfc822())\n
+ mail_source =\'%s\\n\\n%s\' %(mail_headers, email_body)\n
+ context.MailHost.send(mail_source)\n
\n
return context.Base_redirect(form_id,\n
keep_items = dict(portal_status_message=context.Base_translateString(portal_status_message)))\n
@@ -86,13 +116,14 @@
</item>
<item>
<key> <string>_params</string> </key>
- <value> <string>title, text_content, form_id, predecessor=None,**kw</string> </value>
+ <value> <string>title, text_content, form_id, send_notification_text=None, predecessor=None,**kw</string> </value>
</item>
<item>
<key> <string>_proxy_roles</string> </key>
<value>
<tuple>
<string>Assignor</string>
+ <string>Manager</string>
</tuple>
</value>
</item>
@@ -114,7 +145,7 @@
<dictionary>
<item>
<key> <string>co_argcount</string> </key>
- <value> <int>4</int> </value>
+ <value> <int>5</int> </value>
</item>
<item>
<key> <string>co_varnames</string> </key>
@@ -123,8 +154,10 @@
<string>title</string>
<string>text_content</string>
<string>form_id</string>
+ <string>send_notification_text</string>
<string>predecessor</string>
<string>kw</string>
+ <string>DateTime</string>
<string>_getattr_</string>
<string>context</string>
<string>portal</string>
@@ -133,6 +166,22 @@
<string>language</string>
<string>discussion_post</string>
<string>portal_status_message</string>
+ <string>None</string>
+ <string>email_list</string>
+ <string>notification_list</string>
+ <string>_getiter_</string>
+ <string>notification</string>
+ <string>person_list</string>
+ <string>append</string>
+ <string>$append0</string>
+ <string>x</string>
+ <string>email_from</string>
+ <string>email_subject</string>
+ <string>email_template</string>
+ <string>email_body</string>
+ <string>email_to</string>
+ <string>mail_headers</string>
+ <string>mail_source</string>
<string>dict</string>
</tuple>
</value>
@@ -147,6 +196,7 @@
<value>
<tuple>
<none/>
+ <none/>
</tuple>
</value>
</item>
Modified: erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewCreateNewDiscussionPostDialog.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewCreateNewDiscussionPostDialog.xml?rev=34544&r1=34543&r2=34544&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewCreateNewDiscussionPostDialog.xml [utf8] (original)
+++ erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewCreateNewDiscussionPostDialog.xml [utf8] Wed Apr 14 13:26:24 2010
@@ -100,6 +100,7 @@
<value>
<list>
<string>your_title</string>
+ <string>your_send_notification_text</string>
</list>
</value>
</item>
Added: erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewCreateNewDiscussionPostDialog/your_send_notification_text.xml
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewCreateNewDiscussionPostDialog/your_send_notification_text.xml?rev=34544&view=auto
==============================================================================
--- erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewCreateNewDiscussionPostDialog/your_send_notification_text.xml (added)
+++ erp5/trunk/bt5/erp5_discussion/SkinTemplateItem/portal_skins/erp5_discussion/DiscussionThread_viewCreateNewDiscussionPostDialog/your_send_notification_text.xml [utf8] Wed Apr 14 13:26:24 2010
@@ -1,0 +1,130 @@
+<?xml version="1.0"?>
+<ZopeData>
+ <record id="1" aka="AAAAAAAAAAE=">
+ <pickle>
+ <tuple>
+ <global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
+ <tuple/>
+ </tuple>
+ </pickle>
+ <pickle>
+ <dictionary>
+ <item>
+ <key> <string>delegated_list</string> </key>
+ <value>
+ <list>
+ <string>description</string>
+ <string>editable</string>
+ <string>enabled</string>
+ <string>title</string>
+ </list>
+ </value>
+ </item>
+ <item>
+ <key> <string>id</string> </key>
+ <value> <string>your_send_notification_text</string> </value>
+ </item>
+ <item>
+ <key> <string>message_values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>external_validator_failed</string> </key>
+ <value> <string>The input failed the external validator.</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>overrides</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>tales</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>display_width</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string></string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string></string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ <item>
+ <key> <string>values</string> </key>
+ <value>
+ <dictionary>
+ <item>
+ <key> <string>description</string> </key>
+ <value> <string>Use this text area to specify email addresses or persons\' titles which should receive notification about this post\'s creation. Each on a new line. Wildcards like \'%\' are supported.</string> </value>
+ </item>
+ <item>
+ <key> <string>display_width</string> </key>
+ <value> <int>40</int> </value>
+ </item>
+ <item>
+ <key> <string>editable</string> </key>
+ <value> <int>1</int> </value>
+ </item>
+ <item>
+ <key> <string>enabled</string> </key>
+ <value> <int>0</int> </value>
+ </item>
+ <item>
+ <key> <string>field_id</string> </key>
+ <value> <string>my_text_area_field</string> </value>
+ </item>
+ <item>
+ <key> <string>form_id</string> </key>
+ <value> <string>Base_viewFieldLibrary</string> </value>
+ </item>
+ <item>
+ <key> <string>target</string> </key>
+ <value> <string>Click to edit the target</string> </value>
+ </item>
+ <item>
+ <key> <string>title</string> </key>
+ <value> <string>Notification list</string> </value>
+ </item>
+ </dictionary>
+ </value>
+ </item>
+ </dictionary>
+ </pickle>
+ </record>
+</ZopeData>
Modified: erp5/trunk/bt5/erp5_discussion/bt/revision
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_discussion/bt/revision?rev=34544&r1=34543&r2=34544&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_discussion/bt/revision [utf8] (original)
+++ erp5/trunk/bt5/erp5_discussion/bt/revision [utf8] Wed Apr 14 13:26:24 2010
@@ -1,1 +1,1 @@
-42
+43
More information about the Erp5-report
mailing list