[IMP] *: fix typos in comments
closes odoo/odoo#35404 Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
This commit is contained in:
committed by
Martin Trigaux
parent
1069890ea0
commit
355a5dfc36
@@ -2981,7 +2981,7 @@ class AccountMoveLine(models.Model):
|
||||
else:
|
||||
amls = self.browse(list(amls))
|
||||
|
||||
# If we have multiple currency, we can only base ourselve on debit-credit to see if it is fully reconciled
|
||||
# If we have multiple currency, we can only base ourselves on debit-credit to see if it is fully reconciled
|
||||
currency = set([a.currency_id for a in amls if a.currency_id.id != False])
|
||||
multiple_currency = False
|
||||
if len(currency) != 1:
|
||||
@@ -3014,7 +3014,7 @@ class AccountMoveLine(models.Model):
|
||||
to_balance[aml.currency_id][1] += aml.amount_residual != 0 and aml.amount_residual or aml.amount_residual_currency
|
||||
|
||||
# Check if reconciliation is total
|
||||
# To check if reconciliation is total we have 3 differents use case:
|
||||
# To check if reconciliation is total we have 3 different use case:
|
||||
# 1) There are multiple currency different than company currency, in that case we check using debit-credit
|
||||
# 2) We only have one currency which is different than company currency, in that case we check using amount_currency
|
||||
# 3) We have only one currency and some entries that don't have a secundary currency, in that case we check debit-credit
|
||||
@@ -3198,7 +3198,7 @@ class AccountMoveLine(models.Model):
|
||||
""" Create a writeoff move per journal for the account.move.lines in self. If debit/credit is not specified in vals,
|
||||
the writeoff amount will be computed as the sum of amount_residual of the given recordset.
|
||||
:param writeoff_vals: list of dicts containing values suitable for account_move_line.create(). The data in vals will
|
||||
be processed to create bot writeoff acount.move.line and their enclosing account.move.
|
||||
be processed to create bot writeoff account.move.line and their enclosing account.move.
|
||||
"""
|
||||
def compute_writeoff_counterpart_vals(values):
|
||||
line_values = values.copy()
|
||||
|
||||
@@ -755,7 +755,7 @@ var StatementModel = BasicModel.extend({
|
||||
var props = _.filter(line.reconciliation_proposition, function (prop) {return !prop.invalid;});
|
||||
var computeLinePromise;
|
||||
if (props.length === 0) {
|
||||
// Usability: if user has not choosen any lines and click validate, it has the same behavior
|
||||
// Usability: if user has not chosen any lines and click validate, it has the same behavior
|
||||
// as creating a write-off of the same amount.
|
||||
props.push(self._formatQuickCreate(line, {
|
||||
account_id: [line.st_line.open_balance_account_id, self.accounts[line.st_line.open_balance_account_id]],
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
<group string="Code Help">
|
||||
<pre>
|
||||
Code should always set a variable named `result` with the result of your test, that can be a list or
|
||||
a dictionary. If `result` is an empty list, it means that the test was succesful. Otherwise it will
|
||||
a dictionary. If `result` is an empty list, it means that the test was successful. Otherwise it will
|
||||
try to translate and print what is inside `result`.
|
||||
|
||||
If the result of your test is a dictionary, you can set a variable named `column_order` to choose in
|
||||
|
||||
@@ -551,7 +551,7 @@ class Meeting(models.Model):
|
||||
|
||||
@api.model
|
||||
def default_get(self, fields):
|
||||
# super default_model='crm.lead' for easier use in adddons
|
||||
# super default_model='crm.lead' for easier use in addons
|
||||
if self.env.context.get('default_res_model') and not self.env.context.get('default_res_model_id'):
|
||||
self = self.with_context(
|
||||
default_res_model_id=self.env['ir.model'].sudo().search([
|
||||
|
||||
@@ -12,7 +12,7 @@ class CalendarEvent(models.Model):
|
||||
_inherit = 'calendar.event'
|
||||
|
||||
def _sms_get_default_partners(self):
|
||||
""" Method overriden from mail.thread (defined in the sms module).
|
||||
""" Method overridden from mail.thread (defined in the sms module).
|
||||
SMS text messages will be sent to attendees that haven't declined the event(s).
|
||||
"""
|
||||
return self.mapped('attendee_ids').filtered(lambda att: att.state != 'declined').mapped('partner_id')
|
||||
@@ -39,7 +39,7 @@ class AlarmManager(models.AbstractModel):
|
||||
|
||||
@api.model
|
||||
def get_next_mail(self):
|
||||
""" Cron method, overriden here to send SMS reminders as well
|
||||
""" Cron method, overridden here to send SMS reminders as well
|
||||
"""
|
||||
result = super(AlarmManager, self).get_next_mail()
|
||||
now = fields.Datetime.to_string(fields.Datetime.now())
|
||||
|
||||
@@ -22,7 +22,7 @@ class TestCRMPLS(TransactionCase):
|
||||
|
||||
def test_predictive_lead_scoring(self):
|
||||
""" We test here computation of lead probability based on PLS Bayes.
|
||||
We will use 3 differents values for each possible variables:
|
||||
We will use 3 different values for each possible variables:
|
||||
country_id : 1,2,3
|
||||
state_id: 1,2,3
|
||||
email_state: correct, incorrect, None
|
||||
|
||||
@@ -44,7 +44,7 @@ class HrEmployeePrivate(models.Model):
|
||||
'res.partner', 'Address', help='Enter here the private address of the employee, not the one linked to your company.',
|
||||
groups="hr.group_hr_user", tracking=True)
|
||||
is_address_home_a_company = fields.Boolean(
|
||||
'The employee adress has a company linked',
|
||||
'The employee address has a company linked',
|
||||
compute='_compute_is_address_home_a_company',
|
||||
)
|
||||
private_email = fields.Char(related='address_home_id.email', string="Private Email", readonly=False, groups="hr.group_hr_user")
|
||||
@@ -293,7 +293,7 @@ class HrEmployeePrivate(models.Model):
|
||||
|
||||
@api.depends('address_home_id.parent_id')
|
||||
def _compute_is_address_home_a_company(self):
|
||||
"""Checks that choosen address (res.partner) is not linked to a company.
|
||||
"""Checks that chosen address (res.partner) is not linked to a company.
|
||||
"""
|
||||
for employee in self:
|
||||
try:
|
||||
|
||||
@@ -2749,7 +2749,7 @@ class MailThread(models.AbstractModel):
|
||||
company issues when clicking on a link sent by email, this
|
||||
could be called to try setting the most suited company on
|
||||
the allowed_company_ids in the context. This method can be
|
||||
overriden, for example on the hr.leave model, where the
|
||||
overridden, for example on the hr.leave model, where the
|
||||
most suited company is the company of the leave type, as
|
||||
specified by the ir.rule.
|
||||
"""
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
#
|
||||
# *: |/home/odoo/src/odoo-mail.py
|
||||
#
|
||||
# Note python2 was choosen on purpose for backward compatibility with old mail
|
||||
# Note python2 was chosen on purpose for backward compatibility with old mail
|
||||
# servers.
|
||||
#
|
||||
import optparse
|
||||
|
||||
@@ -41,7 +41,7 @@ var Thread = AbstractThread.extend(ServicesMixin, {
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Updates the _detached state of the thread. Must be overriden to reflect
|
||||
* Updates the _detached state of the thread. Must be overridden to reflect
|
||||
* the new state in the interface.
|
||||
*/
|
||||
close: function () {
|
||||
@@ -50,7 +50,7 @@ var Thread = AbstractThread.extend(ServicesMixin, {
|
||||
this._warnUpdatedWindowState();
|
||||
},
|
||||
/**
|
||||
* Updates the _detached state of the thread. Must be overriden to reflect
|
||||
* Updates the _detached state of the thread. Must be overridden to reflect
|
||||
* the new state in the interface.
|
||||
*
|
||||
* @param {Object} [options={}]
|
||||
@@ -86,7 +86,7 @@ var Thread = AbstractThread.extend(ServicesMixin, {
|
||||
return Promise.resolve([]);
|
||||
},
|
||||
/**
|
||||
* Updates the folded state of the thread. Must be overriden to reflect
|
||||
* Updates the folded state of the thread. Must be overridden to reflect
|
||||
* the new state in the interface.
|
||||
*
|
||||
* @override
|
||||
|
||||
@@ -704,7 +704,7 @@ class MrpProduction(models.Model):
|
||||
duration = best_workcenter.time_start + cycle_number * workorder.operation_id.time_cycle * 100.0 / best_workcenter.time_efficiency
|
||||
start_date = best_workcenter.resource_calendar_id.plan_hours(duration / 60.0, best_start_date, compute_leaves=True, resource=best_workcenter.resource_id, domain=[('time_type', 'in', ['leave', 'other'])])
|
||||
|
||||
# Create leave on choosen workcenter calendar
|
||||
# Create leave on chosen workcenter calendar
|
||||
leave = self.env['resource.calendar.leaves'].create({
|
||||
'name': self.name + ' - ' + workorder.name,
|
||||
'calendar_id': best_workcenter.resource_calendar_id.id,
|
||||
|
||||
@@ -603,7 +603,7 @@ class TestMrpOrder(TestMrpCommon):
|
||||
produce_wizard.do_produce()
|
||||
|
||||
def test_product_produce_7(self):
|
||||
""" Add components in 2 differents sub location. Do not reserve the MO
|
||||
""" Add components in 2 different sub location. Do not reserve the MO
|
||||
and checks that the move line created takes stock from location that
|
||||
contains needed raw materials.
|
||||
"""
|
||||
|
||||
@@ -193,7 +193,7 @@ QUnit.module('pad widget', {
|
||||
"should have no confirmation modal opened");
|
||||
await testUtils.nextTick();
|
||||
assert.strictEqual(defState, 'resolved',
|
||||
"can be discarded was succesfully resolved");
|
||||
"can be discarded was successfully resolved");
|
||||
form.destroy();
|
||||
delete FieldPad.prototype.isPadConfigured;
|
||||
});
|
||||
@@ -234,7 +234,7 @@ QUnit.module('pad widget', {
|
||||
"should have no confirmation modal opened");
|
||||
await testUtils.nextTick();
|
||||
assert.strictEqual(defState, 'resolved',
|
||||
"can be discarded was succesfully resolved");
|
||||
"can be discarded was successfully resolved");
|
||||
form.destroy();
|
||||
delete FieldPad.prototype.isPadConfigured;
|
||||
});
|
||||
|
||||
@@ -462,7 +462,7 @@ class PaymentAcquirer(models.Model):
|
||||
if not self.s2s_validate(data):
|
||||
return False
|
||||
if hasattr(self, cust_method_name):
|
||||
# As this method may be called in JSON and overriden in various addons
|
||||
# As this method may be called in JSON and overridden in various addons
|
||||
# let us raise interesting errors before having stranges crashes
|
||||
if not data.get('partner_id'):
|
||||
raise ValueError(_('Missing partner reference when trying to create a new payment token'))
|
||||
|
||||
@@ -186,7 +186,7 @@ odoo.define('point_of_sale.tour.pricelist', function (require) {
|
||||
trigger: ".selection-item:contains('Public Pricelist')",
|
||||
}, {
|
||||
content: "verify that the boni shelf have been recomputed and the\
|
||||
shelf have not (their price was manually overriden)",
|
||||
shelf have not (their price was manually overridden)",
|
||||
trigger: ".total > .value:contains('$ 8.96')",
|
||||
}, {
|
||||
content: "click pricelist button",
|
||||
@@ -297,7 +297,7 @@ odoo.define('point_of_sale.tour.acceptance', function (require) {
|
||||
trigger: ".js_connecting:visible",
|
||||
run: function () {}, // it's a check
|
||||
}, {
|
||||
content: "verify that the order has been succesfully sent to the backend",
|
||||
content: "verify that the order has been successfully sent to the backend",
|
||||
trigger: ".js_connected:visible",
|
||||
run: function () {}, // it's a check
|
||||
}, {
|
||||
|
||||
@@ -65,7 +65,7 @@ http {
|
||||
listen 80 default_server;
|
||||
|
||||
location / {
|
||||
# Every OS request specific adress and .txt file to test if hotspot are connected to internet however login splash page don't display
|
||||
# Every OS request specific address and .txt file to test if hotspot are connected to internet however login splash page don't display
|
||||
# this line respond true for every request and send a login splash page to client
|
||||
# it work for every OS
|
||||
return 301 $scheme://10.11.12.1:8069;
|
||||
|
||||
+1
-1
@@ -41,7 +41,7 @@ server {
|
||||
#server_name _;
|
||||
|
||||
location / {
|
||||
# Every OS request specific adress and .txt file to test if hotspot are connected to internet however login splash page don't display
|
||||
# Every OS request specific address and .txt file to test if hotspot are connected to internet however login splash page don't display
|
||||
# this line respond true for every request and send a login splash page to client
|
||||
# it work for every OS
|
||||
return 301 $scheme://10.11.12.1:8069;
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<link rel="stylesheet" href="/point_of_sale/static/src/css/pos.css" id="pos-stylesheet"/>
|
||||
<link rel="stylesheet" href="/point_of_sale/static/src/css/keyboard.css"/>
|
||||
|
||||
<link rel="stylesheet" type="text/less" href="/web/static/src/scss/fontawesome_overriden.scss"/>
|
||||
<link rel="stylesheet" type="text/less" href="/web/static/src/scss/fontawesome_overridden.scss"/>
|
||||
|
||||
<script type="text/javascript" src="/point_of_sale/static/lib/backbone/backbone.js"></script>
|
||||
<script type="text/javascript" src="/point_of_sale/static/lib/waitfont.js"></script>
|
||||
|
||||
@@ -1197,7 +1197,7 @@ class SaleOrderLine(models.Model):
|
||||
def _compute_qty_delivered(self):
|
||||
""" This method compute the delivered quantity of the SO lines: it covers the case provide by sale module, aka
|
||||
expense/vendor bills (sum of unit_amount of AAL), and manual case.
|
||||
This method should be overriden to provide other way to automatically compute delivered qty. Overrides should
|
||||
This method should be overridden to provide other way to automatically compute delivered qty. Overrides should
|
||||
take their concerned so lines, compute and set the `qty_delivered` field, and call super with the remaining
|
||||
records.
|
||||
"""
|
||||
@@ -1222,7 +1222,7 @@ class SaleOrderLine(models.Model):
|
||||
if not self:
|
||||
return result
|
||||
|
||||
# group anaytic lines by product uom and so line
|
||||
# group analytic lines by product uom and so line
|
||||
domain = expression.AND([[('so_line', 'in', self.ids)], additional_domain])
|
||||
data = self.env['account.analytic.line'].read_group(
|
||||
domain,
|
||||
|
||||
@@ -44,7 +44,7 @@ class SaleOrder(models.Model):
|
||||
|
||||
def _activity_cancel_on_purchase(self):
|
||||
""" If some SO are cancelled, we need to put an activity on their generated purchase. If sale lines of
|
||||
differents sale orders impact different purchase, we only want one activity to be attached.
|
||||
different sale orders impact different purchase, we only want one activity to be attached.
|
||||
"""
|
||||
purchase_to_notify_map = {} # map PO -> recordset of SOL as {purchase.order: set(sale.orde.liner)}
|
||||
|
||||
|
||||
@@ -276,7 +276,7 @@ class SaleOrderLine(models.Model):
|
||||
return self._check_availability(self.product_id)
|
||||
|
||||
def _check_availability(self, product_id):
|
||||
""" The purpose of this method is only to be overriden if
|
||||
""" The purpose of this method is only to be overridden if
|
||||
'product_id' is a kit
|
||||
"""
|
||||
product_qty = self.product_uom._compute_quantity(self.product_uom_qty, self.product_id.uom_id)
|
||||
|
||||
@@ -234,7 +234,7 @@ class TestSaleStock(TestSale):
|
||||
|
||||
def test_04_create_picking_update_saleorderline(self):
|
||||
"""
|
||||
Test that updating multiple sale order lines after a succesful delivery creates a single picking containing
|
||||
Test that updating multiple sale order lines after a successful delivery creates a single picking containing
|
||||
the new move lines.
|
||||
"""
|
||||
# sell two products
|
||||
|
||||
@@ -387,7 +387,7 @@ class TestReporting(TestCommonSaleTimesheetNoChart):
|
||||
self.assertTrue(float_is_zero(project_so_2_stat['expense_amount_untaxed_invoiced'], precision_rounding=rounding), "The expense invoiced amount of the project from SO1 should be 0.0")
|
||||
self.assertTrue(float_is_zero(project_so_2_stat['expense_cost'], precision_rounding=rounding), "The expense cost of the project from SO2 should be 0.0")
|
||||
|
||||
# global project should have an expense, but not reinvoicable
|
||||
# global project should have an expense, but not reinvoiceable
|
||||
project_global_stat = self.env['project.profitability.report'].read_group([('project_id', 'in', self.project_global.ids)], ['project_id', 'amount_untaxed_to_invoice', 'amount_untaxed_invoiced', 'timesheet_unit_amount', 'timesheet_cost', 'expense_cost', 'expense_amount_untaxed_to_invoice', 'expense_amount_untaxed_invoiced'], ['project_id'])[0]
|
||||
project_global_timesheet_cost = timesheet7.amount + timesheet8.amount
|
||||
project_global_timesheet_unit = timesheet7.unit_amount + timesheet8.unit_amount
|
||||
|
||||
@@ -36,7 +36,7 @@ class MailThread(models.AbstractModel):
|
||||
return ['&', ('message_ids.has_sms_error', operator, operand), ('message_ids.author_id', '=', self.env.user.partner_id.id)]
|
||||
|
||||
def _sms_get_default_partners(self):
|
||||
""" This method will likely need to be overriden by inherited models.
|
||||
""" This method will likely need to be overridden by inherited models.
|
||||
:returns partners: recordset of res.partner
|
||||
"""
|
||||
partners = self.env['res.partner']
|
||||
|
||||
@@ -459,7 +459,7 @@ class StockMove(models.Model):
|
||||
def _delay_alert_get_documents(self):
|
||||
"""Returns a list of recordset of the documents linked to the stock.move in `self` in order
|
||||
to post the delay alert next activity. These documents are deduplicated. This method is meant
|
||||
to be overriden by other modules, each of them adding an element by type of recordset on
|
||||
to be overridden by other modules, each of them adding an element by type of recordset on
|
||||
this list.
|
||||
|
||||
:return: a list of recordset of the documents linked to `self`
|
||||
|
||||
@@ -134,7 +134,7 @@ class StockMove(SavepointCase):
|
||||
self.assertNotEqual(quant.in_date, False)
|
||||
|
||||
def test_in_3(self):
|
||||
""" Receive 5 serial-tracked products from a supplier. The system should create 5 differents
|
||||
""" Receive 5 serial-tracked products from a supplier. The system should create 5 different
|
||||
move line.
|
||||
"""
|
||||
# creation
|
||||
|
||||
@@ -764,7 +764,7 @@ class TestStockFlow(TestStockCommon):
|
||||
|
||||
# Check quantity difference after stock transfer.
|
||||
quantity_diff = before_out_quantity - self.kgB.qty_available
|
||||
self.assertEqual(float_round(quantity_diff, precision_rounding=0.0001), 0.001, 'Wrong quantity diffrence.')
|
||||
self.assertEqual(float_round(quantity_diff, precision_rounding=0.0001), 0.001, 'Wrong quantity difference.')
|
||||
self.assertEqual(self.kgB.qty_available, 0.039, 'Wrong quantity available (%s found instead of 0.039)' % (self.kgB.qty_available))
|
||||
|
||||
# ======================================================================
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See ICENSE file for full copyright and licensing details.
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from odoo import api, fields, models, _
|
||||
from odoo.exceptions import UserError
|
||||
|
||||
@@ -361,7 +361,7 @@ class StockMove(models.Model):
|
||||
return res
|
||||
|
||||
def _generate_valuation_lines_data(self, partner_id, qty, debit_value, credit_value, debit_account_id, credit_account_id, description):
|
||||
# This method returns a dictonary to provide an easy extension hook to modify the valuation lines (see purchase for an example)
|
||||
# This method returns a dictionary to provide an easy extension hook to modify the valuation lines (see purchase for an example)
|
||||
self.ensure_one()
|
||||
debit_line_vals = {
|
||||
'name': self.name,
|
||||
|
||||
@@ -86,7 +86,7 @@ var SectionListRenderer = ListRenderer.extend({
|
||||
},
|
||||
// Handlers
|
||||
/**
|
||||
* Overriden to allow different behaviours depending on
|
||||
* Overridden to allow different behaviours depending on
|
||||
* the row the user clicked on.
|
||||
* If the row is a section: edit inline
|
||||
* else use a normal modal
|
||||
@@ -106,7 +106,7 @@ var SectionListRenderer = ListRenderer.extend({
|
||||
this._super.apply(this, arguments);
|
||||
},
|
||||
/**
|
||||
* Overriden to allow different behaviours depending on
|
||||
* Overridden to allow different behaviours depending on
|
||||
* the cell the user clicked on.
|
||||
* If the cell is part of a section: edit inline
|
||||
* else use a normal edit modal
|
||||
@@ -146,7 +146,7 @@ var SectionFieldOne2Many = FieldOne2Many.extend({
|
||||
this.rendered = false;
|
||||
},
|
||||
/**
|
||||
* Overriden to use our custom renderer
|
||||
* Overridden to use our custom renderer
|
||||
* @private
|
||||
* @override
|
||||
*/
|
||||
@@ -157,7 +157,7 @@ var SectionFieldOne2Many = FieldOne2Many.extend({
|
||||
return this._super.apply(this, arguments);
|
||||
},
|
||||
/**
|
||||
* Overriden to allow different behaviours depending on
|
||||
* Overridden to allow different behaviours depending on
|
||||
* the object we want to add. Adding a section would be done inline
|
||||
* while adding a question would render a modal.
|
||||
* @private
|
||||
|
||||
@@ -21,7 +21,7 @@ class UtmMixin(models.AbstractModel):
|
||||
def default_get(self, fields):
|
||||
values = super(UtmMixin, self).default_get(fields)
|
||||
|
||||
# We ignore UTM for salemen, except some requests that could be done as superuser_id to bypass access rights.
|
||||
# We ignore UTM for salesmen, except some requests that could be done as superuser_id to bypass access rights.
|
||||
if not self.env.is_superuser() and self.env.user.has_group('sales_team.group_sale_salesman'):
|
||||
return values
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
// Following the UMD template https://github.com/umdjs/umd/blob/master/templates/returnExportsGlobal.js
|
||||
(function (root, factory) {
|
||||
if (typeof define === 'function' && define.amd) {
|
||||
// AMD. Make globaly available as well
|
||||
// AMD. Make globally available as well
|
||||
define(['moment', 'jquery'], function (moment, jquery) {
|
||||
if (!jquery.fn) jquery.fn = {}; // webpack server rendering
|
||||
if (typeof moment !== 'function' && moment.default) moment = moment.default
|
||||
|
||||
+1
-1
@@ -1687,7 +1687,7 @@ var widgetsMouse = $.widget( "ui.mouse", {
|
||||
return this.mouseDelayMet;
|
||||
},
|
||||
|
||||
// These are placeholder methods, to be overriden by extending plugin
|
||||
// These are placeholder methods, to be overridden by extending plugin
|
||||
_mouseStart: function( /* event */ ) {},
|
||||
_mouseDrag: function( /* event */ ) {},
|
||||
_mouseStop: function( /* event */ ) {},
|
||||
|
||||
@@ -2213,13 +2213,13 @@ function dayOfYearFromWeekInfo(config) {
|
||||
weekdayOverflow = true;
|
||||
}
|
||||
} else if (w.e != null) {
|
||||
// local weekday -- counting starts from begining of week
|
||||
// local weekday -- counting starts from beginning of week
|
||||
weekday = w.e + dow;
|
||||
if (w.e < 0 || w.e > 6) {
|
||||
weekdayOverflow = true;
|
||||
}
|
||||
} else {
|
||||
// default to begining of week
|
||||
// default to beginning of week
|
||||
weekday = dow;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2291,7 +2291,7 @@ var modifiers = {
|
||||
|
||||
/**
|
||||
* Default options provided to Popper.js constructor.<br />
|
||||
* These can be overriden using the `options` argument of Popper.js.<br />
|
||||
* These can be overridden using the `options` argument of Popper.js.<br />
|
||||
* To override an option, simply pass as 3rd argument an object with the same
|
||||
* structure of this object, example:
|
||||
* ```
|
||||
|
||||
@@ -451,7 +451,7 @@ var ActionManager = Widget.extend({
|
||||
var prom = this._executeAction(action, options);
|
||||
prom.then(function () {
|
||||
// AAB: this should be done automatically in AbstractAction, so that
|
||||
// it can be overriden by actions that have specific stuff to push
|
||||
// it can be overridden by actions that have specific stuff to push
|
||||
// (e.g. Discuss, Views)
|
||||
self._pushState(controllerID, {});
|
||||
});
|
||||
@@ -644,7 +644,7 @@ var ActionManager = Widget.extend({
|
||||
},
|
||||
/**
|
||||
* Dispatches the given action to the corresponding handler to execute it,
|
||||
* according to its type. This function can be overriden to extend the
|
||||
* according to its type. This function can be overridden to extend the
|
||||
* range of supported action types.
|
||||
*
|
||||
* @private
|
||||
|
||||
@@ -89,7 +89,7 @@ var ActionMixin = {
|
||||
* example, if the user has edited a form, maybe we should ask him if we
|
||||
* can discard all his changes when we switch to another action. In that
|
||||
* case, the action manager will call this method. If the returned
|
||||
* promise is succesfully resolved, then we can destroy the current action,
|
||||
* promise is successfully resolved, then we can destroy the current action,
|
||||
* otherwise, we need to stop.
|
||||
*
|
||||
* @returns {Promise} resolved if the action can be removed, rejected
|
||||
|
||||
@@ -330,7 +330,7 @@ var utils = {
|
||||
// better expressed in the scientific format.
|
||||
if (numberMagnitude >= 21) {
|
||||
// we do not use number.toExponential(decimals) because we want to
|
||||
// avoid the possible useless O decimals: 1e.+24 prefered to 1.0e+24
|
||||
// avoid the possible useless O decimals: 1e.+24 preferred to 1.0e+24
|
||||
number = Math.round(number * Math.pow(10, decimals - numberMagnitude)) / d2;
|
||||
// formatterCallback seems useless here.
|
||||
return number + 'e' + numberMagnitude;
|
||||
|
||||
@@ -175,7 +175,7 @@ var AbstractField = Widget.extend({
|
||||
// to send it to the server. These functions are chosen according to
|
||||
// the 'widget' attrs if is is given, and if it is a valid key, with a
|
||||
// fallback on the field type, ensuring that the value is formatted and
|
||||
// displayed according to the choosen widget, if any.
|
||||
// displayed according to the chosen widget, if any.
|
||||
this.formatType = this.attrs.widget in field_utils.format ?
|
||||
this.attrs.widget :
|
||||
this.field.type;
|
||||
|
||||
@@ -471,9 +471,9 @@ var FieldMany2One = AbstractField.extend({
|
||||
|
||||
// this is a stupid hack necessary to support the always_reload flag.
|
||||
// the field value has been reread by the basic model. We use it to
|
||||
// display the full address of a patner, separated by \n. This is
|
||||
// display the full address of a partner, separated by \n. This is
|
||||
// really a bad way to do it. Now, we need to remove the extra lines
|
||||
// and hope for the best that noone tries to uses this mechanism to do
|
||||
// and hope for the best that no one tries to uses this mechanism to do
|
||||
// something else.
|
||||
if (this.nodeOptions.always_reload) {
|
||||
value = this._getDisplayName(value);
|
||||
|
||||
@@ -47,7 +47,7 @@ var AbstractFieldUpgrade = {
|
||||
});
|
||||
},
|
||||
/**
|
||||
* This function is meant to be overriden to insert the 'Enterprise' label
|
||||
* This function is meant to be overridden to insert the 'Enterprise' label
|
||||
* JQuery node at the right place.
|
||||
*
|
||||
* @abstract
|
||||
@@ -98,7 +98,7 @@ var AbstractFieldUpgrade = {
|
||||
}));
|
||||
},
|
||||
/**
|
||||
* This function is meant to be overriden to reset the $el to its initial
|
||||
* This function is meant to be overridden to reset the $el to its initial
|
||||
* state.
|
||||
*
|
||||
* @abstract
|
||||
|
||||
@@ -122,7 +122,7 @@ var BasicController = AbstractController.extend(FieldManagerMixin, {
|
||||
.then(this._discardChanges.bind(this, recordID || this.handle, options));
|
||||
},
|
||||
/**
|
||||
* Method that will be overriden by the views with the ability to have selected ids
|
||||
* Method that will be overridden by the views with the ability to have selected ids
|
||||
*
|
||||
* @returns {Array}
|
||||
*/
|
||||
|
||||
@@ -353,7 +353,7 @@ var BasicRenderer = AbstractRenderer.extend({
|
||||
return _.findWhere(this.allModifiersData, {node: node});
|
||||
},
|
||||
/**
|
||||
* This function is meant to be overriden in renderers. It takes a dataPoint
|
||||
* This function is meant to be overridden in renderers. It takes a dataPoint
|
||||
* id (for a dataPoint of type record), and should return the corresponding
|
||||
* dataPoint.
|
||||
*
|
||||
|
||||
@@ -359,7 +359,7 @@ var BasicView = AbstractView.extend({
|
||||
},
|
||||
/**
|
||||
* Processes a node of the arch (mainly nodes with tagname 'field'). Can
|
||||
* be overriden to handle other tagnames.
|
||||
* be overridden to handle other tagnames.
|
||||
*
|
||||
* @private
|
||||
* @param {Object} node
|
||||
|
||||
@@ -236,7 +236,7 @@ var KanbanModel = BasicModel.extend({
|
||||
|
||||
// Manually updates groups data. Note: this is done before the actual
|
||||
// save as it might need to perform a read group in some cases so those
|
||||
// updated data might be overriden again.
|
||||
// updated data might be overridden again.
|
||||
var record = self.localData[recordID];
|
||||
var resID = record.res_id;
|
||||
// Remove record from its current group
|
||||
|
||||
@@ -84,7 +84,7 @@ function transformQwebTemplate(node, fields) {
|
||||
|
||||
var KanbanRenderer = BasicRenderer.extend({
|
||||
className: 'o_kanban_view',
|
||||
config: { // the KanbanRecord and KanbanColumn classes to use (may be overriden)
|
||||
config: { // the KanbanRecord and KanbanColumn classes to use (may be overridden)
|
||||
KanbanColumn: KanbanColumn,
|
||||
KanbanRecord: KanbanRecord,
|
||||
},
|
||||
|
||||
@@ -1083,7 +1083,7 @@ ListRenderer.include({
|
||||
this._selectCell(rowIndex, fieldIndex, {event: event});
|
||||
},
|
||||
/**
|
||||
* We need to manually unselect row, because noone else would do it
|
||||
* We need to manually unselect row, because no one else would do it
|
||||
*/
|
||||
_onEmptyRowClick: function () {
|
||||
this.unselectRow();
|
||||
|
||||
@@ -20,7 +20,7 @@ odoo.define('web.ListModel', function (require) {
|
||||
//--------------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Overriden to add `groupData` when performing get on list datapoints.
|
||||
* overridden to add `groupData` when performing get on list datapoints.
|
||||
*
|
||||
* @override
|
||||
* @see _readGroupExtraFields
|
||||
|
||||
@@ -777,7 +777,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
// Overriden style when form view in modal
|
||||
// Overridden style when form view in modal
|
||||
.modal .modal-dialog {
|
||||
.o_form_view {
|
||||
.o_form_sheet_bg {
|
||||
|
||||
@@ -104,7 +104,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
// Overriden style when form view in modal
|
||||
// Overridden style when form view in modal
|
||||
.modal .modal-dialog {
|
||||
.o_form_view {
|
||||
.o_form_sheet_bg, .o_form_sheet {
|
||||
|
||||
@@ -326,7 +326,7 @@ QUnit.module('fields', {}, function () {
|
||||
form.destroy();
|
||||
});
|
||||
|
||||
QUnit.test('many2ones in form views with show_adress', async function (assert) {
|
||||
QUnit.test('many2ones in form views with show_address', async function (assert) {
|
||||
assert.expect(4);
|
||||
var form = await createView({
|
||||
View: FormView,
|
||||
|
||||
@@ -161,7 +161,7 @@ function addMockEnvironment(widget, params) {
|
||||
var initialSession, initialConfig, initialParameters, initialDebounce, initialThrottle;
|
||||
initialSession = _.extend({}, session);
|
||||
session.getTZOffset = function () {
|
||||
return 0; // by default, but may be overriden in specific tests
|
||||
return 0; // by default, but may be overridden in specific tests
|
||||
};
|
||||
if ('session' in params) {
|
||||
_.extend(session, params.session);
|
||||
|
||||
@@ -1490,11 +1490,11 @@ odoo.define('web.basic_model_tests', function (require) {
|
||||
assert.deepEqual(
|
||||
recordPartner.getContext({ fieldName: "product_id" }),
|
||||
{ hello2: "world", test2: "gnap" },
|
||||
"field context should have been overriden by xml attribute");
|
||||
"field context should have been overridden by xml attribute");
|
||||
assert.deepEqual(
|
||||
recordPartner.getDomain({ fieldName: "product_id" }),
|
||||
[["hello2", "like", "world"], ["test2", "like", "gnap"]],
|
||||
"field domain should have been overriden by xml attribute");
|
||||
"field domain should have been overridden by xml attribute");
|
||||
model.destroy();
|
||||
});
|
||||
|
||||
|
||||
@@ -4550,7 +4550,7 @@ QUnit.module('Views', {
|
||||
QUnit.test('readonly fields with modifiers may be saved', async function (assert) {
|
||||
// the readonly property on the field description only applies on view,
|
||||
// this is not a DB constraint. It should be seen as a default value,
|
||||
// that may be overriden in views, for example with modifiers. So
|
||||
// that may be overridden in views, for example with modifiers. So
|
||||
// basically, a field defined as readonly may be edited.
|
||||
assert.expect(3);
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
<link rel="stylesheet" type="text/scss" href="/web/static/src/scss/name_and_signature.scss"/>
|
||||
<link rel="stylesheet" type="text/scss" href="/web/static/src/scss/web.zoomodoo.scss"/>
|
||||
|
||||
<link rel="stylesheet" type="text/less" href="/web/static/src/scss/fontawesome_overriden.scss"/>
|
||||
<link rel="stylesheet" type="text/less" href="/web/static/src/scss/fontawesome_overridden.scss"/>
|
||||
|
||||
<t t-call="web._assets_common_minimal_js"/>
|
||||
|
||||
|
||||
@@ -70,7 +70,7 @@ class SeoMetadata(models.AbstractModel):
|
||||
def get_website_meta(self):
|
||||
""" This method will return final meta information. It will replace
|
||||
default values with user's custom value (if user modified it from
|
||||
the seo popup of fronted)
|
||||
the seo popup of frontend)
|
||||
|
||||
This method is not meant for overridden. To customize meta values
|
||||
override `_default_website_meta` method instead of this method. This
|
||||
|
||||
@@ -252,7 +252,7 @@ class Website(models.Model):
|
||||
if ispage:
|
||||
page = self.env['website.page'].create({
|
||||
'url': page_url,
|
||||
'website_id': website.id, # remove it if only one webiste or not?
|
||||
'website_id': website.id, # remove it if only one website or not?
|
||||
'view_id': view.id,
|
||||
})
|
||||
result['view_id'] = view.id
|
||||
|
||||
@@ -173,7 +173,7 @@ class Forum(models.Model):
|
||||
user = self.env.user
|
||||
for tag in (tag for tag in tags.split(',') if tag):
|
||||
if tag.startswith('_'): # it's a new tag
|
||||
# check that not arleady created meanwhile or maybe excluded by the limit on the search
|
||||
# check that not already created meanwhile or maybe excluded by the limit on the search
|
||||
tag_ids = Tag.search([('name', '=', tag[1:])])
|
||||
if tag_ids:
|
||||
existing_keep.append(int(tag_ids[0]))
|
||||
|
||||
@@ -8,7 +8,7 @@ function initialize_map() {
|
||||
mapTypeId: google.maps.MapTypeId.ROADMAP
|
||||
});
|
||||
|
||||
// ENABLE ADRESS GEOCODING
|
||||
// ENABLE ADDRESS GEOCODING
|
||||
var Geocoder = new google.maps.Geocoder();
|
||||
|
||||
// INFO BUBBLES
|
||||
@@ -40,7 +40,7 @@ function initialize_map() {
|
||||
|
||||
// Create a bubble for a partner
|
||||
var set_marker = function(partner) {
|
||||
// If no lat & long, geocode adress
|
||||
// If no lat & long, geocode address
|
||||
// TODO: a server cronjob that will store these coordinates in database instead of resolving them on-the-fly
|
||||
if (!partner.latitude && !partner.longitude) {
|
||||
Geocoder.geocode({'address': partner.address}, function(results, status) {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// Retrive the tab's height by summ its properties
|
||||
$owprofile-tabs-height: ($nav-link-padding-y*2) + ($font-size-base * $line-height-base);
|
||||
|
||||
// Overal page bg-color: Blend it 'over' the color choosen by the user
|
||||
// Overal page bg-color: Blend it 'over' the color chosen by the user
|
||||
// ($body-bg), rather than force it replacing the variable's value.
|
||||
$owprofile-color-bg: mix($body-bg, #efeff4);
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ from . import report
|
||||
|
||||
def uninstall_hook(cr, registry):
|
||||
''' Need to reenable the `product` pricelist multi-company rule that were
|
||||
disabled to be 'overriden' for multi-website purpose
|
||||
disabled to be 'overridden' for multi-website purpose
|
||||
'''
|
||||
env = api.Environment(cr, SUPERUSER_ID, {})
|
||||
pl_rule = env.ref('product.product_pricelist_comp_rule', raise_if_not_found=False)
|
||||
|
||||
@@ -3,7 +3,7 @@ $MAX-Z-INDEX : 2147483647 !default;
|
||||
// Retrive the tab's height by summ its properties
|
||||
$o-wslides-tabs-height: ($nav-link-padding-y*2) + ($font-size-base * $line-height-base);
|
||||
|
||||
// Overal page bg-color: Blend it 'over' the color choosen by the user
|
||||
// Overal page bg-color: Blend it 'over' the color chosen by the user
|
||||
// ($body-bg), rather than force it replacing the variable's value.
|
||||
$o-wslides-color-bg: mix($body-bg, #efeff4);
|
||||
|
||||
|
||||
@@ -277,7 +277,7 @@ Odoo supports custom tags acting as syntactic sugar:
|
||||
- report: use to declare a :ref:`report action <reference/actions/report>`
|
||||
- act_window: use it if the record notation can't do what you want
|
||||
|
||||
The 4 first tags are prefered over the *record* notation.
|
||||
The 4 first tags are preferred over the *record* notation.
|
||||
|
||||
|
||||
XML IDs and naming
|
||||
|
||||
@@ -996,13 +996,13 @@ The behaviour of the mixin adapts to your model:
|
||||
* The ``rating.rating`` record will be linked to the ``partner_id`` field of your
|
||||
model (if the field is present).
|
||||
|
||||
- this behaviour can be overriden with the function ``rating_get_partner_id()``
|
||||
- this behaviour can be overridden with the function ``rating_get_partner_id()``
|
||||
if you use another field than ``partner_id``
|
||||
|
||||
* The ``rating.rating`` record will be linked to the partner of the ``user_id``
|
||||
field of your model (if the field is present) (i.e. the partner who is rated)
|
||||
|
||||
- this behaviour can be overriden with the function ``rating_get_rated_partner_id()``
|
||||
- this behaviour can be overridden with the function ``rating_get_rated_partner_id()``
|
||||
if you use another field than ``user_id`` (note that the function must return a
|
||||
``res.partner``, for ``user_id`` the system automatically fetches the partner
|
||||
of the user)
|
||||
|
||||
@@ -353,7 +353,7 @@ The :class:`~odoo.addons.iap.models.iap.charge` helper will:
|
||||
if the account does not have enough credits it will raise the relevant
|
||||
error
|
||||
2. execute the body of the ``with`` statement
|
||||
3. if the body of the ``with`` executes succesfully, update the price
|
||||
3. if the body of the ``with`` executes successfully, update the price
|
||||
of the transaction if needed
|
||||
4. capture (confirm) the transaction
|
||||
5. otherwise, if an error is raised from the body of the ``with``, cancel the
|
||||
|
||||
@@ -322,7 +322,7 @@ class IrAttachment(models.Model):
|
||||
@api.model
|
||||
def check(self, mode, values=None):
|
||||
"""Restricts the access to an ir.attachment, according to referred model
|
||||
In the 'document' module, it is overriden to relax this hard rule, since
|
||||
In the 'document' module, it is overridden to relax this hard rule, since
|
||||
more complex ones apply there.
|
||||
"""
|
||||
if self.env.is_superuser():
|
||||
|
||||
@@ -190,5 +190,5 @@ class BaseDocumentLayout(models.TransientModel):
|
||||
return self.env.ref(action_ref).read()[0]
|
||||
|
||||
def document_layout_save(self):
|
||||
# meant to be overriden
|
||||
# meant to be overridden
|
||||
pass
|
||||
|
||||
@@ -28,7 +28,7 @@ class TestUiTranslation(odoo.tests.HttpCase):
|
||||
self.assertEqual(message, "La couleur doit être une valeur positive !")
|
||||
|
||||
# TODO: make the test work with French translations. As the transaction
|
||||
# is rollbacked at insert and a new cusor is opened, can not test that
|
||||
# is rollbacked at insert and a new cursor is opened, can not test that
|
||||
# the message is translated (_load_module_terms is also) rollbacked.
|
||||
# Test individually the external id and loading of translation.
|
||||
self.start_tour("/web#action=test_new_api.action_categories",
|
||||
|
||||
+1
-1
@@ -39,7 +39,7 @@ Warning = UserError
|
||||
|
||||
class RedirectWarning(Exception):
|
||||
""" Warning with a possibility to redirect the user instead of simply
|
||||
diplaying the warning message.
|
||||
displaying the warning message.
|
||||
|
||||
Should receive as parameters:
|
||||
:param int action_id: id of the action where to perform the redirection
|
||||
|
||||
+2
-2
@@ -1783,7 +1783,7 @@ class BaseModel(MetaModel('DummyModel', (object,), {'_register': False})):
|
||||
|
||||
:param list data: the data containing groups
|
||||
:param list groupby: name of the first group by
|
||||
:param aggregated_fields list: list of aggregated fields in the query
|
||||
:param list aggregated_fields: list of aggregated fields in the query
|
||||
:param relativedelta interval: interval between to temporal groups
|
||||
expressed as a relativedelta month by default
|
||||
:rtype: list
|
||||
@@ -2638,7 +2638,7 @@ class BaseModel(MetaModel('DummyModel', (object,), {'_register': False})):
|
||||
|
||||
Return the definition of each field.
|
||||
|
||||
The returned value is a dictionary (indiced by field name) of
|
||||
The returned value is a dictionary (indexed by field name) of
|
||||
dictionaries. The _inherits'd fields are included. The string, help,
|
||||
and selection (if present) attributes are translated.
|
||||
|
||||
|
||||
@@ -272,7 +272,7 @@ def module_manifest(path):
|
||||
|
||||
def get_module_root(path):
|
||||
"""
|
||||
Get closest module's root begining from path
|
||||
Get closest module's root beginning from path
|
||||
|
||||
# Given:
|
||||
# /foo/bar/module_dir/static/src/...
|
||||
|
||||
@@ -134,8 +134,8 @@ AND_OPERATOR = '&'
|
||||
DOMAIN_OPERATORS = (NOT_OPERATOR, OR_OPERATOR, AND_OPERATOR)
|
||||
|
||||
# List of available term operators. It is also possible to use the '<>'
|
||||
# operator, which is strictly the same as '!='; the later should be prefered
|
||||
# for consistency. This list doesn't contain '<>' as it is simpified to '!='
|
||||
# operator, which is strictly the same as '!='; the later should be preferred
|
||||
# for consistency. This list doesn't contain '<>' as it is simplified to '!='
|
||||
# by the normalize_operator() function (so later part of the code deals with
|
||||
# only one representation).
|
||||
# Internals (i.e. not available to the user) 'inselect' and 'not inselect'
|
||||
|
||||
@@ -396,7 +396,7 @@ class configmanager(object):
|
||||
|
||||
die(os.path.isfile(rcfilepath) and os.path.isfile(old_rcfilepath),
|
||||
"Found '.odoorc' and '.openerp_serverrc' in your path. Please keep only one of "\
|
||||
"them, preferrably '.odoorc'.")
|
||||
"them, preferably '.odoorc'.")
|
||||
|
||||
if not os.path.isfile(rcfilepath) and os.path.isfile(old_rcfilepath):
|
||||
rcfilepath = old_rcfilepath
|
||||
|
||||
@@ -214,7 +214,7 @@ def json_default(obj):
|
||||
def date_range(start, end, step=relativedelta(months=1)):
|
||||
"""Date range generator with a step interval.
|
||||
|
||||
:param start datetime: begining date of the range.
|
||||
:param start datetime: beginning date of the range.
|
||||
:param end datetime: ending date of the range.
|
||||
:param step relativedelta: interval of the range.
|
||||
:return: a range of datetime from start to end.
|
||||
|
||||
@@ -307,7 +307,7 @@ def valid_alternative_icon_text(arch, **kwargs):
|
||||
valid_aria_attrs_xpath = ' or '.join('@' + attr for attr in valid_aria_attrs)
|
||||
valid_attrs_xpath = ' or '.join('@' + attr for attr in valid_attrs)
|
||||
|
||||
# Select elements with class begining by 'fa-'
|
||||
# Select elements with class beginning by 'fa-'
|
||||
xpath = '(//*[contains(concat(" ", @class), " fa-")'
|
||||
xpath += ' or contains(concat(" ", @t-att-class), " fa-")'
|
||||
xpath += ' or contains(concat(" ", @t-attf-class), " fa-")]'
|
||||
@@ -347,7 +347,7 @@ def valid_title_icon(arch, **kwargs):
|
||||
valid_title_attrs_xpath = ' or '.join('@' + attr for attr in valid_title_attrs)
|
||||
valid_attrs_xpath = ' or '.join('@' + attr for attr in valid_attrs)
|
||||
|
||||
# Select elements with class begining by 'fa-'
|
||||
# Select elements with class beginning by 'fa-'
|
||||
xpath = '(//*[contains(concat(" ", @class), " fa-")'
|
||||
xpath += ' or contains(concat(" ", @t-att-class), " fa-")'
|
||||
xpath += ' or contains(concat(" ", @t-attf-class), " fa-")]'
|
||||
|
||||
Reference in New Issue
Block a user