diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py index 409551585fa..3e86c4963b7 100644 --- a/addons/account/account_invoice.py +++ b/addons/account/account_invoice.py @@ -432,7 +432,7 @@ class account_invoice(osv.osv): if t['state'] in ('draft', 'cancel') and t['internal_number']== False: unlink_ids.append(t['id']) else: - raise osv.except_osv(_('Invalid Action!'), _('You cannot delete an invoice which is open or paid. You should refund it instead.')) + raise osv.except_osv(_('Invalid Action!'), _('You can not delete an invoice which is not cancelled. You should refund it instead.')) osv.osv.unlink(self, cr, uid, unlink_ids, context=context) return True diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml index 4feb97c2f5f..d3697b13ea9 100644 --- a/addons/account/account_invoice_view.xml +++ b/addons/account/account_invoice_view.xml @@ -436,7 +436,7 @@
- +
diff --git a/addons/account_accountant/account_accountant_data.xml b/addons/account_accountant/account_accountant_data.xml index 14d8f59a5fe..c7d6eb80bc6 100644 --- a/addons/account_accountant/account_accountant_data.xml +++ b/addons/account_accountant/account_accountant_data.xml @@ -28,8 +28,8 @@ notification Accounting and Finance application installed! - With OpenERP's accounting, you get instant access to your financial data, and can setup analytic accounting, forecast taxes, control budgets, easily create and send invoices, record bank statements, etc.

-

The accounting features are fully integrated with other OpenERP applications to automate all your processes: creation of customer invoices, control of supplier invoices, point-of-sale integration, automated follow-ups, etc.

]]>
+ With OpenERP's accounting, you get instant access to your financial data, and can setup analytic accounting, forecast taxes, control budgets, easily create and send invoices, record bank statements, etc.

+

