Project

General

Profile

Actions

Feature #29482

closed

Query system for Projects page

Added by Marius BĂLTEANU about 6 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Normal
Category:
Projects
Target version:
Start date:
Due date:
% Done:

0%

Estimated time:
Resolution:
Fixed

Description

The attached patch adds the existing query system (from issues and time entries) to the projects page, including the possibility to save custom queries and export to csv.

Available columns:
  • Name (default column)
  • Status
  • Short Description (default column)
  • Identifier (default column)
  • Subproject of
  • Public
  • Created
  • Project custom fields
Available filters:
  • Status with active, closed and archived
  • Name
  • Description
  • Subproject of
  • Public
  • Created
  • Project custom fields

Board view (default):

List view:

Some mentions:
- I chose to open a new ticket because the patch implements multiple related issues
- More filters and columns can be added, but I wanted to keep this patch as small as possible.

Any feedback is welcome.


Files

projects.png (205 KB) projects.png Marius BĂLTEANU, 2018-09-02 18:43
projects_filters.png (183 KB) projects_filters.png Marius BĂLTEANU, 2018-12-12 23:22
list.png (356 KB) list.png Marius BĂLTEANU, 2018-12-12 23:29
projects.png (132 KB) projects.png Vincent Robert, 2019-01-21 16:25
board_view.png (230 KB) board_view.png Marius BĂLTEANU, 2019-09-26 23:37
list_view.png (229 KB) list_view.png Marius BĂLTEANU, 2019-09-26 23:38
0002-Filter-after-projects.patch (2.61 KB) 0002-Filter-after-projects.patch Marius BĂLTEANU, 2019-09-28 18:45
0003-Filter-after-parent-project.patch (1.91 KB) 0003-Filter-after-parent-project.patch Marius BĂLTEANU, 2019-09-28 18:45
0004-Filter-after-project-custom-fields.patch (1.26 KB) 0004-Filter-after-project-custom-fields.patch Marius BĂLTEANU, 2019-09-28 18:45
0001-Filters-for-Projects-page.patch (20.8 KB) 0001-Filters-for-Projects-page.patch Marius BĂLTEANU, 2019-09-28 18:45
0006-Set-default-columns-for-the-projects-list.patch (3.94 KB) 0006-Set-default-columns-for-the-projects-list.patch Marius BĂLTEANU, 2019-09-28 18:45
0005-Option-to-switch-between-table-list-and-board-list.patch (23 KB) 0005-Option-to-switch-between-table-list-and-board-list.patch Marius BĂLTEANU, 2019-09-28 18:45
overlapping_display_options.png (4.56 KB) overlapping_display_options.png Bernhard Rohloff, 2019-10-21 18:31
0002-Removes-duplicated-group_by-id.patch (677 Bytes) 0002-Removes-duplicated-group_by-id.patch Marius BĂLTEANU, 2019-10-21 23:04
0001-Fix-display-type-in-query-form-view.patch (1.69 KB) 0001-Fix-display-type-in-query-form-view.patch Marius BĂLTEANU, 2019-10-21 23:04
0001-Fix-CSV-export.patch (6.59 KB) 0001-Fix-CSV-export.patch Marius BĂLTEANU, 2019-10-26 20:58

Related issues

Related to Redmine - Defect #26853: Fix hardcoded project-index width for webkit and mozilla browsersClosed

Actions
Related to Redmine - Feature #6655: Add filter for projects view pageClosed2010-10-13

Actions
Related to Redmine - Feature #572: My projects (or favourite projects)Closed

Actions
Related to Redmine - Feature #23954: Shows the date of the last activity on Projects administrationClosedMarius BĂLTEANU

Actions
Related to Redmine - Patch #13696: Projects admin, show issues countNew

Actions
Related to Redmine - Feature #28678: Alow to filter projects where the specific role is usedNew

Actions
Related to Redmine - Feature #20081: Filter issues and time entries by project statusClosedGo MAEDA

Actions
Related to Redmine - Patch #29951: Quick design fix/proposals for projects index pageClosedJean-Philippe Lang

Actions
Related to Redmine - Patch #9697: Projects list with progressResolved

Actions
Related to Redmine - Feature #3224: Better project listClosed2009-04-23

Actions
Related to Redmine - Feature #32302: Filter projects after bookmarksClosedGo MAEDA

Actions
Related to Redmine - Feature #32818: Add a system setting for default results display format of project queryClosedGo MAEDA

Actions
Related to Redmine - Defect #33083: Projects filter "Subproject of" does not work when the given value is "My projects" or "My bookmarks"ClosedGo MAEDA

Actions
Related to Redmine - Feature #571: Configurable "Display project descriptions" in project listClosed

Actions
Related to Redmine - Feature #33490: Add a project query filter for "Subproject of"/"Parent project" with operator "contains"New

Actions
Related to Redmine - Defect #35794: ProjectQuery doesn't obey multiple sort ordersNew

