summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
authorDouglas Barbosa Alexandre <dbalexandre@gmail.com>2016-07-31 20:48:00 -0300
committerDouglas Barbosa Alexandre <dbalexandre@gmail.com>2016-08-17 12:58:57 -0300
commit4b75c75018c9a3eac7a2c8b1772a10c98ea3bdc0 (patch)
tree141c6c6db67a03d44980b77b7a6f5e24d6ec628d /app/models
parent252e93c9e664e595ea9b4987f14ca8fb21a0e307 (diff)
downloadgitlab-ce-4b75c75018c9a3eac7a2c8b1772a10c98ea3bdc0.tar.gz
The lists: Backlog, and Done cannot be destroyed
Diffstat (limited to 'app/models')
-rw-r--r--app/models/board.rb2
-rw-r--r--app/models/list.rb8
2 files changed, 9 insertions, 1 deletions
diff --git a/app/models/board.rb b/app/models/board.rb
index d6358fb15e8..3240c4bede3 100644
--- a/app/models/board.rb
+++ b/app/models/board.rb
@@ -1,7 +1,7 @@
class Board < ActiveRecord::Base
belongs_to :project
- has_many :lists, -> { order(:list_type, :position) }, dependent: :destroy
+ has_many :lists, -> { order(:list_type, :position) }, dependent: :delete_all
validates :project, presence: true
end
diff --git a/app/models/list.rb b/app/models/list.rb
index b4fdab7893a..f2a59d18c46 100644
--- a/app/models/list.rb
+++ b/app/models/list.rb
@@ -10,7 +10,15 @@ class List < ActiveRecord::Base
delegate :name, to: :label, allow_nil: true, prefix: true
+ before_destroy :can_be_destroyed, unless: :label?
+
def title
label? ? label_name : list_type.humanize
end
+
+ private
+
+ def can_be_destroyed
+ false
+ end
end