Commit Graph
102197 Commits
Author SHA1 Message Date
Aaron Bohy 3f370651c7 [FIX] im_livechat,mail: don't translate html data-type argument
as it is only there for a technical purpose (used in JS to bind event handlers)
2015-12-29 15:59:54 +01:00
Martin Trigaux 469874612c [FIX] base: wrong guessed mimetype
When uploading a text document, the indexing was done based on a wrong mimetype
('application/octet-stream'). This was due to the result of mimetype.guess_type
being erased by the following guess_mimetype call.

opw 659328
2015-12-29 15:52:58 +01:00
Géry Debongnie cc8c355ecb [IMP] mail, bus: display native notifications if user away
This commit introduces native notifications (if available) to the
discuss application.

Those notifications will only appear if the user grants the permission
for that.  A notification bar will appear in the discuss application if
necessary to prompt the user.

Also, it always is the master bus that will be the one sending the
notification.

For this change, it was necessary to be able to detect if the user has
the focus on some other odoo tabs.  For this reason, the bus was
extended.
2015-12-29 14:47:40 +01:00
Arthur Maniet 04fce95875 [FIX] account: reconciliation widget monetary values comparison
Since monetary values are stored as float, use the method intented for float
comparison using the maximum number of digits a currency can use.

Until V9, the number of digits used was fetched from table decimal.precision,
but as of V9, the accounting module stopped using it in favour of the digits
number defined on currencies.
2015-12-29 13:30:36 +01:00
app ae9cd5a221 [FIX] report: fetch user with context
When rendering QWeb reports, the user is being browsed without the
context, which means that any translatable field being accessed
through it will be in English.
2015-12-29 11:22:12 +01:00
Fekete Mihai e74840f1e9 [IMP] l10n_ro: Update tax code, taxes, chart of accounts. 2015-12-29 11:07:18 +01:00
Laetitia Gangloff 57fc40c509 l10n_lu: update P&L financial report
Implement the latest official P&L structure.
2015-12-29 10:49:42 +01:00
Aaron Bohy 97a61f9e76 [FIX] bus,im_livechat: away status after 30 minutes of inactivity
Also, away users aren't considered as available for the livechat anymore.
2015-12-29 09:41:18 +01:00
Aaron Bohy 1d371e94f6 [FIX] im_livechat: channel info: available key
should be the length of the recordset of connected users, not the recordset
itself, which is always evaluated as True (thus, the im_livechat script was
always embedded in the html pages).
2015-12-29 09:41:18 +01:00
Joren Van Onder 7cee96fcd4 [FIX] mass_mailing: don't assume the request will have a geoip
geoip is set by the website module. If website is not installed,
request.session.geoip won't exist. Because all the geoip logic is in the
website module this means that if you don't install the website module
all of your tracked links will have an undefined country. This isn't
that big of an issue, because as far as I can tell the only default view
that displays this country is in website_links.

Ideally, the geoip should perhaps be moved to base, but for now this
will do.
2015-12-29 09:08:43 +01:00
hrazera 8d0cb0990e [CLA] Create hrazera.md 2015-12-28 17:12:46 +01:00
hrazera d13d57292b [IMP] l10n_bo: Update account_tax.xml
the ITAX_03 specifies a 3% tax on sales, the XML is wrong and it has a 30% instead of 3%.

just replaced 30 to 3
2015-12-28 17:12:37 +01:00
Nicolas Lempereur 4bdba4af85 [FIX] web_editor: inline editor should not devore focus
The FieldTextHtmlSimple widget would focus on itself when changing its
value not by direct user interaction. But if this change was coming
from next/previous record, or an onchange that was breaking the
"autofocus" heuristic for field in Odoo.

With this commit:

- the autofocus heuristic is kept,

- if focused, selection is set at the end if it is possible on the
  browser, else (old internet explorer and not visible field) the
  selection is at the beginning.

opw-660486
2015-12-28 17:08:55 +01:00
Fekete Mihai 79ce860090 [IMP] l10n_ro: Update tax code, taxes, chart of accounts. 2015-12-28 16:21:37 +01:00
qsm-odoo a40d48378d [FIX] web: o2m view manager header
Commit b3f3c67eea corrected the o2m view manager template which was
useless in its previous version because of a dead selector. It appeared
that some fonctionnality relied on the fact that this was dead code.

