diff .svn/pristine/d1/d1fe1a10e719bee9e65cf063fc9ec9a0c05f2327.svn-base @ 1295:622f24f53b42 redmine-2.3

Update to Redmine SVN revision 11972 on 2.3-stable branch
author Chris Cannam
date Fri, 14 Jun 2013 09:02:21 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/.svn/pristine/d1/d1fe1a10e719bee9e65cf063fc9ec9a0c05f2327.svn-base	Fri Jun 14 09:02:21 2013 +0100
@@ -0,0 +1,21 @@
+class AddProjectsTrackersUniqueIndex < ActiveRecord::Migration
+  def self.up
+    remove_duplicates
+    add_index :projects_trackers, [:project_id, :tracker_id], :name => :projects_trackers_unique, :unique => true
+  end
+
+  def self.down
+    remove_index :projects_trackers, :name => :projects_trackers_unique
+  end
+
+  # Removes duplicates in projects_trackers table
+  def self.remove_duplicates
+    Project.all.each do |project|
+      ids = project.trackers.collect(&:id)
+      unless ids == ids.uniq
+        project.trackers.clear
+        project.tracker_ids = ids.uniq
+      end
+    end
+  end
+end