Differential D20719 Diff 49401 src/applications/phortune/controller/paymentmethod/PhortunePaymentMethodEditController.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/phortune/controller/paymentmethod/PhortunePaymentMethodEditController.php
- This file was moved from src/applications/phortune/controller/payment/PhortunePaymentMethodEditController.php.
Show All 14 Lines | $method = id(new PhortunePaymentMethodQuery()) | ||||
PhabricatorPolicyCapability::CAN_VIEW, | PhabricatorPolicyCapability::CAN_VIEW, | ||||
PhabricatorPolicyCapability::CAN_EDIT, | PhabricatorPolicyCapability::CAN_EDIT, | ||||
)) | )) | ||||
->executeOne(); | ->executeOne(); | ||||
if (!$method) { | if (!$method) { | ||||
return new Aphront404Response(); | return new Aphront404Response(); | ||||
} | } | ||||
$next_uri = $method->getURI(); | |||||
$account = $method->getAccount(); | $account = $method->getAccount(); | ||||
$account_uri = $this->getApplicationURI($account->getID().'/'); | $v_name = $method->getName(); | ||||
if ($request->isFormPost()) { | if ($request->isFormPost()) { | ||||
$v_name = $request->getStr('name'); | |||||
$xactions = array(); | |||||
$name = $request->getStr('name'); | $xactions[] = $method->getApplicationTransactionTemplate() | ||||
->setTransactionType( | |||||
PhortunePaymentMethodNameTransaction::TRANSACTIONTYPE) | |||||
->setNewValue($v_name); | |||||
// TODO: Use ApplicationTransactions | $editor = id(new PhortunePaymentMethodEditor()) | ||||
->setActor($viewer) | |||||
->setContentSourceFromRequest($request) | |||||
->setContinueOnNoEffect(true) | |||||
->setContinueOnMissingFields(true); | |||||
$method->setName($name); | $editor->applyTransactions($method, $xactions); | ||||
$method->save(); | |||||
return id(new AphrontRedirectResponse())->setURI($account_uri); | return id(new AphrontRedirectResponse())->setURI($next_uri); | ||||
} | } | ||||
$provider = $method->buildPaymentProvider(); | $provider = $method->buildPaymentProvider(); | ||||
$form = id(new AphrontFormView()) | $form = id(new AphrontFormView()) | ||||
->setUser($viewer) | ->setViewer($viewer) | ||||
->appendChild( | ->appendChild( | ||||
id(new AphrontFormTextControl()) | id(new AphrontFormTextControl()) | ||||
->setLabel(pht('Name')) | ->setLabel(pht('Name')) | ||||
->setName('name') | ->setName('name') | ||||
->setValue($method->getName())) | ->setValue($method->getName())) | ||||
->appendChild( | ->appendChild( | ||||
id(new AphrontFormStaticControl()) | id(new AphrontFormStaticControl()) | ||||
->setLabel(pht('Details')) | ->setLabel(pht('Details')) | ||||
->setValue($method->getSummary())) | ->setValue($method->getSummary())) | ||||
->appendChild( | ->appendChild( | ||||
id(new AphrontFormStaticControl()) | id(new AphrontFormStaticControl()) | ||||
->setLabel(pht('Expires')) | ->setLabel(pht('Expires')) | ||||
->setValue($method->getDisplayExpires())) | ->setValue($method->getDisplayExpires())) | ||||
->appendChild( | ->appendChild( | ||||
id(new AphrontFormSubmitControl()) | id(new AphrontFormSubmitControl()) | ||||
->addCancelButton($account_uri) | ->addCancelButton($next_uri) | ||||
->setValue(pht('Save Changes'))); | ->setValue(pht('Save Changes'))); | ||||
$box = id(new PHUIObjectBoxView()) | $box = id(new PHUIObjectBoxView()) | ||||
->setHeaderText(pht('Payment Method')) | ->setHeaderText(pht('Payment Method')) | ||||
->setBackground(PHUIObjectBoxView::BLUE_PROPERTY) | ->setBackground(PHUIObjectBoxView::BLUE_PROPERTY) | ||||
->setForm($form); | ->setForm($form); | ||||
$crumbs = $this->buildApplicationCrumbs(); | $crumbs = $this->buildApplicationCrumbs() | ||||
$crumbs->addTextCrumb($account->getName(), $account_uri); | ->addTextCrumb($account->getName(), $account->getURI()) | ||||
$crumbs->addTextCrumb($method->getDisplayName()); | ->addTextCrumb(pht('Payment Methods'), $account->getPaymentMethodsURI()) | ||||
$crumbs->addTextCrumb(pht('Edit')); | ->addTextCrumb($method->getObjectName(), $method->getURI()) | ||||
$crumbs->setBorder(true); | ->addTextCrumb(pht('Edit')) | ||||
->setBorder(true); | |||||
$header = id(new PHUIHeaderView()) | $header = id(new PHUIHeaderView()) | ||||
->setHeader(pht('Edit Payment Method')) | ->setHeader(pht('Edit Payment Method')) | ||||
->setHeaderIcon('fa-pencil'); | ->setHeaderIcon('fa-pencil'); | ||||
$view = id(new PHUITwoColumnView()) | $view = id(new PHUITwoColumnView()) | ||||
->setHeader($header) | ->setHeader($header) | ||||
->setFooter(array( | ->setFooter( | ||||
array( | |||||
$box, | $box, | ||||
)); | )); | ||||
return $this->newPage() | return $this->newPage() | ||||
->setTitle(pht('Edit Payment Method')) | ->setTitle(pht('Edit Payment Method')) | ||||
->setCrumbs($crumbs) | ->setCrumbs($crumbs) | ||||
->appendChild($view); | ->appendChild($view); | ||||
} | } | ||||
} | } |