Correct Aphlict websocket URI construction after PHP8 compatibility changes
[phabricator.git] / src / applications / phortune / controller / cart / PhortuneCartVoidController.php
blob184775b10db5ae5a19cf7e6f6be7a45cc32038ff
1 <?php
3 final class PhortuneCartVoidController
4 extends PhortuneCartController {
6 protected function shouldRequireAccountAuthority() {
7 return false;
10 protected function shouldRequireMerchantAuthority() {
11 return true;
14 protected function handleCartRequest(AphrontRequest $request) {
15 $viewer = $request->getViewer();
16 $cart = $this->getCart();
18 $cancel_uri = $cart->getDetailURI();
20 try {
21 $title = pht('Unable to Void Invoice');
22 $cart->assertCanVoidOrder();
23 } catch (Exception $ex) {
24 return $this->newDialog()
25 ->setTitle($title)
26 ->appendChild($ex->getMessage())
27 ->addCancelButton($cancel_uri);
30 if ($request->isFormPost()) {
31 return id(new AphrontRedirectResponse())->setURI($cancel_uri);
34 return $this->newDialog()
35 ->setTitle(pht('Void Invoice?'))
36 ->appendParagraph(
37 pht(
38 'Really void this invoice? The customer will no longer be asked '.
39 'to submit payment for it.'))
40 ->addCancelButton($cancel_uri)
41 ->addSubmitButton(pht('Void Invoice'));