loadDiffusionContextForEdit(); if ($response) { return $response; } $user = $this->getViewer(); $drequest = $this->getDiffusionRequest(); $repository = $drequest->getRepository(); $edit_uri = $this->getRepositoryControllerURI($repository, 'edit/'); $v_encoding = $repository->getDetail('encoding'); $e_encoding = null; $errors = array(); if ($request->isFormPost()) { $v_encoding = $request->getStr('encoding'); if (!$errors) { $xactions = array(); $template = id(new PhabricatorRepositoryTransaction()); $type_encoding = PhabricatorRepositoryTransaction::TYPE_ENCODING; $xactions[] = id(clone $template) ->setTransactionType($type_encoding) ->setNewValue($v_encoding); try { id(new PhabricatorRepositoryEditor()) ->setContinueOnNoEffect(true) ->setContentSourceFromRequest($request) ->setActor($user) ->applyTransactions($repository, $xactions); return id(new AphrontRedirectResponse())->setURI($edit_uri); } catch (Exception $ex) { $errors[] = $ex->getMessage(); } } } $crumbs = $this->buildApplicationCrumbs(); $crumbs->addTextCrumb(pht('Edit Encoding')); $title = pht('Edit %s', $repository->getName()); $form = id(new AphrontFormView()) ->setUser($user) ->appendRemarkupInstructions($this->getEncodingInstructions()) ->appendChild( id(new AphrontFormTextControl()) ->setName('encoding') ->setLabel(pht('Text Encoding')) ->setValue($v_encoding) ->setError($e_encoding)) ->appendChild( id(new AphrontFormSubmitControl()) ->setValue(pht('Save Encoding')) ->addCancelButton($edit_uri)); $object_box = id(new PHUIObjectBoxView()) ->setHeaderText($title) ->setForm($form) ->setFormErrors($errors); return $this->newPage() ->setTitle($title) ->setCrumbs($crumbs) ->appendChild($object_box); } private function getEncodingInstructions() { return pht(<<