Correct a parameter order swap in "diffusion.historyquery" for Mercurial
[phabricator.git] / src / applications / people / customfield / PhabricatorUserIconField.php
blob0b25a9dd8162ee2adbb1832ea06f1b9dee40fb17
1 <?php
3 final class PhabricatorUserIconField
4 extends PhabricatorUserCustomField {
6 private $value;
8 public function getFieldKey() {
9 return 'user:icon';
12 public function getModernFieldKey() {
13 return 'icon';
16 public function getFieldKeyForConduit() {
17 return $this->getModernFieldKey();
20 public function getFieldName() {
21 return pht('Icon');
24 public function getFieldDescription() {
25 return pht('User icon to accompany their title.');
28 public function canDisableField() {
29 return false;
32 public function shouldAppearInApplicationTransactions() {
33 return true;
36 public function shouldAppearInEditView() {
37 return true;
40 public function readValueFromObject(PhabricatorCustomFieldInterface $object) {
41 $this->value = $object->loadUserProfile()->getIcon();
44 public function getOldValueForApplicationTransactions() {
45 return $this->getObject()->loadUserProfile()->getIcon();
48 public function getNewValueForApplicationTransactions() {
49 return $this->value;
52 public function applyApplicationTransactionInternalEffects(
53 PhabricatorApplicationTransaction $xaction) {
54 $this->getObject()->loadUserProfile()->setIcon($xaction->getNewValue());
57 public function readValueFromRequest(AphrontRequest $request) {
58 $this->value = $request->getStr($this->getFieldKey());
61 public function setValueFromStorage($value) {
62 $this->value = $value;
63 return $this;
66 public function renderEditControl(array $handles) {
67 return id(new PHUIFormIconSetControl())
68 ->setName($this->getFieldKey())
69 ->setValue($this->value)
70 ->setLabel($this->getFieldName())
71 ->setIconSet(new PhabricatorPeopleIconSet());
74 public function shouldAppearInConduitTransactions() {
75 return true;
78 protected function newConduitEditParameterType() {
79 return new ConduitStringParameterType();