This commit removes the dead code.
Thanks LeartS (see #5711).
2015-12-28 15:24:12 +01:00
Nicolas Piganeau 9bab0aca2f [FIX] stock: can not unpack a package
Quants can only be written by the administrator.
A stock user could not use the unpack feature and was getting an access rights error.
Closes #9961
2015-12-28 15:21:47 +01:00
Jeremy Kersten be7019ee7d [IMP] base: fix usability for country group
Add label
Remove widget (bug in popup, and hard to use to exclude one country)
2015-12-28 14:14:25 +01:00
Jeremy Kersten 01b20ba895 [IMP] l10n_lu: typo in fiscal position 2015-12-28 14:14:25 +01:00
Holger Brunn 704b3cec9f [FIX] web: keep o2m current page in correct range
when going through different form view records

For example, when being on page 4 of a o2m then switching to next form
view record, if this new record did not have 4 pages for this o2m, the
o2m was shown empty (and if there was no page, the o2m became unusable)
2015-12-28 14:06:47 +01:00
Julien Legros 9971f4c27d [FIX] account: typo 2015-12-28 13:49:39 +01:00
sha-odoo 34bc336d97 [FIX] web: tip position in form view
As .oe_form_sheetbg was not position:relative, tips position was
sometimes wrong as the statusbar is loaded after the tips positions
are computed.
2015-12-28 13:40:21 +01:00
Joren Van Onder e89541be44 [FIX] point_of_sale: open POS dashboard when no sessions on /pos/web
When you go to /pos/web and there is no open session that belongs to the
current user the controller redirected to an old action called
action_pos_session_opening that was removed in
48ab50ed0d. This replaces that action
with action_client_pos_menu which just redirects to the POS dashboard.
2015-12-28 13:05:41 +01:00
Aaron Bohy 21e2e85790 [FIX] bus,im_livechat: correctly detect livechat availability 2015-12-28 12:48:46 +01:00
Martin Geubelle bfa5d0dd3a [FIX] sales_team: float values as target
In the sales_team dashboard, targets are defined as integers.
A traceback appeared if a float value was entered.

opw-665319
2015-12-28 11:34:42 +01:00
Leonardo Donelli b3f3c67eea [FIX] web: hiding of o2m view manager header
One2many fields bring in the entire viewmanager widget.
When there is only one view though (e.g. only kanban view for contact
tab of partners), we want to hide the viewmanager header because we
don't need it (it's where the view switcher would go).

Odoo had the widget logic to do that, but it was wrongly implemented,
resulting in a always present oe_view_manager_header div with all
its elements (although empty).
The wrong javascript operation should have triggered a client error
when loading the view, but for pure chance it didn't because the
t-jquery selector was wrong too so the javascript was never evaluated.
2015-12-28 11:03:50 +01:00
Aaron Bohy 30003dbce3 [FIX] im_livechat,mail: various ui fixes/improvements
im_livechat:
  - feedback message wording
  - livechat_channel form view typo

mail:
  - channel form view: email_send field label wording and layout
  - notifications preview extended
  - client action mass mailing composer fine tuning
  - client action mass mailing channels tooltip
  - client action idle bullet color
2015-12-28 10:19:22 +01:00
Odoo Translation Bot 8fe876cae7 [I18N] Update translation terms from Transifex 2015-12-27 02:54:48 +01:00
Odoo Translation Bot e6a92e523f [I18N] Update translation terms from Transifex 2015-12-27 01:25:25 +01:00
qsm-odoo bcca4a44c7 [IMP] web(_planner),website: navbars & menus merge
Merge appswitcher navbar and app navbar.
Merge planner menu and user menu.
2015-12-24 17:11:55 +01:00
Goffin Simon 615ff654d9 [FIX] website_sale: t-debug oversight 2015-12-24 16:49:03 +01:00
Martin Trigaux ef762f4335 [FIX] wrongly translated planners
breaking the rendering
2015-12-24 16:09:06 +01:00
Denis Ledoux cccec4ac62 [FIX] mail: To: me, To-do display messages to_read
These menus are supposed to display the message
to: me / to do that matches the `To Read` filter.

The filter was correctly displayed in the search
view, but the records displayed were not the
result of the search, because the call to
`message_read`, in `message_fetch` was done
too early, with the wrong domain.

This is because `searchview.has_defaults`
& `searchview.ready` have disapeared in saas-6,
with the refactoring of the search view.

