Commit Graph

91485 Commits

Author SHA1 Message Date
Olivier Dony 5825ed3769 [FIX] README: grammar 2014-10-13 11:05:17 +02:00
Tymoteusz Motylewski 902506ad28 fix typo 2014-10-13 10:42:30 +02:00
Xavier Morel 8f697ee385 [FIX] incorrect qweb interpolations
unnecessary, worked by accident and broken by change to interpolation regex in 35f5fb46
2014-10-13 09:31:59 +02:00
sebalix 8e7e6dfaa3 [FIX] web_diagram, unlink connectors/transitions between nodes from the diagram view (transitions IDs sent to the web client were strings instead of integers) 2014-10-11 21:49:44 +02:00
Olivier Dony 9b67a483df [FIX] website_sale: better fiscal position detection + support update during checkout
The customer can change the country and tax
number in the billing information during
checkout, and the taxes should be properly
updated according to the re-detected fiscal
position.

The fiscal position detection also depends
on the `vat_subjected` flag, which we now assume
to be implicit as soon as the customer filled
in a valid Tax Identification Number.
2014-10-10 21:02:33 +02:00
Olivier Dony edd94b623e [MERGE] Forward-port 7.0 up to 1b49a87 2014-10-10 19:21:18 +02:00
Olivier Dony 1b49a87619 [FIX] ir.mail.server: restore parsing of multiple RFC2822 addresses including non-ASCII chars
Rev f2cf6ced1 modified RFC2822 parsing in order to better support
unicode characters inside the Name part of an address header.
However the patch broke handling of multiple addresses (comma
separated) - silently discarding all recipients except the
first one, as soon as any non-ASCII character was present.

This patch restores the functionality while preserving the
fix from f2cf6ced1, and simplifies the code using email.utils
utility functions.

Fixes (again) lp:1272610, OPW 607683
2014-10-10 18:32:00 +02:00
Simon Lejeune ee697920f5 [FIX] web: re-enable test_menu.py without the mock-menu test 2014-10-10 18:12:59 +02:00
Simon Lejeune 56b6c2fee4 [FIX] packaging: include RML & xsl in manifest.in 2014-10-10 18:12:07 +02:00
Jeremy Kersten fc47823ab2 [IMP] ir_qweb: remove the option 'only_date' introducted in cefc9ad8e3. Now we can use widget='date' to do the same thing. That keeps the same behaviour that in the backend.
<span t-field=model.datetime_field t-field-options="{'widget': 'date'}"/>
2014-10-10 16:20:10 +02:00
Denis Ledoux b576de5f05 [FIX] web: revert c1d48362d3 and consider there is a previous dialog only if isDestroyed returns False 2014-10-10 14:09:05 +02:00
Denis Ledoux d38adf3d92 [FIX] account_invoice: using has_group to determine if user has group group_supplier_inv_check_total
has_group do not care about the fact res.groups is access restricted
2014-10-09 18:57:37 +02:00
Denis Ledoux eeb1f0355c [FIX] res.users: exactly match login when operator in ilike, equal 2014-10-09 18:57:37 +02:00
Niels Huylebroeck f0f5a29606 [FIX] point_of_sale: printing of tax name on hardware was missing data 'name', also made the regular print use the same value for consistency. 2014-10-09 18:38:46 +02:00
Raphael Collet 8a9027edd1 [IMP] fields: do not force required=True on related fields
This may cause issues if the field is stored: non-null constraint will prevent
saving records when no value is provided.
2014-10-09 17:18:28 +02:00
Raphael Collet ab8bd8066a [FIX] models: in _create() and _write(), mark fields to recompute earlier
An issue occurs when a constraint is checked before computed fields are marked
for recomputation: the constraint will read the field's current value, which
may be wrong.  If the field is marked soon enough, the constraint will trigger
the recomputation and use a correct value.
2014-10-09 17:14:34 +02:00
Denis Ledoux c1d48362d3 [FIX] web: destroy modal on cross click or escape
Instead of just hidding it
Otherwise, when opening a new dialog, it is considered that there is a previous opened dialog, and this can lead to refresh the record which opened the hidden/previous dialog

This is related to rev. 57b48602fb
2014-10-09 16:31:17 +02:00
Xavier Morel bc59cfce61 [IMP] doc: add testing reference and improve docstrings 2014-10-09 15:38:36 +02:00
Raphael Collet 1c9ed9f534 [IMP] fields: rename attribute 'copyable' into 'copy' 2014-10-09 15:05:15 +02:00
Raphael Collet 8ddf145559 [IMP] fields: do not copy field objects anymore, but make new instances instead
Because of the parameter overriding mechanism implemented by fields, it is no
longer necessary to copy field objects.  It is even better to no copy them in
the case of related fields.
2014-10-09 15:05:15 +02:00
Cedric Snauwaert 77ae95db5a [FIX] barcode_interface: when loading widget, picking_type_id was sometime not correctly set 2014-10-09 15:04:02 +02:00
Martin Trigaux bd52298073 [IMP] mail: parsing emails with several html parts
If an email contains several text/html parts inside a multipart email, the previous code was only keeping the last content part.
The Content-Type: multipart/mixed allows several independent part (RFC1341 7.2.2), so two html is technically valid.
With this patch, the two parts are concatenated. (opw 614755)

Modify append_content_to_html regex to make sure the regex keeps the content of the html instead of removing it.
e.g.: "123 <html> 456 </html> 789" used to be stripped to "123  789" while we expect "123 456 789"
2014-10-09 13:53:23 +02:00
Xavier Morel 9501f33d1d [ADD] doc: workflow doc from v7+ (saas-5)
I tried starting a better one, but the workflow code is a complete mess so I
have no idea how this thing works without significant study and testing.

Thus, not trying to write a brand new and complete doc, maybe later.
2014-10-09 13:37:15 +02:00
Raphael Collet be894166ef [IMP] fields: add assertions to check parameters (comodel_name, size, digits) 2014-10-09 10:50:40 +02:00
Raphael Collet 36174fcc6e [IMP] fields: set the default value to the closest field.default or _defaults
This solves a subtle issue: in the following case, the class Bar should
override the default value set by Foo.  But in practice it was not working,
because _defaults is looked up before field.default.

    class Foo(models.Model):
        _name = 'foo'
        _columns = {
            'foo': fields.char('Foo'),
        }
        _defaults = {
            'foo': "Foo",
        }

    class Bar(models.Model):
        _inherit = 'foo'
        foo = fields.Char(default="Bar")

The change makes field.default and the model's _defaults consistent with each
other.
2014-10-09 09:18:02 +02:00
Raphael Collet 3f31081bc2 [IMP] fields: make attribute 'default' callable 2014-10-09 09:18:02 +02:00
Olivier Dony 7439421ad2 [I18N] Update translations from Launchpad 8.0 branches 2014-10-08 17:52:25 +02:00
Xavier Morel 99d740ad7d [IMP] new-api-ify 'trigger' server action 2014-10-08 17:30:16 +02:00
Xavier Morel 8cfe731f76 [FIX] actions: match the behavior of multi actions with its help text
also fix the corresponding text and add explicit sequence number because I
don't understand what the bloody hell it does without that, except that it's
not the right thing. At all.
2014-10-08 17:29:36 +02:00
Xavier Morel 5d64577f57 [ADD] actions documentation 2014-10-08 17:29:35 +02:00
Denis Ledoux b675ff1f0a [FIX] purchase: do not pass uom in product_id_change when changing of product
To allow the on change to set the product default unit of measure when changing of product, and only in this case (not when changing price or quantity)
2014-10-08 17:21:29 +02:00
Raphael Collet 619a844428 [FIX] fields: in to_column(), returning self.column is generally not correct
Consider the following example:

    class Foo(models.Model):
        _name = 'foo'
        _columns = {
            'state': fields.selection([('a', 'A')]),
        }

    class Bar(models.Model):
        _inherit = 'foo'
        state = fields.Selection(selection_add=[('b', 'B')])

