Commit Graph
117975 Commits
Author SHA1 Message Date
Denis Vermylen (dve) 69d4aa363b [FIX] web: properly hides submenu (ir_actions target=fullscreen)
This commit fixes the action target="fullscreen" in community, where
the submenu on the left would sometimes remain visible.

The fullscreen feature was added in commit : d65d251c57
2016-06-24 10:04:24 +02:00
Fabien Pinckaers 31207d82b5 [IMP] hr_expense: does not depend on workflow anymore 2016-06-23 14:27:43 -07:00
Fabien Pinckaers ff7a40c1c9 [FIX] utm: employees should be able to edit UTM (e.g. HR Job recruitment tracker creation 2016-06-23 11:21:35 -07:00
Christophe Simonis 4030f2fd32 [MERGE] forward port of branch 8.0 up to 297bbff 2016-06-23 16:21:28 +02:00
Nicolas Martinelli 5ca8f08730 [FIX] purchase: scrap instead of receive
The button scraps the products, so the tip should reflect this behavior.

opw-680788
2016-06-23 16:06:57 +02:00
Nicolas Martinelli 162edf276c [FIX] account_asset: depreciation start date
If the depreciation is not prorata temporis, the start date is defined
as:
- 1st of purchase month if frequency is < 12 month
- 1st of January instead

opw-681564
2016-06-23 15:08:02 +02:00
Nicolas Martinelli b114c9e681 [FIX] purchase_requisition: link stock.move to procurement
When a purchase requisition is created from a procurement, the
subsequent stock moves (create from the PO lines) are not linked to the
original procurement/stock moves.

This is an issue in the following use case:
- Product "Assembly" configured in MTO and manufactured
- Product "Part" configured in MTO and bought from suppliers thanks to
  purchase requisitions
- A BoM is created for "Assembly" and is build from "Part"

When "Assembly" is sold, a MO is created, which generated a purchase
requisition for "Part". The MO is in state "Awaiting for Raw Materials"
since we need to purchase the components.

However, when the components are purchased and received, the MO stays in
the same state since there is not link between the stock move received
from the PO and the stock move created for the MO. The MO is therefore
stuck in "Awaiting for Raw Materials" state.

The fix is to keep track of the original procurement and stock moves.
Ideally, we should link the procurement to the PO lines, but that is not
possible since the field `purchase_line_id` on the procurement is a
Many2one. Therefore, we need to hook the confirmation process and
manually link the stock moves related to the PO to the stock moves
related to the MO.

opw-681138
2016-06-23 12:19:14 +02:00
Christophe Matthieu f5797ae1b6 [IMP] qweb: add backward compatibility for t-field-options 2016-06-23 12:03:03 +02:00
Christophe Matthieu 2dc19eb6f0 [FIX] qweb: use python builtins for safe_eval._BUILTINS key instead of value.get('key') 2016-06-23 12:03:03 +02:00
Christophe Matthieu 566cfd494b [FIX] website_hr_recuitment,hr_expense,website_sale: t-field-options use new qweb syntax
Use 'True' instead of 'true' because 'true' key does not exist.
2016-06-23 12:03:03 +02:00
Christophe Matthieu 17032dcb03 [IMP] ir.qweb: better error message (same traceback message) 2016-06-23 12:03:03 +02:00
Denis Ledoux f0c571f773 [FIX] calendar: recurrent events metadata
Developer feature `View Metadata` wasn't working
on recurring events, because of the recurrent events
virtual ids.

opw-678580
2016-06-23 11:51:19 +02:00
Christophe Matthieu 025263d3bf Revert "[FIX] web_editor: test jinja content to load editor in codeview"
This reverts commit f38f8930f0.

Revert for internal choice. Odoo want to use qweb in template and remove jinja support on next version.
If users want to use jinja they can change the view to use text widget instead of html widget.
2016-06-23 11:45:17 +02:00
Denis Ledoux 2e785a8869 [FIX] web_settings_dashboard: Invite new users reload
Before this revision, it wasn't possible to invite new users
(in the Settings Dashboard) multiple times without reloading
the dashboard
e.g. Invite one user, then fill again the textarea, and click
again the `Invite` button

This is because a new widget is created at each reload,
because of:
```
load_invitations: function(data){
    return new DashboardInvitations(this, data.users_info).replace(this.$('.o_web_settings_dashboard_invitations'));
},
```
and
```
reload:function(){
    return this.parent.load(['invitations']);
},
```

and `this.$('#user_emails').val().` is empty at the second reload,
because the textarea retrieved with this selector is the textarea
of the previous widget, which is now empty.

It should probably be proper to make another mechanism for the reload,
that doesn't create a new widget each time,
but we don't take the chances in a stable release. Therefore,
we just use the event delegate target to retrieve the right
textarea.

opw-677680
2016-06-23 11:28:20 +02:00
Christophe Simonis c19d3c6f12 [FIX] point_of_sale: restrict field pos_order_count to users in POS/User group 2016-06-23 11:25:41 +02:00
Denis Ledoux ff090ab23d [FIX] delivery: order delivery line creation with inventory users
When processing the delivery order coming from a sale order,
the delivery line must be created as sudo, as the user
processing the picking could not have the access rights
to create the extra line on the sale order
(e.g. for users being inventory users but not sales
users).

opw-677628
2016-06-23 10:52:58 +02:00
Raphael Collet 1ba91042d6 [FIX] fields: do not serialize more digits than necessary in monetary._symbol_set()
Add a class for float objects that carry their precision digits, use it for the
value of monetary fields in record cache, and serialize them as expected for
the database.
2016-06-23 10:08:57 +02:00
Goffin Simon 7ed73b6d62 [FIX] point_of_sale: creation of a pos session as a user
When an pos session is created, a bank statement is created and
it must be linked to the pos session.
A pos user doesn't have the rights to write and read on a bank statement.
This is why the creation of the pos session and the creation of bank statement
have to be done as super user.

opw:678970
2016-06-23 09:44:13 +02:00
Goffin Simon 55bdf0e8ff [FIX] website_project_issue: Only portal issues must be visible
When going to routes ['/my', '/my/home'], only the project issues in
portal privacy visibility must be displayed.
Inpired from 56c5d0a
The field privacy_visibility is not accessible in portal due to access
rights.

opw:676447
2016-06-23 09:40:51 +02:00
Géry Debongnie 11f88c8cd4 [FIX] web, web_kanban: make qweb default dict configurable
In a previous refactor, qweb configuration was simplified.  However, I
missed the fact that session.js sneakily configure the qweb instance
after the fact. As a result, the kanban view did not have the _s key in
its custom qweb instance default dict.  This commit allow the qweb class
constructor to add default keys to the instance.

Now, kanban view can add _s, and everything is good.
2016-06-23 09:34:49 +02:00
Fabien Pinckaers bb7f933818 [IMP] project: tour americanization of copywriting by jwr 2016-06-22 14:27:59 -07:00
Odoo Translation Bot d14efd562b [I18N] Update translation terms from Transifex 2016-06-22 21:14:56 +02:00
Denis Ledoux b630c199a5 [FIX] web: 2many race condition on fast click on Save / Edit
For `this.viewmanager.active_view` to be set, the view manager
switch mode must be completed, meaning the deferred returned by
the function `switch_mode` must be resolved
(see `this.active_view = view;` in `view_manager.js`, line 146)

In a 2many field, the view manager `switch_mode` deferred is resolved
when `is_loaded` of this field is as well resolved.

Before this revision, clicking fast on Save then Edit
of a vendor bills resulted to a JS error due to a race condition,
because `this.viewmanager.active_view` was undefined when
the field was not loaded / the view manager switch mode not completed.

opw-678097
2016-06-22 18:11:20 +02:00
Simon Lejeune 314a680ab4 [FIX] web_editor: save method of RTE is async
So if you include this method without returning the deferred, weird
things happen and i lose a lot of time.
2016-06-22 17:56:22 +02:00
Yannick Tivisse 24d8fe0aef [IMP] project: Add 3 steps in web_tour 2016-06-22 16:04:06 +02:00
Alexis de Lattre 297bbff6f5 [FIX] stock: use float_compare to avoid an error in the transfer (The roundings of your Unit of Measures kg on the move vs. kg on the product don't allow to do these operations or you are not transferring the picking at once.) 2016-06-22 15:05:07 +02:00
Christophe Matthieu f38f8930f0 [FIX] web_editor: test jinja content to load editor in codeview
The preview change the content because the browser try to fix the dom.
If a user use jinja and activate the preview, the jinja code is (re)moved by the browser and broke the template.
2016-06-22 14:26:42 +02:00
Raphael Collet ff93777099 [FIX] models: inverse several computed fields based on a common computed field
Consider fields G1 and G2 being computed fields with inverse methods that
require the value of a common dependency F, which is also a computed field.
For inversing G1 and G2, their values are put in cache, then their inverse
method is called.  If the inverse method of G1 requires the computation of F,
setting F's value will invalidate both G1 and G2 in cache.  Hence the value of
G2 is lost when invoking its inverse method!

The fix consists in marking G1 and G2 as being computed before invoking their
inverse method, which prevents them from being invalidated by field F.
2016-06-22 14:01:59 +02:00
qsm-odoo 6227abe355 [FIX] web_tour: anchor events
* Correctly bind "input" (instead of "change") or "mousedown" event
according to the anchor type. Also, only valids left clicks.
* Correctly unbind these events.
2016-06-22 11:52:42 +02:00
qsm-odoo ec6083c0c3 [FIX] web_tour: observe when dom is ready
Start observing the DOM (MutationObserver) only when it's ready.
2016-06-22 11:52:42 +02:00
Nicolas Martinelli ab94b1fa54 [FIX] purchase: pricelist based on supplier price
DO NOT FORWARDPORT!

If a purchase pricelist depends on the supplier price, the purchase
price in a PO automatically from procurements will be zero.

It was (partially) working before 7613cb3 by luck since the price of the
first supplier was chosen by default if no supplier was found. In fact,
the condition `seller_id.name.id != partner` requires the `partner` to
be an ID, not a browse record.

opw-681105
2016-06-22 10:45:33 +02:00
Martin Trigaux cecc12ffc6 [FIX] doc: adapt the xpath for snippet
To reflect the changes made at 28ed28f9

Fixes #12523
2016-06-22 10:29:41 +02:00
Aaron Bohy db99c65f7b [IMP] im_livechat,mail: sort livechat channels in Discuss
by date of last message in channel, desc.
2016-06-22 10:10:46 +02:00
Martin Trigaux 06fd45241f [IMP] hw_blackbox_be: better description
Some users using community version of Odoo may understand that this module turns
the POS into a certified module (which is what pos_blackbox_be does).

Update base.pot to reflect the changes (and add other missing translations)
2016-06-22 09:43:44 +02:00
Goffin Simon 9a36a9b760 [FIX] purchase: Vendor without Vendor Location set
When creating a stock picking from a partner without Vendor Location,
a validation error was raised due to a user error.
2016-06-22 09:29:38 +02:00
Christophe Matthieu 8d09a11cea [FIX] web: FieldX2Many must use AbstractManyField is_false method
If the method return false, when a user write require="1" on a x2many field, the content is valid that there have none or a value.

The method was overwrited for a visual change (display the field x2m in readonly mode when they are not value) but is_false is priority use to ensure datas.
2016-06-22 09:25:25 +02:00
Christophe Matthieu a9fac2ea2d [FIX] web: required attribute on one2many field
Require One2many field without any line must show an error like many2many fields.

issue 11782
2016-06-22 09:16:07 +02:00
qdp-odoo b8a58caad1 [FIX] account: in the bank statement reconciliation widget, don't convert amounts using the amount_currency to the target currency if the target currency is the compmany currency. OPW 680854 2016-06-22 08:25:17 +02:00
Odoo Translation Bot 108eee76c5 [I18N] Update translation terms from Transifex 2016-06-22 07:45:52 +02:00
Odoo Translation Bot 41ec7eec56 [I18N] Update translation terms from Transifex 2016-06-22 07:12:57 +02:00
Fabien Pinckaers 5fd1f50577 [FIX] expense: when paid by company: marked as paid directly 2016-06-21 17:26:37 -07:00
Fabien Pinckaers b0c9ee669b [FIX] Product view opens as a list view
[IMP] improved planner content
[IMP] Misc usability improvement:
	cost instead of sale price on product form
	improved views and terminologies
	journal entry is RO
2016-06-21 17:23:49 -07:00
Raphael Collet 8be3781501 [REM] ir_actions: remove no-longer-supported field auto_refresh from act_window 2016-06-21 17:56:56 +02:00
Christophe Simonis da53a27a5d [MERGE] forward port of branch saas-11 up to c88c70e 2016-06-21 16:24:38 +02:00
Aaron Bohy 90f9c09eec [FIX] mail: remove wrong line introduced by forwardport d73f0d806 2016-06-21 15:25:17 +02:00
Sebastien LANGE 58e3ac5cd8 [FIX]mrp: order view in mrp bom tree view
The order of BOMs is based on the sequence which is
not present in the view. When you open all
BOMs, any order is defined. This patch will display the
list of BOM by product.

opw:681189
2016-06-21 15:07:09 +02:00
Olivier Dony 949c9ffc3a [IMP] mail: remove useless menu cache invalidation
Rev. 15174e9a70 explicitly
cached ir.ui.menu entries, and required an explicit
cache invalidation when users changed their mail.group
subscriptions (mail.group used to override the ir.ui.menu
search(), cfr e.g. 89e404301b)

The menu search() override is gone as of 9.0, so it's time we get
rid of the unnecessary cache invalidation.
2016-06-21 14:34:39 +02:00
Goffin Simon e049506b70 [FIX] account: _prepare_reconciliation_move_line
float_is_zero(value1-value2) is not equivalent to
float_compare(value1,value2) == 0, as the former will round after
computing the difference, while the latter will round before

opw:678588
2016-06-21 14:14:39 +02:00
Yannick Tivisse f066b1ec4f [IMP] hr_expense: Onboarding improvement + mail gateway
1/ Modify the no content help message for hr_expense with a dynamic part
   which describe how to create a new expense by mail
2/ Mail gateway mechanism. New customizable email alias expense@domain
   that creates a new expense by sending an email to it. Check several things
   - Check that the email_from is the same than one of the employees or than
     on of the related users to employees. If not, send back an email to say that
     the expense will not be created.
   - If the email address is valid, check if something is between brackets '[]'
     If it is the case, check if it is linked to a product internal reference
     and set it accordingly. If nothing is found, use a default product
     'Fixed Cost'
   - If one/several float(s) are found in the mail subject, take the last
     occurence and set it as the expense total amount.
3/ If a product template is created, to not add taxes on it. We don't expect it
   to have additional taxes
4/ Under Expenses -> Configuration -> Expense Product, use a simplified product
   view with only the needed fields.
5/ When generating the account move lines, use the account defined on the expense
   line, not the sheet
6/ When creating a payment, make a reconciliation on the payable account move lines
   That way, if the total amount on the expense is paid, the expense will be set to
   paid automatically when registering a payment
7/ Add a one-page planner to explain how to use the email alias
8/ The field account_id on the expense sheet was informative. After some tests, it
   seems that it's more confusing than helping. So we removed it
9/ Add a domain on the field 'bank_journal_id' to select journals of
   type 'cash' or 'bank'
10/ If the number of expense lines is equal to 1, the expense summary on the expense
    sheet should be the same name the line. So the process can be done in one click
2016-06-21 14:09:48 +02:00
Christophe Simonis c88c70e900 [MERGE] forward port of branch saas-10 up to d73f0d8 2016-06-21 13:58:24 +02:00