remove old readme
[atutor.git] / docs / mods / _standard / forums / module_delete.php
1 <?php\r
2 \r
3 function forums_delete($course) {\r
4         global $db;\r
5 \r
6         $sql = "SELECT * FROM ".TABLE_PREFIX."forums_courses WHERE course_id=$course";\r
7         $f_result = mysql_query($sql, $db);\r
8         while ($forum = mysql_fetch_assoc($f_result)) {\r
9                 $forum_id = $forum['forum_id'];\r
10                 $sql = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."forums_courses WHERE forum_id=$forum_id";\r
11                 $result = mysql_query($sql, $db);\r
12                 $row = mysql_fetch_assoc($result);\r
13                 if ($row['cnt'] == 1) {\r
14                         $sql    = "SELECT post_id FROM ".TABLE_PREFIX."forums_threads WHERE forum_id=$forum_id";\r
15                         $result = mysql_query($sql, $db);\r
16                         while ($row = mysql_fetch_assoc($result)) {\r
17                                 $sql     = "DELETE FROM ".TABLE_PREFIX."forums_accessed WHERE post_id=$row[post_id]";\r
18                                 $result2 = mysql_query($sql, $db);\r
19                         }\r
20 \r
21                         $sql    = "DELETE FROM ".TABLE_PREFIX."forums_subscriptions WHERE forum_id=$forum_id";\r
22                         $result = mysql_query($sql, $db);\r
23 \r
24                         $sql    = "DELETE FROM ".TABLE_PREFIX."forums_threads WHERE forum_id=$forum_id";\r
25                         $result = mysql_query($sql, $db);\r
26 \r
27                         $sql    = "DELETE FROM ".TABLE_PREFIX."forums WHERE forum_id=$forum_id";\r
28                         $result = mysql_query($sql, $db);\r
29                         \r
30                         $sql = "DELETE FROM ".TABLE_PREFIX."forums_courses WHERE forum_id=$forum_id";\r
31                         $result = mysql_query($sql, $db);\r
32 \r
33                 } else if ($row['cnt'] > 1) {\r
34                         // this is a shared forum:\r
35                         // debug('unsubscribe all the students who will not be able to access this forum anymore.');\r
36                         $sql     = "SELECT course_id FROM ".TABLE_PREFIX."forums_courses WHERE forum_id=$forum[forum_id] AND course_id <> $course";\r
37                         $result2 = mysql_query($sql, $db);\r
38                         while ($row2 = mysql_fetch_assoc($result2)) {\r
39                                 $courses[] = $row2['course_id'];\r
40                         }\r
41                         $courses_list = implode(',', $courses);\r
42 \r
43                         // list of all the students who are in other courses as well\r
44                         $sql     = "SELECT member_id FROM ".TABLE_PREFIX."course_enrollment WHERE course_id IN ($courses_list)";\r
45                         $result2 = mysql_query($sql, $db);\r
46                         while ($row2 = mysql_fetch_assoc($result2)) {\r
47                                 $students[] = $row2['member_id'];\r
48                         }\r
49 \r
50                         $students_list = implode(',', $students);\r
51                         \r
52                         if ($students_list) {\r
53                                 // remove the subscriptions\r
54                                 $sql    = "SELECT post_id FROM ".TABLE_PREFIX."forums_threads WHERE forum_id=$forum[forum_id]";\r
55                                 $result2 = mysql_query($sql, $db);\r
56                                 while ($row2 = mysql_fetch_array($result2)) {\r
57                                         $sql     = "DELETE FROM ".TABLE_PREFIX."forums_accessed WHERE post_id=$row2[post_id] AND member_id NOT IN ($students_list)";\r
58                                         $result3 = mysql_query($sql, $db);\r
59                                 }\r
60 \r
61                                 $sql     = "DELETE FROM ".TABLE_PREFIX."forums_subscriptions WHERE forum_id=$forum[forum_id] AND member_id NOT IN ($students_list)";\r
62                                 $result3 = mysql_query($sql, $db);\r
63                         }\r
64 \r
65                         $sql = "DELETE FROM ".TABLE_PREFIX."forums_courses WHERE forum_id=$forum[forum_id] AND course_id=$course";\r
66                         $result = mysql_query($sql, $db);\r
67                 }\r
68         }\r
69 \r
70         $sql = "OPTIMIZE TABLE ".TABLE_PREFIX."forums_threads";\r
71         $result = mysql_query($sql, $db);\r
72 }\r
73 \r
74 ?>