Actions
Related to Redmine - Feature #35795: Settings for global and user default custom ProjectQueryClosedMarius BĂLTEANU

Actions
Related to Redmine - Defect #36542: projects.xml API doens't include closed projects since redmine v4.1Closed

Actions
Related to Redmine - Defect #37925: Do not allow unkown display_type for queryClosedMarius BĂLTEANU

Actions
Related to Redmine - Defect #40610: Slow display of projects list when including project description columnClosedGo MAEDA

Actions
Has duplicate Redmine - Feature #12329: Project filtering in common viewClosed

Actions
Has duplicate Redmine - Feature #22966: Add ability search/filter project by project's custom fieldsClosed

Actions
Has duplicate Redmine - Feature #22327: Sort Projects by status and custom field valuesClosed

Actions
Has duplicate Redmine - Feature #2399: Custom field filtering for projectsClosed2008-12-25

Actions
Has duplicate Redmine - Feature #26494: Add ability to enable\disable multiple columns on project list pageClosed

Actions
Has duplicate Redmine - Patch #7701: Updated Project/Index to appear more like Admin/ProjectsClosed2011-02-23

Actions
Has duplicate Redmine - Feature #24841: Hide projects user is only admin but not has assigned any role in the project overview (as it is already done in the project dropdown)Closed

Actions
Has duplicate Redmine - Feature #26641: Display and export project informationClosed

Actions
Has duplicate Redmine - Feature #1472: Organized All Projects List ViewClosed2008-06-16

Actions
Has duplicate Redmine - Feature #2117: Alternative view for "Projects" pageClosed2008-10-31

Actions
Has duplicate Redmine - Feature #9207: Ability for administrator to hide projects he is not member of from the projects pageClosed2011-09-08

Actions
Has duplicate Redmine - Feature #22124: Display summary of projects in Projects pageClosed

Actions
Precedes Redmine - Feature #33422: Re-implement admin project list using ProjectQuery systemClosedMarius BĂLTEANU

Actions
Actions #1

Updated by Marius BĂLTEANU about 6 years ago

  • Related to Feature #26641: Display and export project information added
Actions #2

Updated by Marius BĂLTEANU about 6 years ago

  • Has duplicate Feature #6655: Add filter for projects view page added
Actions #3

Updated by Marius BĂLTEANU about 6 years ago

  • Related to Defect #26853: Fix hardcoded project-index width for webkit and mozilla browsers added
Actions #4

