Before this commit, when a project user wants to see the project form
view, he has an access error because he does not have any access to
`project.collaborators`.
This commit adds `ir.model.access` to give read access to the project
user to `project.collaborators` model.
task-2692587
closesodoo/odoo#79899
X-original-commit: 012b014d0b95f10f7b512ac547b166e28bf32b65
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Purpose
=======
Give the user a more organized view of the digest KPIs in the backend and
improve global wording of digest sections and KPIs.
Specifications
==============
Reorganize order of KPIs in digest view. Fix some typos, move buttons in
list and form views.
Task-2582128
closesodoo/odoo#77507
Related: odoo/enterprise#21340
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
This commit fixes an issue since user_id was changed to user_ids.
The default behaviour of `_message_auto_subscribe_followers` could not
work with the user_ids field as it is only meant to work with user_id.
This also fixes a related issue due to the same problem where the
assignation emails were not sent.
TaskId-2691486
closesodoo/odoo#79831
X-original-commit: 3510251ad19d4394f4613924aa2af20abb7c35d9
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Prior to this commit:
* The `action_dependent_tasks` and `action_recurring_tasks` were wrongly
returning a view_mode containing the gantt and map views, which are part
of enterprise.
After this commit:
* The `action_dependent_tasks` and `action_recurring_tasks` will return a
community valid view_mode.
closes#79785
Related to issue https://github.com/odoo/odoo/issues/79555
X-original-commit: c2e1a3133e2a9cff2db8ceb86d242930e17480e2
Part-of: odoo/odoo#79797
Priori to this fix:
* The domain provided to the invisible member of the attrs was wrong
as it was using the '=' operator.
After this fix:
* The domain provided to the invisible member of the attrs is using
the 'in' operator.
task-2691562
closesodoo/odoo#79800
X-original-commit: e69012541dbba5a98a3b847c78b2ac17455601b3
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Prior to this commit:
* Although the display was correct in enterprise, the look was awful in community.
After to this commit:
* The icon is colored in both comunity and enterprise and the text is always visible.
task-2531428
closes#73581
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Purpose of the commit is to improve the customer rating report
of the project app.
So in this commit, done the below changes:
- remove the project and task measures
- switch the rating value and the count from place in pivot view
- remove the default group by rated operator, keep it fot grap view
- reorder the some fields on form and list view
- use the badge widget for the rating field and the color code is applied to the form view
- add some demo data for the feedback field in list view
- center the information vertically in kanban view
- move the 'customer ratings' menu item below the 'project costs and revenues' one
- add the following filters: My Projects, My Team
- reorder the group bys and rename 'Resource' into 'Task'
- reorder the search fields
- project kanban card
- the ratings % is represent the average satisfaction rate of the ratings submitted in the last 30 days (including today)
- change the tooltip to: Average satisfaction rate for the last 30 days
- the 'customer satisfaction' stat button display the last 30 days rating on the project.project
and this stat button should open the kanban view by default instead of the list view
task-2531428
closes#73581
Give the language in the context
closesodoo/odoo#79594
X-original-commit: 9939a0cbfae814f6b4d66c0ca45e0a84d3f57836
Related: odoo/enterprise#22205
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
This PR are the follow-up of #73341 PR to fix the various points to finalize the feature for the v.15.
These points are done only in the Project Sharing feature:
- remove import button in favorite menu
- remove some filters in search view and update the search view
- add uom in session to use timesheet_uom widget for timesheets: this widget uses the uom stored in the session to display the unit_amount in hours or in day format.
- remove the using of avatar widget for employees.
- remove checkboxes in list view.
- change label for group by user_ids
- not set by default the height of the chatter
- remove the 'Set a cover' button in kanban view because the portal user has no access to `ir.attachment` model.
- add unit tests for project sharing feature.
- force staying in the project sharing form view when the user wants to see a subtask.
- display subtask planned hours
- allow the portal user to edit priority task when he is in project sharing feature.
- show "Assign to me" button
- see custom kanban state label
- get all options when the chatter is reloaded in project sharing.
In classic portal views:
- use task in sudo for classic portal form view
General point:
- prevent click on avatar user when `noOpenChat` is `true`
task-2633229
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
closesodoo/odoo#79429
Forward-port-of: odoo/odoo#77156
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Before this commit, it was impossible to to hide a column when the
timesheets or subtasks features are not enabled to the project shared.
This commit manages the column_invisible for the list view in project
sharing to compute the domain in this modifiers. We assume all tasks
displayed in project sharing are linked to a project shared.
task-2633229
closes#77156
X-original-commit: ab2b5d1fd1f09d804ab410bc326cfebf26d5a7c6
Before this commit, we import all xml in project module. The problem is
the ones for project sharing should not be included in `web.assets_qweb`.
This commit excludes the project sharing assets from `web.assets_qweb`.
task-2633229
closes#77156
X-original-commit: 21e21d7956d6de1775f4230060cdff7c39015bbc
Before this commit, the portal user could see the checkbox in search
view to share his favorite item with all users. This action is not
authorize in project sharing feature and should be removed.
This commit removes this checkbox to avoid the portal user to share his
favorite item with others users.
task-2633229
closes#77156
X-original-commit: 19b38074dd8bfe4d8347db31f946beeb2850d453
Before this commit, when the collaborator clicks on the favorite menu,
he has a traceback because the 'spreadsheet' service is not available.
Since we don't want to use this service and we just want the menu item
to save the current as favorite. This commit override the favorite menu
to remove the registry items to add the menu item and we just add the
one we want.
task-2633229
closes#77156
X-original-commit: d970c13494db2c3e085155b7855b656fbbe26467
Before this commit, when the task has a user assigned to a task and the
current user wants to assign himself to this task. He cannot see the
'Assign To Me' button because this button is only visible if the
`user_ids` field is empty.
This commit changes the visibility of this button to show this button
only if the current user is not yet assigned to the task.
task-2633229
closes#77156
X-original-commit: cfba241bada2b3690b4303b7e01747301925d162
Before this commit, when the portal user has access to a project and a
task has a customer who is not in the same company than the portal user,
the portal user has a AccessError when he wants to consult this task.
This commit uses the task in sudo to have the same information shown in
/my/task/<id of the task>.
Steps to reproduce:
------------------
1. Share in readonly mode a project to the portal user (with
visibility set to 'portal')
2. Create a task in this project and set a Customer A (a customer who
has not the same company than the portal user).
3. Log in as portal user (Joel Willis).
4. Go to '/my/projects' and select the project shared.
5. Select the task created.
Actual Behaviour:
----------------
AccessError exception is displayed because the portal user has no access
to partner in other company than his yours.
Expected Behaviour:
------------------
Display the task portal form view like the one shown in /my/task/<id of
the task created>.
task-2633229
closes#77156
X-original-commit: 3b0d6d0cef73baa5b5f235c3518c8bd698c81e21
Before this commit, the user could only see the default kanban state
label in kanban state label. That is, "Ready", "Blocked" and "Normal".
This commit allows to see the custom kanban state label in project
sharing feature.
task-2633229
closes#77156
X-original-commit: a9a884cfe1f8328ae71edc93832e4c4408d9c581
Before this commit, the `priority` field in task was in readonly in
project sharing feature.
This commit allows the `priority` field in task be edited by a portal
user in project sharing.
task-2633229
closes#77156
X-original-commit: 62572e17d6cd62f16287d530c247dbe9b8501e0c
Before this commit, when we do a fields_view_get in unit test, we get
the form view of project task view in backend and not the project
sharing form view in project sharing feature.
This commit adds in the context the `xml_id` of the form view used in
project sharing feature.
task-2633229
closes#77156
X-original-commit: 7dfb44e703f9ff8293412030cfd308e2545f121c
This commit adds unit tests to check the access of portal user. That is,
we check if the readable fields are only available in read access and
writable fields are available for the edition of the task.
We also check if the other fields in task model raise a AccessError if
the portal user wants to access to one of them.
task-2633229
closes#77156
X-original-commit: 1e7185bcdd8913c006148466dec260b8f6d53c0b
Before this commit, we add the Set a cover image in the kanban view of
task for portal user in project sharing feature. However, the portal
user has not access to `ir.attachment` model. So, those users cannot
selects a cover image for a task.
This commit removes this button in project sharing feature.
task-2633229
closes#77156
X-original-commit: 2f8bb52c942416528de4d7d95c53e0ac1c99bf5b
Before this commit, the border left displayed when the chatter is aside
the task form view is not from the top to the bottom of the page in
project sharing feature.
This commit removes the fit-content set to the height in css to have the
border left displayed from the top to the bottom as expected in project
sharing feature.
task-2633229
closes#77156
X-original-commit: 886bc7577b2d6f437c28ea18e5786b36930a7cc2
Before this commit, the portal user can select multiple tasks in the
list view with the checkboxes but no action is available.
For this reason, this commit removes these checkboxes.
task-2633229
closes#77156
X-original-commit: cef79697a014c6443c1d1dfdcf498c18fcb27fb9
Before this commit, since we don't have the uom in the session, the
timesheet_uom widgets does not work in project sharing feature.
Because those widgets need the uom stored in the session.
This commit adds the uoms needed in the session used for project
sharing feature.
task-2633229
closes#77156
X-original-commit: a8f27ac776e8f381cb467be3a0256b197d6e688f
Before this commit, we add the same search view than one in backend
views. But some filters are not needed since we display only one
project. For instance, the group by project is not useful since we have
only one project.
This commit removes the groups by project and create_date and add a
separator in filters.
task-2633229
closes#77156
X-original-commit: 1af17e529161bb745a183458b91972fa3a9b69f7
Before this commit, the portal user can see this button, but this button
should not be accessible by collaborators.
This commit removes the import button in project sharing feature to not
allow this to collaborators.
task-2633229
closes#77156
X-original-commit: 74d7308dfb8df0b923e68aa228ec406e36b0b89a
With the sale_timesheet module installed, some Project Updates can contain an "Activities" section in the description, despite there being no activities to be shown, and some empty divs.
This commit will remove all of those unnecessary sections, which also spares us an expensive call to `project._get_profitability_common()`.
Task-2675389
closesodoo/odoo#79415
X-original-commit: 0741dde0598186d395a06ab6a9ea7056f0ff00ff
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
This commit will modify some of the tasks from the demo data to place them in different personal stages for the demo users, to better showcase the feature.
Previously, none of the demo tasks belonged to a personal stage of any user.
Task-2657697
Closes#77870
Related: odoo/enterprise#21463
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
This commit will indicate 'fa-lock private' for the 'Project' field for private tasks in the following views: list, calendar popover, kanban, activity.
Previously, this field was left blank.
Task-2657697
Closes#77870
Prior to this fix:
The project update stat button is duplicated.
After this fix:
The project update stat button is no more duplicated.
task-2684233
closesodoo/odoo#79347
Signed-off-by: Xavier <xbo@odoo.com>
Prior to this commit, when a subtask is copied through the recurrence,
it loses its display_project_id in the copied sub-tasks.
Current Behavior
The display project id is left empty.
Expected Behavior
The display project id is copied.
task-2672243
closesodoo/odoo#79290
X-original-commit: 758b1a2f233bccd7fe7ac73119c12c4152d68e21
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Purpose of this commit to do not copy progress of the project
update when coping project.
So, In this commit make last_update_id field copy false
so default progress of the project update will be 0%.
task-2664773
closesodoo/odoo#79283
X-original-commit: 69dab41858ea737929591123e85f2f982f58589c
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
PURPOSE
In project, private tasks (with no project) are visible to other users even if
they have project admin rights.
SPECIFICATION
Private tasks will not be visible to other users even if they have project admin
rights.
Task-2656512
closesodoo/odoo#78601
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
* = hr_timesheet, sale_project, test_main_flows
Smaller changes:
- Projects created on the fly (through `name_create`) will now come with a
default `new` stage in order for them to not be empty.
- Removed task auto assign upon creation besides in FSM's 'My tasks' menu.
- Allow the reordering of projects without needing to group by
anything.
- Make `project.task`.`description` and `project.tags`.`name`
translatable.
- Disable the creation of records in the view when clicking on `Tasks
in recurrence` stat button.
- Track the planned date of the task in the chatter
- Disable the creation of records in the view when clicking on
'invoices' stat button and add the kanban view to that action.
- Make milestones completely available to regular project users.
- Remove the 'Documents' button in the project's kanban settings menu.
- Add kanban, pivot and graph views to the 'Hours Recorded' stat button
on projects
- Add the calendar view on the 'Hours Forecast' stat button on projects
- The 'Sales Orders' stat button on the `project.project`'s form view
will now display the amount of sales order linked to the whole
project. So the one linked to the project itself if it exists + all
the tasks. It will also open them, form view if 1 else list view.
- Fix a typo in the settings 'projets' => 'projects'
- The analytic account of the project will now be assigned to the
sales order when a task is created through the 'Create a task in an
existing project' option.
Changed the portal task view to include a sidebar similar to sales
orders, with a simple menu leading to different parts of the screen.
Changed the `project.task` 'rating' stat button:
- The icon will now represent the latest review.
- The action will directly lead to the record's form view if there is
only 1 rating.
- Make some fields readonly in the form view.
- Display the % of satisfaction instead of the number of ratings.
Reorder all stat buttons on the `project.task` form view in this order:
- Products, Worksheet, Sales Order(s), Invoices, Ratings, Hours
Forecast, Parent Task, Tasks in recurrence, Tickets, Quotations and
lastly Customer Preview
Make the status of the project editable directly through the kanban
view. A new widget has been added to handle that properly. When editing
the status through that means, a `project.update` will be created with
the current date and the appropriate status. In addition to that a new
status has been added (only on `project.task`, not `project.status`)
namely `to_define` in order to differentiate new and running projects.
Projects now start with the `to_define` status.
The `project.project`'s rating stat button has been changed in the
following ways:
- The icon will now change in function of the satisfaction percentage,
smile above 66%, meh between 33% and 66% and frown below 33%.
- The color will also change depending on the rate, smile is green, meh
is orange and frown is red.
- The ratings will now be in function of the last 30 days instead of
all time and the action will also filter on those 30 days.
- Change the action name from 'Rating' to 'Ratings'.
`project.project` ticket stat button:
- Will now open the form view when there is only one record.
- Added the activity view.
- Disable the creation of new records.
- Rename the action to 'Tickets'.
Closes: odoo/odoo#75269
See: odoo/enterprise#20334
Task ID: 2611006
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Currently, unfollowing a project removes the user from all the tasks he was
following. Conversely, following a project or updating your notification
preferences makes the user a follower of all the tasks of the project without
distinction. These consequences are a bit extreme in case the user misclicked,
or simply decided he no longer wanted to be a follower of every newly created
task.
In this commit, when unfollowing a project should not remove the user from
the followers of all the tasks, and following a project should not add the user
to the followers of all the existing active tasks, neither should updating the
user's notification preferences But if the user explicitly update the user's
notification preferences for the project then its propagated to all the tasks
that the user is currently following.
closesodoo/odoo#67142
Task-id: 2440659
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
This commit adds a python test for the task dependencies.
task-2663173
closesodoo/odoo#78980
X-original-commit: a71862fb86e6eef801093add300c2668458aa964
Related: odoo/enterprise#21887
Signed-off-by: Xavier <xbo@odoo.com>
Steps to reproduce:
==============
1) Go to Project app and create a project A if you don't have any project.
2) Go to Project > Configuration > Settings.
3) Enable the "Project Stages" feature.
4) Go to Project > Configuration > Project Stages.
5) Show the Email template field in the list view and set a template on a stage. (create a stage before this step if none exists)
6) Go to the main view of Project App.
7) Move Project A to the stage with the template set.
Expected Behavior:
==============
The system should use the template for the mail tracking.
Current Behavior:
============
Traceback because the method `xmlid_to_res_id` does not exist in `ir.model.data`.
Task-2677199
closesodoo/odoo#78947
X-original-commit: 1d1eaad402dac523404296024f44d3c852ee1daf
Signed-off-by: Laurent Stukkens (ltu) <ltu@odoo.com>
Currently, projects that are 'on hold' stage are represented in grey in
the kanban progress bar while the colored dot on their card is in blue.
In this commit, we change the color of the 'on hold' stage into 'info'
instead of 'muted'. After this projects that are 'on hold' are display
blue in the kanban progress bar as well.
Task-Id:2633273
closesodoo/odoo#78761
X-original-commit: 0886c10d5f276aca2539060ffaa047780a408354
Signed-off-by: LTU-Odoo <IT-Ideas@users.noreply.github.com>
purpose of this commit is to display the project name and task
to the right of the div in the activity view.
before this commit, the project name and task displays next to
the many2many_tags div in the activity view.
closesodoo/odoo#78738
Taskid: 2646204
X-original-commit: bb9734fbf761c3c11be0226cbe4da9d764ccbf74
Related: odoo/enterprise#21817
Signed-off-by: LTU-Odoo <IT-Ideas@users.noreply.github.com>
Both developments 6c4910a and 7563b44 have been introduced nearly
at the same time in the saas-14.5 version, but the later one is
introducing a side effect that breaks the project sharing feature.
Indeed, before there was one assignee per task (user_id), and now
we can assign several collaborators (user_ids).
As the read on a M2O is just calling the name_get method, it wasn't
an issue.
Now, as it implies to read the res.users (and the res.partner) model,
the assigned users were filtered according to a specific ir.rule
for the portal users:
<record id="res_partner_rule" model="ir.rule">
<field name="name">openerp.portal.res.partner</field>
<field name="model_id" ref="base.model_res_partner"/>
<field name="groups" eval="[(6,0,[ref('group_openerp_portal')])]"/>
<field name="domain_force">[('id','child_of',user.commercial_partner_id.id)]</field>
</record>
This commit creates a new compute non-stored field called
`portal_user_names` to display the name of all assignees in each task in
the project sharing feature. Thus, the portal user can see all assignees
via this char field. The `user_ids` field is removed in the views of
project sharing since the portal cannot see all assignees with this
field.
By doing this, a collaborator cannot edit the field to assign or unassign
himself to a task. To keep this behaviour, two buttons are added in the
form view of task. One called 'Assign To Me', the current collaborator
will be able to assign himself to the task when he will click on this
button. The other button called 'Unassign Me' is to allow the
collaborator to unassign himself to the task.
part of task-2633229
closesodoo/odoo#78538
X-original-commit: 3b5a657df086b54def0bc0bdae89c19c89cb39f5
Signed-off-by: LTU-Odoo <IT-Ideas@users.noreply.github.com>
Co-authored-by: Xavier BOL (xbo) <xbo@odoo.com>
Co-authored-by: Raphael Collet <rco@odoo.com>
This commit fixes the broken inheritence between project and
hr_timesheet modules regarding the GraphView.
Hr Timesheet module extends GraphView rather than ProjectGraphView which
makes the view unaware it should use the ProjectControlPanel.
This commit adds project tour steps to ensure every view contains the
project update breadcrumb.
task-2642872
closesodoo/odoo#78503
X-original-commit: aa59771d3a4ffd2f7372c58bf56ca8dcc1183d2e
Signed-off-by: LTU-Odoo <IT-Ideas@users.noreply.github.com>
Signed-off-by: Thibault Libioulle (tle) <tlibioulle@users.noreply.github.com>
Currently there is border visible under only the 'description' notebook.
So in this commit we removed that border.
closesodoo/odoo#78240
task-2648148
X-original-commit: 43f2ae777d59430acfc3973cb57f8a76cb29129b
Part-of: odoo/odoo#78444
This commit adds a test in order to strengthen the behaviour of
recurring subtasks.
This test asserts that child with depth > 3 are not copied in a
recurrence, that recurrent subtask are well copied with the recurrence
correctly set.
This commit prepares the recurrence refactoring.
task-2660756
closesodoo/odoo#77632
Signed-off-by: LTU-Odoo <IT-Ideas@users.noreply.github.com>
-- This is a follow-up of odoo/enterprise#72736 --
The project overview is a significant technical debt
as it is a custom qweb view. It is quite limited:
It is not possible to group the data, to filter on dates,
SOs or Field Service projects.
Improving this is very difficult and would require weeks
of development that are not worth it.
In any case, all the information provided by the project overview
can be found elsewhere. The stat buttons of the report are basically
duplicates of the ones from the project form view.
Therefore, we are removing this report and its twin,
the Project Costs and Revenues.
In addition, analytic items lack context for the user to understand
what generated a certain cost or revenue:
there is no link to the source document;
the entries are not categorized (e.g. it is not easy to understand
if a cost comes from a timesheet cost, a purchase order or an expense);
the billable type group by works fine for timesheets but then all
the other entries are flagged as Undefined, which is not very helpful;
there is no option to easily isolate costs from revenues.
task-2637495
See odoo/enterprise#20740closesodoo/odoo#77547
X-original-commit: 9bbfd3c8f948a3a947cbc0eb73ffc5d89c23d4ca
Related: odoo/enterprise#21324
Signed-off-by: LTU-Odoo <IT-Ideas@users.noreply.github.com>