diff --git a/addons/crm_partner_assign/crm_partner_assign.py b/addons/crm_partner_assign/crm_partner_assign.py
index 046babccf73..31a042d8685 100644
--- a/addons/crm_partner_assign/crm_partner_assign.py
+++ b/addons/crm_partner_assign/crm_partner_assign.py
@@ -65,7 +65,7 @@ class res_partner(osv.osv):
'date_review_next' : fields.date('Next Partner Review'),
# customer implementation
'assigned_partner_id': fields.many2one(
- 'res.partner', 'Implementedy by',
+ 'res.partner', 'Implemented by',
),
'implemented_partner_ids': fields.one2many(
'res.partner', 'assigned_partner_id',
diff --git a/addons/event_sale/__openerp__.py b/addons/event_sale/__openerp__.py
index 88e27fd9a3d..35d2f51aacc 100644
--- a/addons/event_sale/__openerp__.py
+++ b/addons/event_sale/__openerp__.py
@@ -42,6 +42,7 @@ this event.
'data': [
'event_sale_view.xml',
'event_sale_data.xml',
+ 'security/ir.model.access.csv',
],
'demo': ['event_demo.xml'],
'test': ['test/confirm.yml'],
diff --git a/addons/event_sale/security/ir.model.access.csv b/addons/event_sale/security/ir.model.access.csv
new file mode 100644
index 00000000000..410458d4b0f
--- /dev/null
+++ b/addons/event_sale/security/ir.model.access.csv
@@ -0,0 +1,3 @@
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_event_event_ticket_user,event.event.ticket.user,event_sale.model_event_event_ticket,event.group_event_user,1,0,0,0
+access_event_event_ticket_admin,event.event.ticket.admin,event_sale.model_event_event_ticket,event.group_event_manager,1,1,1,1
\ No newline at end of file
diff --git a/addons/payment_paypal/models/paypal.py b/addons/payment_paypal/models/paypal.py
index d71e3d0620b..5dcbd975a4a 100644
--- a/addons/payment_paypal/models/paypal.py
+++ b/addons/payment_paypal/models/paypal.py
@@ -95,9 +95,12 @@ class AcquirerPaypal(osv.Model):
return 0.0
country = self.pool['res.country'].browse(cr, uid, country_id, context=context)
if country and acquirer.company_id.country_id.id == country.id:
- fees = amount * (1 + acquirer.fees_dom_var / 100.0) + acquirer.fees_dom_fixed - amount
+ percentage = acquirer.fees_dom_var
+ fixed = acquirer.fees_dom_fixed
else:
- fees = amount * (1 + acquirer.fees_int_var / 100.0) + acquirer.fees_int_fixed - amount
+ percentage = acquirer.fees_int_var
+ fixed = acquirer.fees_int_fixed
+ fees = (percentage / 100.0 * amount + fixed ) / (1 - percentage / 100.0)
return fees
def paypal_form_generate_values(self, cr, uid, id, partner_values, tx_values, context=None):
diff --git a/addons/payment_paypal/tests/test_paypal.py b/addons/payment_paypal/tests/test_paypal.py
index ccac9b6fdef..a66b90cf0fb 100644
--- a/addons/payment_paypal/tests/test_paypal.py
+++ b/addons/payment_paypal/tests/test_paypal.py
@@ -148,7 +148,7 @@ class PaypalForm(PaypalCommon):
for form_input in tree.input:
if form_input.get('name') in ['handling']:
handling_found = True
- self.assertEqual(form_input.get('value'), '1.56', 'paypal: wrong computed fees')
+ self.assertEqual(form_input.get('value'), '1.57', 'paypal: wrong computed fees')
self.assertTrue(handling_found, 'paypal: fees_active did not add handling input in rendered form')
@mute_logger('openerp.addons.payment_paypal.models.paypal', 'ValidationError')
diff --git a/addons/web/static/src/js/views.js b/addons/web/static/src/js/views.js
index c6e28301c42..ec233159d63 100644
--- a/addons/web/static/src/js/views.js
+++ b/addons/web/static/src/js/views.js
@@ -436,16 +436,6 @@ instance.web.ActionManager = instance.web.Widget.extend({
ir_actions_act_window: function (action, options) {
var self = this;
- if (action.target === 'current'){
- action.context['active_model'] = action.res_model;
- if (action.res_id){
- action.context['active_id'] = action.res_id;
- action.context['active_ids'] = [action.res_id];
- } else{
- delete action.context['active_id'];
- delete action.context['active_ids'];
- }
- }
return this.ir_actions_common({
widget: function () { return new instance.web.ViewManagerAction(self, action); },
action: action,
@@ -895,7 +885,20 @@ instance.web.ViewManagerAction = instance.web.ViewManager.extend({
this._super(parent, null, action.views, flags);
this.session = parent.session;
this.action = action;
- var dataset = new instance.web.DataSetSearch(this, action.res_model, action.context, action.domain);
+ var context = action.context;
+ if (action.target === 'current'){
+ var active_context = {
+ active_model: action.res_model,
+ };
+ context = new instance.web.CompoundContext(context, active_context).eval();
+ delete context['active_id'];
+ delete context['active_ids'];
+ if (action.res_id){
+ context['active_id'] = action.res_id;
+ context['active_ids'] = [action.res_id];
+ }
+ }
+ var dataset = new instance.web.DataSetSearch(this, action.res_model, context, action.domain);
if (action.res_id) {
dataset.ids.push(action.res_id);
dataset.index = 0;
diff --git a/addons/website_blog/static/src/css/website_blog.css b/addons/website_blog/static/src/css/website_blog.css
index 9097e3af31f..9317ba32321 100644
--- a/addons/website_blog/static/src/css/website_blog.css
+++ b/addons/website_blog/static/src/css/website_blog.css
@@ -150,3 +150,7 @@ div#blog_angle_down a:hover {
mark + .popover {
cursor: pointer;
}
+
+.discussion_scroll_post {
+ overflow-x: auto;
+}
diff --git a/addons/website_blog/static/src/css/website_blog.sass b/addons/website_blog/static/src/css/website_blog.sass
index 6342c6b99a2..f1fd0e59a5a 100644
--- a/addons/website_blog/static/src/css/website_blog.sass
+++ b/addons/website_blog/static/src/css/website_blog.sass
@@ -134,3 +134,6 @@ div#blog_angle_down
mark + .popover
cursor: pointer
+
+.discussion_scroll_post
+ overflow-x: auto
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 8c1cda26265..1acf085f147 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
@@ -9,7 +9,7 @@
-
+
by
diff --git a/addons/website_blog/views/website_blog_templates.xml b/addons/website_blog/views/website_blog_templates.xml
index e6f93dc8779..3a42abc644d 100644
--- a/addons/website_blog/views/website_blog_templates.xml
+++ b/addons/website_blog/views/website_blog_templates.xml
@@ -236,7 +236,7 @@
"fields": ["name"]
}'/>
on
-
+
diff --git a/addons/website_crm_partner_assign/__openerp__.py b/addons/website_crm_partner_assign/__openerp__.py
index 06b6dc9410e..649537ffb2e 100644
--- a/addons/website_crm_partner_assign/__openerp__.py
+++ b/addons/website_crm_partner_assign/__openerp__.py
@@ -13,6 +13,9 @@ Publish and Assign Partner
'views/partner_grade.xml',
'views/website_crm_partner_assign.xml',
],
+ 'demo': [
+ 'data/res_partner_grade_demo.xml',
+ ],
'qweb': ['static/src/xml/*.xml'],
'installable': True,
}
diff --git a/addons/website_crm_partner_assign/data/res_partner_grade_demo.xml b/addons/website_crm_partner_assign/data/res_partner_grade_demo.xml
new file mode 100644
index 00000000000..19c48c2d93d
--- /dev/null
+++ b/addons/website_crm_partner_assign/data/res_partner_grade_demo.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/website_event_sale/security/ir.model.access.csv b/addons/website_event_sale/security/ir.model.access.csv
index 0538dbe8cc3..ec5ea43cd7d 100644
--- a/addons/website_event_sale/security/ir.model.access.csv
+++ b/addons/website_event_sale/security/ir.model.access.csv
@@ -1,5 +1,4 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_event_event_ticket_public,event.event.ticket.public,event_sale.model_event_event_ticket,,1,0,0,0
-access_event_event_ticket_admin,event.event.ticket.admin,event_sale.model_event_event_ticket,event.group_event_manager,1,1,1,1
access_event_product_product_public,event.product.product.public,product.model_product_product,base.group_public,1,0,0,0
access_event_product_template_public,event.product.template.public,product.model_product_template,base.group_public,1,0,0,0
\ No newline at end of file
diff --git a/addons/website_mail/controllers/main.py b/addons/website_mail/controllers/main.py
index de69fba490a..c0592000208 100644
--- a/addons/website_mail/controllers/main.py
+++ b/addons/website_mail/controllers/main.py
@@ -81,6 +81,7 @@ class WebsiteMail(http.Controller):
'is_user': uid != public_id,
'email': email,
'is_follower': False,
+ 'alias_name': False,
}
if not obj:
@@ -95,8 +96,5 @@ class WebsiteMail(http.Controller):
('res_id', '=', obj_ids[0]),
('partner_id', '=', partner_id.id)
], context=context)) == 1
- if post.get('fields'):
- record = obj.read(cr, SUPERUSER_ID, obj_ids[0], fields=post.get('fields'), context=context)
- values.update(record)
return values
diff --git a/addons/website_mail/views/snippets.xml b/addons/website_mail/views/snippets.xml
index 987ccaa672e..ebbcf6d4a70 100644
--- a/addons/website_mail/views/snippets.xml
+++ b/addons/website_mail/views/snippets.xml
@@ -493,53 +493,5 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/website_mail/views/website_mail.xml b/addons/website_mail/views/website_mail.xml
index 5d384f5c0b0..367bf352d64 100644
--- a/addons/website_mail/views/website_mail.xml
+++ b/addons/website_mail/views/website_mail.xml
@@ -21,7 +21,6 @@
-
diff --git a/addons/website_mail_group/__openerp__.py b/addons/website_mail_group/__openerp__.py
index f83fc38ce7c..768e7f27156 100644
--- a/addons/website_mail_group/__openerp__.py
+++ b/addons/website_mail_group/__openerp__.py
@@ -11,7 +11,8 @@ OpenERP Mail Group : Mailing List Archives
'author': 'OpenERP SA',
'depends': ['website_mail'],
'data': [
- 'views/website_mail_group.xml'
+ 'views/website_mail_group.xml',
+ 'views/snippets.xml',
],
'qweb': [],
'installable': True,
diff --git a/addons/website_mail_group/controllers/main.py b/addons/website_mail_group/controllers/main.py
index 7320ebc6548..a28b808d9f2 100644
--- a/addons/website_mail_group/controllers/main.py
+++ b/addons/website_mail_group/controllers/main.py
@@ -129,3 +129,9 @@ class MailGroup(http.Controller):
'replies_per_page': self._replies_per_page,
}
return request.registry['ir.ui.view'].render(request.cr, request.uid, 'website_mail_group.messages_short', values, engine='ir.qweb', context=request.context)
+
+ @http.route("/groups/
/get_alias_info", type='json', auth='public', website=True)
+ def get_alias_info(self, group, **post):
+ return {
+ 'alias_name': group.alias_id and group.alias_id.alias_name and group.alias_id.alias_domain and '%s@%s' % (group.alias_id.alias_name, group.alias_id.alias_domain) or False
+ }
diff --git a/addons/website_mail/static/src/js/website_mail.editor.js b/addons/website_mail_group/static/src/js/website_mail_group.editor.js
similarity index 100%
rename from addons/website_mail/static/src/js/website_mail.editor.js
rename to addons/website_mail_group/static/src/js/website_mail_group.editor.js
diff --git a/addons/website_mail/static/src/js/website_mail.js b/addons/website_mail_group/static/src/js/website_mail_group.snippet.js
similarity index 67%
rename from addons/website_mail/static/src/js/website_mail.js
rename to addons/website_mail_group/static/src/js/website_mail_group.snippet.js
index d069f88ea45..fc0e2bb864f 100644
--- a/addons/website_mail/static/src/js/website_mail.js
+++ b/addons/website_mail_group/static/src/js/website_mail_group.snippet.js
@@ -12,15 +12,12 @@
openerp.jsonRpc('/website_mail/is_follower', 'call', {
model: this.$target.data('object'),
id: this.$target.data('id'),
- fields: ['name', 'alias_id'],
+ get_alias_info: true,
}).always(function (data) {
self.is_user = data.is_user;
- self.$target.find('.js_mg_email').attr('href', 'mailto:' + data.alias_id[1]);
- self.$target.find('.js_mg_link').attr('href', '/groups/' + data.id);
- self.toggle_subscription(data.is_follower);
- self.$target.find('input.js_follow_email')
- .val(data.email ? data.email : "")
- .attr("disabled", data.is_follower || (data.email.length && self.is_user) ? "disabled" : false);
+ self.email = data.email;
+ self.$target.find('.js_mg_link').attr('href', '/groups/' + self.$target.data('id'));
+ self.toggle_subscription(data.is_follower, data.email);
self.$target.removeClass("hidden");
});
@@ -36,6 +33,7 @@
return;
},
on_click: function () {
+ event.preventDefault();
var self = this;
var $email = this.$target.find(".js_follow_email");
@@ -51,10 +49,11 @@
'message_is_follower': this.$target.attr("data-follow") || "off",
'email': $email.length ? $email.val() : false,
}).then(function (follow) {
- self.toggle_subscription(follow);
+ self.toggle_subscription(follow, self.email);
});
},
- toggle_subscription: function(follow) {
+ toggle_subscription: function(follow, email) {
+ var alias_done = this.get_alias_info();
if (follow) {
this.$target.find(".js_mg_follow_form").addClass("hidden");
this.$target.find(".js_mg_details").removeClass("hidden");
@@ -63,9 +62,27 @@
this.$target.find(".js_mg_follow_form").removeClass("hidden");
this.$target.find(".js_mg_details").addClass("hidden");
}
- this.$target.find('input.js_follow_email').attr("disabled", follow || this.is_user ? "disabled" : false);
+ this.$target.find('input.js_follow_email')
+ .val(email ? email : "")
+ .attr("disabled", follow || (email.length && this.is_user) ? "disabled" : false);
this.$target.attr("data-follow", follow ? 'on' : 'off');
+ return $.when(alias_done);
},
+ get_alias_info: function() {
+ var self = this;
+ if (! this.$target.data('id')) {
+ return $.Deferred().resolve();
+ }
+ return openerp.jsonRpc('/groups/' + this.$target.data('id') + '/get_alias_info', 'call', {}).then(function (data) {
+ if (data.alias_name) {
+ self.$target.find('.js_mg_email').attr('href', 'mailto:' + data.alias_name);
+ self.$target.find('.js_mg_email').removeClass('hidden');
+ }
+ else {
+ self.$target.find('.js_mg_email').addClass('hidden');
+ }
+ });
+ }
});
$(document).ready(function () {
diff --git a/addons/website_mail_group/views/snippets.xml b/addons/website_mail_group/views/snippets.xml
new file mode 100644
index 00000000000..56ba81d81b3
--- /dev/null
+++ b/addons/website_mail_group/views/snippets.xml
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/website_mail_group/views/website_mail_group.xml b/addons/website_mail_group/views/website_mail_group.xml
index 76edd524753..1c0ee08edd4 100644
--- a/addons/website_mail_group/views/website_mail_group.xml
+++ b/addons/website_mail_group/views/website_mail_group.xml
@@ -8,6 +8,13 @@
+
+
+
+
+
+
+
@@ -23,8 +30,10 @@
-
-
+
+
+
+
@@ -59,7 +68,7 @@
mailing list archives
-
+
@@ -123,7 +132,7 @@
mailing list archives
-
+
diff --git a/openerp/addons/base/ir/ir_qweb.xml b/openerp/addons/base/ir/ir_qweb.xml
index d021d496fdc..c69dc17c851 100644
--- a/openerp/addons/base/ir/ir_qweb.xml
+++ b/openerp/addons/base/ir/ir_qweb.xml
@@ -20,7 +20,7 @@