opw-659137
2015-12-24 14:13:17 +01:00
Yenthe 8899b7fcf3 [REF] account: add tax line overview on invoice report 2015-12-24 13:54:48 +01:00
Aaron Bohy f6c20fa4b3 [FIX] bus,mail: user presence
Commit 5d1b323. re-enabled the user presence updates and notifications.
Unfortunately, it showed poor performance due to the high frequency of bus
notifications triggered on our instance (~600k users).

In this rev., we don't trigger notifications on presence changes anymore, but
we rather send the presence of users we have a DM open with, at the end of each
poll period. For performance reasons, we ensure not to do that more than once
every 30 seconds.

We also refined the detection of the 'away' status client side. 'Last presence'
timestamps are stored in the local storage, and the current inactivity period
is sent at each poll. Those presence timestamps now rely on browser activity
detection (click, keypress... events) rather than on the focus on Odoo tabs.

Finally, we removed the no more necessary cron introduced in 5d1b323.
2015-12-24 12:59:46 +01:00
Aaron Bohy d8605b7993 [FIX] im_livechat: matching rule in cache
The problem was that the matching rule was evaluated before sending the html
page, and the script was inserted in the page according to the matching rule
(it wasn't inserted if the rule was 'hide_button'). However, the matching rule
wasn't re-evaluated if the page was already in the cache. The page content thus
might depend on a matching rule computed for someone else in that case.

Rather than inserting the script according to the matching rule, we insert it
only if there is an operator available. We then ask for the matching rule in
the livechat widget, by RPC, and we reject its willStart deferred if the rule
says so. We also re-check for operator availability in the same RPC.
2015-12-24 12:59:46 +01:00
Martin Trigaux 4be1a8cc7d [I18N] Update French translation terms from Transifex
Some planners were incorrectly translated, breaking at rendering
Fixes #10190
2015-12-24 10:42:03 +01:00
Aaron Bohy 26b00a844a [FIX] mail: client action: traceback on composer focus
wrong copy-paste introduced in c4fb2b50e0.
2015-12-24 09:05:28 +01:00
Juan Carlos Montoya 2fa03885ed [FIX] point_of_sale: make uploading partner images work in Firefox
When uploading an image in the client list in the POS with Firefox an
error was thrown complaining about event not being defined.

jov note: the reason it worked in other browsers like IE and Chrome is
that in those browsers `event` resolves to `window.event`. In Firefox
this doesn't happen which is why JQuery provides us with the event in
the callback function.

closes #10078
2015-12-24 09:02:34 +01:00
Juan Carlos Montoya 398b93c27c [CLA] Juan Carlos Montoya 2015-12-24 08:53:42 +01:00
Denis Ledoux 5e51dc9924 [FIX] mail: unfollow buttons for portal users
The route `/mail/unfollow` is used by the button
`Unfollow` in the mail notification template so a user
can remove himself from the followers of a thread.

To be able to remove yourself from the followers,
you need to have the write access on the thread
(see `message_unsubscribe` in `mail/mail_tread.py`)
which you perhaps do not have, for instance if you
are a portal user.

The unsubscribe of this follower from the thread
should therefore be done as sudo.

opw-659295
2015-12-23 17:59:36 +01:00
Denis Ledoux 79a0d1defb Revert "[FIX] models: in onchange, add missing fields when comparing values"
This reverts commit 882bbf46e2.

This revision leads to a crash when creating a new user:

Traceback (most recent call last):
  File "/home/dle/odoo/9/openerp/http.py", line 643, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/home/dle/odoo/9/openerp/http.py", line 680, in dispatch
    result = self._call_function(**self.params)
  File "/home/dle/odoo/9/openerp/http.py", line 316, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/home/dle/odoo/9/openerp/service/model.py", line 118, in wrapper
    return f(dbname, *args, **kwargs)
  File "/home/dle/odoo/9/openerp/http.py", line 309, in checked_call
    result = self.endpoint(*a, **kw)
  File "/home/dle/odoo/9/openerp/http.py", line 959, in __call__
    return self.method(*args, **kw)
  File "/home/dle/odoo/9/openerp/http.py", line 509, in response_wrap
    response = f(*args, **kw)
  File "/home/dle/odoo/enterprise-9/web/controllers/main.py", line 907, in call_kw
    return self._call_kw(model, method, args, kwargs)
  File "/home/dle/odoo/enterprise-9/web/controllers/main.py", line 899, in _call_kw
    return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs)
  File "/home/dle/odoo/9/openerp/api.py", line 238, in wrapper
    return old_api(self, *args, **kwargs)
  File "/home/dle/odoo/9/openerp/api.py", line 369, in old_api
    result = method(recs, *args, **kwargs)
  File "/home/dle/odoo/9/openerp/models.py", line 5998, in onchange
    record.mapped(name)
  File "/home/dle/odoo/9/openerp/models.py", line 5497, in mapped
    recs = recs._mapped_func(operator.itemgetter(name))
  File "/home/dle/odoo/9/openerp/models.py", line 5477, in _mapped_func
    vals = [func(rec) for rec in self]
  File "/home/dle/odoo/9/openerp/models.py", line 5715, in __getitem__
    return self._fields[key].__get__(self, type(self))
