diff --git a/addons/mail/mail_message.py b/addons/mail/mail_message.py
index 4c05d7a6d1f..edb8c0c48e9 100644
--- a/addons/mail/mail_message.py
+++ b/addons/mail/mail_message.py
@@ -205,7 +205,7 @@ class mail_message(osv.Model):
return '%s <%s@%s>' % (this.name, this.alias_name, this.alias_domain)
elif this.email:
return '%s <%s>' % (this.name, this.email)
- raise osv.except_osv(_('Invalid Action!'), _("Unable to send email, please configure the sender's email address or alias."))
+ return False
def _get_default_author(self, cr, uid, context=None):
return self.pool.get('res.users').browse(cr, SUPERUSER_ID, uid, context=context).partner_id.id
@@ -843,7 +843,8 @@ class mail_message(osv.Model):
values['reply_to'] = self._get_reply_to(cr, uid, values, context=context)
newid = super(mail_message, self).create(cr, uid, values, context)
- self._notify(cr, uid, newid, context=context,
+ if values['email_from']:
+ self._notify(cr, uid, newid, context=context,
force_send=context.get('mail_notify_force_send', True),
user_signature=context.get('mail_notify_user_signature', True))
# TDE FIXME: handle default_starred. Why not setting an inv on starred ?
diff --git a/addons/website_blog/controllers/main.py b/addons/website_blog/controllers/main.py
index bfa65b9674c..c1e65e2a518 100644
--- a/addons/website_blog/controllers/main.py
+++ b/addons/website_blog/controllers/main.py
@@ -210,11 +210,11 @@ class WebsiteBlog(http.Controller):
cr, uid, context = request.cr, request.uid, request.context
blog_post = request.registry['blog.post']
message_id = blog_post.message_post(
- cr, uid, int(blog_post_id),
+ cr, SUPERUSER_ID, int(blog_post_id),
body=post.get('comment'),
type='comment',
subtype='mt_comment',
- author_id= user.partner_id.id,
+ author_id=False,
discussion=post.get('discussion'),
context=dict(context, mail_create_nosubcribe=True))
return message_id
@@ -237,12 +237,14 @@ class WebsiteBlog(http.Controller):
user = request.registry['res.users'].browse(cr, uid, uid, context=context)
id = self._blog_post_message(user, blog_post_id, **post)
mail_obj = request.registry.get('mail.message')
- post = mail_obj.browse(cr, uid, id)
+ post = mail_obj.browse(cr, SUPERUSER_ID, id)
values = {
- "author_name": post.author_id.name,
+ "author_name": post.author_id and post.author_id.name or _('Anonymous'),
"date": post.date,
"body": html2plaintext(post.body),
- "author_image": "data:image/png;base64,%s" % post.author_id.image,
+ "author_image": post.author_id and \
+ ("data:image/png;base64,%s" % post.author_id.image) or \
+ '/website_blog/static/src/img/anonymous.png',
}
return values
@@ -278,14 +280,16 @@ class WebsiteBlog(http.Controller):
cr, uid, context = request.cr, request.uid, request.context
mail_obj = request.registry.get('mail.message')
values = []
- ids = mail_obj.search(cr, uid, [('res_id', '=', int(post_id)) ,('model','=','blog.post'), ('discussion', '=', discussion)])
+ ids = mail_obj.search(cr, SUPERUSER_ID, [('res_id', '=', int(post_id)) ,('model','=','blog.post'), ('discussion', '=', discussion)])
if ids:
- for post in mail_obj.browse(cr, uid, ids, context=context):
+ for post in mail_obj.browse(cr, SUPERUSER_ID, ids, context=context):
values.append({
- "author_name": post.author_id.name,
+ "author_name": post.author_id and post.author_id.name or _('Anonymous'),
+ "author_image": post.author_id and \
+ ("data:image/png;base64,%s" % post.author_id.image) or \
+ '/website_blog/static/src/img/anonymous.png',
"date": post.date,
'body': html2plaintext(post.body),
- 'author_image': "data:image/png;base64,%s" % post.author_id.image,
})
return values
diff --git a/addons/website_blog/static/src/img/anonymous.png b/addons/website_blog/static/src/img/anonymous.png
new file mode 100644
index 00000000000..6461bf735f1
Binary files /dev/null and b/addons/website_blog/static/src/img/anonymous.png differ
diff --git a/addons/website_blog/static/src/js/website_blog.inline.discussion.js b/addons/website_blog/static/src/js/website_blog.inline.discussion.js
index 1e92fd5a338..bed198efad7 100644
--- a/addons/website_blog/static/src/js/website_blog.inline.discussion.js
+++ b/addons/website_blog/static/src/js/website_blog.inline.discussion.js
@@ -13,7 +13,7 @@
var defaults = {
identifier: 'name',
position: 'right',
- post_id: $('#blog_post_name').attr('data-oe-id'),
+ post_id: $('#blog_post_name').attr('data-blog-id'),
content : false,
};
self.settings = $.extend({}, defaults, options);
diff --git a/addons/website_blog/static/src/xml/website_blog.inline.discussion.xml b/addons/website_blog/static/src/xml/website_blog.inline.discussion.xml
index cebba5ea477..e44b4b0a0d7 100644
--- a/addons/website_blog/static/src/xml/website_blog.inline.discussion.xml
+++ b/addons/website_blog/static/src/xml/website_blog.inline.discussion.xml
@@ -6,8 +6,11 @@
+
+ -
-
+
@@ -256,11 +257,10 @@
groups="website_mail.group_comment">
-
+