Updated by Marius BĂLTEANU about 6 years ago

  • Has duplicate deleted (Feature #6655: Add filter for projects view page)
Actions #5

Updated by Marius BĂLTEANU about 6 years ago

  • Related to Feature #6655: Add filter for projects view page added
Actions #6

Updated by Marius BĂLTEANU about 6 years ago

  • Description updated (diff)
Actions #7

Updated by Marius BĂLTEANU about 6 years ago

  • File 0002-filter-after-projects.patch added

Add filter after "Project" in order to be able to select specific projects or "<< my projects >>".

As a technical note, I'm not sure if the "search_project" is the proper permission for the ProjectQuery, but I didn't find another one and without it, the QueryController#filter returns "Unauthorized".

Actions #8

Updated by Marius BĂLTEANU about 6 years ago

  • Has duplicate Feature #12329: Project filtering in common view added
Actions #9

Updated by Marius BĂLTEANU about 6 years ago

  • Has duplicate Feature #22966: Add ability search/filter project by project's custom fields added
Actions #10

Updated by Marius BĂLTEANU about 6 years ago

  • Has duplicate Feature #22327: Sort Projects by status and custom field values added
Actions #11

Updated by Marius BĂLTEANU about 6 years ago

  • Related to Feature #572: My projects (or favourite projects) added
Actions #12

Updated by Mizuki ISHIKAWA about 6 years ago

+1
It's a great idea!
Query system is necessary for users who are members of many projects.
And I think the table is more beautiful than the current layout.

I hope that this change will enter the trunk as soon as possible.

Actions #13

Updated by Jens Krämer about 6 years ago

I don't know.

I'd say most users of most installations do not have access to that many projects at the same time to justify the full filtering capabilities here.

While I can see the appeal in just reusing the Issues / Time entries list and filter UI, I don't think that just because we already have that, it is the best solution for this page. Agreed, the current multi-column layout has issues to the point that we stuck to the single-column display at Planio, but I'd vote for fixing that instead of turning the projects page into just another "dull" tabular listing.

This page is one of several possible entry points for users to drill down deeper and as such, a more visually appealing layout would be better imho. If there really is need for search / filtering (is there? you can always use Ctrl-F as long as no pagination is involved), a single search slot searching over titles, identifiers and descriptions and limiting the list of projects on the fly would be enough.

As an admin who needs to manage projects instead of just looking at them and finding / selecting one, you always have the full list at /admin/projects.

Actions #14

Updated by zhangzhi liao about 6 years ago

HOW I setup the Patch ?

Actions #15

Updated by zhangzhi liao about 6 years ago

RUN patch -p1 < the-patch-file.patch.project did not work out .
shows:
Internal error
An error occurred on the page you were trying to access.
If you continue to experience problems please contact your Redmine administrator for assistance.

If you are the Redmine administrator, check your log files for details about the error.

Actions #16

Updated by zhangzhi liao about 6 years ago

Hunk #2 FAILED at 250.
1 out of 2 hunks FAILED -- saving rejects to file public/stylesheets/application.css.rej

Actions #17

Updated by Bernhard Rohloff about 6 years ago

I aggree with Jens Krämer on the fact that a table can't be the default way to show an overview of the projects landscape, as it's hard for the user to orientate himself within the project structure. That said, it could be indeed a very useful additional view and a great way for project managers to get a quick status report over their projects.

And yes, the current implementation of the projects view is horrible! Perhaps we can start a discussion about ideas for a better solution on the forums or in the discord channel..!?

Actions #18

Updated by Marius BĂLTEANU about 6 years ago

zhangzhi liao wrote:

HOW I setup the Patch ?

Please use forum to request help.

Actions #19

Updated by zhangzhi liao about 6 years ago

I run
sudo patch p0 < 0001-Queries-for-Projects.patch
It's show
Hunk #2 FAILED at 250.
1 out of 2 hunks FAILED - saving rejects to file public/stylesheets/application.css.rej.

Actions #20

Updated by Marius BĂLTEANU about 6 years ago

Jens Krämer wrote:

I don't know.

Hi Jens,

First of all, thanks for your feedback. Please find my thoughts below.

I'd say most users of most installations do not have access to that many projects at the same time to justify the full filtering capabilities here.

In our instance (which is a single instance and not a Saas like), we have more than 200 active projects and our non admin internal users have access in average to almost 30 projects (including the public ones), but they are actively involved only in 4 - 8 projects. This is my case also, even if I'm an admin user, I work daily only with 4 projects. I thought that is only our problem, but I looked in the tickets and the number of Redmine.org users that requested in the past a better project list, filter capabilities and custom queries is quite big. I've related to this ticket only 7 tickets, but there are a lot more and I'll go through all of them these days.

While I can see the appeal in just reusing the Issues / Time entries list and filter UI, I don't think that just because we already have that, it is the best solution for this page. Agreed, the current multi-column layout has issues to the point that we stuck to the single-column display at Planio, but I'd vote for fixing that instead of turning the projects page into just another "dull" tabular listing.

I didn't work on this just because we already have that, I really think that once we have the query system in place for the projects list, we can develop some nice features, including a multi-column layout. When we started internally the discussions regarding the Projects page, we agreed that first we need the possibility to filter the projects and right after that, an alternative view (we've already started work on some screens using a masonry layout) because neither of us think that the tabular listing is the best solution. I'll post the screens when they are ready, but until then, please feel free to contribute if you have a proposal.

This page is one of several possible entry points for users to drill down deeper and as such, a more visually appealing layout would be better imho. If there really is need for search / filtering (is there? you can always use Ctrl-F as long as no pagination is involved), a single search slot searching over titles, identifiers and descriptions and limiting the list of projects on the fly would be enough.

