1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-24 07:42:40 +01:00
phorge-phorge/src/applications/project
epriestley c46be2a70b Allow Maniphest tasks to be queried by workboard Column PHID via SearchEngine
Summary:
Ref T13120. See PHI571. Fixes T5024. This adds a "View as Query" action to workboard columns, which builds a query in Maniphest that has the current query constraints plus an additional constraint to select only tasks in the specified column.

This is a normal query and can be turned into a dashboard panel, added to a menu, edited, saved as a link, etc.

Much of the complexity here is that finding tasks in a given column isn't entirely straightforward because of how board layout works: when you create a task, it isn't immediately placed in columns. It's only actually added to the "Backlog" column on any boards when someone looks at the board.

To get the right behavior, we must do "board layout" for any queried columns before we can constrain results. This isn't enormously efficient, but should be OK for reasonable boards.

Test Plan:
  - Used "View as Query" for normal columns and milestome columns, got appropriate queries in Maniphest.
  - Applied filters to the board (e.g., "Priorities: wishlist"), then used "View As Query" and had my custom filters respected.
  - Queried some large boards/columns with more than a thousand tasks, got results back within a second or so.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T13120, T5024

Differential Revision: https://secure.phabricator.com/D19366
2018-04-13 16:07:44 -07:00
..
__tests__ Remove some defunct old-style transaction policy checks 2017-11-07 15:34:51 -08:00
application Add Dashboards as a default pinned application 2017-03-21 11:10:20 -07:00
capability Add default View, Edit, and Join Policies to Projects 2014-11-21 11:22:17 -08:00
command Implement a "!projects" mail command 2015-04-01 11:51:51 -07:00
conduit Migrate Project color to modular transactions 2017-05-18 16:46:06 -07:00
config Choose default project image by icon 2017-07-09 11:41:02 -07:00
constants Allow workboard background colors to be configured 2016-02-16 08:15:12 -08:00
controller Allow Maniphest tasks to be queried by workboard Column PHID via SearchEngine 2018-04-13 16:07:44 -07:00
customfield Fix errors found by PHPStan 2017-02-17 10:10:15 +00:00
edge Replace subscribe/unsubscribe for projects with explicit mail setting 2016-01-19 19:39:02 -08:00
editor Don't require project edit permission to create a project with members other than yourself 2018-03-01 18:46:03 -08:00
engine Hide archived projects only on workboards, not hovercards 2017-11-27 14:37:51 -08:00
engineextension Modularize the "jump nav" behaviors in global search 2018-02-14 18:08:07 -08:00
events Property list view on Diffusion commits should show build status but not Subscriptions, Projects, or Tokens 2017-12-01 18:16:26 +00:00
herald Add "Committer's projects" and "Author's projects" fields to Herald commit rules 2018-02-27 14:33:12 -08:00
icon Test 0 and "" cases in Project Icon Config 2017-07-10 12:01:22 -07:00
interface Roughly implement milestone columns on workboards 2016-02-03 16:37:59 -08:00
lipsum Migrate Project status to modular transactions 2017-05-18 11:36:13 -07:00
mail phtize all the things 2015-05-22 21:16:39 +10:00
menuitem Prevent hiding the PhabricatorProjectDetailsProfileMenuItem 2017-12-23 11:38:05 -08:00
phid Add Editor-based mail stamps: actor, via, silent, encrypted, new, mention, self-actor, self-mention 2018-02-06 04:04:52 -08:00
policyrule De-garbage the horrible garbage project section of the policy selection control 2016-02-05 09:50:06 -08:00
query Allow projects to be queried by slug in "project.search" 2018-03-16 13:08:40 -07:00
remarkup Fix spelling 2017-10-09 10:48:04 -07:00
search Support Ferret engine in Projects 2017-09-07 13:24:23 -07:00
searchfield Fix a bad call when prefilling ApplicationSearch from ?projects=some_slug 2016-02-08 10:44:33 -08:00
storage Fix a couple of other missing getApplicationTransactionCommentObject() implementations 2017-10-24 09:05:23 -07:00
typeahead Add an "only()" edge logic constraint, meaning "only the other constraints, exactly" 2017-09-06 12:16:06 -07:00
view Hide archived projects only on workboards, not hovercards 2017-11-27 14:37:51 -08:00
xaction Migrate Project workboard background color to modular transactions 2017-05-24 12:56:25 -07:00