The accounting features are fully integrated with other OpenERP applications to automate all your processes: creation of customer invoices, control of supplier invoices, point-of-sale integration, automated follow-ups, etc.

]]>
diff --git a/addons/account_bank_statement_extensions/account_bank_statement_view.xml b/addons/account_bank_statement_extensions/account_bank_statement_view.xml index 3d5560856a3..adc2963c803 100644 --- a/addons/account_bank_statement_extensions/account_bank_statement_view.xml +++ b/addons/account_bank_statement_extensions/account_bank_statement_view.xml @@ -72,12 +72,12 @@ - + - - + + @@ -100,8 +100,8 @@ - - + + diff --git a/addons/analytic/analytic.py b/addons/analytic/analytic.py index 4c883dc4f8a..708f9b3b196 100644 --- a/addons/analytic/analytic.py +++ b/addons/analytic/analytic.py @@ -327,7 +327,7 @@ class account_analytic_line(osv.osv): 'date': fields.date('Date', required=True, select=True), 'amount': fields.float('Amount', required=True, help='Calculated by multiplying the quantity and the price given in the Product\'s cost price. Always expressed in the company main currency.', digits_compute=dp.get_precision('Account')), 'unit_amount': fields.float('Quantity', help='Specifies the amount of quantity to count.'), - 'account_id': fields.many2one('account.analytic.account', 'Analytic Account', required=True, ondelete='set null', select=True, domain=[('type','<>','view')]), + 'account_id': fields.many2one('account.analytic.account', 'Analytic Account', required=True, ondelete='restrict', select=True, domain=[('type','<>','view')]), 'user_id': fields.many2one('res.users', 'User'), 'company_id': fields.related('account_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True, readonly=True), diff --git a/addons/audittrail/audittrail.py b/addons/audittrail/audittrail.py index 45ab0c4fbb1..54284dee4da 100644 --- a/addons/audittrail/audittrail.py +++ b/addons/audittrail/audittrail.py @@ -346,8 +346,13 @@ class audittrail_objects_proxy(object_proxy): x2m_model_id = x2m_model_ids and x2m_model_ids[0] or False assert x2m_model_id, _("'%s' Model does not exist..." %(field_obj._obj)) x2m_model = pool.get('ir.model').browse(cr, SUPERUSER_ID, x2m_model_id) - #recursive call on x2m fields that need to be checked too - data.update(self.get_data(cr, SUPERUSER_ID, pool, resource[field], x2m_model, method)) + field_resource_ids = list(set(resource[field])) + if model.model == x2m_model.model: + # we need to remove current resource_id from the many2many to prevent an infinit loop + if resource_id in field_resource_ids: + field_resource_ids.remove(resource_id) + data.update(self.get_data(cr, SUPERUSER_ID, pool, field_resource_ids, x2m_model, method)) + data[(model.id, resource_id)] = {'text':values_text, 'value': values} return data @@ -408,6 +413,10 @@ class audittrail_objects_proxy(object_proxy): x2m_new_values_ids = new_values.get(key, {'value': {}})['value'].get(field_name, []) # We use list(set(...)) to remove duplicates. res_ids = list(set(x2m_old_values_ids + x2m_new_values_ids)) + if model.model == x2m_model.model: + # we need to remove current resource_id from the many2many to prevent an infinit loop + if resource_id in res_ids: + res_ids.remove(resource_id) for res_id in res_ids: lines.update(self.prepare_audittrail_log_line(cr, SUPERUSER_ID, pool, x2m_model, res_id, method, old_values, new_values, field_list)) # if the value value is different than the old value: record the change diff --git a/addons/auth_anonymous/static/src/js/auth_anonymous.js b/addons/auth_anonymous/static/src/js/auth_anonymous.js index 8a78aca479c..6768bc63ff9 100644 --- a/addons/auth_anonymous/static/src/js/auth_anonymous.js +++ b/addons/auth_anonymous/static/src/js/auth_anonymous.js @@ -4,11 +4,11 @@ openerp.auth_anonymous = function(instance) { start: function() { var self = this; return $.when(this._super()).then(function() { - var dblist = self._db_list || []; + var dblist = self.db_list || []; if (!self.session.session_is_valid() && dblist.length === 1) { self.remember_credentials = false; // XXX get login/pass from server (via a rpc call) ? - return self.do_login(dblist[0], 'anonymous', 'anonymous') + return self.do_login(dblist[0], 'anonymous', 'anonymous'); } }); diff --git a/addons/auth_signup/static/src/js/auth_signup.js b/addons/auth_signup/static/src/js/auth_signup.js index bb249429894..3025069dece 100644 --- a/addons/auth_signup/static/src/js/auth_signup.js +++ b/addons/auth_signup/static/src/js/auth_signup.js @@ -41,7 +41,7 @@ openerp.auth_signup = function(instance) { on_token_loaded: function(result) { // select the right the database this.selected_db = result.db; - this.on_db_loaded({db_list: [result.db]}); + this.on_db_loaded([result.db]); if (result.token) { // switch to signup mode, set user name and login this.$el.addClass("oe_login_signup"); @@ -80,16 +80,16 @@ openerp.auth_signup = function(instance) { this.do_warn("Login", "No database selected !"); return false; } else if (!name) { - this.do_warn("Login", "Please enter a name.") + this.do_warn("Login", "Please enter a name."); return false; } else if (!login) { - this.do_warn("Login", "Please enter a username.") + this.do_warn("Login", "Please enter a username."); return false; } else if (!password || !confirm_password) { - this.do_warn("Login", "Please enter a password and confirm it.") + this.do_warn("Login", "Please enter a password and confirm it."); return false; } else if (password !== confirm_password) { - this.do_warn("Login", "Passwords do not match; please retype them.") + this.do_warn("Login", "Passwords do not match; please retype them."); return false; } var params = { diff --git a/addons/base_calendar/crm_meeting_view.xml b/addons/base_calendar/crm_meeting_view.xml index 10c65ab850b..8590bcb8b49 100644 --- a/addons/base_calendar/crm_meeting_view.xml +++ b/addons/base_calendar/crm_meeting_view.xml @@ -221,7 +221,7 @@
- +
diff --git a/addons/crm/crm_data.xml b/addons/crm/crm_data.xml index 91117d2d83e..f2bf56e34ac 100644 --- a/addons/crm/crm_data.xml +++ b/addons/crm/crm_data.xml @@ -61,7 +61,7 @@ CRM application installed! From the top Sales menu you can track leads and opportunities, get accurate forecast on your sales pipeline, plan meetings and phonecalls, get realtime statistics and efficiently organize the communication with your prospects.

-
To manage quotations and sale orders, install the "Sales Management" application.

]]>
+