I can tell you that it becomes annoying to use multiple times per day the CTRL + F or the quick jump box (both combination requires some extra clicks/steps). Also, I consider the browser buttons non user friendly for users (this is why I worked on #8888).

As an admin who needs to manage projects instead of just looking at them and finding / selecting one, you always have the full list at /admin/projects.

As admin, we need additional columns, filters capabilities and informations that the current list do not provide, please see two examples: #13696, #23954.

In conclusion, I'm not saying that my patch is perfect or the best solution, I'm just saying that is a good starting point (and a must IMHO) to build a nice and useful projects list.

Actions #21

Updated by zhangzhi liao about 6 years ago

I really want use that Patch,but did not works out .

Environment:
Redmine version 3.4.6.stable
Ruby version 2.3.7-p456 (2018-03-28) [x86_64-linux]
Rails version 4.2.8
Environment production
Database adapter Mysql2
SCM:
Subversion 1.10.0
Git 2.17.1
Filesystem
Redmine plugins:
no plugin installed

Actions #22

Updated by Marius BĂLTEANU about 6 years ago

zhangzhi liao wrote:

I really want use that Patch,but did not works out .

Environment:
Redmine version 3.4.6.stable
Ruby version 2.3.7-p456 (2018-03-28) [x86_64-linux]
Rails version 4.2.8
Environment production
Database adapter Mysql2
SCM:
Subversion 1.10.0
Git 2.17.1
Filesystem
Redmine plugins:
no plugin installed

The patches are made against Redmine trunk version (future 4.0.0 Release) and not current Redmine 3.4.6 version. Please again, use Forums to request help. Here we should discuss about the feature implementation in the Redmine core.

Actions #23

Updated by Marius BĂLTEANU about 6 years ago

  • Has duplicate Feature #2399: Custom field filtering for projects added
Actions #24

Updated by Marius BĂLTEANU about 6 years ago

  • File deleted (0001-Queries-for-Projects.patch)
Actions #25

Updated by Marius BĂLTEANU about 6 years ago

  • File 0001-Queries-for-Projects.patch added

Updated the patch to fix some issues when exporting columns to CSV and to prevent some n+1 queries.

Actions #26

Updated by Marius BĂLTEANU about 6 years ago

  • File deleted (0001-Queries-for-Projects.patch)
Actions #27

Updated by Marius BĂLTEANU about 6 years ago

  • File 0001-Queries-for-Projects.patch added

Updated the patch to remove some unused CSS classes.

Actions #28

Updated by Zbigniew Nowacki about 6 years ago

+1

This is a very useful feature.
Users, who have access to few projects don’t care the view of Project window.
I have usually a lot of active projects and it would be much better to use a table view.

Table view is also a kind of raport (csv export is implemented). I think some additional information (columns) could be useful. I mean sums of issues fields:
  • Spent time
  • Estimated time
  • Custom fields (numbers only)

These sums are implemented in an issues view.

I think Description should be left aligned (because of Wiki formatting of this field).

Actions #29

Updated by Marius BĂLTEANU about 6 years ago

  • File 0001-Queries-for-Projects.patch added

Zbigniew Nowacki wrote:

+1

This is a very useful feature.
Users, who have access to few projects don’t care the view of Project window.
I have usually a lot of active projects and it would be much better to use a table view.

Thanks for your feedback.

Table view is also a kind of raport (csv export is implemented). I think some additional information (columns) could be useful. I mean sums of issues fields:
  • Spent time
  • Estimated time
  • Custom fields (numbers only)

These sums are implemented in an issues view.

I think that it'll be better to add these columns as separated tickets when and after this feature is implemented in order to keep the changes as small as possible.

I think Description should be left aligned (because of Wiki formatting of this field).

Agree, fixed in the attached patch.

Actions #30

Updated by Marius BĂLTEANU about 6 years ago

  • File deleted (0001-Queries-for-Projects.patch)
Actions #31

Updated by Marius BĂLTEANU about 6 years ago

  • Related to Feature #23954: Shows the date of the last activity on Projects administration added
Actions #32

Updated by Marius BĂLTEANU about 6 years ago

  • Related to Patch #13696: Projects admin, show issues count added
Actions #33

Updated by Marius BĂLTEANU about 6 years ago

  • Target version set to Candidate for next major release
Actions #34

Updated by Marius BĂLTEANU about 6 years ago

  • File deleted (0001-Queries-for-Projects.patch)
Actions #35

Updated by Marius BĂLTEANU about 6 years ago

  • File 0001-Queries-for-Projects.patch added
  • File 0003-filter-after-parent-project.patch added
  • Description updated (diff)

Updated attachment:0001-Queries-for-Projects.patch to include identifier as a default column.
Added 0003-Filter-after-parent-project.patch patch that adds the "Subproject as" option to available filters.

When #26537 is fixed, I'll add the option in Administration to set the default columns.

Actions #36

Updated by Marius BĂLTEANU about 6 years ago

  • Related to Feature #28678: Alow to filter projects where the specific role is used added
Actions #37

Updated by Marius BĂLTEANU about 6 years ago

  • File deleted (0001-Queries-for-Projects.patch)
Actions #38

Updated by Marius BĂLTEANU about 6 years ago

  • File 0001-Queries-for-Projects.patch added
  • File 0004-Set-default-configuration-for-the-projects-list.patch added

Updated attachment:0001-Queries-for-Projects.patch in order to exclude "Archived" status from project statuses filter (the option is useless because the Archived projects are not returned by default and is not in the scope of this ticket to change the existing behaviour).

Added patch attachment:0004-Set-default-configuration-for-the-projects-list.patch to allow admin users to select the default columns for projects list.

Actions #39

Updated by Fabian Schuttenberg about 6 years ago

I just discovered this issue and would like to emphasize that these are very useful features - thank you very much for implementing them.

In addition we may be able to help with testing - just let us know if you think that makes sense.

Finally, if it is not too complicated, we may consider doing a 3.x backport or 3.x plugin for those features since we would love to use it asap.

Actions #40

Updated by Marius BĂLTEANU about 6 years ago

  • Related to Feature #20081: Filter issues and time entries by project status added
Actions #41

Updated by Marius BĂLTEANU about 6 years ago

Jens Krämer wrote:

While I can see the appeal in just reusing the Issues / Time entries list and filter UI, I don't think that just because we already have that, it is the best solution for this page. Agreed, the current multi-column layout has issues to the point that we stuck to the single-column display at Planio, but I'd vote for fixing that instead of turning the projects page into just another "dull" tabular listing.

Jens, I've added to #29951 two proposals for the projects page.

Actions #42

Updated by Marius BĂLTEANU about 6 years ago

  • Related to Patch #29951: Quick design fix/proposals for projects index page added
Actions #43

Updated by Marius BĂLTEANU almost 6 years ago

  • Related to Feature #24841: Hide projects user is only admin but not has assigned any role in the project overview (as it is already done in the project dropdown) added
Actions #44

Updated by Ivan Gretsky almost 6 years ago

This is a super useful feature. Thanks for making this patch. I did not quite get if it makes possible filtering by custom fields. Hope this feature is available.

Actions #45

Updated by Marius BĂLTEANU almost 6 years ago

  • File deleted (0001-Queries-for-Projects.patch)
Actions #46

Updated by Marius BĂLTEANU almost 6 years ago

  • File deleted (0002-filter-after-projects.patch)
Actions #47

Updated by Marius BĂLTEANU almost 6 years ago

  • File deleted (0003-filter-after-parent-project.patch)
Actions #48

Updated by Marius BĂLTEANU almost 6 years ago

  • File deleted (0004-Set-default-configuration-for-the-projects-list.patch)
Actions #49

Updated by Marius BĂLTEANU almost 6 years ago

  • File 0001-Filters-for-Projects-page.patch added
  • File 0002-Filter-after-projects.patch added
  • File 0003-Filter-after-parent-project.patch added
  • File 0004-Option-to-switch-between-table-list-and-board-list.patch added
  • File 0005-Set-default-columns-for-the-projects-list.patch added
  • File projects_filters.png projects_filters.png added
  • File list.png list.png added

I've changed the order in which I propose the implementation of this feature.

1. 0001-Filters-for-Projects-page.patch:
It just adds the Filters capability to the actual view without changing anything else.

As it can be seen in the screenshot, the Options fieldset is missing because it make no sense.

2. 0002-Filter-after-projects.patch
3 0003-Filter-after-parent-project.patch
The same as the previous one.

4. 0004-Option-to-switch-between-table-list-and-board-list.patch
It adds a new dropdown "Display results as" under the Options fieldset that allows users to switch between the current view (board) and the classical table view (list).

5. 0005-Set-default-columns-for-the-projects-list.patch
The same option in the administration page as the "Isuses list defaults" and "Timelog list defaults". The option applies only for the view "List".

During the implementation, I took some decisions about I would like some feedback:
1. Pagination applies also for the "Board" view and I'm not sure if is ok or we should not limit the returned results (as is right now).
2. If the default view (Board or List) should be configurable in the Administration page.

I'm assigning this to 4.1.0 in order to take at least some feedback.

Actions #50

Updated by Tatsuya Saito almost 6 years ago

+1
Thanks for good patch :)