The attribute 'column' of the field does not have the full selection list,
therefore the column object cannot not be reused, even a copy of it.  The
solution is to systematically recreate the column from the field's final
specification, except for function fields that have no sensible way for being
recreated.
2014-10-08 16:39:59 +02:00
Raphael Collet 10142d7dc7 [FIX] openerp/osv/fields: fix method to_field() to pass some falsy parameters.
For instance, the attribute copy=False was not passed when converting the
_column to a Field.  Simply make sure those parameter are always passed.
2014-10-08 16:39:59 +02:00
Denis Ledoux 38668fd404 [FIX] website_sale*: handle no delivery methods in website
Display a user friendly message instead of crashing when there is not delivery method available for a specific order
2014-10-08 15:38:16 +02:00
Raphael Collet cad29b0fdf Revert "[FIX] Error when installing module document"
This reverts commit 8dd4c83d9c.
It does not fix the issue, but hides it instead.
An actual fix has been made since.
2014-10-08 14:48:13 +02:00
Frederic van der Essen a644c4c3c1 [FIX] pos_restaurant: Issue 614981: product renaming from name to display_name was not done in the pos_restaurant module, resulting in empty product names in various places 2014-10-08 12:42:08 +02:00
Fabien Meghazi 6c779e736a [FIX] dict notation for js reserved words in options (Fixes #2957) 2014-10-08 12:33:56 +02:00
Cedric Snauwaert c521bb2835 [FIX] kanban: remove container=element for tooltips on kanban 2014-10-08 11:54:31 +02:00
Denis Ledoux 9f214223ea [IMP] website_event: add mail subtypes
Add published and unpublised mail subtypes, to track events publication, and to be able to follow these subtypes
2014-10-07 19:05:39 +02:00
Jeremy Kersten 8ff6299d9d [FIX] website_sale: save the company in street and the street in street2.
The old behaviour was not better, because when we print the invoice, the order was ugly:
    Name
    Street
    Company name
    Country

Now we will have:
    Name
    Company name
    Street
    Country

This patch is not retro-compatible:
   Old partners will see the address in company name and vice-versa.
   Need to update view and switch street field and street2 field
2014-10-07 19:00:45 +02:00
Frederic van der Essen 717895be1a [FIX] point_of_sale: prevent empty order creation as they are not accepted by the backend 2014-10-07 18:18:59 +02:00
Martin Trigaux ea68690407 [IMP] gamification: avoid sending twice emails in cron
When the cron is running on a database with a large number of goals (e.g. website_forum with thousands of users), it's possible the CPU time is exceeded and we may have a rollback after sending some emails (for granted badges).
To avoid sending twice emails, commit in cron mode after each reward.
2014-10-07 18:14:57 +02:00
Denis Ledoux b13898c058 [MERGE] forward port of branch 7.0 up to 03df412f 2014-10-07 17:34:42 +02:00
Denis Ledoux 03df412faf [FIX] account: precision_get returns a number of digits
In other words, it returnes a precision digits, not a precision rounding
2014-10-07 17:26:49 +02:00
Denis Ledoux c741d45ac1 [FIX] ir_actions: ids of unlink method can either be an ID list or one ID 2014-10-07 16:07:46 +02:00
Josse Colpaert cc9973d464 Merge pull request #2955 from odoo-dev/8.0-wmsmrpdatefix-jco
[FIX] Can not execute line when stop date is EARLIER than current date
2014-10-07 15:05:22 +02:00
Christophe Simonis 8ff7230e2d [FIX] migration: test if package is installed using its state.
checking if there is an installed version set is not enough because this field is not reset when the module is uninstalled
2014-10-07 14:57:26 +02:00
Josse Colpaert 3b46d03255 [FIX] Can not execute line when stop date is EARLIER than current date 2014-10-07 13:57:09 +02:00
Olivier Dony 4202ea7c19 [FIX] ir.ui.view: creating custom views in backend did not compute view type
When creating new records in backend all field values are
sent to the server, including empty fields.
2014-10-07 13:12:38 +02:00
xmo-odoo 7c8c6a77c7 Merge pull request #2375 from odoo-dev/8.0-webclient-doc-xmo
Port web client tutorial fully (-ish), improve JS doc.
2014-10-07 10:50:59 +02:00