Diffusion - return 404 errors for bad URIs
Summary: Fixes T5646. Makes diffusion a much better user experience. Users now see a 404 exception page when they have a bad URI. Previously, they saw a developer-facing raw exception. Test Plan: played around in diffusion a bunch. most of these changes were fairly mechanical at the end of the day. Reviewers: epriestley Reviewed By: epriestley Subscribers: Korvin, epriestley Maniphest Tasks: T5646 Differential Revision: https://secure.phabricator.com/D11299
This commit is contained in:
@@ -11,19 +11,18 @@ final class DiffusionCommitController extends DiffusionController {
|
||||
return true;
|
||||
}
|
||||
|
||||
public function willProcessRequest(array $data) {
|
||||
// This controller doesn't use blob/path stuff, just pass the dictionary
|
||||
// in directly instead of using the AphrontRequest parsing mechanism.
|
||||
$data['user'] = $this->getRequest()->getUser();
|
||||
$drequest = DiffusionRequest::newFromDictionary($data);
|
||||
$this->diffusionRequest = $drequest;
|
||||
protected function shouldLoadDiffusionRequest() {
|
||||
return false;
|
||||
}
|
||||
|
||||
public function processRequest() {
|
||||
$drequest = $this->getDiffusionRequest();
|
||||
|
||||
$request = $this->getRequest();
|
||||
protected function processDiffusionRequest(AphrontRequest $request) {
|
||||
$user = $request->getUser();
|
||||
// This controller doesn't use blob/path stuff, just pass the dictionary
|
||||
// in directly instead of using the AphrontRequest parsing mechanism.
|
||||
$data = $request->getURIMap();
|
||||
$data['user'] = $user;
|
||||
$drequest = DiffusionRequest::newFromDictionary($data);
|
||||
$this->diffusionRequest = $drequest;
|
||||
|
||||
if ($request->getStr('diff')) {
|
||||
return $this->buildRawDiffResponse($drequest);
|
||||
|
||||
Reference in New Issue
Block a user