1. Pagination applies also for the "Board" view and I'm not sure if is ok or we should not limit the returned results (as is right now).

I think ok.

2. If the default view (Board or List) should be configurable in the Administration page.

I think we should config it.

BTW default_sort_criteria in project_query.rb is correct?
A parent-child relation of projects is not good display on default list view.
I think following is better.

  def default_sort_criteria
-    [['lft', 'desc']]
+   [['parent_id', 'desc']]
  end

I hope this will be helpful to you.

Actions #51

Updated by Marius BĂLTEANU almost 6 years ago

Tatsuya Saito wrote:

2. If the default view (Board or List) should be configurable in the Administration page.

I think we should config it.

I'll do it in a next patch.

BTW default_sort_criteria in project_query.rb is correct?
A parent-child relation of projects is not good display on default list view.
I think following is better.

I preferred to keep the current sort.

I hope this will be helpful to you.

Thanks. Any feedback is helpful.

Actions #52

Updated by Marius BĂLTEANU almost 6 years ago

  • Assignee changed from Marius BĂLTEANU to Jean-Philippe Lang
  • Target version changed from Candidate for next major release to 4.1.0

Jean-Philippe, what do you think about the proposed implementation?

I'm assigning this to 4.1.0 because it is a long requested feature (a lot of related issues) and allows us to make future improvements (for ex: #23954, #13696).

Actions #53

Updated by Marco Descher almost 6 years ago

+1 please add this feature

Actions #54

Updated by Vincent Robert almost 6 years ago

Hello. It would be a great improvement.

We are actually using a similar solution for years, thanks to this plugin: https://github.com/jbbarth/redmine_better_crossprojects.

It allows us to deal with 500+ projects on our main Redmine installation. Maybe it can help. It looks like this:

Actions #55

Updated by Marius BĂLTEANU almost 6 years ago

  • Has duplicate Feature #26494: Add ability to enable\disable multiple columns on project list page added
Actions #56

Updated by Jeremy Bailey almost 6 years ago

Can this patch please include the ability to filter projects based on their custom fields?

Actions #57

Updated by Go MAEDA almost 6 years ago

  • Has duplicate Patch #7701: Updated Project/Index to appear more like Admin/Projects added
Actions #58

Updated by Marius BĂLTEANU almost 6 years ago

  • Related to Patch #9697: Projects list with progress added
Actions #59

Updated by Marius BĂLTEANU over 5 years ago

  • File deleted (0004-Option-to-switch-between-table-list-and-board-list.patch)
