提交 b1b8261f 编写于 作者: D Douwe Maan

Add license and contribution guide links to project sidebar.

上级 5adb1128
...@@ -2,6 +2,7 @@ Please view this file on the master branch, on stable branches it's out of date. ...@@ -2,6 +2,7 @@ Please view this file on the master branch, on stable branches it's out of date.
v 7.10.0 (unreleased) v 7.10.0 (unreleased)
- Add a service to support external wikis (Hannes Rosenögger) - Add a service to support external wikis (Hannes Rosenögger)
- Add changelog, license and contribution guide links to project sidebar.
v 7.9.0 (unreleased) v 7.9.0 (unreleased)
- Add HipChat integration documentation (Stan Hu) - Add HipChat integration documentation (Stan Hu)
......
...@@ -232,12 +232,45 @@ module ProjectsHelper ...@@ -232,12 +232,45 @@ module ProjectsHelper
end end
def contribution_guide_url(project) def contribution_guide_url(project)
if project && project.repository.contribution_guide if project && contribution_guide = project.repository.contribution_guide
namespace_project_blob_path( namespace_project_blob_path(
project.namespace, project.namespace,
project, project,
tree_join(project.default_branch, tree_join(project.default_branch,
project.repository.contribution_guide.name) contribution_guide.name)
)
end
end
def changelog_url(project)
if project && changelog = project.repository.changelog
namespace_project_blob_path(
project.namespace,
project,
tree_join(project.default_branch,
changelog.name)
)
end
end
def license_url(project)
if project && license = project.repository.license
namespace_project_blob_path(
project.namespace,
project,
tree_join(project.default_branch,
license.name)
)
end
end
def version_url(project)
if project && version = project.repository.version
namespace_project_blob_path(
project.namespace,
project,
tree_join(project.default_branch,
version.name)
) )
end end
end end
......
...@@ -122,7 +122,7 @@ class Repository ...@@ -122,7 +122,7 @@ class Repository
def expire_cache def expire_cache
%i(size branch_names tag_names commit_count graph_log %i(size branch_names tag_names commit_count graph_log
readme version contribution_guide changelog).each do |key| readme version contribution_guide changelog license).each do |key|
cache.expire(key) cache.expire(key)
end end
end end
...@@ -212,6 +212,14 @@ class Repository ...@@ -212,6 +212,14 @@ class Repository
end end
end end
def license
cache.fetch(:license) do
tree(:head).blobs.find do |file|
file.name =~ /^license/i
end
end
end
def head_commit def head_commit
commit(self.root_ref) commit(self.root_ref)
end end
......
...@@ -71,10 +71,10 @@ ...@@ -71,10 +71,10 @@
= link_to 'Create new label', new_namespace_project_label_path(issuable.project.namespace, issuable.project), target: :blank = link_to 'Create new label', new_namespace_project_label_path(issuable.project.namespace, issuable.project), target: :blank
.form-actions .form-actions
- if !issuable.project.empty_repo? && contribution_guide_url(issuable.project) && !issuable.persisted? - if !issuable.project.empty_repo? && (guide_url = contribution_guide_url(issuable.project)) && !issuable.persisted?
%p %p
Please review the Please review the
%strong #{link_to 'guidelines for contribution', contribution_guide_url(issuable.project)} %strong #{link_to 'guidelines for contribution', guide_url}
to this repository. to this repository.
- if issuable.new_record? - if issuable.new_record?
= f.submit "Submit new #{issuable.class.model_name.human.downcase}", class: 'btn btn-create' = f.submit "Submit new #{issuable.class.model_name.human.downcase}", class: 'btn btn-create'
......
...@@ -69,10 +69,10 @@ ...@@ -69,10 +69,10 @@
= link_to 'Create new label', new_namespace_project_label_path(@merge_request.target_project.namespace, @merge_request.target_project), target: :blank = link_to 'Create new label', new_namespace_project_label_path(@merge_request.target_project.namespace, @merge_request.target_project), target: :blank
.form-actions .form-actions
- if contribution_guide_url(@target_project) - if guide_url = contribution_guide_url(@target_project)
%p %p
Please review the Please review the
%strong #{link_to 'guidelines for contribution', contribution_guide_url(@target_project)} %strong #{link_to 'guidelines for contribution', guide_url}
to this repository. to this repository.
= f.hidden_field :source_project_id = f.hidden_field :source_project_id
= f.hidden_field :source_branch = f.hidden_field :source_branch
......
...@@ -47,21 +47,27 @@ ...@@ -47,21 +47,27 @@
= link_to @project.forked_from_project.name_with_namespace, namespace_project_path(@project.namespace, @project.forked_from_project) = link_to @project.forked_from_project.name_with_namespace, namespace_project_path(@project.namespace, @project.forked_from_project)
- unless @project.empty_repo? - unless @project.empty_repo?
= link_to namespace_project_compare_index_path(@project.namespace, @project, from: @repository.root_ref, to: @ref || @repository.root_ref), class: 'btn btn-block' do - if version = @repository.version
Compare code - detail_url = changelog_url(@project) || version_url(@project)
= link_to detail_url, class: 'btn btn-block' do
- version = @repository.version
- changelog = @repository.changelog
- if version
- detail_file = changelog.try(:name) || version.name
= link_to namespace_project_blob_path(@project.namespace, @project, tree_join(@repository.root_ref, detail_file)), class: 'btn btn-block' do
Version: Version:
%span.count %span.count
= @repository.blob_by_oid(version.id).data = @repository.blob_by_oid(version.id).data
- elsif changelog - elsif @repository.changelog
= link_to namespace_project_blob_path(@project.namespace, @project, tree_join(@repository.root_ref, changelog.name)), class: 'btn btn-block' do = link_to changelog_url(@project), class: 'btn btn-block' do
View changelog View changelog
- if @repository.contribution_guide
= link_to contribution_guide_url(@project), class: 'btn btn-block' do
View contribution guide
- if @repository.license
= link_to license_url(@project), class: 'btn btn-block' do
View license
= link_to namespace_project_compare_index_path(@project.namespace, @project, from: @repository.root_ref, to: @ref || @repository.root_ref), class: 'btn btn-block' do
Compare code
.prepend-top-10 .prepend-top-10
%p %p
%span.light Created on %span.light Created on
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册