To manage quotations and sale orders, install the "Sales Management" application.

]]>
diff --git a/addons/crm_claim/crm_claim_view.xml b/addons/crm_claim/crm_claim_view.xml index aa4243a6838..85507a32c0f 100644 --- a/addons/crm_claim/crm_claim_view.xml +++ b/addons/crm_claim/crm_claim_view.xml @@ -168,7 +168,7 @@
- +
diff --git a/addons/crm_helpdesk/crm_helpdesk_view.xml b/addons/crm_helpdesk/crm_helpdesk_view.xml index 52f006ca7b2..1640b9d0318 100644 --- a/addons/crm_helpdesk/crm_helpdesk_view.xml +++ b/addons/crm_helpdesk/crm_helpdesk_view.xml @@ -95,7 +95,7 @@
- +
diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml index 85e3020512e..696c0e2876b 100644 --- a/addons/event/event_view.xml +++ b/addons/event/event_view.xml @@ -205,7 +205,7 @@
- +
@@ -473,7 +473,7 @@
- +
diff --git a/addons/fleet/static/src/img/icon.png b/addons/fleet/static/src/img/icon.png index 3db7ae9fa49..5b41e43c5bd 100644 Binary files a/addons/fleet/static/src/img/icon.png and b/addons/fleet/static/src/img/icon.png differ diff --git a/addons/hr_evaluation/hr_evaluation_data.xml b/addons/hr_evaluation/hr_evaluation_data.xml index 45100b14e2a..2afb5200091 100644 --- a/addons/hr_evaluation/hr_evaluation_data.xml +++ b/addons/hr_evaluation/hr_evaluation_data.xml @@ -811,8 +811,8 @@ Once the form had been filled, the employee send it to his supervisor. The comment you entered is in an invalid format. * His direct reports will be invited through OpenERP to express a feedback on their supervisor's leadership and to give their opinion about their own engagement and effectiveness, the continuous improvement and openness in action in the company, ... -* The employees will send back their anonymous answers to OpenERP. The data will be handled by the HR manager and a brief summary of the data will be sent to the concerned supervisor, to his team and to the supervisor's supervisor. -* The appraiser should rate the employee’s major work accomplishments and performance according to the metric provided below : +* The employees will send back their anonymous answers to OpenERP. The data will be handled by the HR manager and a brief summary of the data will be sent to the concerned supervisor, to his team and to the supervisor's supervisor. +* The appraiser should rate the employee’s major work accomplishments and performance according to the metric provided below : 1 - Significantly exceeds standards and expectations required of the position 2 - Exceeds standards and expectations diff --git a/addons/hr_holidays/hr_holidays_view.xml b/addons/hr_holidays/hr_holidays_view.xml index ef300741139..752d278baed 100644 --- a/addons/hr_holidays/hr_holidays_view.xml +++ b/addons/hr_holidays/hr_holidays_view.xml @@ -122,7 +122,7 @@
- +
@@ -159,7 +159,7 @@
- +
diff --git a/addons/hr_recruitment/hr_recruitment_data.xml b/addons/hr_recruitment/hr_recruitment_data.xml index f1c8ed46aca..adaeed81205 100644 --- a/addons/hr_recruitment/hr_recruitment_data.xml +++ b/addons/hr_recruitment/hr_recruitment_data.xml @@ -8,7 +8,7 @@ notification Recruitment Process application installed! - Manage job positions and your company's recruitment process. This application is integrated with the Survey application to help you define interviews for different jobs.

+ Manage job positions and your company's recruitment process. This application is integrated with the Survey application to help you define interviews for different jobs.