Actions #60

Updated by Marius BĂLTEANU over 5 years ago

  • File deleted (0005-Set-default-columns-for-the-projects-list.patch)
Actions #61

Updated by Marius BĂLTEANU over 5 years ago

  • File deleted (0001-Filters-for-Projects-page.patch)
Actions #62

Updated by Marius BĂLTEANU over 5 years ago

  • File deleted (0002-Filter-after-projects.patch)
Actions #63

Updated by Marius BĂLTEANU over 5 years ago

  • File deleted (0003-Filter-after-parent-project.patch)
Actions #64

Updated by Marius BĂLTEANU over 5 years ago

I'm working on updating the patch series to apply cleanly on the current trunk.

Actions #65

Updated by Marius BĂLTEANU over 5 years ago

  • File 0001-Filters-for-Projects-page.patch added
  • File 0002-Filter-after-projects.patch added
  • File 0003-Filter-after-parent-project.patch added
  • File 0004-Option-to-switch-between-table-list-and-board-list.patch added
  • File 0005-Set-default-columns-for-the-projects-list.patch added

Marius BALTEANU wrote:

I'm working on updating the patch series to apply cleanly on the current trunk.

Here are the updated patches, all tests pass.

Actions #66

Updated by Sebastian Paluch about 5 years ago

+1

This looks great, current default project page is useless. We use a plugin to deal somehow with big number of projects we have.

The only missing function would be ability to filter by custom fields and add/mark favorite projects.

Actions #67

Updated by Mischa The Evil about 5 years ago

Actions #68

Updated by Dmitry Makurin about 5 years ago

According to the current trunk you should probably change 'my project' icon

Index: app/helpers/projects_queries_helper.rb
===================================================================
--- app/helpers/projects_queries_helper.rb    (date 1568619252000)
+++ app/helpers/projects_queries_helper.rb    (date 1568619564203)
@@ -23,7 +23,7 @@
     if item.is_a?(Project)
       case column.name
       when :name
-        link_to_project(item) + (content_tag('span', '', :class => 'icon icon-fav my-project', :title => l(:label_my_projects)) if User.current.member_of?(item))
+        link_to_project(item) + (content_tag('span', '', :class => 'icon icon-user my-project', :title => l(:label_my_projects)) if User.current.member_of?(item))
       when :short_description
         item.description? ? content_tag('div', textilizable(item, :short_description), :class => "wiki") : ''
       when :homepage
Actions #69

Updated by Yuuki NARA about 5 years ago

+1

Actions #70

Updated by Anonymous about 5 years ago

Yuuki NARA wrote:

+1

+1 because Yuuki NARA +1ed ;D

Actions #71

Updated by Marius BĂLTEANU about 5 years ago

  • File 0001-Filters-for-Projects-page.patch added
  • File 0002-Filter-after-projects.patch added
  • File 0003-Filter-after-parent-project.patch added
  • File 0004-Filter-after-project-custom-fields.patch added
  • File 0005-Option-to-switch-between-table-list-and-board-list.patch added
  • File 0006-Set-default-columns-for-the-projects-list.patch added

Sebastian Paluch wrote:

+1
The only missing function would be ability to filter by custom fields and add/mark favorite projects.

I've added the possibility to filter after project custom fields, add/mark favorite project I'll do it later, hopefully after Jean-Philippe has time to review the attached patches.

Actions #72

Updated by Marius BĂLTEANU about 5 years ago

Actions #73

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0002-Filter-after-projects.patch)
Actions #74

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0001-Filters-for-Projects-page.patch)
Actions #75

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0003-Filter-after-parent-project.patch)
Actions #76

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0005-Set-default-columns-for-the-projects-list.patch)
Actions #77

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0004-Option-to-switch-between-table-list-and-board-list.patch)
Actions #78

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0002-Filter-after-projects.patch)
Actions #79

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0003-Filter-after-parent-project.patch)
Actions #80

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0001-Filters-for-Projects-page.patch)
Actions #81

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0004-Filter-after-project-custom-fields.patch)
Actions #82

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0006-Set-default-columns-for-the-projects-list.patch)
Actions #83

Updated by Marius BĂLTEANU about 5 years ago

  • File deleted (0005-Option-to-switch-between-table-list-and-board-list.patch)
Actions #85

Updated by Jean-Philippe Lang about 5 years ago

  • Status changed from New to Closed

Patches committed, thanks!

Actions #86

Updated by Jean-Philippe Lang about 5 years ago

  • Tracker changed from Patch to Feature
Actions #87

