remove old readme
[atutor.git] / mods / _standard / file_storage / delete_revision.php
1 <?php\r
2 /****************************************************************/\r
3 /* ATutor                                                                                                               */\r
4 /****************************************************************/\r
5 /* Copyright (c) 2002-2010                                      */\r
6 /* Inclusive Design Institute                                   */\r
7 /* http://atutor.ca                                                                                             */\r
8 /*                                                              */\r
9 /* This program is free software. You can redistribute it and/or*/\r
10 /* modify it under the terms of the GNU General Public License  */\r
11 /* as published by the Free Software Foundation.                                */\r
12 /****************************************************************/\r
13 // $Id$\r
14 \r
15 define('AT_INCLUDE_PATH', '../../../include/');\r
16 require(AT_INCLUDE_PATH.'vitals.inc.php');\r
17 require(AT_INCLUDE_PATH.'../mods/_standard/file_storage/file_storage.inc.php');\r
18 \r
19 $owner_type = abs($_REQUEST['ot']);\r
20 $owner_id   = abs($_REQUEST['oid']);\r
21 $owner_arg_prefix = '?ot='.$owner_type.SEP.'oid='.$owner_id. SEP;\r
22 if (!($owner_status = fs_authenticate($owner_type, $owner_id)) || !query_bit($owner_status, WORKSPACE_AUTH_WRITE)) { \r
23         exit('NOT AUTHENTICATED');\r
24 }\r
25 \r
26 $id = abs($_REQUEST['id']);\r
27 \r
28 if (isset($_POST['submit_no'])) {\r
29         $path = fs_get_revisions($id, $owner_type, $owner_id);\r
30         reset($path);\r
31         $first = current($path);\r
32 \r
33         $msg->addFeedback('CANCELLED');\r
34         header('Location: '.url_rewrite('mods/_standard/file_storage/revisions.php'.$owner_arg_prefix.'id='.$first['file_id'], AT_PRETTY_URL_IS_HEADER));\r
35         exit;\r
36 } else if (isset($_POST['submit_yes'])) {\r
37         $path = fs_get_revisions($id, $owner_type, $owner_id);\r
38 \r
39         // set the new parent //\r
40         $sql = "SELECT parent_file_id, owner_type, owner_id, folder_id FROM ".TABLE_PREFIX."files WHERE file_id=$id AND owner_type=$owner_type AND owner_id=$owner_id";\r
41         $result = mysql_query($sql, $db);\r
42         $row = mysql_fetch_assoc($result);\r
43 \r
44         $sql = "UPDATE ".TABLE_PREFIX."files SET parent_file_id=$row[parent_file_id], date=date WHERE parent_file_id=$id AND owner_type=$owner_type AND owner_id=$owner_id";\r
45         mysql_query($sql, $db);\r
46 \r
47         $sql = "UPDATE ".TABLE_PREFIX."files SET num_revisions=num_revisions-1, date=date WHERE file_id>$id AND owner_type=$row[owner_type] AND owner_id=$row[owner_id] AND folder_id=$row[folder_id]";\r
48         mysql_query($sql, $db);\r
49 \r
50         $sql = "DELETE FROM ".TABLE_PREFIX."files WHERE file_id=$id AND owner_type=$owner_type AND owner_id=$owner_id";\r
51         mysql_query($sql, $db);\r
52 \r
53         $sql = "DELETE FROM ".TABLE_PREFIX."files_comments WHERE file_id=$id";\r
54         mysql_query($sql, $db);\r
55 \r
56         $file = fs_get_file_path($id);\r
57         if (file_exists($file . $id)) {\r
58                 @unlink($file . $id);\r
59         }\r
60 \r
61         $back_id = FALSE;\r
62         foreach($path as $file) {\r
63                 if ($file['file_id'] != $id) {\r
64                         $back_id = $file['file_id'];\r
65                         break;\r
66                 }\r
67         }\r
68 \r
69         $msg->addFeedback('ACTION_COMPLETED_SUCCESSFULLY');\r
70         if ($back_id) {\r
71                 header('Location: '.url_rewrite('mods/_standard/file_storage/revisions.php'.$owner_arg_prefix.'id='.$back_id, AT_PRETTY_URL_IS_HEADER));\r
72         } else {\r
73                 header('Location: '.url_rewrite('mods/_standard/file_storage/index.php'.$owner_arg_prefix, AT_PRETTY_URL_IS_HEADER));\r
74         }\r
75         exit;\r
76 }\r
77 \r
78 require(AT_INCLUDE_PATH.'header.inc.php');\r
79 \r
80 $sql = "SELECT file_id, file_name, owner_type, owner_id, date, member_id FROM ".TABLE_PREFIX."files WHERE file_id=$id AND owner_type=$owner_type AND owner_id=$owner_id";\r
81 $result = mysql_query($sql, $db);\r
82 if (!$row = mysql_fetch_assoc($result)) {\r
83         $msg->printErrors('FILE_NOT_EXIST');\r
84 } else {\r
85         $hidden_vars = array('id' => $id, 'ot' => $owner_type, 'oid' => $owner_id);\r
86         $msg->addConfirm(array('FILE_DELETE', '<li>'.$row['date'].' - '. $row['file_name'].' - '.get_display_name($row['member_id']).'</li>'), $hidden_vars);\r
87         $msg->printConfirm();\r
88 }\r
89 \r
90 require(AT_INCLUDE_PATH.'footer.inc.php');\r
91 ?>