mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-10 08:52:39 +01:00
Use active project filter as default field value when creating new tasks
Summary: See T389. If you're looking at tasks in project X, default new tasks into project X. Test Plan: - Created a new task without associated projects. - Created a new task from a filter view with 1 and 2 projects; defaults were filled in. - Submitted task with invalid title, projects were correctly preserved. Reviewed By: skrul Reviewers: skrul, hunterbridges, jungejason, tuomaspelkonen, aran CC: aran, skrul, epriestley Differential Revision: 757
This commit is contained in:
parent
7baf7c774d
commit
3ceb3d340b
3 changed files with 14 additions and 1 deletions
|
@ -47,6 +47,11 @@ class ManiphestTaskEditController extends ManiphestController {
|
|||
// These allow task creation with defaults.
|
||||
if (!$request->isFormPost()) {
|
||||
$task->setTitle($request->getStr('title'));
|
||||
|
||||
$default_projects = $request->getStr('projects');
|
||||
if ($default_projects) {
|
||||
$task->setProjectPHIDs(explode(';', $default_projects));
|
||||
}
|
||||
}
|
||||
|
||||
$file_phids = $request->getArr('files', array());
|
||||
|
|
|
@ -176,12 +176,19 @@ class ManiphestTaskListController extends ManiphestController {
|
|||
id(new AphrontFormSubmitControl())
|
||||
->setValue('Filter Tasks'));
|
||||
|
||||
$create_uri = new PhutilURI('/maniphest/task/create/');
|
||||
if ($project_phids) {
|
||||
// If we have project filters selected, use them as defaults for task
|
||||
// creation.
|
||||
$create_uri->setQueryParam('projects', implode(';', $project_phids));
|
||||
}
|
||||
|
||||
$filter = new AphrontListFilterView();
|
||||
$filter->addButton(
|
||||
phutil_render_tag(
|
||||
'a',
|
||||
array(
|
||||
'href' => '/maniphest/task/create/',
|
||||
'href' => (string)$create_uri,
|
||||
'class' => 'green button',
|
||||
),
|
||||
'Create New Task'));
|
||||
|
|
|
@ -23,6 +23,7 @@ phutil_require_module('phabricator', 'view/layout/listfilter');
|
|||
phutil_require_module('phabricator', 'view/layout/sidenav');
|
||||
|
||||
phutil_require_module('phutil', 'markup');
|
||||
phutil_require_module('phutil', 'parser/uri');
|
||||
phutil_require_module('phutil', 'utils');
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue