Refactor blob finding

This commit is contained in:
Dmitriy Zaporozhets 2013-10-01 20:34:41 +03:00
parent 68d89548cd
commit 970d86b7c5
7 changed files with 12 additions and 13 deletions

View file

@ -8,7 +8,7 @@ class Projects::BlameController < Projects::ApplicationController
before_filter :require_non_empty_project
def show
@blob = Gitlab::Git::Blob.find(@repository, @commit.id, @path)
@blob = @repository.blob_at(@commit.id, @path)
@blame = Gitlab::Git::Blame.new(project.repository, @commit.id, @path)
end
end

View file

@ -8,7 +8,7 @@ class Projects::BlobController < Projects::ApplicationController
before_filter :require_non_empty_project
def show
@blob = Gitlab::Git::Blob.find(@repository, @commit.id, @path)
@blob = @repository.blob_at(@commit.id, @path)
not_found! unless @blob
end

View file

@ -10,7 +10,7 @@ class Projects::EditTreeController < Projects::ApplicationController
before_filter :edit_requirements, only: [:show, :update]
def show
@last_commit = Gitlab::Git::Commit.last_for_path(@project.repository, @ref, @path).sha
@last_commit = Gitlab::Git::Commit.last_for_path(@repository, @ref, @path).sha
end
def update
@ -32,7 +32,7 @@ class Projects::EditTreeController < Projects::ApplicationController
private
def edit_requirements
@blob = Gitlab::Git::Blob.find(@repository, @commit.id, @path)
@blob = @repository.blob_at(@commit.id, @path)
unless @blob
redirect_to project_blob_path(@project, @id), notice: "You can only edit text files"

View file

@ -8,7 +8,7 @@ class Projects::RawController < Projects::ApplicationController
before_filter :require_non_empty_project
def show
@blob = Gitlab::Git::Blob.find(@repository, @commit.id, @path)
@blob = @repository.blob_at(@commit.id, @path)
if @blob
type = if @blob.mime_type =~ /html|javascript/

View file

@ -1,5 +0,0 @@
module BlobsHelper
def find_blob(repository, sha, path)
Gitlab::Git::Blob.find(repository, sha, path)
end
end

View file

@ -155,4 +155,8 @@ class Repository
super
end
def blob_at(sha, path)
Gitlab::Git::Blob.find(self, sha, path)
end
end

View file

@ -37,8 +37,8 @@
- unless @suppress_diff
- diffs.each_with_index do |diff, i|
- next if diff.diff.empty?
- file = find_blob(project.repository, @commit.id, diff.new_path)
- file = find_blob(project.repository, @commit.parent_id, diff.old_path) unless file
- file = project.repository.blob_at(@commit.id, diff.new_path)
- file = project.repository.blob_at(@commit.parent_id, diff.old_path) unless file
- next unless file
.file{id: "diff-#{i}"}
.header
@ -64,7 +64,7 @@
- if file.text?
= render "projects/commits/text_file", diff: diff, index: i
- elsif file.image?
- old_file = find_blob(project.repository, @commit.parent_id, diff.old_path) if @commit.parent_id
- old_file = project.repository.blob_at(@commit.parent_id, diff.old_path) if @commit.parent_id
= render "projects/commits/image", diff: diff, old_file: old_file, file: file, index: i
- else
%p.nothing_here_message No preview for this file type