-
Notifications
You must be signed in to change notification settings - Fork 0
Timesheet Plugin Plus
The Timesheet should feel more like the issue list in sense of filter, grouping and predefined queries.
Copying functionality of issue list:
-
Filter like on issuelist
-
Selection of displayed columns
-
Grouping
-
Selection of sorting
-
Saving of queries
-
Export according to settings
-
Support of custom fields
Custom functionality:
-
The use of custom filter should be restricted by user right. Only predefined queries can be used in case the user is not allowed to use filters. (Example: Special lists for clients)
-
Super right: Overwrite right managemant - Users with this right can see every time entry, even if they are not allowed to.
-
Queries need more granular right managemant (not private/public but depending on user rights)
-
Default filter: The default filter should contain "my times"
General
The complete query system has to be copied and changed according to the new requirements. The look and feel should be the same like the Issue list.
- Timelist
** Filter (Disable customisation by user right)
** Options (Columns and Grouping) (Disable customisation by user right)
** Right Sidebar selection of "Default Query", "My custom queries" and "Custom queries"
** Export function (Disable export by user right)
- Creating New Query/Edit old query (Disable customisation by user right)
** Like original
** On selection of Public a list of user roles should be shown. Only users of this role are able to use that.
Queries
For determination what public queries can be used by a user all projects the user is involved in has to be selected and his user roles should be selected.
The query is shown in the right sidebar if at least in one project the user has the needed role.
If there are projects for a query, where the user dont has the necessary role, an asterix has to be shown on the query. On hover a text should be displayed:
"This query can not be run on all projects. Following projects can not be included: [Comma seperated list of projects the user is involved but has no rights to run the query on]"
If a query is selected which is not allowed for the user in all projects (which are queried) a warning should be displayed:
"This query did not run on all projects. Following projects can not be included: [Comma seperated list of projects the user is involved but has no rights to run the query on]".
Sure that the query should not run any queries on this projects.
If the user has the right "overwrite timelog rights" he should be allowed to see any time entries returning by the query. If not AND in some queried projects he is not allowed to see timelog entries
(timelog entries where hidden in the query) a warning should be shown:
"You where not allowed to view all time entries in the following projects: [Comma seperated list of projects the user is involved but has no rights to see time entries]".
Filters
The following filter with the following functions should be available:
- User
** is/is not ,[List of Users who are involved in projects the logged in user is involved]/[All users if Overwrite Timelog right is selected]
** has role [List of user roles]
- Activity
** is/is not [List of activities]
- Project
** is/is not [List of projects the logged in user is involved]/[All projects if Overwrite Timelog right is selected]
** is subproject/is not subproject of [List of projects the logged in user is involved]/[All projects if Overwrite Timelog right is selected]
- Hours
** Normal integer filter options
- Date
** Normal date filter options
** Date from / to
** all, today, yesterday, current week, last week, last 7 days, current month, last month, last 30 days, current year
- Issue
** Is related to issue/is not related to issue
-
Issue ID
-
Issue Priority
-
Issue Author
-
Issue Assignee
-
Issue Assignees role
-
Issue Tracker
-
Issue Status
-
Issue Target Version
-
Issue subject
-
Issue created
-
etc... all issue fields + custom fields
-
Custom fields and comment
** Normal filter options according their data type
Columns
All Fields+Custom fields + Issue fields should be selectable in the columns
Grouping
It should be possible to group after Project, Issue (Create empty group for time entries not related to issue), Activity and Users
Rights:
-
Timesheet - View Timesheet
-
Timesheet - Customize filter user
-
Timesheet - Customize filter project
-
Timesheet - Customize filter activity
-
Timesheet - Customize filter others
-
Timesheet - Customize columns
-
Timesheet - Customize grouping
-
Timesheet - Create queries
-
Timesheet - Create public queries
-
Timesheet - Overwrite Timelog right
Custom field support: https://github.com/edavis10/redmine-timesheet-plugin/pull/1