Commit Graph
120369 Commits
Author SHA1 Message Date
Thibault Delavallée 2e1ab63ead [IMP] hr_holidays: add kanban views for leave and allocation
Purpose of this commit is to add kanban views for allocation and leave
request. It is already possible to reach those views notably using the
activities systray. Default view contains only the name which is quite
sad. We therefore add real kanban views for both models.

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:09:12 +02:00
Thibault Delavallée 63951ea2c1 [IMP] hr_holidays: improve allocation and request display name
Purpose of this commit is to correctly format the allocation or request
display name depending on the mode (employee, department, company or
category).

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:09:08 +02:00
Thibault Delavallée 04250cff1b [IMP] hr_holidays: allow allocation and request per company
Purpose of this commit is to add an option when allocation or requesting
leaves in mass. New option is to do it by company.

Company field used for mass allocation or request is called mode_company_id
to avoid confusion with possible company_id field used for multi company.

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:09:04 +02:00
Thibault Delavallée 744de4ee1c [REF] hr_holidays: improve leave form view and simplify duration encoding
Purpose of this commit is to simplify leave request encoding. We want less
options and more straightforward encoding of leave requests.

Specifications

 * taking half-day leaves is limited to one half day. It is not possible
   anymore to take leaves in half days that span on several days. WHen
   choosing half day the user choose whether he takes the morning or the
   afternoon of the given day;
 * choosing half-days leaves spanning on several days can be done taking
   several leaves if necessary. It is considered as a corner case that should
   not bloat the interface;
 * taking hours-based leaves is limited to a given day. It is not possible
   anymore to take leaves given some start and end hours that span on several
   days. When choosing hours the user choose the start and end hours using
   a selection for every half-hour for the given day;
 * choosing hours-based leaves spanning on several days can be done taking
   several leaves if necessary. It is considered as a corner case that should
   not bloat the interface;
 * taking leaves spanning on several days is necessarily done with full
   length days;

Various misc specifications about form view cleaning

 * hide "To submit" stage in the stage bar;
 * move description below duration information;
 * remove display name;

Duration computation, various fields and form view are updated accordingly
to this specification.

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:09:00 +02:00
Thibault Delavallée 14491e8f9b [REF] hr_holidays: clean fields used to store and display duration
Purpose of this commit is to simplify fields used in leave and allocation
used to store the duration of the requests. We want notably to get rid
of "number of days temp" that, contrary to its name, is not temporary
at all as it stores the real number of days. We also want to clarify
the hours or days encoding that is different on leave and allocation models.

Specifications

 * number_of_days on leave and allocation is the master field holding the
   leave or allocation duration in days;
 * two fields are used for interface that are suffixed by _display in order
   to indicate they are UX only: number_of_hours_display and number_of_days_
   display. They are interface fields used for the user and correct number
   of days is computed and stored in number_of_days;
 * more specifically for leave model

  * display fields are readonly as it is computed based on dates given by
    the user, directly (from / to) or indirectly (half-day leaves for example);
  * duration field is computed through an onchange. It could be directly
    set by hand by managers if some confusion in the number of days appear;

 * more specifically for allocation model

  * display fields trigger an inverse as they are the real duration given
    by HR officers or managers;
  * duration field is computed through the inverse of display fields;

Various reports, data and use of leave / allocation models are updated to
use the correct field.

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:08:57 +02:00
Thibault Delavallée bd5b2c9466 [REF] hr_holidays: simplify leave type configuration
Purpose of this commit is to simplify the configuration of leave type and
use the job of HR officers / manager by making options clearer and easier
to use.

Specifications for leave type :

 * display name as header;
 * remove accrual option from leave type. It is now configured directly
   on allocation requests;
 * add a "X days allocated" stmart button. If you set a general allocation
   of 20 days, the stat button will display 20 days. Even if you go update
   the allocation by employee after that. Purpose is to have the value of
   main allocation done in group, not individual cases of some employees;
 * add a "Group leaves" stmart button. It leads to a new leave requests
   in group mode where mode is visible;
 * have a unique allocation type field replacing the setting allowing to make
   leave or allocation as well as limit and negative fields;
 * limit leave duration encoding to two options, either day-based (allowing to
   take full days or half a day), either hours-based (allowing to take full
   days, half a day or some specific hours in a given day);

More technically

 * limit and negative fields are removed. It was confusing as limit set to
   True means you can actually exceed the limit). It can be computed based
   on allocation_type ('no' meaning you can bypass the limit);
 * request_unit is simplified. Day and half are merged into day;
 * accrual and balance limit are moved to allocation model;

Specifications for allocation requests

 * set accrual specific on allocation itself and not coming from the leave
   type configuration anymore. Indeed we now consider accrual to be done
   case by case independently from the leave type;
 * remove negative and balance_limit. Indeed we now consider people have to
   check by hand what is done by accrual;

Leave and allocation are slightly impacted by other changes, such as domain
for default leave types. Changes have been made as small as possible. Future
commits will still improve leave and allocation models and views, going
further in the cleaning process. Some tests are udpated to match the new
configuration of leave type.

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:08:53 +02:00
Thibault Delavallée 2e3b392a6f [REF] hr_holidays: differentiate personal and manager leave / allocation views
Purpose of this commit is to clean allocation and request views and prepare
future modifications. We would like to separate personal views (making a
request for myself) from manager views (giving more options).

Specifications

 * views under "My" menu should be simplified

  * in a general way there should be no action buttons under my. Hide
    approve/refuse buttons in personal mode;
  * show only leave type, description and duration when asking for an
    allocation; hide details about group allocation and accrual; hide
    action buttons;
  * show only leave type, description and from/to choice as well as duration
    when asking for a leave; hide details about group allocation; hide action
    buttons;
  * in list view hide employee and buttons my menu;

 * views under "Manager" menu should be complete

  * display complete form view;
  * add buttons to approve / refuse directly from the list view in manager
    menus;

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:08:50 +02:00
Thibault Delavallée af7901ca29 [REM] hr_holidays: remove inverse on employee leaves fields
Currently code somehow allows people to create allocation requests on the fly
by writing on the computed remaining_leaves field. It work only under some
conditions that are not likely to happen. Moreover creating and validating
allocation requests should be done under the Leaves application while knowing
it and not hidden in an inverse field.

Let us remove that code and let people use the Leaves application to handle
allocation requests. That code comes from old versions of Leave application.

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:08:46 +02:00
Thibault Delavallée 3522fe1b89 [REF] hr_holidays: remove unused views and lint some bits of code
Purpose is to clean a bit the code to prepare some incoming modifications.
More specifically this commit focuses on removing unused views and actions
to lessen future work in shaping them like requested.

This commit contains :

 * small linting of leave fields;
 * remove some unused and unnecessary views and actions;
 * ensure default values for request_unit_all;
 * small linting of tests;

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:08:43 +02:00
Thibault Delavallée 5013323b4f [IMP] hr_holidays: improve Leave application menus
It seems specifications of new menus implemented at 9af6e9070a were not
totally correct and broke some Odoo conventions. New specification for leaves
application menus are now the following :

 * Dashboard
 * My leaves (user sees this only)
  * New request (calendar view by default)
  * Leaves requests (only my, list view by default)
  * Allocation requests (only my, list view by default)
  * Summary (only my, summary list view by default)
 * Managers (HR officers or managers only)
  * To approve
   * Leaves (default filters: to approve, on my department)
   * Allocations (default filters: to approve, on my department)
  * All
   * Leaves
   * Allocations
  * Payroll
   * Leaves to report (default filters: grey kanban state)
 * Reporting (HR officers or managers only)
  * Leaves Analysis
  * Report by Department
 * Configuration
  * Leaves Types

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:08:40 +02:00
Thibault Delavallée 69b1ee65f4 [IMP] hr: better synchronize user and its employee, especially timezone
Currently user name is synchronized with employee name. However it is
interesting to synchronize other fields like image, email and timezone.
Changing an user linked to an employee through the UI already updates those
fields. This commit ensure code handles synchronization like UI. When
updating an user its related employees are updated. When changing the
user linked to an employee through code all fields are also correctly
synchronized.

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:08:36 +02:00
Thibault Delavallée d228dfe498 [FIX] web: correctly find action-related form view ID in calendar
When cliking on a calendar cell user is redirected to a form view to create
a new record. However if the calendar action gives a specific form view ID
it is not taken into account by calendar.

