summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2015-07-30 15:12:57 +0200
committerDouwe Maan <douwe@gitlab.com>2015-07-30 15:12:57 +0200
commit0b5acdd88fb745821cd49f539e7e6cd4874a58ab (patch)
tree5a6857e94424dab17f29ee6f922e439fa0fbd8a4
parent1e4b3264637a5b66a9bfb04fe9444bcf1f7e18ed (diff)
downloadgitlab-ce-0b5acdd88fb745821cd49f539e7e6cd4874a58ab.tar.gz
Show buttons to add license, changelog and contribution guide if they're missing.
-rw-r--r--CHANGELOG1
-rw-r--r--app/assets/stylesheets/pages/projects.scss9
-rw-r--r--app/helpers/projects_helper.rb44
-rw-r--r--app/views/projects/show.html.haml21
4 files changed, 68 insertions, 7 deletions
diff --git a/CHANGELOG b/CHANGELOG
index c03e5053d17..3b1d8dc7b61 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -19,6 +19,7 @@ v 7.14.0 (unreleased)
- Add fetch command to the MR page
- Fix bug causing Bitbucket importer to crash when OAuth application had been removed.
- Add fetch command to the MR page.
+ - Show buttons to add license, changelog and contribution guide if they're missing.
v 7.13.2
- Fix randomly failed spec
diff --git a/app/assets/stylesheets/pages/projects.scss b/app/assets/stylesheets/pages/projects.scss
index 5f415f2d78f..21d958db80c 100644
--- a/app/assets/stylesheets/pages/projects.scss
+++ b/app/assets/stylesheets/pages/projects.scss
@@ -297,6 +297,15 @@ table.table.protected-branches-list tr.no-border {
ul.nav-pills { display:inline-block; }
li { display:inline; }
a { float:left; }
+
+ li.missing a {
+ color: #bbb;
+ border: 1px dashed #ccc;
+
+ &:hover {
+ background-color: #FAFAFA;
+ }
+ }
}
pre.light-well {
diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb
index a675a292432..f5b78533896 100644
--- a/app/helpers/projects_helper.rb
+++ b/app/helpers/projects_helper.rb
@@ -184,7 +184,43 @@ module ProjectsHelper
end
end
- def contribution_guide_url(project)
+ def add_contribution_guide_path(project)
+ if project && !project.repository.contribution_guide
+ namespace_project_new_blob_path(
+ project.namespace,
+ project,
+ project.default_branch,
+ file_name: "CONTRIBUTING.md",
+ commit_message: "Add contribution guide"
+ )
+ end
+ end
+
+ def add_changelog_path(project)
+ if project && !project.repository.changelog
+ namespace_project_new_blob_path(
+ project.namespace,
+ project,
+ project.default_branch,
+ file_name: "CHANGELOG",
+ commit_message: "Add changelog"
+ )
+ end
+ end
+
+ def add_license_path(project)
+ if project && !project.repository.license
+ namespace_project_new_blob_path(
+ project.namespace,
+ project,
+ project.default_branch,
+ file_name: "LICENSE",
+ commit_message: "Add license"
+ )
+ end
+ end
+
+ def contribution_guide_path(project)
if project && contribution_guide = project.repository.contribution_guide
namespace_project_blob_path(
project.namespace,
@@ -195,7 +231,7 @@ module ProjectsHelper
end
end
- def changelog_url(project)
+ def changelog_path(project)
if project && changelog = project.repository.changelog
namespace_project_blob_path(
project.namespace,
@@ -206,7 +242,7 @@ module ProjectsHelper
end
end
- def license_url(project)
+ def license_path(project)
if project && license = project.repository.license
namespace_project_blob_path(
project.namespace,
@@ -217,7 +253,7 @@ module ProjectsHelper
end
end
- def version_url(project)
+ def version_path(project)
if project && version = project.repository.version
namespace_project_blob_path(
project.namespace,
diff --git a/app/views/projects/show.html.haml b/app/views/projects/show.html.haml
index 769dd68f089..4577b84ab89 100644
--- a/app/views/projects/show.html.haml
+++ b/app/views/projects/show.html.haml
@@ -22,19 +22,34 @@
%li
= link_to namespace_project_tags_path(@project.namespace, @project) do
= pluralize(number_with_delimiter(@repository.tag_names.count), 'tag')
+
- if @repository.changelog
%li
- = link_to changelog_url(@project) do
+ = link_to changelog_path(@project) do
Changelog
- if @repository.license
%li
- = link_to license_url(@project) do
+ = link_to license_path(@project) do
License
- if @repository.contribution_guide
%li
- = link_to contribution_guide_url(@project) do
+ = link_to contribution_guide_path(@project) do
Contribution guide
+ - if current_user && can_push_branch?(@project, @project.default_branch)
+ - unless @repository.changelog
+ %li.missing
+ = link_to add_changelog_path(@project) do
+ Add Changelog
+ - unless @repository.license
+ %li.missing
+ = link_to add_license_path(@project) do
+ Add License
+ - unless @repository.contribution_guide
+ %li.missing
+ = link_to add_contribution_guide_path(@project) do
+ Add Contribution guide
+
- if @project.archived?
.text-warning.center.prepend-top-20
%p