Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
420ba211
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
420ba211
编写于
7月 24, 2014
作者:
D
Dmitriy Zaporozhets
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Move star button to sidebar. Add counter to forks too
Signed-off-by:
N
Dmitriy Zaporozhets
<
dmitriy.zaporozhets@gmail.com
>
上级
bb80741c
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
81 addition
and
62 deletion
+81
-62
app/assets/javascripts/project.js.coffee
app/assets/javascripts/project.js.coffee
+1
-1
app/assets/stylesheets/behaviors.scss
app/assets/stylesheets/behaviors.scss
+2
-2
app/assets/stylesheets/sections/projects.scss
app/assets/stylesheets/sections/projects.scss
+22
-27
app/helpers/projects_helper.rb
app/helpers/projects_helper.rb
+27
-15
app/models/project.rb
app/models/project.rb
+4
-0
app/views/projects/_home_panel.html.haml
app/views/projects/_home_panel.html.haml
+0
-6
app/views/projects/show.html.haml
app/views/projects/show.html.haml
+25
-11
未找到文件。
app/assets/javascripts/project.js.coffee
浏览文件 @
420ba211
...
@@ -47,7 +47,7 @@ $ ->
...
@@ -47,7 +47,7 @@ $ ->
$
(
@
).
parents
(
'.no-ssh-key-message'
).
hide
()
$
(
@
).
parents
(
'.no-ssh-key-message'
).
hide
()
e
.
preventDefault
()
e
.
preventDefault
()
$
(
'.project-
home-panel
.star'
).
on
'ajax:success'
,
(
e
,
data
,
status
,
xhr
)
->
$
(
'.project-
side
.star'
).
on
'ajax:success'
,
(
e
,
data
,
status
,
xhr
)
->
$
(
@
).
toggleClass
(
'on'
).
find
(
'.count'
).
html
(
data
.
star_count
)
$
(
@
).
toggleClass
(
'on'
).
find
(
'.count'
).
html
(
data
.
star_count
)
.
on
'ajax:error'
,
(
e
,
xhr
,
status
,
error
)
->
.
on
'ajax:error'
,
(
e
,
xhr
,
status
,
error
)
->
new
Flash
(
'Star toggle failed. Try again later.'
,
'alert'
)
new
Flash
(
'Star toggle failed. Try again later.'
,
'alert'
)
app/assets/stylesheets/behaviors.scss
浏览文件 @
420ba211
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
.js-details-container.open
.content.hide
{
display
:
none
;
}
.js-details-container.open
.content.hide
{
display
:
none
;
}
// Toggle between two states.
// Toggle between two states.
.js-toggler-container
.turn-on
{
display
:
inline-
block
;
}
.js-toggler-container
.turn-on
{
display
:
block
;
}
.js-toggler-container
.turn-off
{
display
:
none
;
}
.js-toggler-container
.turn-off
{
display
:
none
;
}
.js-toggler-container.on
.turn-on
{
display
:
none
;
}
.js-toggler-container.on
.turn-on
{
display
:
none
;
}
.js-toggler-container.on
.turn-off
{
display
:
inline-
block
;
}
.js-toggler-container.on
.turn-off
{
display
:
block
;
}
app/assets/stylesheets/sections/projects.scss
浏览文件 @
420ba211
...
@@ -50,22 +50,6 @@
...
@@ -50,22 +50,6 @@
margin-left
:
10px
;
margin-left
:
10px
;
font-weight
:
500
;
font-weight
:
500
;
}
}
.star
.btn
{
font-weight
:
bold
;
line-height
:
22px
;
padding
:
0px
;
$margin-x
:
6px
;
.toggle
{
display
:
inline-block
;
padding
:
0px
$margin-x
;
}
.count
{
border-left
:
$btn-border
;
display
:
inline-block
;
padding
:
0px
$margin-x
;
}
}
}
}
}
}
...
@@ -206,28 +190,39 @@ ul.nav.nav-projects-tabs {
...
@@ -206,28 +190,39 @@ ul.nav.nav-projects-tabs {
.project-side
{
.project-side
{
.btn-block
{
.btn-block
{
background-image
:
none
;
background-image
:
none
;
.btn
,
&
.btn
,
.btn
,
&
.btn
{
&
.btn-group
ul
.dropdown-menu
{
text-align
:
left
;
padding
:
10px
15px
;
background-color
:
#F1f1f1
;
background-color
:
#F1f1f1
;
border-color
:
#EEE
;
border-color
:
#EEE
;
&
:hover
{
&
:hover
{
background-color
:
#eee
;
background-color
:
#eee
;
border-color
:
#DDD
;
border-color
:
#DDD
;
}
}
}
}
&
.btn-group-justified
{
.btn
{
.count
{
width
:
100%
;
float
:
right
;
}
font-weight
:
500
;
.dropdown-toggle
{
text-shadow
:
0
1px
#FFF
;
width
:
26px
;
}
}
}
ul
{
&
.btn-group-justified
{
.btn
{
width
:
100%
;
width
:
100%
;
}
.dropdown-toggle
{
width
:
30px
;
padding
:
10px
;
}
ul
{
width
:
100%
;
}
}
}
}
}
.project-fork-icon
{
.project-fork-icon
{
float
:
left
;
float
:
left
;
font-size
:
26px
;
font-size
:
26px
;
...
...
app/helpers/projects_helper.rb
浏览文件 @
420ba211
...
@@ -123,23 +123,35 @@ module ProjectsHelper
...
@@ -123,23 +123,35 @@ module ProjectsHelper
end
end
def
link_to_toggle_star
(
title
,
starred
,
signed_in
)
def
link_to_toggle_star
(
title
,
starred
,
signed_in
)
cls
=
'btn'
cls
=
'btn
btn-block
'
cls
+=
' disabled'
unless
signed_in
cls
+=
' disabled'
unless
signed_in
toggle_html
=
content_tag
(
'span'
,
class:
'toggle'
)
do
toggle_text
=
if
starred
'Unstar'
else
'Star'
end
content_tag
(
'i'
,
' '
,
class:
'icon-star'
)
+
toggle_text
end
count_html
=
content_tag
(
'span'
,
class:
'count'
)
do
@project
.
star_count
.
to_s
end
link_opts
=
{
title:
title
,
class:
cls
,
method: :post
,
remote:
true
,
data:
{
type:
'json'
}
}
content_tag
'span'
,
class:
starred
?
'turn-on'
:
'turn-off'
do
content_tag
'span'
,
class:
starred
?
'turn-on'
:
'turn-off'
do
link_to
toggle_star_project_path
(
@project
),
link_to
toggle_star_project_path
(
@project
),
link_opts
do
title:
title
,
class:
cls
,
method: :post
,
remote:
true
,
toggle_html
+
count_html
data:
{
type:
'json'
}
do
content_tag
(
'span'
,
class:
'toggle'
)
do
content_tag
(
'i'
,
' '
,
class:
'icon-star'
)
<<
if
starred
'Unstar'
else
'Star'
end
end
<<
content_tag
(
'span'
,
class:
'count'
)
do
@project
.
star_count
.
to_s
end
end
end
end
end
end
end
...
...
app/models/project.rb
浏览文件 @
420ba211
...
@@ -579,4 +579,8 @@ class Project < ActiveRecord::Base
...
@@ -579,4 +579,8 @@ class Project < ActiveRecord::Base
def
update_repository_size
def
update_repository_size
update_attribute
(
:repository_size
,
repository
.
size
)
update_attribute
(
:repository_size
,
repository
.
size
)
end
end
def
forks_count
ForkedProjectLink
.
where
(
forked_from_project_id:
self
.
id
).
count
end
end
end
app/views/projects/_home_panel.html.haml
浏览文件 @
420ba211
...
@@ -34,9 +34,3 @@
...
@@ -34,9 +34,3 @@
=
link_to
pluralize
(
number_with_delimiter
(
@repository
.
branch_names
.
count
),
'branch'
),
project_branches_path
(
@project
)
=
link_to
pluralize
(
number_with_delimiter
(
@repository
.
branch_names
.
count
),
'branch'
),
project_branches_path
(
@project
)
=
link_to
pluralize
(
number_with_delimiter
(
@repository
.
tag_names
.
count
),
'tag'
),
project_tags_path
(
@project
)
=
link_to
pluralize
(
number_with_delimiter
(
@repository
.
tag_names
.
count
),
'tag'
),
project_tags_path
(
@project
)
%span
.light.prepend-left-20
=
repository_size
%span
.light.prepend-left-20
=
repository_size
%span
.star.js-toggler-container
{
class:
@show_star
?
'on'
:
''
}
-
if
current_user
=
link_to_toggle_star
(
'Star this project.'
,
false
,
true
)
=
link_to_toggle_star
(
'Unstar this project.'
,
true
,
true
)
-
else
=
link_to_toggle_star
(
'You must sign in to star a project.'
,
false
,
false
)
app/views/projects/show.html.haml
浏览文件 @
420ba211
...
@@ -15,24 +15,37 @@
...
@@ -15,24 +15,37 @@
Archived project!
Archived project!
%p
Repository is read-only
%p
Repository is read-only
-
if
@project
.
forked_from_project
-
if
@project
.
forked_from_project
.alert.alert-success
.alert.alert-success
%i
.icon-code-fork.project-fork-icon
%i
.icon-code-fork.project-fork-icon
Forked from:
Forked from:
%br
%br
=
link_to
@project
.
forked_from_project
.
name_with_namespace
,
project_path
(
@project
.
forked_from_project
)
=
link_to
@project
.
forked_from_project
.
name_with_namespace
,
project_path
(
@project
.
forked_from_project
)
-
unless
@project
.
empty_repo?
-
if
current_user
&&
can?
(
current_user
,
:fork_project
,
@project
)
&&
@project
.
namespace
!=
current_user
.
namespace
.star-buttons
-
if
current_user
.
already_forked?
(
@project
)
%span
.star.js-toggler-container
{
class:
@show_star
?
'on'
:
''
}
=
link_to
project_path
(
current_user
.
fork_of
(
@project
)),
class:
'btn btn-block'
do
-
if
current_user
%i
.icon-compass
=
link_to_toggle_star
(
'Star this project.'
,
false
,
true
)
Go to fork
=
link_to_toggle_star
(
'Unstar this project.'
,
true
,
true
)
-
else
-
else
=
link_to
fork_project_path
(
@project
),
title:
"Fork"
,
class:
"btn btn-block"
,
method:
"POST"
do
=
link_to_toggle_star
(
'You must sign in to star a project.'
,
false
,
false
)
%i
.icon-code-fork
Fork repository
-
unless
@project
.
empty_repo?
.fork-buttons
-
if
current_user
&&
can?
(
current_user
,
:fork_project
,
@project
)
&&
@project
.
namespace
!=
current_user
.
namespace
-
if
current_user
.
already_forked?
(
@project
)
=
link_to
project_path
(
current_user
.
fork_of
(
@project
)),
class:
'btn btn-block'
do
%i
.icon-compass
Go to fork
%span
.count
=
@project
.
forks_count
-
else
=
link_to
fork_project_path
(
@project
),
title:
"Fork"
,
class:
"btn btn-block"
,
method:
"POST"
do
%i
.icon-code-fork
Fork repository
%span
.count
=
@project
.
forks_count
-
unless
@project
.
empty_repo?
-
if
can?
current_user
,
:download_code
,
@project
-
if
can?
current_user
,
:download_code
,
@project
=
render
'projects/repositories/download_archive'
,
btn_class:
'btn-block btn-group-justified'
,
split_button:
true
=
render
'projects/repositories/download_archive'
,
btn_class:
'btn-block btn-group-justified'
,
split_button:
true
...
@@ -48,7 +61,8 @@
...
@@ -48,7 +61,8 @@
-
version
=
@repository
.
version
-
version
=
@repository
.
version
=
link_to
project_blob_path
(
@project
,
tree_join
(
@repository
.
root_ref
,
version
.
name
)),
class:
'btn btn-block'
do
=
link_to
project_blob_path
(
@project
,
tree_join
(
@repository
.
root_ref
,
version
.
name
)),
class:
'btn btn-block'
do
Version:
Version:
=
@repository
.
blob_by_oid
(
version
.
id
).
data
%span
.count
=
@repository
.
blob_by_oid
(
version
.
id
).
data
.prepend-top-10
.prepend-top-10
%p
%p
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录