Calendar code still handles views as not being a structure holding viewID and
type but just an ordered list of items with (view ID, type). This commit fixes
that code. One calendar JS test is updated to correctly match the current
structure.

This commit is linked to task ID 1876795 and PR #26571.
2018-09-10 13:08:17 +02:00
Christophe Simonis f099486c0c [FIX] sale_timesheet: adapt test.
Set SO in draft before reconfirming it.
2018-09-10 11:52:45 +02:00
Christophe Simonis 767da196ad [FIX] web: tests: refine selector on values only. 2018-09-10 11:33:48 +02:00
Christophe Simonis 6ff1a134e8 [FIX] web: list view: correct sorting by drag&drop
Use newly defined variable introduced by previous forward-port.
2018-09-10 11:31:36 +02:00
Christophe Simonis 0b147d950c [FIX] web: use correct variable name
Oversight of previous forward-port.
2018-09-10 11:26:45 +02:00
David Beguin c6c72a26d2 [FIX] event : wrong footer href in email templates
The href was not correctly build as there was no evaluation of
object.company_id.website. Eval have been added.
2018-09-10 09:20:24 +02:00
David Beguin 314305a486 [FIX] project : rating template wrong font size 2018-09-10 09:20:24 +02:00
Jeremy Kersten a1c01ccb75 [FIX] base: fix dev mode for read_template
Since multiwebsite, views can have not xml_id but only be a copy with the xml_id as the key.
In this case, we want nevertheless read the xml source
2018-09-10 08:54:14 +02:00
Jeremy Kersten 9e1092c61f [FIX] website_theme_install: uninstall theme that have inactive views
Before this commit, if you have some inactive views (option form customize e.g.)
the unload crash since you cannot remove views that is still referenced by
inherit_id. Now with search with inactive views to delete all.
2018-09-10 08:54:14 +02:00
Jeremy Kersten b83a574687 [REM] website_forum_doc: RIP 2018-09-10 08:54:14 +02:00
Aurélien Warnon 19a1cf11d7 [FIX] mail: Fixed missing parenthesis
From forward port branch saas-11.4, commit 68d36512ef
2018-09-10 08:50:24 +02:00
Kishan Gajjar efc1981cb7 [IMP] account: remove 'preview_priority_type' option
Because now attachment previewer supports paging so user can see
all the attachments from the chatter.

Task 1844685
2018-09-10 08:26:59 +02:00
Odoo Translation Bot 956720ed7f [I18N] Update translation terms from Transifex 2018-09-09 02:25:15 +02:00
Christophe Simonis 68d36512ef [MERGE] forward port branch saas-11.4 up to d78f23df84 2018-09-07 20:20:45 +02:00
Toufik Benjaa d78f23df84 [FIX] payment,sale_payment: extract code to overridable methods
- We extract some code logic to methods to allow to override them.
  This is needed for the subscription module where a payment token need
  to be copied from a transaction to a subscription.
  The subscriptions is created from a sale order and before the
  payment.transaction holding the payment.token id is validated.
  Since the payment.transaction is not validated, the subscription
  module doesn't find the correct transaction.

  By extracting this code logic, we can override exactly when it should
  be.
2018-09-07 19:26:51 +02:00
RomainLibert f63bf09cdd [FIX] hr_holidays: make related fields readonly
In the allocations we have two related fields on hr.leave.type but a
user cannot write on these fields hence we should make them readonly
2018-09-07 17:28:09 +02:00
Christophe Simonis 5020f41b95 Revert "[FIX] tools: skip bad translations"
This actually broke some valid use cases (catch by new translations tests)

This reverts commit 428fbd0381.
2018-09-07 17:24:10 +02:00
qsm-odoo cfe22cb593 [FIX] portal: <body/> should still be the scrolling element
Commit https://github.com/odoo/odoo/commit/a7a89f31741c3df1d15f1fb8d0433b2761a7e1d0
was a bit too optimistic. Too many features still depend on the scroll
event listened on the <body/> element.
2018-09-07 17:18:49 +02:00
RomainLibert 283c842289 [FIX] models: support multiple group by in _read_group_fill_temporal
The method _read_group_fill_temporal did not support multiple levels of
groupby. Which meant that everytime you grouped by a date and by
something else you had a traceback.
2018-09-07 17:03:22 +02:00
svs-odoo 74fcd3ac3b [IMP] web: FieldInteger and FieldFloat can use input of type number
This allow the browser/device to handle the experience of handling number in a more native way.

FieldInteger and FieldFloat now inherits from NumericField because we want
to format it or not dependent of the view (readonly or edit) and the
NumericField will manage it.

We do that because input type number can't take a value with comma on Chrome
(FireFox is more permissive but not perfect because comma is the separator
for decimal in this case).

Task #1880376
2018-09-07 16:18:45 +02:00
ThanhDodeurOdooandPierre Paridans 16aeecc73d [REF] base, mail: Documents (enterprise) related changes
-removed force_ext from ir.http.
    -added signature arg to web/image to differentiate cache entries by URL.
    -added an embed youtube viewer for youtube URL's
    -added a PDF splitter to the PDF viewer UI
    -added tests for mail's Document Viewer
    -added a "signature" param to web/image to go around the browser cache

    -thumbnail field of ir.attachment is now stored in the filestore
    as a distinct attachment.

task 1853490

