Commit Graph
117975 Commits
Author SHA1 Message Date
bluesoft83 3513151e57 [FIX] product: wrong default datetime
On model product.price.history the default value for datetime field was evaluated at server start

Closes #15707
2017-03-03 14:14:25 +01:00
bluesoft83 2bf6e69e28 [FIX] web: keep focus field when navigating with keyboard
When moving with keys up or down on editable list view, jumping of line was
bringing the cusor back to the first cell.
The cell focus is stored in the option dict (e.g. {'field_focus': 'name'}.
Previous code was discarding the content of the given option dict to create
a new one.

Closes #15703
2017-03-03 14:12:53 +01:00
fwi-odoo 44182fe1b8 [FIX] website: Keep url query when redirecting to /page/website.* 2017-03-03 14:11:00 +01:00
Martin Trigaux c1b603e81c [FIX] base: avoid writing on a company
When reading the computed field.
Requires the write access rights to be able to fetch the value.
Introduced at 99f365523
2017-03-03 13:24:11 +01:00
Thibault Delavallée 94b8dc33dd [MERGE] event: ease event configuration and use of tracks
This merge proposes to ease the use and configuration of events as well
as the use of event tracks and track proposals. This is done through
two main modifications

 * first one aims at improving event categories so that they can be used
   as configuration for events. Categories can now define default values
   for automated mailing, ticketing, location management, questions to
   attendees, ... Preconfigured data for event categories are added to
   help user having finely-tuned events;
 * second one aims at improve event track model. Tracks now use dynamic
   stages with automated mailing, as well as kanban state, activities
   and all common chatter features.
2017-03-03 13:13:33 +01:00
Thibault Delavallée 2a0972863d [IMP] event_*: add data event type to ease application use
This commit adds several event categories as data in event modules. The
purpose is to help people using the event application with some help
on event configuration done through event categories.
2017-03-03 13:11:31 +01:00
Thibault Delavallée 91617bfc78 [IMP] event: ease event configuration and management through categories
This commit improve event.type (Event Categories) model and views in order
to ease event configuration through more detailed categories. The purpose
is to be able to define categories holding default data for website,
tickets, attendee mailing, ... Choosing a category on a new event takes
those default values to help users creating finely-tuned events.

Main configuration on event.type is

 * auto confirmation, replacing the old system-wide auto confirmation
   parameter
 * seats limitation
 * location: online events, timezone
 * communication: reply-to email address, twitter hashtag, automated
   mailing of attendees
 * ticketing
 * website parameters: display on website, display tracks, allow track
   proposal
 * question to attendees
2017-03-03 13:09:53 +01:00
Mitali Patel 5d4dd98af2 [IMP] website_event: apply checkout / buy process improvements
* reword various texts in website_event to avoid references to a sell
   or checkout process as website_event does not handle sakes;
 * if there is only one ticket available, propose to take one by default.
   Display Register Now instead of Order Now if tickets are free. Display
   an error if the user chooses no tickets in its registration.;
 * link in cart for event tickets redirects to event, not product;
 * confirm attendees only at invoice payment;
 * improve wording, use schedule instead of agenda.
2017-03-03 13:09:17 +01:00
Mitali Patel 531d641375 [IMP] event_track: make tracks easier to use
Purpose of this commit is to clean and ease the use of tracks in
event management.

 * status is change to stages. Those are global for all event as we
   consider track acceptation process as similar across events;
 * change speakers many2many to a one2many. Most event have only one
   speaker or at least a main speaker;
 * add various chatter features: tracking of template, subtypes,
   suggested recipients, ... Also add activities on tracks and their
   various filters;
 * add automatic mailing on stages like already done in tasks or
   issues;
 * tweak display of tracks on agenda. Event manager see unpublished
   tracks with the right label in order to know the status of the various
   event tracks.
2017-03-03 13:08:09 +01:00
Mitali Patel ddd4479d10 [IMP] event: apply various usability improvements
* reporting: remove report.event.registration as it can be replaced by
   pivot and graph views on event.registration model directly. The
   custom SQL view does not add any valuable information;
 * event: correctly take limitations from event category and check
   minimum seats is lesser or equal to maximum seats;
 * event: reorganize a bit the form view

  * avoid some kind of random ordering of buttons;
  * move seats availability directly in the form view;
  * ticket page is now used only for ticketing purpose, not a mismatch
    with seats;

 * registration: attendees can be set as done only for confirmed events
   to avoid confusion when working with draft events;

Misc usability

 * event.type: rename event type to event category to have a unified
   term across various event addons;
 * event: stop tracking active field as it does not add interesting
   information; it should not toggle everyday;
 * event: track location as it does add valuable information;
 * event: rename some labels to ease user experience;
 * event.mail: add missing description and rec name;
2017-03-03 13:04:36 +01:00
Mitali Patel a650e5de58 [IMP] event: improve event (mass) mailing
Mass mailing option is activated on attendee and track models. Using
the _mail_mass_mailing parameter on class allows to see those models
in the mass mailing application without having bridge module.

This commit also improves the scheduled mail form view and slighty
improve labels related to scheduling mails on event.
2017-03-03 13:04:36 +01:00
Mitali Patel 66d8567a25 [LINT] event_*: apply small linting and guidelines
No functional change is implied by this commit. Some code is moved and
some files are renamed.
2017-03-03 13:04:36 +01:00
Thibault Delavallée 97e6443089 [IMP] mail: improve default recipients computation
When computing default recipients to mail on some records, take into
account models having a partner_email field. Indeed this method checks
for some commonly-used partner or email fields to find recipients.
This allows to avoid having custom methods in each model. This commit
adds support for partner_email email field used notably in event and
track management.
2017-03-03 13:02:25 +01:00
Yannick Tivisse faa3d6a69b [FIX] website_sale: Deactivate Pricelist/Coupon code box by default 2017-03-03 11:45:23 +01:00
Mahendra barad 26940f8de4 [IMP] mail: remove duplicated logs when scheduling activities and improve template
Currently when scheduling activities, duplicate logs are created. Indeed
a message is posted when scheduling an activity, editing it and marking it
as done. This leads to a lot of noise being created on records.

This commit remove logs when scheduling and updating an activity. A sole
message is posted when the activity is marked as done.

Scheduled activity display in chatter is also improved to better
differentiate the user creating the activity from the user who is
assigned to the activity.
2017-03-03 11:40:50 +01:00
Martin Trigaux 0c3659e14b [I18N] translation correction for nl_BE
Regional languages are not on Transifex
2017-03-03 11:39:31 +01:00
Denis Ledoux df5f0f2570 [FIX] sale: The order lines weight must change when the quantity change
This is a regression of
1cedcf6abb
and a following of
9a9720ac14

opw-709700
2017-03-03 10:57:46 +01:00
Florent de Labarre 09de7be22c [IMP] hr_expense : prevent removing entries linked to expenses
Once it is deleted, the expense is blocked in the "posted" state.
Accounting entries should rarely be removed but never when linked to expenses

Closes #15704
2017-03-03 10:35:43 +01:00
Leonardo Rochael Almeida 2b5e879957 [IMP] web: Enhance registry.js tests
Make sure we're really setting and getting registry values instead of
just `undefined` values.
2017-03-03 10:17:46 +01:00
Leonardo Rochael Almeida 6eb15a6263 [IMP] web: Remove tiny code duplication 2017-03-03 10:17:41 +01:00
Leonardo Rochael Almeida bf8cc11e7e [FIX] web: QUnit context in js tests
Previously, the context for `options.{before,after}Each()` functions was
isolated from the context created by the odoo `test` function, making
it impossible to save attributes in the test during
`options.beforeEach()` that are accessible from the test itself, or to
clear resources created in the test in `options.afterEach()`

Moreover, the odoo test infrastructure was set up completely inside the
test wrapper, after `options.beforeContext()` had already run, making
it impossible for `options.beforeContext()` to use this infrastructure.

Here we use the QUnit context directly in the test, but move the
initialization previously done in the test wrapper to a `beforeEach`
wrapper (and, symetrically, on `afterEach`), making it possible to use
the odoo infrastructure in the javascript test setup, including
declared section dependencies.
2017-03-03 10:17:33 +01:00
Martin Trigaux b3fa61c7c5 [FIX] hr_timesheet_attendance: remove trailing parenthesis
In the error message, bad migration
2017-03-03 08:29:12 +01:00
bluesoft83 2580a6d04d [CLA] signature for bluesoft83
Done at #15705
2017-03-03 08:15:06 +01:00
Denis Ledoux 9f62be8387 [FIX] point_of_sale: sale details datetime in user UTC and lang format
The time in the sales details were in the UTC timezone,
instead of the user timezone, which confused the user

Besides, the datetime was formatted in the database
format, rather than in the language format

opw-710290
2017-03-02 18:47:07 +01:00
Denis Ledoux 95d3263338 [FIX] web_editor: change of iframe URL on record loaded
When changing of record, through the pager or the breadcrumb, the URL of the iframe
must change, as the model and id of the record is included in the URL

This wasn't done before this revision, and it could
lead to an INTERNAL SERVER ERROR in case of a deletion
followed by the loading of another record: the URL
of the iframe was still set to the former record,
and this URL crashed as the record no longer existed.

e.g.
- Create a new mass mailing, subject 1, add a random block in the content then save
- From this newly created mass mailing, Create a new mass mailing
  (directly with the create button)
  Subject 2, add a random black in the content and save
- Delete the second mass mailing
- Return in the mass mailing kanban view through the breadcrumb
- Open the mass mailing 1
- You had an internel server error, due to the fact the URL of the iframe
  was still the one of the second mass mailing.

opw-710239
2017-03-02 17:59:22 +01:00
Yannick Tivisse 2e467a7c0c [FIX] sale: Set the default tax display at 'Tax Excluded' 2017-03-02 15:29:59 +01:00
Denis Ledoux a9b8bbac48 [FIX] point_of_sale: re-print order invoice for pos users only
If a user has as access right the POS User only,
it wasn't possible for him to re-print the invoice of
a pos order, through the "re-print" button in the
"Extra Info" tab of the pos orders.

opw-710163
2017-03-02 15:16:19 +01:00
Denis Ledoux 28ea1bcb5a [FIX] product_visible_discount: recursive show discount
If a pricelist PL1 set with the discount policy
`Show discount in the sale order` was based on another
pricelist PL2 with the same discount policy,
the discount applied by the second pricelist PL2
was set directly in the price, rather to be displayed
as a discount.

e.g.
PL 1: 10% on all products, show discount
PL 2: 15% on all prices of the PL1 pricelist, show discount

The discount displayed on the sales order should be
100 − (100 × (1−0,15) × (1−0,10)) = 23.5%

And the unit price of the product must remain the initial
price of the product, not the discounted price.

opw-709708
2017-03-02 12:40:45 +01:00
Martin Trigaux 2d199ed460 [FIX] stock: do not compute unrelevant inventory quantity
The total quantity of an inventory only makes sense if the same product is
counted.
This commit avoids useless recompute of the field when a ligne is changed.
The trigger were missing meaning it was recomputed after any change, slowing
down already unefficiant large inventory.
2017-03-02 10:37:57 +01:00
Goffin Simon 2971ffb70e [FIX] website_slides: Unpublished slides not visible
The rules "Channel: public: published only" and "Slide: public: published only"
must also be applied on portal user.

The portal user doesnt have to be allowed to create or write on slide.slide
records(introduced by 51be5bb).

opw:708499
2017-03-02 09:45:15 +01:00
Christophe Simonis 2b8605c6e2 [FIX] google_drive: show icon via css instead of injecting html 2017-03-01 18:39:34 +01:00
Nicolas Lempereur 987b54fde3 [FIX] base: create user not from company_id=1
In new API conversion (7eab8e26d3) a SUPERUSER_ID was dropped hence
we could get an error instead of the default groups_id of a res.users (if
the user has no read permission for `default user`).

opw-687521
2017-03-01 18:28:11 +01:00
Christophe Simonis 68176d80ad [MERGE] forward port branch saas-14 up to eddefc9948 2017-03-01 16:49:15 +01:00
Christophe Simonis eddefc9948 [MERGE] forward port branch 10.0 up to 8c55e57c7f 2017-03-01 16:14:41 +01:00
Goffin Simon 8c55e57c7f [FIX] product_margin: _compute_product_margin_fields_values
All the fields defined in model "product.product" from module product_margin
are computed and not stored with the same function which is _compute_product_margin_fields_values.
This function has a deprecated argument which is field_names and this agrument is only used in
function read_group overwritten in this module in model "product.product. This overwrite of
read_group uses a variable "fields_list" with almost all the fields defined in "product.product"
in this module (excepted: date_from, date_to and invoice_state which are read from the context).

Each time, the fields total_margin, expected_margin, total_margin_rate, expected_margin_rate,
date_from, date_to, invoice_state were needed, nothing was returned due to the empty argument
field_names passed to this method. For example, when opening product.margin.form.inherit form
view.

In old API, it works because the compute was called with the list of the fields and in new API, it is not the case.

Closes #15604
opw:709962
2017-03-01 15:50:56 +01:00
Goffin Simon 5d27b3d6c0 [FIX] hr_attendance: Wrong timezone
The timezones are already managed in the JS.
So on the attendance check in/out screen when a user clocked out
after 8 hrs he got a message saying that he has been in for more than 12 hrs.

opw:710161
2017-03-01 15:39:48 +01:00
Christophe Simonis 7abeace770 [MERGE] forward port branch saas-11 up to 5c4744cd1f 2017-03-01 15:17:55 +01:00
Christophe Simonis 5c4744cd1f [MERGE] forward port branch 9.0 up to 5f9f4f4d9d 2017-03-01 14:07:15 +01:00
Christophe Simonis 8efd51acd3 [FIX] website: check request existence before use 2017-03-01 13:07:57 +01:00
Christophe Simonis 5f9f4f4d9d [MERGE] forward port branch saas-6 up to 7eaa9f767a 2017-03-01 12:23:57 +01:00
Christophe Simonis 5655b43929 [FIX] base: clear cache through model instead of method
This allow cached method to be overwritten.
2017-03-01 12:21:11 +01:00
Christophe Simonis 7eaa9f767a [MERGE] forward port branch 8.0 up to 775022e01f 2017-03-01 11:26:31 +01:00
Odoo Translation Bot 775022e01f [I18N] Update translation terms from Transifex 2017-03-01 02:54:50 +01:00
Christophe Simonis 42de3f8e26 [FIX] website: use CDN for assets 2017-02-28 19:20:53 +01:00
Martin Trigaux 18fd9fe0a8 [FIX] server: avoid cron thread death
In case an exception (programming, out of memory or any other unexpected
failure), the cron_thread would crash and not recover until server restart.

Issue #15666 was an example of failure.

Courtesy of Nils Hamerlinck
2017-02-28 18:00:50 +01:00
Martin Trigaux 69e91f6a7c [FIX] base: recover thread from down postgresql
If postgresql database is temporarly down, the cron thread may fail.

The cursor creation fails when trying to connect to the server which leads to
the cron thread to die (uncatched exception) and will not restart when postgres
is back.

Fixes #15666
2017-02-28 18:00:00 +01:00
Christophe Simonis b150ac3203 [FIX] mail: add menu entry for editing activity types 2017-02-28 15:57:04 +01:00
Géry Debongnie 678ea26f99 [FIX] web: fix fuzzy search algorithm in app switcher
The fuzzy search score algorithm is quite simple, but had an interesting
problem: for the search string 'AB DEF', the result 'XXAXXBXXXXXXX DEF' had
a higher score than the result 'ABX X DEF", because it has 4 consecutive
matching characters.

This commit slightly tweak the algorithm to take space into account, but
to make sure they are not used to compound the score for a string.  This
means that space characters are not ignored, but are not really
as important as a normal character.
2017-02-28 15:01:24 +01:00
Olivier Dony e8ae724b6c [FIX] crm: fix typo in converted server action code
Typo introduced in a55ee3858c
as part of the conversion to the new syntax, following
9a8975be46.
2017-02-28 14:29:13 +01:00
Goffin Simon 6c2414ac47 [FIX] membership: wrong overwrite
The signature _check_recursion already exists in odoo/models.py
So calling _check_recursion, the function which checks the constraint on
associate_member overwrote _check_recursion in "res.partner" model and
the function _check_parent_id defined in "res.partner" was completely
wrong because it needs _check_recursion defined in models.py

opw:710524
2017-02-28 13:54:24 +01:00