mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-03 04:02:43 +01:00
161ebad56d
Summary: Ref T9964. Three goals here: - Make it easier to supply Conduit documentation. - Make automatic documentation for `*.edit` endpoints more complete, particularly for custom fields. - Allow type resolution via Conduit types, so you can pass `["alincoln"]` to "subscribers" instead of needing to use PHIDs. Test Plan: - Viewed and used all search and edit endpoints, including custom fields. - Used parameter type resolution to set subscribers to user "dog" instead of "PHID-USER-whatever". - Viewed HTTP parameter documentation. Reviewers: chad Reviewed By: chad Maniphest Tasks: T9964 Differential Revision: https://secure.phabricator.com/D14796
38 lines
846 B
PHP
38 lines
846 B
PHP
<?php
|
|
|
|
final class PhabricatorSelectEditField
|
|
extends PhabricatorEditField {
|
|
|
|
private $options;
|
|
|
|
public function setOptions(array $options) {
|
|
$this->options = $options;
|
|
return $this;
|
|
}
|
|
|
|
public function getOptions() {
|
|
if ($this->options === null) {
|
|
throw new PhutilInvalidStateException('setOptions');
|
|
}
|
|
return $this->options;
|
|
}
|
|
|
|
protected function newControl() {
|
|
return id(new AphrontFormSelectControl())
|
|
->setOptions($this->getOptions());
|
|
}
|
|
|
|
protected function newHTTPParameterType() {
|
|
return new AphrontSelectHTTPParameterType();
|
|
}
|
|
|
|
protected function newCommentAction() {
|
|
return id(new PhabricatorEditEngineSelectCommentAction())
|
|
->setOptions($this->getOptions());
|
|
}
|
|
|
|
protected function newConduitParameterType() {
|
|
return new ConduitStringParameterType();
|
|
}
|
|
|
|
}
|