You can automatically receive job application though an email gateway, see the Human Resources settings.

]]>
diff --git a/addons/hr_recruitment/hr_recruitment_view.xml b/addons/hr_recruitment/hr_recruitment_view.xml index 0dd58937306..c3281b43b94 100644 --- a/addons/hr_recruitment/hr_recruitment_view.xml +++ b/addons/hr_recruitment/hr_recruitment_view.xml @@ -184,7 +184,7 @@
- +
diff --git a/addons/hr_timesheet_sheet/hr_timesheet_sheet_view.xml b/addons/hr_timesheet_sheet/hr_timesheet_sheet_view.xml index ee5a329c800..6de6be6c08d 100644 --- a/addons/hr_timesheet_sheet/hr_timesheet_sheet_view.xml +++ b/addons/hr_timesheet_sheet/hr_timesheet_sheet_view.xml @@ -162,7 +162,7 @@
- +
diff --git a/addons/mail/data/mail_demo.xml b/addons/mail/data/mail_demo.xml index 08cf45bffd4..bc771d6bdc6 100644 --- a/addons/mail/data/mail_demo.xml +++ b/addons/mail/data/mail_demo.xml @@ -87,39 +87,6 @@ - - - mail.thread - Hello Demo User! I was wondering whether you had some issues with our secret task about putting cats everywhere in OpenERP. - comment - - - - - - mail.thread - No specific issues, I think everything is clear. - - comment - - - - - mail.thread - Ow, just to be sure... we were talking about lolcats, right ? - - comment - - - - - Absolutely! - - comment - - - - mail.group @@ -352,5 +319,38 @@ + + + + Hello Demo User! I was wondering whether you had some issues with our secret task about putting cats everywhere in OpenERP. + comment + + + + + + No specific issues, I think everything is clear. + + comment + + + + + + Ow, just to be sure... we were talking about lolcats, right ? + + comment + + + + + + Absolutely! + + comment + + + + diff --git a/addons/mail/data/mail_group_data.xml b/addons/mail/data/mail_group_data.xml index 87ad943dafb..599b941b040 100644 --- a/addons/mail/data/mail_group_data.xml +++ b/addons/mail/data/mail_group_data.xml @@ -16,8 +16,8 @@ notification Welcome to OpenERP! - Your homepage is a summary of messages you received and key information about documents you follow.
-The top menu bar contains all applications you installed. You can use this <i>Settings</i> menu to install more applications, activate others features or give access to new users.
+ Your homepage is a summary of messages you received and key information about documents you follow.

+The top menu bar contains all applications you installed. You can use this Settings menu to install more applications, activate others features or give access to new users.

To setup your preferences (name, email signature, avatar), click on the top right corner.

]]>
diff --git a/addons/mail/mail_group_view.xml b/addons/mail/mail_group_view.xml index 3f931327114..34506cf4104 100644 --- a/addons/mail/mail_group_view.xml +++ b/addons/mail/mail_group_view.xml @@ -95,7 +95,7 @@
- +
diff --git a/addons/mail/mail_thread.py b/addons/mail/mail_thread.py index 99ce2bd595e..ee1a015396b 100644 --- a/addons/mail/mail_thread.py +++ b/addons/mail/mail_thread.py @@ -747,7 +747,7 @@ class mail_thread(osv.AbstractModel): # 1. Pre-processing: body, partner_ids, type and subtype if content_subtype == 'plaintext': - body = tools.text2html(body) + body = tools.plaintext2html(body) partner_ids = kwargs.pop('partner_ids', []) if parent_id: diff --git a/addons/mail/res_users.py b/addons/mail/res_users.py index 1b6388111ba..932c4dd9518 100644 --- a/addons/mail/res_users.py +++ b/addons/mail/res_users.py @@ -91,8 +91,10 @@ class res_users(osv.Model): return user_id def _create_welcome_message(self, cr, uid, user, context=None): - company_name = user.company_id.name if user.company_id else _('the company') - body = _('%s has joined %s.') % (user.name, company_name) + if not self.has_group(cr, uid, 'base.group_user'): + return False + company_name = user.company_id.name if user.company_id else '' + body = _('%s has joined the %s network.') % (user.name, company_name) # TODO change SUPERUSER_ID into user.id but catch errors return self.pool.get('res.partner').message_post(cr, SUPERUSER_ID, [user.partner_id.id], body=body, context=context) diff --git a/addons/mail/static/src/css/mail.css b/addons/mail/static/src/css/mail.css index 653dbcfcbbd..94a5c2d1f41 100644 --- a/addons/mail/static/src/css/mail.css +++ b/addons/mail/static/src/css/mail.css @@ -87,8 +87,11 @@ margin-bottom: 0px; margin-top: 2px; } -.openerp .oe_mail .oe_msg .oe_msg_content .oe_msg_body p{ +.openerp .oe_mail .oe_msg .oe_msg_content .oe_msg_body p:first-of-type { margin-top: 0px; +} + +.openerp .oe_mail .oe_msg .oe_msg_content .oe_msg_body p { margin-bottom: 0px; } @@ -115,7 +118,7 @@ padding-top:2px; } .openerp .oe_mail .oe_msg.oe_msg_indented .oe_msg_footer{ - margin-bottom: 0px; + margin-bottom: 5px; } /* b) Votes (likes) */ diff --git a/addons/mail/static/src/js/mail.js b/addons/mail/static/src/js/mail.js index 7d874a8d1fe..7052f67f3e9 100644 --- a/addons/mail/static/src/js/mail.js +++ b/addons/mail/static/src/js/mail.js @@ -56,12 +56,14 @@ openerp.mail = function (session) { /* Get an image in /web/binary/image?... */ get_image: function (session, model, field, id, resize) { - return session.prefix + '/web/binary/image?session_id=' + session.session_id + '&model=' + model + '&field=' + field + '&id=' + (id || '') + '&resize=' + (resize ? encodeURIComponent(resize) : ''); + var r = resize ? encodeURIComponent(resize) : ''; + id = id || ''; + return session.url('/web/binary/image', {model: model, field: field, id: id, resize: r}); }, /* Get the url of an attachment {'id': id} */ get_attachment_url: function (session, attachment) { - return session.origin + '/web/binary/saveas?session_id=' + session.session_id + '&model=ir.attachment&field=datas&filename_field=datas_fname&id=' + attachment['id']; + return session.url('/web/binary/saveas', {model: 'ir.attachment', field: 'datas', filename_field: 'datas_fname', id: attachment['id']}); }, /** diff --git a/addons/mrp/mrp_data.xml b/addons/mrp/mrp_data.xml index 1d92609eb7e..a6b65b7c475 100644 --- a/addons/mrp/mrp_data.xml +++ b/addons/mrp/mrp_data.xml @@ -8,7 +8,7 @@ notification MRP application installed! - Manage your manufacturing process with OpenERP by defining your bills of materials (BoM), routings and work centers.
+ Manage your manufacturing process with OpenERP by defining your bills of materials (BoM), routings and work centers.

This application supports complete integration and production scheduling for stockable goods, consumables, and services.

From the Manufacturing Settings, you can choose to compute production schedules periodically or just-in-time.

]]>
diff --git a/addons/note/i18n/pt_BR.po b/addons/note/i18n/pt_BR.po index fca285578ed..eea43f2275f 100644 --- a/addons/note/i18n/pt_BR.po +++ b/addons/note/i18n/pt_BR.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-14 04:40+0000\n" -"X-Generator: Launchpad (build 16251)\n" +"X-Launchpad-Export-Date: 2012-11-15 04:42+0000\n" +"X-Generator: Launchpad (build 16265)\n" #. module: note #: sql_constraint:res.users:0 diff --git a/addons/point_of_sale/static/src/js/models.js b/addons/point_of_sale/static/src/js/models.js index 7301a85eb2d..f1462424f1e 100644 --- a/addons/point_of_sale/static/src/js/models.js +++ b/addons/point_of_sale/static/src/js/models.js @@ -320,7 +320,7 @@ function openerp_pos_models(instance, module){ //module is instance.point_of_sal module.Product = Backbone.Model.extend({ get_image_url: function(){ - return '/web/binary/image?session_id='+instance.session.session_id+'&model=product.product&field=image&id='+this.get('id'); + return instance.session.url('/web/binary/image', {model: 'product.product', field: 'image', id: this.get('id')}); }, }); diff --git a/addons/point_of_sale/static/src/js/widgets.js b/addons/point_of_sale/static/src/js/widgets.js index c7874a4bd5c..4728c584b21 100644 --- a/addons/point_of_sale/static/src/js/widgets.js +++ b/addons/point_of_sale/static/src/js/widgets.js @@ -474,7 +474,7 @@ function openerp_pos_widgets(instance, module){ //module is instance.point_of_sa }, get_image_url: function(category){ - return '/web/binary/image?session_id='+instance.session.session_id+'&model=pos.category&field=image&id='+category.id; + return instance.session.url('/web/binary/image', {model: 'pos.category', field: 'image', id: category.id}); }, renderElement: function(){ diff --git a/addons/project/project_data.xml b/addons/project/project_data.xml index c5980ecddd2..08981bd126a 100644 --- a/addons/project/project_data.xml +++ b/addons/project/project_data.xml @@ -128,7 +128,7 @@ Project Management application installed! Manage multi-level projects and tasks. You can delegate tasks, track task work, and review your planning.

