[ Index ] |
PHP Cross Reference of Phabricator |
[Summary view] [Print] [Text view]
1 <?php 2 3 final class DrydockLeaseReleaseController extends DrydockLeaseController { 4 5 private $id; 6 7 public function willProcessRequest(array $data) { 8 $this->id = $data['id']; 9 } 10 11 public function processRequest() { 12 $request = $this->getRequest(); 13 $user = $request->getUser(); 14 15 $lease = id(new DrydockLeaseQuery()) 16 ->setViewer($user) 17 ->withIDs(array($this->id)) 18 ->executeOne(); 19 if (!$lease) { 20 return new Aphront404Response(); 21 } 22 23 $lease_uri = '/lease/'.$lease->getID().'/'; 24 $lease_uri = $this->getApplicationURI($lease_uri); 25 26 if ($lease->getStatus() != DrydockLeaseStatus::STATUS_ACTIVE) { 27 $dialog = id(new AphrontDialogView()) 28 ->setUser($user) 29 ->setTitle(pht('Lease Not Active')) 30 ->appendChild(phutil_tag('p', array(), pht( 31 'You can only release "active" leases.'))) 32 ->addCancelButton($lease_uri); 33 34 return id(new AphrontDialogResponse())->setDialog($dialog); 35 } 36 37 if (!$request->isDialogFormPost()) { 38 $dialog = id(new AphrontDialogView()) 39 ->setUser($user) 40 ->setTitle(pht('Really release lease?')) 41 ->appendChild(phutil_tag('p', array(), pht( 42 'Releasing a lease may cause trouble for the lease holder and '. 43 'trigger cleanup of the underlying resource. It can not be '. 44 'undone. Continue?'))) 45 ->addSubmitButton(pht('Release Lease')) 46 ->addCancelButton($lease_uri); 47 48 return id(new AphrontDialogResponse())->setDialog($dialog); 49 } 50 51 $resource = $lease->getResource(); 52 $blueprint = $resource->getBlueprint(); 53 $blueprint->releaseLease($resource, $lease); 54 55 return id(new AphrontReloadResponse())->setURI($lease_uri); 56 } 57 58 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Sun Nov 30 09:20:46 2014 | Cross-referenced by PHPXref 0.7.1 |