From 0050c07fdda59f36ca2959e08d422ff5d6479e10 Mon Sep 17 00:00:00 2001 From: Marin Jankovski Date: Thu, 24 Apr 2014 15:00:18 +0200 Subject: [PATCH] Serve a file if in wiki. --- app/controllers/projects/wikis_controller.rb | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/app/controllers/projects/wikis_controller.rb b/app/controllers/projects/wikis_controller.rb index bcd9e0d5219..0eb9364eaa4 100644 --- a/app/controllers/projects/wikis_controller.rb +++ b/app/controllers/projects/wikis_controller.rb @@ -15,6 +15,17 @@ class Projects::WikisController < Projects::ApplicationController if @page render 'show' + elsif file = @project_wiki.wiki.file(params[:id], @project_wiki.wiki.ref, true) + if file.on_disk? + send_file file.on_disk_path, :disposition => 'inline' + else + send_data( + file.raw_data, + type: file.mime_type, + disposition: 'inline', + filename: file.name + ) + end else return render('empty') unless can?(current_user, :write_wiki, @project) @page = WikiPage.new(@project_wiki)