Path: blob/master/src/applications/calendar/controller/PhabricatorCalendarImportReloadController.php
12256 views
<?php12final class PhabricatorCalendarImportReloadController3extends PhabricatorCalendarController {45public function handleRequest(AphrontRequest $request) {6$viewer = $request->getViewer();78$import = id(new PhabricatorCalendarImportQuery())9->setViewer($viewer)10->withIDs(array($request->getURIData('id')))11->requireCapabilities(12array(13PhabricatorPolicyCapability::CAN_VIEW,14PhabricatorPolicyCapability::CAN_EDIT,15))16->executeOne();17if (!$import) {18return new Aphront404Response();19}2021$import_uri = $import->getURI();2223if ($request->isFormPost()) {24$xactions = array();25$xactions[] = id(new PhabricatorCalendarImportTransaction())26->setTransactionType(27PhabricatorCalendarImportReloadTransaction::TRANSACTIONTYPE)28->setNewValue(true);2930$editor = id(new PhabricatorCalendarImportEditor())31->setActor($viewer)32->setContinueOnNoEffect(true)33->setContinueOnMissingFields(true)34->setContentSourceFromRequest($request);3536$editor->applyTransactions($import, $xactions);3738return id(new AphrontRedirectResponse())->setURI($import_uri);39}4041return $this->newDialog()42->setTitle(pht('Reload Events'))43->appendParagraph(44pht(45'Reload this source? Events imported from this source will '.46'be updated.'))47->addCancelButton($import_uri)48->addSubmitButton(pht('Reload Events'));49}5051}525354