KeyError: u'in_group_18'
2015-12-23 17:59:36 +01:00
Goffin Simon 7021221e2e [FIX] account: difference in account.bank.statement
Since balance_end and balance_end_real are floats, they cannot be compared without rounding.

opw:660299
2015-12-23 17:08:54 +01:00
Goffin Simon 045a859414 [FIX] website_sale: discount display in e-commerce
Each time the quantity of a product is changed, the price must
be updated according to the pricelist of the user.
When the price given by the pricelist is less then the unit price
of the product, the reduction of the price must be displayed.

opw:660178
2015-12-23 16:57:49 +01:00
Martin Geubelle 4f1bfdf640 [FIX] delivery: tracking button traceback
If one set a carrier_tracking_ref on a stock.picking,
but the carrier_id is not set, the button Tracking
will appear but crash as this button calls a method on
the carrier.

opw-660659
2015-12-23 16:30:37 +01:00
Denis Ledoux 24eee9d7ba [FIX] purchase: confirm of purchase orders with kit boms
When using phantom/kit boms,
`action_confirm` on the move can lead to the move unlink,
as new moves with the different parts of the product have
been created.

See `_action_explode` in `mrp/stock.py`

The method `action_confirm` on `stock.move` returns the list
of remaining moves.

`force_assign` should therefore be performed on this new
moves list, returned by `action_confirm`, rather than
be performed on the moves list sent to `action_confirm`

opw-660722
2015-12-23 16:21:52 +01:00
Géry Debongnie b6f0e485e7 [FIX] web_kanban: disable jquery sortable in mobile mode
It does not work anyway.  But the real issue is that it intercepts touch
events and prevents horizontal scrolling in grouped kanban views.
2015-12-23 16:14:00 +01:00
Arthur Maniet 2a68634dca [FIX] account: reconciliation widget monetary values comparison
Since balance_end and balance_end_real are floats, they cannot be compared without rounding.

Fixes #9957
2015-12-23 15:18:00 +01:00
Joren Van Onder dfb0e4b8f1 [FIX] point_of_sale: subtotal non ESC/POS receipt shouldn't include tax
On the PosTicket receipt (non-ESC/POS receipt) we have a line titled
subtotal. The subtotal was calculated with getSubtotal(). The issue is
that getSubtotal() ends up just using the price of the product. This
doesn't make sense when taxes are included in the price, because then
the subtotal will contain taxes.

It's not an issue on the ESC/POS receipt, because there we don't show
the subtotal at all if we only have included taxes.

fixes #10137
opw-660266
2015-12-23 14:50:15 +01:00
Géry Debongnie c4fb2b50e0 [IMP] mail: extended composer for mailing channels
In Discuss, when the user opens a channel, the composer was the same,
regardless of the channel type.  This is fine for chat channels, because
we expect mostly small one liners to be written.  But for mailing
channels, it is a problem:  it is too easy to send a mail to everyone
just by typing ENTER, when the user wanted to go to the next line.

This commit introduces a new widget, the extended composer, to be used
for those channels.  It allows the edition of the subject line, and
don't sent messages when the enter key was pressed.
2015-12-23 14:37:41 +01:00
Denis Ledoux 9c2836090f [FIX] website_forum: set a name for answers
When replying to a question,
there is no possibility to set a title (`name`)
in the answer form, there is no input for the title,
even if the controller `/reply` would accept it.

This revision sets a title for answers so:
 - The answers doesn't appear as `False` in the breadcrumb
 - The subject of the mail notifications sent
   for these answers are set with a meaningful title

opw-659279
2015-12-23 14:35:07 +01:00