Differential D11356 Diff 27285 src/applications/auth/controller/config/PhabricatorAuthDisableController.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/auth/controller/config/PhabricatorAuthDisableController.php
<?php | <?php | ||||
final class PhabricatorAuthDisableController | final class PhabricatorAuthDisableController | ||||
extends PhabricatorAuthProviderConfigController { | extends PhabricatorAuthProviderConfigController { | ||||
private $configID; | public function handleRequest(AphrontRequest $request) { | ||||
private $action; | $this->requireApplicationCapability( | ||||
AuthManageProvidersCapability::CAPABILITY); | |||||
public function willProcessRequest(array $data) { | |||||
$this->configID = idx($data, 'id'); | |||||
$this->action = idx($data, 'action'); | |||||
} | |||||
public function processRequest() { | |||||
$request = $this->getRequest(); | |||||
$viewer = $request->getUser(); | $viewer = $request->getUser(); | ||||
$config_id = $request->getURIData('id'); | |||||
$action = $request->getURIData('action'); | |||||
$config = id(new PhabricatorAuthProviderConfigQuery()) | $config = id(new PhabricatorAuthProviderConfigQuery()) | ||||
->setViewer($viewer) | ->setViewer($viewer) | ||||
->requireCapabilities( | ->requireCapabilities( | ||||
array( | array( | ||||
PhabricatorPolicyCapability::CAN_VIEW, | PhabricatorPolicyCapability::CAN_VIEW, | ||||
PhabricatorPolicyCapability::CAN_EDIT, | PhabricatorPolicyCapability::CAN_EDIT, | ||||
)) | )) | ||||
->withIDs(array($this->configID)) | ->withIDs(array($config_id)) | ||||
->executeOne(); | ->executeOne(); | ||||
if (!$config) { | if (!$config) { | ||||
return new Aphront404Response(); | return new Aphront404Response(); | ||||
} | } | ||||
$is_enable = ($this->action === 'enable'); | $is_enable = ($action === 'enable'); | ||||
if ($request->isDialogFormPost()) { | if ($request->isDialogFormPost()) { | ||||
$xactions = array(); | $xactions = array(); | ||||
$xactions[] = id(new PhabricatorAuthProviderConfigTransaction()) | $xactions[] = id(new PhabricatorAuthProviderConfigTransaction()) | ||||
->setTransactionType( | ->setTransactionType( | ||||
PhabricatorAuthProviderConfigTransaction::TYPE_ENABLE) | PhabricatorAuthProviderConfigTransaction::TYPE_ENABLE) | ||||
->setNewValue((int)$is_enable); | ->setNewValue((int)$is_enable); | ||||
▲ Show 20 Lines • Show All 56 Lines • Show Last 20 Lines |