Fixed remove project in web page(available remove project that has dependency)
authorSungmin Kim <dev.sungmin.kim@samsung.com>
Fri, 24 Jan 2014 04:24:05 +0000 (13:24 +0900)
committerSungmin Kim <dev.sungmin.kim@samsung.com>
Fri, 24 Jan 2014 04:24:05 +0000 (13:24 +0900)
dibs-web/app/controllers/admin_project_controller.rb

index bfc5fa7cd175d60a48b4d2b7bc587a4e7d2d0d2f..14b375a8e7af20b457bcdf9a5003be0612de5e45 100644 (file)
@@ -201,8 +201,31 @@ class AdminProjectController < ApplicationController
                        return
                end
 
+        # remove job info
+        jobs = Job.find(:all, :conditions => ["project_id =?", project_id])
+
+        if not jobs.nil? then
+            # remove job_timestamps table
+            jobs.each do |job|
+                jobTimestamp = JobTimestamp.delete_all(["job_id=?", job.id])
+                job.destroy
+            end
+
+        end
+
                case project.ptype
                when "GIT"
+            # remove source info
+            sources = Source.find(:all, :conditions => ["project_id = ?", project_id])
+
+            if not sources.nil? then
+                # remove package
+                sources.each do |source|
+                           Package.delete_all(["source_id = ?", source.id])
+                    source.destroy
+                end
+            end
+
                        ProjectGit.delete_all(["project_id = ?", project_id])
                        ProjectOs.delete_all(["project_id = ?", project_id])
                        GroupProjectAccess.delete_all(["project_id = ?", project_id])