From d1d6924dfafb5a238a125604f5b680cf13fe60ea Mon Sep 17 00:00:00 2001 From: Bob Trahan Date: Thu, 1 May 2014 16:11:39 -0700 Subject: [PATCH] Maniphest - add conduit method to get status information Summary: Ref T4938. `arc close` needs to know about custom statuses and this conduit method is step 1 of letting it know Test Plan: See next diff, which works! Reviewers: epriestley Reviewed By: epriestley Subscribers: epriestley, Korvin Maniphest Tasks: T4938 Differential Revision: https://secure.phabricator.com/D8937 --- src/__phutil_library_map__.php | 2 ++ ...duitAPI_maniphest_querystatuses_Method.php | 35 +++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 src/applications/maniphest/conduit/ConduitAPI_maniphest_querystatuses_Method.php diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php index 56b8535eed..69d55a8570 100644 --- a/src/__phutil_library_map__.php +++ b/src/__phutil_library_map__.php @@ -201,6 +201,7 @@ phutil_register_library_map(array( 'ConduitAPI_maniphest_gettasktransactions_Method' => 'applications/maniphest/conduit/ConduitAPI_maniphest_gettasktransactions_Method.php', 'ConduitAPI_maniphest_info_Method' => 'applications/maniphest/conduit/ConduitAPI_maniphest_info_Method.php', 'ConduitAPI_maniphest_query_Method' => 'applications/maniphest/conduit/ConduitAPI_maniphest_query_Method.php', + 'ConduitAPI_maniphest_querystatuses_Method' => 'applications/maniphest/conduit/ConduitAPI_maniphest_querystatuses_Method.php', 'ConduitAPI_maniphest_update_Method' => 'applications/maniphest/conduit/ConduitAPI_maniphest_update_Method.php', 'ConduitAPI_nuance_Method' => 'applications/nuance/conduit/ConduitAPI_nuance_Method.php', 'ConduitAPI_nuance_createitem_Method' => 'applications/nuance/conduit/ConduitAPI_nuance_createitem_Method.php', @@ -2814,6 +2815,7 @@ phutil_register_library_map(array( 'ConduitAPI_maniphest_gettasktransactions_Method' => 'ConduitAPI_maniphest_Method', 'ConduitAPI_maniphest_info_Method' => 'ConduitAPI_maniphest_Method', 'ConduitAPI_maniphest_query_Method' => 'ConduitAPI_maniphest_Method', + 'ConduitAPI_maniphest_querystatuses_Method' => 'ConduitAPI_maniphest_Method', 'ConduitAPI_maniphest_update_Method' => 'ConduitAPI_maniphest_Method', 'ConduitAPI_nuance_Method' => 'ConduitAPIMethod', 'ConduitAPI_nuance_createitem_Method' => 'ConduitAPI_nuance_Method', diff --git a/src/applications/maniphest/conduit/ConduitAPI_maniphest_querystatuses_Method.php b/src/applications/maniphest/conduit/ConduitAPI_maniphest_querystatuses_Method.php new file mode 100644 index 0000000000..ab6963b6b3 --- /dev/null +++ b/src/applications/maniphest/conduit/ConduitAPI_maniphest_querystatuses_Method.php @@ -0,0 +1,35 @@ +'; + } + + public function defineErrorTypes() { + return array(); + } + + protected function execute(ConduitAPIRequest $request) { + $results = array( + 'defaultStatus' => ManiphestTaskStatus::getDefaultStatus(), + 'defaultClosedStatus' => ManiphestTaskStatus::getDefaultClosedStatus(), + 'duplicateStatus' => ManiphestTaskStatus::getDuplicateStatus(), + 'openStatuses' => ManiphestTaskStatus::getOpenStatusConstants(), + 'closedStatuses' => ManiphestTaskStatus::getClosedStatusConstants(), + 'allStatuses' => array_keys(ManiphestTaskStatus::getTaskStatusMap()), + 'statusMap' => ManiphestTaskStatus::getTaskStatusMap() + ); + return $results; + } + +}