Updated by Marius BĂLTEANU about 5 years ago

  • Related to deleted (Feature #24841: Hide projects user is only admin but not has assigned any role in the project overview (as it is already done in the project dropdown))
Actions #88

Updated by Marius BĂLTEANU about 5 years ago

  • Has duplicate Feature #24841: Hide projects user is only admin but not has assigned any role in the project overview (as it is already done in the project dropdown) added
Actions #89

Updated by Marius BĂLTEANU about 5 years ago

Actions #90

Updated by Mischa The Evil about 5 years ago

  • Status changed from Closed to Reopened
@Go MAEDA: Can you also remove the remaining label_show_closed_projects strings from the other translation files? The string is removed from en.yml in r18761.
Actions #91

Updated by Go MAEDA about 5 years ago

  • Status changed from Reopened to Closed

Mischa The Evil wrote:

@Go MAEDA: Can you also remove the remaining label_show_closed_projects strings from the other translation files? The string is removed from en.yml in r18761.

Done in r18785. Thank you.

Actions #92

Updated by Marius BĂLTEANU about 5 years ago

  • Status changed from Closed to Reopened

Please commit the below change in order to prevent a random test failure:

root@df2fd1389bf4:/work# git diff
diff --git a/test/unit/project_query_test.rb b/test/unit/project_query_test.rb
index 43e95d308..e2d151d06 100644
--- a/test/unit/project_query_test.rb
+++ b/test/unit/project_query_test.rb
@@ -24,7 +24,8 @@ class ProjectQueryTest < ActiveSupport::TestCase
            :members, :roles, :member_roles,
            :issue_categories, :enumerations,
            :groups_users,
-           :enabled_modules
+           :enabled_modules,
+           :custom_fields, :custom_values

   def test_filter_values_be_arrays
     q = ProjectQuery.new


root@df2fd1389bf4:/work# ruby test/unit/project_query_test.rb 
Run options: --seed 54515

# Running:

.F

Failure:
ProjectQueryTest#test_available_columns_should_include_project_custom_fields [test/unit/project_query_test.rb:58]:
"project.cf_3" not found in "[:name, :status, :short_description, :homepage, :identifier, :parent_id, :is_public, :created_on]" 

bin/rails test test/unit/project_query_test.rb:56

..

Finished in 1.785637s, 2.2401 runs/s, 7.8403 assertions/s.
4 runs, 14 assertions, 1 failures, 0 errors, 0 skips

With the change applied:


root@df2fd1389bf4:/work# ruby test/unit/project_query_test.rb 
Run options: --seed 62630

# Running:

....

Finished in 1.773426s, 2.2555 runs/s, 8.4582 assertions/s.
4 runs, 15 assertions, 0 failures, 0 errors, 0 skips

Actions #93

Updated by Go MAEDA about 5 years ago

  • Status changed from Reopened to Closed

Marius BALTEANU wrote:

Please commit the below change in order to prevent a random test failure:

Committed in r18787.

Actions #94

Updated by Marius BĂLTEANU about 5 years ago

Go MAEDA wrote:

Marius BALTEANU wrote:

Please commit the below change in order to prevent a random test failure:

Committed in r18787.

Thanks!

Actions #95

Updated by Bernhard Rohloff about 5 years ago

There is a small flaw in the query save form. The labels on the Display results section are overlapping each other.

Actions #96

Updated by Marius BĂLTEANU about 5 years ago

Bernhard Rohloff wrote:

There is a small flaw in the query save form. The labels on the Display results section are overlapping each other.

Thanks Bernhard for catching this issue, it's caused by r18767.

Attached two new patches:
1. Fixes the problem, including broken JS which doesn't hide useless fields in board view.
2. Removes duplicated 'group_by' id.

Actions #97

Updated by Go MAEDA about 5 years ago

Bernhard Rohloff wrote:

There is a small flaw in the query save form. The labels on the Display results section are overlapping each other.

Could you tell me how to reproduce the problem? I cannot observe the overlapped labels with Firefox and Chrome.

Actions #98

Updated by Bernhard Rohloff about 5 years ago

Go MAEDA wrote:

Bernhard Rohloff wrote:

There is a small flaw in the query save form. The labels on the Display results section are overlapping each other.

Could you tell me how to reproduce the problem? I cannot observe the overlapped labels with Firefox and Chrome.

I have them in both Firefox and Chrome on a Fedora 30 and an Ubuntu 18.04 install. I just visit the projects page, click on save and there it is. I've tested Marius' patches and they are solving the issue.

Actions #99

Updated by Go MAEDA about 5 years ago

  • Status changed from Reopened to Closed
  • Resolution set to Fixed

Marius BALTEANU wrote:

Attached two new patches:
1. Fixes the problem, including broken JS which doesn't hide useless fields in board view.
2. Removes duplicated 'group_by' id.

Committed the patches in r18790 and r18791. Thanks.

Actions #100

Updated by Marius BĂLTEANU about 5 years ago

  • Related to deleted (Feature #26641: Display and export project information)
Actions #101

Updated by Marius BĂLTEANU about 5 years ago

  • Has duplicate Feature #26641: Display and export project information added
Actions #102

Updated by Marius BĂLTEANU about 5 years ago

It seems that I've never finished the CSV export implementation for projects page. I'm attaching a patch to fix this.

All tests pass: https://gitlab.com/redmine-org/redmine/pipelines/91728081

Actions #103

Updated by Dominik Ras about 5 years ago

Zbigniew Nowacki wrote:

+1

This is a very useful feature.

I second that!!

I'm on the same page with Marco Descher, Fabian Schuttenberg, Antonio McDeal, Yuuki Nara and all of the other contributors who are clapping it up.

Marius, that will be such a great enhancement, although I'm curious to find out more about Vincent Robert's hint about https://github.com/jbbarth/redmine_better_crossprojects

Actions #104

Updated by Yuichi HARADA about 5 years ago

QueryTest#test_filter_my_bookmarks has failed.

$ RAILS_ENV=test bundle exec rake db:migrate:reset

$ RAILS_ENV=test bundle exec rake test TEST=test/unit/query_test.rb
Run options: --seed 55582

# Running:

................................................................................................................................................................................F

Failure:
QueryTest#test_filter_my_bookmarks [test/unit/query_test.rb:930]:
"bookmarks" not found in "["mine", "1", "5", "6", "3", "4", "2"]" 

bin/rails test test/unit/query_test.rb:925

.............................................

Finished in 8.093826s, 27.4283 runs/s, 76.6016 assertions/s.
222 runs, 620 assertions, 1 failures, 0 errors, 0 skips

I think that because the fixture is not enough.

diff --git a/test/unit/query_test.rb b/test/unit/query_test.rb
index 0fa9cf510..3ccfc753a 100644
--- a/test/unit/query_test.rb
+++ b/test/unit/query_test.rb
@@ -22,7 +22,7 @@ require File.expand_path('../../test_helper', __FILE__)
 class QueryTest < ActiveSupport::TestCase
   include Redmine::I18n

-  fixtures :projects, :enabled_modules, :users, :members,
+  fixtures :projects, :enabled_modules, :users, :user_preferences, :members,
            :member_roles, :roles, :trackers, :issue_statuses,
            :issue_categories, :enumerations, :issues,
            :watchers, :custom_fields, :custom_values, :versions,
Actions #105

Updated by Go MAEDA about 5 years ago

Yuichi HARADA wrote:

QueryTest#test_filter_my_bookmarks has failed.

Thank you. Committed the patch in r18881.

Actions #106

Updated by Jean-Philippe Lang about 5 years ago

  • Status changed from Reopened to Closed

Marius BALTEANU wrote:

It seems that I've never finished the CSV export implementation for projects page. I'm attaching a patch to fix this.

All tests pass: https://gitlab.com/redmine-org/redmine/pipelines/91728081

Committed, thanks.

Actions #107

Updated by Sebastian Paluch almost 5 years ago

Related #32818.

Actions #108

Updated by Marius BĂLTEANU almost 5 years ago

  • Related to Feature #32818: Add a system setting for default results display format of project query added
Actions #109

Updated by Marius BĂLTEANU almost 5 years ago

  • Has duplicate Feature #1472: Organized All Projects List View added
Actions #110

Updated by Marius BĂLTEANU almost 5 years ago

  • Has duplicate Feature #2117: Alternative view for "Projects" page added
Actions #111

Updated by Marius BĂLTEANU almost 5 years ago

  • Has duplicate Feature #9207: Ability for administrator to hide projects he is not member of from the projects page added
Actions #112

Updated by Go MAEDA over 4 years ago

  • Related to Defect #33083: Projects filter "Subproject of" does not work when the given value is "My projects" or "My bookmarks" added
Actions #113

Updated by Go MAEDA over 4 years ago

  • Has duplicate Feature #22124: Display summary of projects in Projects page added
Actions #114

Updated by Marius BĂLTEANU over 4 years ago

  • Related to Feature #571: Configurable "Display project descriptions" in project list added
Actions #115

Updated by Mischa The Evil over 4 years ago

  • Precedes Feature #33422: Re-implement admin project list using ProjectQuery system added
Actions #116

Updated by Sebastian Paluch over 4 years ago

Related #33490.

Actions #117

Updated by Mischa The Evil over 4 years ago

  • Related to Feature #33490: Add a project query filter for "Subproject of"/"Parent project" with operator "contains" added
Actions #118

Updated by VVD VVD over 4 years ago

How to make projects and issues filters hidden by default?
Can't find configure options for this.
Thanks.

Actions #119

Updated by Mischa The Evil over 3 years ago

  • Related to Defect #35794: ProjectQuery doesn't obey multiple sort orders added
Actions #120

Updated by Mischa The Evil over 3 years ago

  • Related to Feature #35795: Settings for global and user default custom ProjectQuery added
Actions #121

Updated by Holger Just over 2 years ago

  • Related to Defect #36542: projects.xml API doens't include closed projects since redmine v4.1 added
Actions #122

Updated by Go MAEDA about 2 years ago

  • Related to Defect #37925: Do not allow unkown display_type for query added
Actions #123

Updated by Go MAEDA 7 months ago

  • Related to Defect #40610: Slow display of projects list when including project description column added
Actions

Also available in: Atom PDF