Differential D14330 Diff 34589 src/applications/harbormaster/controller/HarbormasterStepEditController.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/harbormaster/controller/HarbormasterStepEditController.php
Show First 20 Lines • Show All 52 Lines • ▼ Show 20 Lines | if ($id) { | ||||
->setBuildPlanPHID($plan->getPHID()) | ->setBuildPlanPHID($plan->getPHID()) | ||||
->setClassName($class); | ->setClassName($class); | ||||
$is_new = true; | $is_new = true; | ||||
} | } | ||||
$plan_uri = $this->getApplicationURI('plan/'.$plan->getID().'/'); | $plan_uri = $this->getApplicationURI('plan/'.$plan->getID().'/'); | ||||
if ($is_new) { | |||||
$cancel_uri = $plan_uri; | |||||
} else { | |||||
$cancel_uri = $this->getApplicationURI('step/view/'.$step->getID().'/'); | |||||
} | |||||
$implementation = $step->getStepImplementation(); | $implementation = $step->getStepImplementation(); | ||||
$field_list = PhabricatorCustomField::getObjectFields( | $field_list = PhabricatorCustomField::getObjectFields( | ||||
$step, | $step, | ||||
PhabricatorCustomField::ROLE_EDIT); | PhabricatorCustomField::ROLE_EDIT); | ||||
$field_list | $field_list | ||||
->setViewer($viewer) | ->setViewer($viewer) | ||||
->readFieldsFromStorage($step); | ->readFieldsFromStorage($step); | ||||
▲ Show 20 Lines • Show All 45 Lines • ▼ Show 20 Lines | if ($request->isFormPost()) { | ||||
// configurable options. | // configurable options. | ||||
$create_xaction = id(new HarbormasterBuildStepTransaction()) | $create_xaction = id(new HarbormasterBuildStepTransaction()) | ||||
->setTransactionType(HarbormasterBuildStepTransaction::TYPE_CREATE); | ->setTransactionType(HarbormasterBuildStepTransaction::TYPE_CREATE); | ||||
array_unshift($xactions, $create_xaction); | array_unshift($xactions, $create_xaction); | ||||
} | } | ||||
try { | try { | ||||
$editor->applyTransactions($step, $xactions); | $editor->applyTransactions($step, $xactions); | ||||
return id(new AphrontRedirectResponse())->setURI($plan_uri); | |||||
$step_uri = $this->getApplicationURI('step/view/'.$step->getID().'/'); | |||||
return id(new AphrontRedirectResponse())->setURI($step_uri); | |||||
} catch (PhabricatorApplicationTransactionValidationException $ex) { | } catch (PhabricatorApplicationTransactionValidationException $ex) { | ||||
$validation_exception = $ex; | $validation_exception = $ex; | ||||
} | } | ||||
} | } | ||||
$form = id(new AphrontFormView()) | $form = id(new AphrontFormView()) | ||||
->setUser($viewer) | ->setUser($viewer) | ||||
->appendChild( | ->appendChild( | ||||
Show All 26 Lines | $form | ||||
->appendChild( | ->appendChild( | ||||
id(new PhabricatorRemarkupControl()) | id(new PhabricatorRemarkupControl()) | ||||
->setUser($viewer) | ->setUser($viewer) | ||||
->setName('description') | ->setName('description') | ||||
->setLabel(pht('Description')) | ->setLabel(pht('Description')) | ||||
->setError($e_description) | ->setError($e_description) | ||||
->setValue($v_description)); | ->setValue($v_description)); | ||||
$crumbs = $this->buildApplicationCrumbs(); | |||||
$id = $plan->getID(); | |||||
$crumbs->addTextCrumb(pht('Plan %d', $id), $plan_uri); | |||||
if ($is_new) { | if ($is_new) { | ||||
$submit = pht('Create Build Step'); | $submit = pht('Create Build Step'); | ||||
$header = pht('New Step: %s', $implementation->getName()); | $header = pht('New Step: %s', $implementation->getName()); | ||||
$crumb = pht('Add Step'); | $crumbs->addTextCrumb(pht('Add Step')); | ||||
} else { | } else { | ||||
$submit = pht('Save Build Step'); | $submit = pht('Save Build Step'); | ||||
$header = pht('Edit Step: %s', $implementation->getName()); | $header = pht('Edit Step: %s', $implementation->getName()); | ||||
$crumb = pht('Edit Step'); | $crumbs->addTextCrumb(pht('Step %d', $step->getID()), $cancel_uri); | ||||
$crumbs->addTextCrumb(pht('Edit Step')); | |||||
} | } | ||||
$form->appendChild( | $form->appendChild( | ||||
id(new AphrontFormSubmitControl()) | id(new AphrontFormSubmitControl()) | ||||
->setValue($submit) | ->setValue($submit) | ||||
->addCancelButton($plan_uri)); | ->addCancelButton($cancel_uri)); | ||||
$box = id(new PHUIObjectBoxView()) | $box = id(new PHUIObjectBoxView()) | ||||
->setHeaderText($header) | ->setHeaderText($header) | ||||
->setValidationException($validation_exception) | ->setValidationException($validation_exception) | ||||
->setForm($form); | ->setForm($form); | ||||
$crumbs = $this->buildApplicationCrumbs(); | |||||
$id = $plan->getID(); | |||||
$crumbs->addTextCrumb(pht('Plan %d', $id), $plan_uri); | |||||
$crumbs->addTextCrumb($crumb); | |||||
$variables = $this->renderBuildVariablesTable(); | $variables = $this->renderBuildVariablesTable(); | ||||
if ($is_new) { | if ($is_new) { | ||||
$xaction_view = null; | $xaction_view = null; | ||||
$timeline = null; | $timeline = null; | ||||
} else { | } else { | ||||
$timeline = $this->buildTransactionTimeline( | $timeline = $this->buildTransactionTimeline( | ||||
$step, | $step, | ||||
▲ Show 20 Lines • Show All 44 Lines • Show Last 20 Lines |