Feature #29482

Query system for Projects page

Added by Marius BALTEANU about 1 year ago. Updated 19 days ago.

Status:ClosedStart date:
Priority:NormalDue date:
Assignee:Jean-Philippe Lang% Done:

0%

Category:Projects
Target version:4.1.0
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.

projects.png (205 KB) Marius BALTEANU, 2018-09-02 18:43

projects_filters.png (183 KB) Marius BALTEANU, 2018-12-12 23:22

list.png (356 KB) Marius BALTEANU, 2018-12-12 23:29

projects.png (132 KB) Vincent Robert, 2019-01-21 16:25

board_view.png (230 KB) Marius BALTEANU, 2019-09-26 23:37

list_view.png (229 KB) Marius BALTEANU, 2019-09-26 23:38

0002-Filter-after-projects.patch Magnifier (2.61 KB) Marius BALTEANU, 2019-09-28 18:45

0003-Filter-after-parent-project.patch Magnifier (1.91 KB) Marius BALTEANU, 2019-09-28 18:45

0004-Filter-after-project-custom-fields.patch Magnifier (1.26 KB) Marius BALTEANU, 2019-09-28 18:45

0001-Filters-for-Projects-page.patch Magnifier (20.8 KB) Marius BALTEANU, 2019-09-28 18:45

0006-Set-default-columns-for-the-projects-list.patch Magnifier (3.94 KB) Marius BALTEANU, 2019-09-28 18:45

0005-Option-to-switch-between-table-list-and-board-list.patch Magnifier (23 KB) Marius BALTEANU, 2019-09-28 18:45

overlapping_display_options.png (4.56 KB) Bernhard Rohloff, 2019-10-21 18:31

0002-Removes-duplicated-group_by-id.patch Magnifier (677 Bytes) Marius BALTEANU, 2019-10-21 23:04

0001-Fix-display-type-in-query-form-view.patch Magnifier (1.69 KB) Marius BALTEANU, 2019-10-21 23:04

0001-Fix-CSV-export.patch Magnifier (6.59 KB) Marius BALTEANU, 2019-10-26 20:58


Related issues

Related to Redmine - Defect #26853: Fix hardcoded project-index width for webkit and mozilla ... Closed
Related to Redmine - Feature #6655: Add filter for projects view page Closed 2010-10-13
Related to Redmine - Feature #572: My projects (or favourite projects) Closed
Related to Redmine - Patch #23954: Shows the date of the last activity on Projects administr... New
Related to Redmine - Patch #13696: Projects admin, show issues count New
Related to Redmine - Feature #28678: Alow to filter projects where the specific role is used New
Related to Redmine - Feature #20081: Filter issues and time entries by project status Closed
Related to Redmine - Patch #29951: Quick design fix/proposals for projects index page Closed
Related to Redmine - Patch #9697: Projects list with progress Resolved
Related to Redmine - Feature #3224: Better project list New 2009-04-23
Related to Redmine - Feature #32302: Filter projects after bookmarks Closed
Duplicated by Redmine - Feature #12329: Project filtering in common view Closed
Duplicated by Redmine - Feature #22966: Add ability search/filter project by project's custom fields Closed
Duplicated by Redmine - Feature #22327: Sort Projects by status and custom field values Closed
Duplicated by Redmine - Feature #2399: Custom field filtering for projects Closed 2008-12-25
Duplicated by Redmine - Feature #26494: Add ability to enable\disable multiple columns on project... Closed
Duplicated by Redmine - Patch #7701: Updated Project/Index to appear more like Admin/Projects Closed 2011-02-23
Duplicated by Redmine - Feature #24841: Hide projects user is only admin but not has assigned any... Closed
Duplicated by Redmine - Feature #26641: Display and export project information Closed

Associated revisions

Revision 18761
Added by Jean-Philippe Lang about 1 month ago

