Replace project labels with tags to prevent name conflict with GitLab labels

Signed-off-by: NDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
上级 03654a6a
...@@ -46,11 +46,11 @@ class DashboardController < ApplicationController ...@@ -46,11 +46,11 @@ class DashboardController < ApplicationController
@projects = @projects.where(namespace_id: Group.find_by(name: params[:group])) if params[:group].present? @projects = @projects.where(namespace_id: Group.find_by(name: params[:group])) if params[:group].present?
@projects = @projects.where(visibility_level: params[:visibility_level]) if params[:visibility_level].present? @projects = @projects.where(visibility_level: params[:visibility_level]) if params[:visibility_level].present?
@projects = @projects.includes(:namespace) @projects = @projects.includes(:namespace)
@projects = @projects.tagged_with(params[:label]) if params[:label].present? @projects = @projects.tagged_with(params[:tag]) if params[:tag].present?
@projects = @projects.sort(@sort = params[:sort]) @projects = @projects.sort(@sort = params[:sort])
@projects = @projects.page(params[:page]).per(30) @projects = @projects.page(params[:page]).per(30)
@labels = current_user.authorized_projects.tags_on(:labels) @tags = current_user.authorized_projects.tags_on(:tags)
@groups = current_user.authorized_groups @groups = current_user.authorized_groups
end end
......
...@@ -196,7 +196,7 @@ class ProjectsController < ApplicationController ...@@ -196,7 +196,7 @@ class ProjectsController < ApplicationController
def project_params def project_params
params.require(:project).permit( params.require(:project).permit(
:name, :path, :description, :issues_tracker, :label_list, :name, :path, :description, :issues_tracker, :tag_list,
:issues_enabled, :merge_requests_enabled, :snippets_enabled, :issues_tracker_id, :default_branch, :issues_enabled, :merge_requests_enabled, :snippets_enabled, :issues_tracker_id, :default_branch,
:wiki_enabled, :visibility_level, :import_url, :last_activity_at, :namespace_id :wiki_enabled, :visibility_level, :import_url, :last_activity_at, :namespace_id
) )
......
...@@ -42,7 +42,7 @@ class Project < ActiveRecord::Base ...@@ -42,7 +42,7 @@ class Project < ActiveRecord::Base
ActsAsTaggableOn.strict_case_match = true ActsAsTaggableOn.strict_case_match = true
acts_as_taggable_on :labels, :issues_default_labels acts_as_taggable_on :tags, :issues_default_labels
attr_accessor :new_default_branch attr_accessor :new_default_branch
......
...@@ -44,12 +44,12 @@ ...@@ -44,12 +44,12 @@
- if @labels.present? - if @tags.present?
%fieldset %fieldset
%legend Labels %legend Tags
%ul.nav.nav-pills.nav-stacked.nav-small %ul.nav.nav-pills.nav-stacked.nav-small
- @labels.each do |label| - @tags.each do |tag|
%li{ class: (label.name == params[:label]) ? 'active' : 'light' } %li{ class: (tag.name == params[:tag]) ? 'active' : 'light' }
= link_to projects_dashboard_filter_path(scope: params[:scope], label: label.name) do = link_to projects_dashboard_filter_path(scope: params[:scope], tag: tag.name) do
%i.icon-tag %i.icon-tag
= label.name = tag.name
...@@ -54,10 +54,10 @@ ...@@ -54,10 +54,10 @@
%span.label %span.label
%i.icon-archive %i.icon-archive
Archived Archived
- project.labels.each do |label| - project.tags.each do |tag|
%span.label.label-info %span.label.label-info
%i.icon-tag %i.icon-tag
= label.name = tag.name
- if project.description.present? - if project.description.present?
%p= truncate project.description, length: 100 %p= truncate project.description, length: 100
.last-activity .last-activity
......
...@@ -33,12 +33,12 @@ ...@@ -33,12 +33,12 @@
%fieldset.features %fieldset.features
%legend %legend
Labels: Tags:
.form-group .form-group
= f.label :label_list, "Labels", class: 'control-label' = f.label :tag_list, "Tags", class: 'control-label'
.col-sm-10 .col-sm-10
= f.text_field :label_list, maxlength: 2000, class: "form-control" = f.text_field :tag_list, maxlength: 2000, class: "form-control"
%p.hint Separate labels with commas. %p.hint Separate tags with commas.
%fieldset.features %fieldset.features
%legend %legend
......
class MigrateProjectTags < ActiveRecord::Migration
def up
ActsAsTaggableOn::Tagging.where(taggable_type: 'Project', context: 'labels').update_all(context: 'tags')
end
def down
ActsAsTaggableOn::Tagging.where(taggable_type: 'Project', context: 'tags').update_all(context: 'labels')
end
end
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
# #
# It's strongly recommended that you check this file into your version control system. # It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema.define(version: 20140729140420) do ActiveRecord::Schema.define(version: 20140729145339) do
# These are extensions that must be enabled in order to support this database # These are extensions that must be enabled in order to support this database
enable_extension "plpgsql" enable_extension "plpgsql"
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册