Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/phabricator
Path: blob/master/src/applications/harbormaster/xaction/plan/HarbormasterBuildPlanNameTransaction.php
12264 views
1
<?php
2
3
final class HarbormasterBuildPlanNameTransaction
4
extends HarbormasterBuildPlanTransactionType {
5
6
const TRANSACTIONTYPE = 'harbormaster:name';
7
8
public function generateOldValue($object) {
9
return $object->getName();
10
}
11
12
public function applyInternalEffects($object, $value) {
13
$object->setName($value);
14
}
15
16
public function getTitle() {
17
return pht(
18
'%s renamed this build plan from "%s" to "%s".',
19
$this->renderAuthor(),
20
$this->renderOldValue(),
21
$this->renderNewValue());
22
}
23
24
public function validateTransactions($object, array $xactions) {
25
$errors = array();
26
27
if ($this->isEmptyTextTransaction($object->getName(), $xactions)) {
28
$errors[] = $this->newRequiredError(
29
pht('You must choose a name for your build plan.'));
30
}
31
32
return $errors;
33
}
34
35
public function getTransactionTypeForConduit($xaction) {
36
return 'name';
37
}
38
39
public function getFieldValuesForConduit($xaction, $data) {
40
return array(
41
'old' => $xaction->getOldValue(),
42
'new' => $xaction->getNewValue(),
43
);
44
}
45
46
}
47
48