Skip to content
Snippets Groups Projects
Commit 809aefb8 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets
Browse files

Minor improve to UI and code formatting of gitlab web editor

parent 47d9732a
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -59,3 +59,11 @@
}
}
}
.tree-btn-group {
.btn {
margin-right:-3px;
padding:2px 10px;
}
}
Loading
Loading
@@ -21,23 +21,23 @@ 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
file_editor = Gitlab::FileEditor.new(current_user, @project, @ref)
update_status = file_editor.update(
@path,
params[:content],
params[:commit_message],
@path,
params[:content],
params[:commit_message],
params[:last_commit]
)
if update_status
redirect_to project_tree_path(@project, @id), :notice => "File has been successfully changed"
else
flash[:notice] = "You can't save file because it has been changed"
render :edit
render :edit
end
end
end
Loading
Loading
@@ -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
Loading
Loading
Loading
Loading
@@ -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
Loading
Loading
Loading
Loading
@@ -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
 
Loading
Loading
Loading
Loading
@@ -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
Loading
Loading
@@ -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
Loading
Loading
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)
Loading
Loading
@@ -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
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment