gforge-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gforge-commits] gforge/db 20041222-1-delete-task-artifact.php, 1.1, 1.


From: ruben
Subject: [Gforge-commits] gforge/db 20041222-1-delete-task-artifact.php, 1.1, 1.2
Date: Tue, 28 Dec 2004 10:20:58 -0600

Update of /cvsroot/gforge/gforge/db
In directory db.perdue.net:/tmp/cvs-serv16234

Modified Files:
        20041222-1-delete-task-artifact.php 
Log Message:
Re-write of migration script for delete() (tasks/artifacts)

Index: 20041222-1-delete-task-artifact.php
===================================================================
RCS file: /cvsroot/gforge/gforge/db/20041222-1-delete-task-artifact.php,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- 20041222-1-delete-task-artifact.php 28 Dec 2004 15:24:09 -0000      1.1
+++ 20041222-1-delete-task-artifact.php 28 Dec 2004 16:20:55 -0000      1.2
@@ -19,24 +19,103 @@
        }
        
        foreach ($tasks as $task_id) {
-               $task = projecttask_get_object($task_id);
-               if (!$task || !is_object($task)) {
-                       // echo "Error instantiating Task object with id: 
$task_id\n";
+               $res = db_query("DELETE FROM project_assigned_to WHERE 
project_task_id='".$task_id."'");
+               if (!$res) {
+                       echo 'Error deleting assigned users relationship: 
'.db_error();
+                       db_rollback();
+                       exit();
+               }
+               $res = db_query("DELETE FROM project_dependencies WHERE 
project_task_id='".$task_id."'");
+               if (!$res) {
+                       echo 'Error deleting dependencies: '.db_error();
+                       db_rollback();
+                       exit();
+               }
+               $res = db_query("DELETE FROM project_history WHERE 
project_task_id='".$task_id."'");
+               if (!$res) {
+                       echo 'Error deleting history: '.db_error();
+                       db_rollback();
+                       exit();
+               }
+               $res = db_query("DELETE FROM project_messages WHERE 
project_task_id='".$task_id."'");
+               if (!$res) {
+                       echo 'Error deleting messages: '.db_error();
+                       db_rollback();
+                       eixt();
+               }
+               $res = db_query("DELETE FROM project_task_artifact      WHERE 
project_task_id='".$task_id."'");
+               if (!$res) {
+                       echo 'Error deleting artifacts: '.db_error();
+                       db_rollback();
+                       exit();
+               }
+               $res = db_query("DELETE FROM rep_time_tracking  WHERE 
project_task_id='".$task_id."'");
+               if (!$res) {
+                       echo 'Error deleting time tracking report: '.db_error();
+                       db_rollback();
+                       exit();
+               }
+               $res = db_query("DELETE FROM project_task WHERE 
project_task_id='".$task_id."'");
+               if (!$res) {
+                       echo 'Error deleting task: '.db_error();
                        db_rollback();
-                       echo "FAIL\n";
                        exit();
-               } else {
-                       if (!$task->delete()) {
-                               // echo "Error deleting Task with id: 
$task_id\n";
-                               db_rollback();
-                               echo "FAIL\n";
-                               exit();
-                       } else {
-                               //echo "Task with id: $task_id successfully 
deleted\n";
-                       }
                }
        }
-       db_commit();
-       echo "SUCCESS\n";
 }
+
+$res = db_query("SELECT artifact_id FROM artifact WHERE status_id='3'");
+
+if (!$res) {
+       echo "FAIL\n";
+       exit();
+} else {
+       $tasks = array();
+       
+       for ($i=0;$i<db_numrows($res);$i++) {
+               $data = &db_fetch_array($res);
+               $artifacts[] = $data['artifact_id'];
+       }
+       
+       foreach ($artifacts as $artifact_id) {
+               $res = db_query("DELETE FROM artifact_extra_field_data WHERE 
artifact_id='".$artifact_id."'");
+               if (!$res) {
+                       echo 'Error deleting extra field data: '.db_error();
+                       db_rollback();
+                       exit();
+               }
+               $res = db_query("DELETE FROM artifact_file WHERE 
artifact_id='".$artifact_id."'");
+               if (!$res) {
+                       echo 'Error deleting file from db: '.db_error();
+                       db_rollback();
+                       exit();
+               }
+               $res = db_query("DELETE FROM artifact_message WHERE 
artifact_id='".$artifact_id."'");
+               if (!$res) {
+                       echo 'Error deleting message: '.db_error();
+                       db_rollback();
+                       exit();
+               }
+               $res = db_query("DELETE FROM artifact_history WHERE 
artifact_id='".$artifact_id."'");
+               if (!$res) {
+                       echo 'Error deleting history: '.db_error();
+                       db_rollback();
+                       exit();
+               }
+               $res = db_query("DELETE FROM artifact_monitor WHERE 
artifact_id='".$artifact_id."'");
+               if (!$res) {
+                       echo 'Error deleting monitor: '.db_error();
+                       db_rollback();
+                       exit();
+               }
+               $res = db_query("DELETE FROM artifact WHERE 
artifact_id='".$artifact_id."'");
+               if (!$res) {
+                       echo 'Error deleting artifact: '.db_error();
+                       db_rollback();
+                       exit();
+               }
+       }
+}
+echo "SUCCESS\n";
+db_commit();
 ?>
\ No newline at end of file





reply via email to

[Prev in Thread] Current Thread [Next in Thread]