Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
gitlab-ce
Commits
0767861b
Commit
0767861b
authored
Feb 22, 2018
by
James Lopez
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
refactor code based on feedback
parent
228b757d
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
18 additions
and
18 deletions
+18
-18
app/helpers/blob_helper.rb
app/helpers/blob_helper.rb
+11
-11
app/views/projects/blob/_header.html.haml
app/views/projects/blob/_header.html.haml
+2
-2
app/views/projects/diffs/_file.html.haml
app/views/projects/diffs/_file.html.haml
+1
-1
spec/helpers/blob_helper_spec.rb
spec/helpers/blob_helper_spec.rb
+4
-4
No files found.
app/helpers/blob_helper.rb
View file @
0767861b
...
...
@@ -16,13 +16,13 @@ module BlobHelper
options
[
:link_opts
])
end
def
edit_blob_
element
(
project
=
@project
,
ref
=
@ref
,
path
=
@path
,
options
=
{})
def
edit_blob_
button
(
project
=
@project
,
ref
=
@ref
,
path
=
@path
,
options
=
{})
return
unless
blob
=
readable_blob
(
options
,
path
,
project
,
ref
)
common_classes
=
"btn js-edit-blob
#{
options
[
:extra_class
]
}
"
if
!
on_top_of_branch?
(
project
,
ref
)
edit_button_tag
(
edit_text
,
common_classes
)
edit_
disabled_
button_tag
(
edit_text
,
common_classes
)
# This condition applies to anonymous or users who can edit directly
elsif
!
current_user
||
user_can_modify_blob?
(
blob
,
project
,
ref
)
edit_link_tag
(
edit_text
,
edit_blob_path
(
project
,
ref
,
path
,
options
),
common_classes
)
...
...
@@ -54,14 +54,14 @@ module BlobHelper
_
(
'Web IDE'
)
end
def
ide_edit_
element
(
project
=
@project
,
ref
=
@ref
,
path
=
@path
,
options
=
{})
def
ide_edit_
button
(
project
=
@project
,
ref
=
@ref
,
path
=
@path
,
options
=
{})
return
unless
show_new_ide?
return
unless
blob
=
readable_blob
(
options
,
path
,
project
,
ref
)
common_classes
=
"btn js-edit-ide
#{
options
[
:extra_class
]
}
"
if
!
on_top_of_branch?
(
project
,
ref
)
edit_button_tag
(
ide_edit_text
,
common_classes
)
edit_
disabled_
button_tag
(
ide_edit_text
,
common_classes
)
# This condition only applies to users who are logged in
# Web IDE (Beta) requires the user to have this feature enabled
elsif
user_can_modify_blob?
(
blob
,
project
,
ref
)
...
...
@@ -349,7 +349,7 @@ module BlobHelper
data:
{
action:
action
,
fork_path:
fork_path
}
end
def
edit_button_tag
(
button_text
,
common_classes
)
def
edit_
disabled_
button_tag
(
button_text
,
common_classes
)
button_tag
(
button_text
,
class:
"
#{
common_classes
}
disabled has-tooltip"
,
title:
_
(
'You can only edit files when you are on a branch'
),
data:
{
container:
'body'
})
end
...
...
app/views/projects/blob/_header.html.haml
View file @
0767861b
...
...
@@ -11,8 +11,8 @@
=
view_on_environment_button
(
@commit
.
sha
,
@path
,
@environment
)
if
@environment
.btn-group
{
role:
"group"
}
<
=
edit_blob_
element
=
ide_edit_
element
=
edit_blob_
button
=
ide_edit_
button
-
if
current_user
=
replace_blob_link
=
delete_blob_link
...
...
app/views/projects/diffs/_file.html.haml
View file @
0767861b
...
...
@@ -17,7 +17,7 @@
\
-
if
editable_diff?
(
diff_file
)
-
link_opts
=
@merge_request
.
persisted?
?
{
from_merge_request_iid:
@merge_request
.
iid
}
:
{}
=
edit_blob_
element
(
@merge_request
.
source_project
,
@merge_request
.
source_branch
,
diff_file
.
new_path
,
=
edit_blob_
button
(
@merge_request
.
source_project
,
@merge_request
.
source_branch
,
diff_file
.
new_path
,
blob:
blob
,
link_opts:
link_opts
)
-
if
image_diff
&&
image_replaced
...
...
spec/helpers/blob_helper_spec.rb
View file @
0767861b
...
...
@@ -86,7 +86,7 @@ describe BlobHelper do
it
'verifies blob is text'
do
expect
(
helper
).
not_to
receive
(
:blob_text_viewable?
)
button
=
edit_blob_
element
(
project
,
'refs/heads/master'
,
'README.md'
)
button
=
edit_blob_
button
(
project
,
'refs/heads/master'
,
'README.md'
)
expect
(
button
).
to
start_with
(
'<button'
)
end
...
...
@@ -96,17 +96,17 @@ describe BlobHelper do
expect
(
project
.
repository
).
not_to
receive
(
:blob_at
)
edit_blob_
element
(
project
,
'refs/heads/master'
,
'README.md'
,
blob:
blob
)
edit_blob_
button
(
project
,
'refs/heads/master'
,
'README.md'
,
blob:
blob
)
end
it
'returns a link with the proper route'
do
link
=
edit_blob_
element
(
project
,
'master'
,
'README.md'
)
link
=
edit_blob_
button
(
project
,
'master'
,
'README.md'
)
expect
(
Capybara
.
string
(
link
).
find_link
(
'Edit'
)[
:href
]).
to
eq
(
"/
#{
project
.
full_path
}
/edit/master/README.md"
)
end
it
'returns a link with the passed link_opts on the expected route'
do
link
=
edit_blob_
element
(
project
,
'master'
,
'README.md'
,
link_opts:
{
mr_id:
10
})
link
=
edit_blob_
button
(
project
,
'master'
,
'README.md'
,
link_opts:
{
mr_id:
10
})
expect
(
Capybara
.
string
(
link
).
find_link
(
'Edit'
)[
:href
]).
to
eq
(
"/
#{
project
.
full_path
}
/edit/master/README.md?mr_id=10"
)
end
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment