Commit Graph
8 Commits
Author SHA1 Message Date
Leonardo Pavan Rocha f8c2efc012 [FIX] hr_homeworking: show correct colors in homeworking icons
Since the early versions of the homeworking modules, we were showing incorrect
colors for the homeworking icons if the partner_id was too large. This comes
from the fact that we were not using the getColor helper from calendar
to decide which color to render. Since we have a limited amount of colors,
we should not use the partner id to define the color, but actually cycle
through all the possible colors, which is done by the getColor method.

Also, when getting the homeworking data, it was possible to get partner_id as
false when the employee had no related user. This commit also changes this to
fallback on the work_contact_id if no user is set.

task-3561678

closes odoo/odoo#139167

Signed-off-by: Bertrand Dossogne (bedo) <bedo@odoo.com>
2023-12-06 16:12:24 +00:00
alsh-odoo 12b921f4c9 [FIX] hr_homeworking: give valid domain format to search records in hr work location
This traceback arises when the user tries to delete 'Work Locations'.

To reproduce this issue:

1) Install 'hr_homeworking'
2) Open 'Employees/Configuration/Work Locations'
3) Try to delete multiple record

Error:- 'ValueError: too many values to unpack (expected 3)'

An invalid domain format is used when searching for the record in
'hr.employee.location'.
See:

https://github.com/odoo/odoo/blob/def16f3725f8005874a18eb28b171523af1a0ecf/addons/hr_homeworking/models/hr_work_location.py#L17

sentry-4644429734

closes odoo/odoo#142866

Signed-off-by: Adrien Widart (awt) <awt@odoo.com>
2023-11-22 08:55:43 +00:00
Leonardo Pavan Rocha c0dc12f464 [FIX] hr_homeworking: change default WL and allow deleting default WLs
This commit changes the default worklocation set for the employee from "office"
to false. Also, this commit adds the possibility to delete a default
worklocation from the calendar view.

A typo is also fixed from "exception" to "exceptions" which was causing a bug
returning the worklocations.

task-3584193

closes odoo/odoo#141209

Signed-off-by: Sofie Gvaladze (sgv) <sgv@odoo.com>
2023-11-06 15:36:57 +00:00
Leonardo Pavan Rocha cbab7b013e [IMP] hr_homeworking: prevent deleting worklocations used by employees
This commit prevents deleting worklocations if they are used as default of an
employee. In case the worklocation is deleted, exceptions using that
worklocation are also deleted.

task-3527196

closes odoo/odoo#137502

Related: odoo/upgrade#5260
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2023-10-12 16:12:04 +00:00
Leonardo Pavan Rocha e9331147ff [IMP] hr_homeworking: simplify module to reduce amount of records stored
This commit changes how hr_homeworking deals with hr.employee.homework records.
Before this, an hr.employee.homework record was created for each day of the
week, even if it was the default location of the employee. This commit reworks
how homeworking deals with them to reduce the amount of records generated.

Now default employee locations don't generate records. They are rendered in the
calendar view as ghost events. For exceptions, we allow only creating a single
exception per day. If an employee sets an exception as 'weekly', it sets that
location as the default one for the employee on that day of the week. Not
having to deal with recurrencies makes the homeworking code simpler to manage
as well. Also exceptions are, by definition, not common. So we shouldn't expect
a lot of exception records to be created.

task-3527196

Part-of: odoo/odoo#137502
2023-10-12 16:12:04 +00:00
sofiagvaladze 7e20111e48 [FIX] hr_homeworking: show location correctly
current behavior:
If you have a weekly location defined on the employee,
and a exeptional, location for that day defined on the Calendar,
the presnece icon shows weekly and not the exceptional.

Expected behavior:
Presence icon should be based on the exceptional location,
and if there are none, take the weekly one.

task-3482527

closes odoo/odoo#135191

X-original-commit: cbb4d588e3a1dd1f89f19ac3a413bd531f8a5729
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2023-09-13 04:37:01 +00:00
sofiagvaladze 24abddacda [FIX] hr_homeworking: fix adding/removing weekly location
This commit fixes 3 bugs

------
Prior:
Deleting a weekly record from the calendar didn't remove it from the
employee's profile
Steps:
• Have a weekly location for the employee for Wednesday
• Go to the calendar and remove Wednesday location and choose that it's
  removed for everyweek
• Check employee card
Current behavior: The weekly location for Wednesday still appears on the
employee profile.
Expected: The weekly location for Wednesday is empty

------
Prior:
Deleting a weekly record from the employee's profile removed all records
from the calendar.
Expected behavior: When a weekly location is removed from the employee's
profile only future records should be removed, the past records should
stay untouched.

------
Prior:
When hr_homeworking is installed, if there is a work location set for
the day it is shown on the employee's kanban card, but when it's not
specified it shows nothing, which can be confusing.
Expected: Show 'Unspecified' when location is not set.

task - 3439421

closes odoo/odoo#133671

X-original-commit: 9212e2ff95be61528cc9d249e6f2baec770b8907
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
2023-08-31 06:16:05 +00:00
Melanie Peyrat (MEPE)anddasz b3be3af61c [ADD] hr_homeworking: add homeworking
Users and employees can now define their usual worklocation
for a day of the week aswell as define unusual ones from the
calendar app. The worklocation is then displayed in the calendar
in two different ways: when only one person is selected, there
is a circle with an icon in it, and a ray that extends to the right
if the person is at the same location for multiple days. If there
are multiple persons selected there is no ray, instead the circles
are grouped by location type and colored accordingly to the filters
in the left panel.

closes odoo/odoo#129585

Task: 3060685
X-original-commit: c74ac3f698d4ea4c9b7a5e060fba4cf77cc9a6d7
Signed-off-by: Kevin Baptiste <kba@odoo.com>
Co-authored-by: dasz <dasz@odoo.com>
2023-07-25 21:22:46 +02:00