Minor improve to UI and code formatting of gitlab web editor

This commit is contained in:
randx 2012-10-15 19:51:11 +03:00
parent 47d9732a07
commit 809aefb828
8 changed files with 37 additions and 19 deletions

View file

@ -59,3 +59,11 @@
}
}
}
.tree-btn-group {
.btn {
margin-right:-3px;
padding:2px 10px;
}
}

View file

@ -21,7 +21,7 @@ class TreeController < ProjectResourceController
end
def edit
@last_commit = @project.commits(@ref, @path, 1).first.sha
@last_commit = @project.last_commit_for(@ref, @path).sha
end
def update

View file

@ -32,6 +32,10 @@ module Repository
Commit.commits(repo, ref, path, limit, offset)
end
def last_commit_for(ref, path = nil)
commits(ref, path, 1).first
end
def commits_between(from, to)
Commit.commits_between(repo, from, to)
end

View file

@ -5,10 +5,11 @@
= tree_file.name.force_encoding('utf-8')
%small #{tree_file.mode}
%span.options
= link_to "raw", project_blob_path(@project, @id), class: "btn very_small", target: "_blank"
= link_to "history", project_commits_path(@project, @id), class: "btn very_small"
= link_to "blame", project_blame_path(@project, @id), class: "btn very_small"
= link_to "Edit", edit_project_tree_path(@project, @id), class: "btn very_small"
.btn-group.tree-btn-group
= link_to "raw", project_blob_path(@project, @id), class: "btn very_small", target: "_blank"
= link_to "history", project_commits_path(@project, @id), class: "btn very_small"
= link_to "blame", project_blame_path(@project, @id), class: "btn very_small"
= link_to "edit", edit_project_tree_path(@project, @id), class: "btn very_small"
- if tree_file.text?
- if gitlab_markdown?(tree_file.name)
.file_content.wiki

View file

@ -3,7 +3,10 @@
.file_holder
.file_title
%i.icon-file
= @tree.path.force_encoding('utf-8')
%span.file_name
= @tree.path.force_encoding('utf-8')
%span.options
= link_to "cancel editing", project_tree_path(@project, @id), class: "btn very_small"
.file_content.code
#editor= @tree.data

View file

@ -23,5 +23,5 @@ Feature: Project Browse files
@javascript
Scenario: I can edit file
Given I click on "Gemfile" file in repo
And I click button "Edit"
And I click button "edit"
Then I can edit code

View file

@ -32,8 +32,8 @@ class ProjectBrowseFiles < Spinach::FeatureSteps
page.source.should == ValidCommit::BLOB_FILE
end
Given 'I click button "Edit"' do
click_link 'Edit'
Given 'I click button "edit"' do
click_link 'edit'
end
Then 'I can edit code' do

View file

@ -1,6 +1,9 @@
module Gitlab
# GitLab file editor
#
# It gives you ability to make changes to files
# & commit this changes from GitLab UI.
class FileEditor
attr_accessor :user, :project, :ref
def initialize(user, project, ref)
@ -35,22 +38,21 @@ module Gitlab
r.git.sh "git add ."
r.git.sh "git commit -am '#{commit_message}'"
output = r.git.sh "git push origin #{ref}"
if output =~ /reject/
return false
end
end
end
end
true
end
protected
def can_edit?(path, last_commit)
current_last_commit = @project.commits(ref, path, 1).first.sha
last_commit == current_last_commit
end
end
end