-

You can manage todo lists on tasks by installing the "Todo Lists" application, supporting the Getting Things Done (GTD) methodology.

+

You can manage todo lists on tasks by installing the Todo Lists application, supporting the Getting Things Done (GTD) methodology.

You can also manage issues/bugs in projects by installing the "Issue Tracker" application.

]]>
diff --git a/addons/project/project_demo.xml b/addons/project/project_demo.xml index cd22bad67d4..698a1a99627 100644 --- a/addons/project/project_demo.xml +++ b/addons/project/project_demo.xml @@ -21,31 +21,15 @@ Usability - - - Internal Projects - - - project.task - - - - - Customer Projects - - - project.task - - - open normal The Jackson Group's Project + 3 - followers + public @@ -58,6 +42,7 @@ Research & Development + public project.task @@ -69,6 +54,7 @@ E-Learning Integration project.task + public diff --git a/addons/project_gtd/project_gtd_data.xml b/addons/project_gtd/project_gtd_data.xml index 1536ac4be3f..9d8c99f23ff 100644 --- a/addons/project_gtd/project_gtd_data.xml +++ b/addons/project_gtd/project_gtd_data.xml @@ -32,7 +32,7 @@ notification Todo Lists application installed! - Add todo items on project tasks, to help you organize your work. + Add todo items on project tasks, to help you organize your work.

This application supports the Getting Things Done (GTD) methodology, based on David Allen's book.

]]>
diff --git a/addons/project_issue/project_issue_data.xml b/addons/project_issue/project_issue_data.xml index d70cd71e240..c1460167097 100644 --- a/addons/project_issue/project_issue_data.xml +++ b/addons/project_issue/project_issue_data.xml @@ -38,8 +38,8 @@ notification Issue Tracker application installed! - Manage the issues you might face in a project, such as bugs in a system, client complaints or material breakdowns. -You can record issues, assign them to a responsible person, and keep track of their status as they evolve over time. + Manage the issues you might face in a project, such as bugs in a system, client complaints or material breakdowns.

+You can record issues, assign them to a responsible person, and keep track of their status as they evolve over time.

Access all issues from the top Project menu, and access the issues of a specific project via the projects gallery view.

]]>
diff --git a/addons/project_issue/project_issue_demo.xml b/addons/project_issue/project_issue_demo.xml index 9759d15dabb..86e4c59b571 100644 --- a/addons/project_issue/project_issue_demo.xml +++ b/addons/project_issue/project_issue_demo.xml @@ -1,5 +1,24 @@ + + + + + + + + + + + + + + + + + + + diff --git a/addons/project_long_term/project_long_term_view.xml b/addons/project_long_term/project_long_term_view.xml index 52eb5d80a3a..18e471ddd40 100644 --- a/addons/project_long_term/project_long_term_view.xml +++ b/addons/project_long_term/project_long_term_view.xml @@ -121,8 +121,8 @@ - Phases() - Phase() + Phases + Phase
diff --git a/addons/sale/sale_data.xml b/addons/sale/sale_data.xml index d5ed8e810d6..3fe03966da2 100644 --- a/addons/sale/sale_data.xml +++ b/addons/sale/sale_data.xml @@ -41,7 +41,7 @@ Sales Management application installed! This application lets you create and send quotations and process your sales orders; from delivery to invoicing.

-

If you need to manage your sales pipeline (leads, opportunities, phonecalls), the <i>CRM</i> application may be useful. Use the Settings menu to install it.

]]>
+

If you need to manage your sales pipeline (leads, opportunities, phonecalls), the CRM application may be useful. Use the Settings menu to install it.

]]>
diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml index da8d1b3b9c2..9f385339173 100644 --- a/addons/sale/sale_view.xml +++ b/addons/sale/sale_view.xml @@ -311,7 +311,7 @@
- +
diff --git a/addons/stock/stock_view.xml b/addons/stock/stock_view.xml index 9c2a672caf7..a08597df60b 100644 --- a/addons/stock/stock_view.xml +++ b/addons/stock/stock_view.xml @@ -283,10 +283,11 @@ stock.tracking child_ids - + + @@ -913,7 +914,7 @@
- +
@@ -1039,7 +1040,7 @@
- +