Co-authored-by: Pierre Paridans <app@odoo.com>
2018-09-07 16:06:47 +02:00
eco-odoo 469d7acb89 [FIX] snailmail: fix cron job name typo (#26851)
The typo could be inconvenient when searching through  logs for
example.
2018-09-07 15:47:57 +02:00
Thibault Delavallée c4130bcbde [MERGE][IMP] mail, note: improve activity summary view and use
Main specifications
 * set mail as dependency on contacts as activity view is used in contact
   that does not depend on mail -> crash;
 * update icon on the reminders: use calendar instead of clock;
 * add an icon to Contact in the systray;
 * add the Activity icon in the upper right corner of the Contact;
 * sort Activities by date: from more urgent to less urgent;
 * on the contact name in the activity view, the name is clickable but the
   cursor is wrong: use the little hand as a cursor;

Please see sub-commits for more details. Thanks to @alexkuhn for
reviewing and @est-odoo for testing.

This merge is linked to task ID 1882545 and closes PR #26797.
2018-09-07 15:30:56 +02:00
Thibault Delavallée 9abbd843a8 [FIX] mail: set cursor as pointer when hovering contact name in activity summary view
Purpose of this commit is to make it obvious contact name cell is clickable.

This commit is linked to task ID 1882545 and PR #26797.
2018-09-07 15:29:57 +02:00
Thibault Delavallée a75b7cd517 [IMP] mail: sort activity summary view by deadline ascending
Purpose of this commit is to have first activities to perform displayed
first in the activities summary view.

This commit is linked to task ID 1882545 and PR #26797.
2018-09-07 15:29:57 +02:00
Thibault Delavallée 540226d806 [IMP] mail, contacts: allow to have actions in systray elements
Purpose of this commit is to allow having an icon redirecting to the
activity summary view in the partner activities section of systray.

This is done by supporting an additional 'actions' list in the activity
data given to the systray. It displays small icons that redirect to an
Odoo action given its xml ID.

This commit is linked to task ID 1882545 and PR #26797.
2018-09-07 15:29:57 +02:00
Thibault Delavallée 11918bbf43 [FIX] mail: use contact app icon for partner-related activities in systray
As res.partner model is defined in base systray takes the base icon as icon
used in the systray when classifying activities by model. As base module has
no icon it leads to a blank icon being displayed in the systray. Purpose of
this commit is to use the icon from Contact application instead.

As contacts application now depends on mail we do it simply through
inheriting the systray_get_activities method that return the data to display
the systray elements.

This commit is linked to task ID 1882545 and PR #26797.
2018-09-07 15:29:57 +02:00
Thibault Delavallée db3cdee226 [FIX] note: use calendar icon when setting the reminder date in systray
Specifications :

 * clock icon is generally used for datetime;
 * calendar icon is generally used for date;
 * as we set the reminder date in the systray let us use the calendar
   icon in the systray in the reminder section;
 * please also remove the extra margin bottom of note when entering a
   new reminder, it makes @est-odoo very sad;

This commit is linked to task ID 1882545 and PR #26797.
2018-09-07 15:29:47 +02:00
Thibault Delavallée 8be06de0af [REF] contacts: set mail module as dependency of contacts
Contact application allows notably to see the activity summary view on
customers activities. It require mail to be installed. As there is no
real use of contacts application without mail let us set mail as a
dependency of contacts. It seems a better solution than having a bridge
module between contacts and mail.

This commit is linked to task ID 1882545 and PR #26797.
2018-09-07 15:25:43 +02:00
Raphael Collet c33a013943 [FIX] server: fix colored query count 2018-09-07 15:07:20 +02:00
XavierDo 7f47dcae5b [FIX] mail: improve activity view and fix activity feedback
-Improve no content helper on activity view

-Update chatter after editing an activity un form view

-Avoid context to appear as feedback
When using call_button the context is set as an arg and will be catched by
the kwargs of the called action.

As for action_feedback, we can create a wrapper without kwargs
used when calling this method from a button to avoid this problem.

Another solution would be to change the call_button in order to give
the context as a kwargs. Maybe a possible improvement for master.

-Remove groupby from activity view
group by has no effect on activity

-Change cursor to pointer on record name in activity view

Task: #1878184
PR: #26668
2018-09-07 14:59:05 +02:00
Christophe Simonis 49c3264ce0 [MERGE] forward port branch saas-11.3 up to 4850fb0838 2018-09-07 14:43:48 +02:00
Pratima Gupta dd32131ce6 [IMP] various: improve settings wording and labelling
Purpose of this commit is to improve settings by improving labels and
section titles. Purpose is to ease use of settings by users and make
it easier to understand.

This commit is linked to task ID 47221 and PR #26483.
2018-09-07 14:39:32 +02:00
Mahendra Barad f81f85eba2 [IMP] base: properly focus search input in settings
Before this commit, the search input was focused everytime the settings
view was rendered after a timeout of 0. This is not considered as correct.
It is fragile as asynchronous code could break in many situations.

This commit fixes that behavior by using a hook 'on_attach_callback' which
is called when the widget is put in the DOM.

This commit is linked to task ID 47221 and PR #26483.
2018-09-07 14:39:32 +02:00
jem-odoo 9c277c6b6d [FIX] sale_timesheet: correct domain for SOL on task
The onchange returned a domain with a non existing
field of sale.order.line.
This commit fixes it.
2018-09-07 14:06:49 +02:00
jem-odoo d11636191b [FIX] sale_timesheet: avoid recreating task from SOL on confirmation
When cancelling SO, then reconfirm it, a new task will be created. This is
no the willing bahavior. This commit fixes this, so reconfirmating does
not create a second task.
This commit also provides a test case and so, mixes 2 test cases into
one for a better coverage.
2018-09-07 14:06:49 +02:00
jem-odoo aee642939c [FIX] sale_timesheet: hide 'create SO' on project
This button requires the rights to handle SO (create and update), so we now
only display this button if current user can do such action. Otherwise, when
submitting the wizard, the user gets an access error.
2018-09-07 14:06:49 +02:00
jem-odoo c31cebfe27 [FIX] sale: wording for SOL on analytic line
Let's stay consistent with other modules ...
2018-09-07 14:06:49 +02:00
jem-odoo 602e0528cd [FIX] hr_timesheet: generate AA when allowing timesheet
During the super of write, a check constraint is done
in python. So, if writing allow_timesheet=True the constraint
will raise is no AA is set on the project.
This commit restore the exepected behavior.
2018-09-07 14:06:48 +02:00