3 final class PhabricatorAuthFactorProviderNameTransaction
4 extends PhabricatorAuthFactorProviderTransactionType
{
6 const TRANSACTIONTYPE
= 'name';
8 public function generateOldValue($object) {
9 return $object->getName();
12 public function applyInternalEffects($object, $value) {
13 $object->setName($value);
16 public function getTitle() {
17 $old = $this->getOldValue();
18 $new = $this->getNewValue();
22 '%s named this provider %s.',
23 $this->renderAuthor(),
24 $this->renderNewValue());
25 } else if (!strlen($new)) {
27 '%s removed the name (%s) of this provider.',
28 $this->renderAuthor(),
29 $this->renderOldValue());
32 '%s renamed this provider from %s to %s.',
33 $this->renderAuthor(),
34 $this->renderOldValue(),
35 $this->renderNewValue());
39 public function validateTransactions($object, array $xactions) {
42 $max_length = $object->getColumnMaximumByteLength('name');
43 foreach ($xactions as $xaction) {
44 $new_value = $xaction->getNewValue();
45 $new_length = strlen($new_value);
46 if ($new_length > $max_length) {
47 $errors[] = $this->newInvalidError(
49 'Provider names can not be longer than %s characters.',
50 new PhutilNumber($max_length)),
58 public function getTransactionTypeForConduit($xaction) {
62 public function getFieldValuesForConduit($xaction, $data) {
64 'old' => $xaction->getOldValue(),
65 'new' => $xaction->getNewValue(),