Filters for Projects page (#29482).

Patch by Marius BALTEANU.

Revision 18762
Added by Jean-Philippe Lang about 1 month ago

Filter after projects (#29482).

Patch by Marius BALTEANU.

Revision 18763
Added by Jean-Philippe Lang about 1 month ago

Filter after parent project (#29482).

Patch by Marius BALTEANU.

Revision 18764
Added by Jean-Philippe Lang about 1 month ago

Filter after project custom fields (#29482).

Patch by Marius BALTEANU.

Revision 18765
Added by Jean-Philippe Lang about 1 month ago

Option to switch between table list and board list (#29482).

Patch by Marius BALTEANU.

Revision 18766
Added by Jean-Philippe Lang about 1 month ago

Set default columns for the projects list (#29482).

Patch by Marius BALTEANU.

Revision 18767
Added by Jean-Philippe Lang about 1 month ago

Use radio buttons to choose display type (#29482).

Revision 18768
Added by Jean-Philippe Lang about 1 month ago

Test failure (#29482).

Revision 18784
Added by Go MAEDA about 1 month ago

Update locales (#29482).

Revision 18785
Added by Go MAEDA about 1 month ago

Remove label_show_closed_projects from all translation files (#29482).

The string has been removed from en.yml in r18761.

Revision 18787
Added by Go MAEDA about 1 month ago

Fix random test failure of ProjectQueryTest (#29482).

Patch by Marius BALTEANU.

Revision 18790
Added by Go MAEDA about 1 month ago

Fix display type in query form view (#29482).

Patch by Marius BALTEANU.

Revision 18791
Added by Go MAEDA about 1 month ago

Removes duplicated 'group_by' id (#29482).

Patch by Marius BALTEANU.

Revision 18827
Added by Toshi MARUYAMA about 1 month ago

fix random test failure of ProjectQueryTest (#29482)

Revision 18842
Added by Go MAEDA 30 days ago

Option to filter after my bookmarked projects (#32302, #29482, #31355).

Patch by Marius BALTEANU.

Revision 18843
Added by Go MAEDA 30 days ago

Update locales (#32302, #29482, #31355).

Revision 18865
Added by Jean-Philippe Lang 26 days ago

Default sorting on projects by id is not relevant (#29482).

Revision 18866
Added by Jean-Philippe Lang 26 days ago

Don't paginate the board view for now (#29482).

Subprojects may appear as root projects if their parents are on a previous page.

Revision 18877
Added by Go MAEDA 24 days ago

Add a fixture for UserTest#test_bookmarked_project_ids (#29482).

Revision 18881
Added by Go MAEDA 23 days ago

Add a fixture for QueryTest#test_filter_my_bookmarks (#29482).

Patch by Yuichi HARADA.

Revision 18888
Added by Jean-Philippe Lang 19 days ago

Fix CSV export of projects (#29482).

Patch by Marius BALTEANU.

Revision 18889
Added by Jean-Philippe Lang 19 days ago

Reorder links the same as other lists (#29482).

Revision 19091
Added by Jean-Philippe Lang 1 day ago

Only admin users should be able to manage public queries on the project list (#29482).

Like for issues, project members with the "Manage public" queries are allowed to manage public queries inside their projects, not public global queries that are proposed on /issues.

Revision 19093
Added by Jean-Philippe Lang 1 day ago

Make sure we cannot create a ProjectQuery on a given project (#29482).

Revision 19094
Added by Jean-Philippe Lang 1 day ago

Merged r19091 to 4.1-stable (#29482).

Revision 19101
Added by Jean-Philippe Lang 1 day ago

Merged r19093 to 4.1-stable (#29482).

History

#1 Updated by Marius BALTEANU about 1 year ago

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

#2 Updated by Marius BALTEANU about 1 year ago

  • Duplicated by Feature #6655: Add filter for projects view page added

#3 Updated by Marius BALTEANU about 1 year ago

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

#4 Updated by Marius BALTEANU about 1 year ago

  • Duplicated by deleted (Feature #6655: Add filter for projects view page)

#5 Updated by Marius BALTEANU about 1 year ago

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

#6 Updated by Marius BALTEANU about 1 year ago

  • Description updated (diff)

#7 Updated by Marius BALTEANU about 1 year 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".

#8 Updated by Marius BALTEANU about 1 year ago

  • Duplicated by Feature #12329: Project filtering in common view added

#9 Updated by Marius BALTEANU about 1 year ago

  • Duplicated by Feature #22966: Add ability search/filter project by project's custom fields added

#10 Updated by Marius BALTEANU about 1 year ago

  • Duplicated by Feature #22327: Sort Projects by status and custom field values added

#11 Updated by Marius BALTEANU about 1 year ago

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

#12 Updated by Mizuki ISHIKAWA about 1 year 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.

#13 Updated by Jens Krämer about 1 year 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.

#14 Updated by zhangzhi liao about 1 year ago

HOW I setup the Patch ?

#15 Updated by zhangzhi liao about 1 year 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.

#16 Updated by zhangzhi liao about 1 year ago

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

#17 Updated by Bernhard Rohloff about 1 year 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..!?

#18 Updated by Marius BALTEANU about 1 year ago

zhangzhi liao wrote:

HOW I setup the Patch ?

Please use forum to request help.

#19 Updated by zhangzhi liao about 1 year 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.

#20 Updated by Marius BALTEANU about 1 year 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.

#21 Updated by zhangzhi liao about 1 year 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

#22 Updated by Marius BALTEANU about 1 year 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.

#23 Updated by Marius BALTEANU about 1 year ago

  • Duplicated by Feature #2399: Custom field filtering for projects added

#24 Updated by Marius BALTEANU about 1 year ago

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

#25 Updated by Marius BALTEANU about 1 year 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.

#26 Updated by Marius BALTEANU about 1 year ago

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

#27 Updated by Marius BALTEANU about 1 year ago

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

Updated the patch to remove some unused CSS classes.

#28 Updated by Zbigniew Nowacki about 1 year 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).

#29 Updated by Marius BALTEANU about 1 year 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.

#30 Updated by Marius BALTEANU about 1 year ago

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

#31 Updated by Marius BALTEANU about 1 year ago

  • Related to Patch #23954: Shows the date of the last activity on Projects administration. added

#32 Updated by Marius BALTEANU about 1 year ago

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

#33 Updated by Marius BALTEANU about 1 year ago

  • Target version set to Candidate for next major release

#34 Updated by Marius BALTEANU about 1 year ago

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

#35 Updated by Marius BALTEANU about 1 year 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.

#36 Updated by Marius BALTEANU about 1 year ago

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

#37 Updated by Marius BALTEANU about 1 year ago

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

#38 Updated by Marius BALTEANU about 1 year 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.

#39 Updated by Fabian Schuttenberg about 1 year 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.

#40 Updated by Marius BALTEANU about 1 year ago

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

#41 Updated by Marius BALTEANU about 1 year 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.

#42 Updated by Marius BALTEANU about 1 year ago

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

#43 Updated by Marius BALTEANU 12 months 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

#44 Updated by Ivan Gretsky 12 months 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.

#45 Updated by Marius BALTEANU 11 months ago

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

#46 Updated by Marius BALTEANU 11 months ago

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

#47 Updated by Marius BALTEANU 11 months ago

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

#48 Updated by Marius BALTEANU 11 months ago

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

#49 Updated by Marius BALTEANU 11 months 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 added
  • File 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.

#50 Updated by Tatsuya Saito 11 months 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.

#51 Updated by Marius BALTEANU 11 months 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.

#52 Updated by Marius BALTEANU 11 months ago

  • Assignee changed from Marius BALTEANU 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).

#53 Updated by Marco Descher 11 months ago

+1 please add this feature

#54 Updated by Vincent Robert 10 months 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:

#55 Updated by Marius BALTEANU 10 months ago

  • Duplicated by Feature #26494: Add ability to enable\disable multiple columns on project list page added

#56 Updated by Jeremy Bailey 10 months ago

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

#57 Updated by Go MAEDA 9 months ago

  • Duplicated by Patch #7701: Updated Project/Index to appear more like Admin/Projects added

#58 Updated by Marius BALTEANU 9 months ago

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

#59 Updated by Marius BALTEANU 5 months ago

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

#60 Updated by Marius BALTEANU 5 months ago

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

#61 Updated by Marius BALTEANU 5 months ago

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

#62 Updated by Marius BALTEANU 5 months ago

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

#63 Updated by Marius BALTEANU 5 months ago

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

#64 Updated by Marius BALTEANU 5 months ago

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

#65 Updated by Marius BALTEANU 5 months 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.

#66 Updated by Sebastian Paluch 3 months 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.

#67 Updated by Mischa The Evil 2 months ago

#68 Updated by Dmitry Makurin 2 months 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

#69 Updated by Yuuki NARA 2 months ago

+1

#70 Updated by Antonio McDeal 2 months ago

Yuuki NARA wrote:

+1

+1 because Yuuki NARA +1ed ;D

#71 Updated by Marius BALTEANU about 1 month 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.

#72 Updated by Marius BALTEANU about 1 month ago

#73 Updated by Marius BALTEANU about 1 month ago

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

#74 Updated by Marius BALTEANU about 1 month ago

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

#75 Updated by Marius BALTEANU about 1 month ago

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

#76 Updated by Marius BALTEANU about 1 month ago

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

#77 Updated by Marius BALTEANU about 1 month ago

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

#78 Updated by Marius BALTEANU about 1 month ago

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

#79 Updated by Marius BALTEANU about 1 month ago

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

#80 Updated by Marius BALTEANU about 1 month ago

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

#81 Updated by Marius BALTEANU about 1 month ago

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

#82 Updated by Marius BALTEANU about 1 month ago

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

#83 Updated by Marius BALTEANU about 1 month ago

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

#84 Updated by Marius BALTEANU about 1 month ago

Dmitry Makurin wrote:

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

[...]

Thanks for pointing this out, I've updated the patches.

Attaching the latest versions.

#85 Updated by Jean-Philippe Lang about 1 month ago

  • Status changed from New to Closed

Patches committed, thanks!

#86 Updated by Jean-Philippe Lang about 1 month ago

  • Tracker changed from Patch to Feature

#87 Updated by Marius BALTEANU about 1 month 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))

#88 Updated by Marius BALTEANU about 1 month ago

  • Duplicated by 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

#89 Updated by Marius BALTEANU about 1 month ago

#90 Updated by Mischa The Evil about 1 month 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.

#91 Updated by Go MAEDA about 1 month 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.

#92 Updated by Marius BALTEANU about 1 month 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

#93 Updated by Go MAEDA about 1 month 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.

#94 Updated by Marius BALTEANU about 1 month ago

Go MAEDA wrote:

Marius BALTEANU wrote:

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

Committed in r18787.

Thanks!

#95 Updated by Bernhard Rohloff about 1 month ago

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

#96 Updated by Marius BALTEANU about 1 month 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.

#97 Updated by Go MAEDA about 1 month 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.

#98 Updated by Bernhard Rohloff about 1 month 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.

#99 Updated by Go MAEDA about 1 month 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.

#100 Updated by Marius BALTEANU about 1 month ago

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

#101 Updated by Marius BALTEANU about 1 month ago

  • Duplicated by Feature #26641: Display and export project information added

#102 Updated by Marius BALTEANU 26 days 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

#103 Updated by Dominik Ras 23 days 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

#104 Updated by Yuichi HARADA 23 days 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,

#105 Updated by Go MAEDA 23 days ago

Yuichi HARADA wrote:

QueryTest#test_filter_my_bookmarks has failed.

Thank you. Committed the patch in r18881.

#106 Updated by Jean-Philippe Lang 19 days 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.

Also available in: Atom PDF