Path: blob/master/src/applications/diffusion/controller/DiffusionRepositoryEditPublishingController.php
12242 views
<?php12final class DiffusionRepositoryEditPublishingController3extends DiffusionRepositoryManageController {45public function handleRequest(AphrontRequest $request) {6$response = $this->loadDiffusionContextForEdit();7if ($response) {8return $response;9}1011$viewer = $this->getViewer();12$drequest = $this->getDiffusionRequest();13$repository = $drequest->getRepository();1415$panel_uri = id(new DiffusionRepositoryBasicsManagementPanel())16->setRepository($repository)17->getPanelURI();1819if ($request->isFormPost()) {20if ($repository->isPublishingDisabled()) {21$new_status = true;22} else {23$new_status = false;24}2526$xaction = id(new PhabricatorRepositoryTransaction())27->setTransactionType(28PhabricatorRepositoryNotifyTransaction::TRANSACTIONTYPE)29->setNewValue($new_status);3031$editor = id(new PhabricatorRepositoryEditor())32->setContinueOnNoEffect(true)33->setContinueOnMissingFields(true)34->setContentSourceFromRequest($request)35->setActor($viewer)36->applyTransactions($repository, array($xaction));3738return id(new AphrontReloadResponse())->setURI($panel_uri);39}4041$body = array();42if (!$repository->isPublishingDisabled()) {43$title = pht('Disable Publishing');44$body[] = pht(45'If you disable publishing for this repository, new commits '.46'will not: send email, publish feed stories, trigger audits, or '.47'trigger Herald.');4849$body[] = pht(50'This option is most commonly used to temporarily allow a major '.51'repository maintenance operation (like a history rewrite) to '.52'occur with minimal disruption to users.');5354$submit = pht('Disable Publishing');55} else {56$title = pht('Reactivate Publishing');57$body[] = pht(58'If you reactivate publishing for this repository, new commits '.59'that become reachable from permanent refs will: send email, '.60'publish feed stories, trigger audits, and trigger Herald.');6162$body[] = pht(63'Commits which became reachable from a permanent ref while '.64'publishing was disabled will not trigger these actions '.65'retroactively.');6667$submit = pht('Reactivate Publishing');68}6970$dialog = $this->newDialog()71->setTitle($title)72->addSubmitButton($submit)73->addCancelButton($panel_uri);7475foreach ($body as $graph) {76$dialog->appendParagraph($graph);77}7879return $dialog;80}8182}838485