diff --git a/src/applications/diffusion/controller/file/DiffusionBrowseFileController.php b/src/applications/diffusion/controller/file/DiffusionBrowseFileController.php index c70ad1c9d2..6427611ffe 100644 --- a/src/applications/diffusion/controller/file/DiffusionBrowseFileController.php +++ b/src/applications/diffusion/controller/file/DiffusionBrowseFileController.php @@ -26,6 +26,7 @@ class DiffusionBrowseFileController extends DiffusionController { 'jpeg'=> 'image/jpeg' ); + public function processRequest() { // Build the view selection form. @@ -90,6 +91,20 @@ class DiffusionBrowseFileController extends DiffusionController { } + /* + * Returns a content-type corrsponding to an image file extension + * + * @param string $path File path + * @return mixed A content-type string or NULL if path doesn't end with a + * recognized image extension + */ + public function getImageType($path) { + $ext = pathinfo($path); + $ext = $ext['extension']; + return idx($this->imageTypes, $ext); + } + + private function buildCorpus($selected) { $needs_blame = ($selected == 'blame' || $selected == 'plainblame'); @@ -166,7 +181,7 @@ class DiffusionBrowseFileController extends DiffusionController { implode("\n", $text_list))); $rows = $this->buildDisplayRows($text_list, $rev_list, $blame_dict, - $needs_blame, $drequest); + $needs_blame, $drequest, $file_query, $selected); $corpus_table = phutil_render_tag( 'table', @@ -189,7 +204,7 @@ class DiffusionBrowseFileController extends DiffusionController { private static function buildDisplayRows($text_list, $rev_list, $blame_dict, - $needs_blame, DiffusionRequest $drequest) { + $needs_blame, DiffusionRequest $drequest, $file_query, $selected) { $last_rev = null; $color = null; $rows = array(); @@ -208,6 +223,8 @@ class DiffusionBrowseFileController extends DiffusionController { $rev = $rev_list[$k]; if ($last_rev == $rev) { $blame_info = + ($file_query->getSupportsBlameOnBlame() ? + '