Load last commit for files per 10 items.

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
This commit is contained in:
Dmitriy Zaporozhets 2014-06-12 12:01:54 +03:00
parent 9fd6c3d591
commit fcb0b76c32
No known key found for this signature in database
GPG Key ID: 627C5F589F467F17
2 changed files with 27 additions and 3 deletions

View File

@ -31,9 +31,23 @@ class Projects::RefsController < Projects::ApplicationController
end
def logs_tree
contents = tree.entries
@logs = contents.map do |content|
file = params[:path] ? File.join(params[:path], content.name) : content.name
@offset = if params[:offset].present?
params[:offset].to_i
else
0
end
@limit = 10
@path = params[:path]
contents = []
contents += tree.trees
contents += tree.blobs
contents += tree.submodules
@logs = contents[@offset, @limit].to_a.map do |content|
file = @path ? File.join(@path, content.name) : content.name
last_commit = @repo.last_commit_for_path(@commit.id, file)
{
file_name: content.name,

View File

@ -7,3 +7,13 @@
var row = $("table.table_#{@hex_path} tr.file_#{hexdigest(file_name)}");
row.find("td.tree_time_ago").html('#{escape_javascript time_ago_with_tooltip(commit.committed_date)}');
row.find("td.tree_commit").html('#{escape_javascript render("projects/tree/tree_commit_column", commit: commit)}');
- if @logs.present?
:plain
var current_url = location.href.replace(/\/?$/, '/');
var log_url = '#{project_tree_url(@project, tree_join(@ref, @path || '/'))}'.replace(/\/?$/, '/');
if(current_url == log_url) {
// Load 10 more commit log for each file in tree
// if we still on the same page
ajaxGet('#{logs_file_project_ref_path(@project, @ref, @path || '/', offset: (@offset + @limit))}');
}