5d34c2c58fa926fbce9ea960be8fbcdd9f741251
[atutor.git] / docs / include / html / auto_enroll_courses.inc.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: auto_enroll_courses.php 7208 2008-01-09 16:07:24Z cindy $\r
14 \r
15 // Note: MUST set variables $member_id before calling this page.\r
16 \r
17 // auto enroll into courses that link with en_id\r
18 if (isset($_REQUEST["en_id"]) && $_REQUEST["en_id"] <> "")\r
19 {\r
20 \r
21         $associate_string = $_REQUEST["en_id"];\r
22         \r
23         $sql_courses = "SELECT aec.course_id\r
24                           FROM " . TABLE_PREFIX."auto_enroll a, " . \r
25                                    TABLE_PREFIX."auto_enroll_courses aec \r
26                          where a.associate_string='".$associate_string ."'\r
27                            and a.auto_enroll_id = aec.auto_enroll_id";\r
28 \r
29         $result_courses = mysql_query($sql_courses, $db) or die(mysql_error());\r
30         \r
31         if (mysql_num_rows($result_courses) > 0)  $_SESSION['enroll'] = AT_ENROLL_YES;\r
32         \r
33         while ($row_courses = mysql_fetch_assoc($result_courses))\r
34         {\r
35                 $course = $row_courses["course_id"];\r
36                 \r
37                 $sql    = "SELECT access, member_id FROM ".TABLE_PREFIX."courses WHERE course_id=$course";\r
38                 $result = mysql_query($sql, $db);\r
39                 $course_info = mysql_fetch_assoc($result);\r
40                 \r
41                 if ($course_info['access'] == 'private') \r
42                 {\r
43                         $sql    = "INSERT INTO ".TABLE_PREFIX."course_enrollment VALUES ($member_id, $course, 'n', 0, '"._AT('student')."', 0)";\r
44                         $result = mysql_query($sql, $db);\r
45         \r
46                         // send the email - if needed\r
47                         if ($system_courses[$course]['notify'] == 1) {\r
48                                 $mail_list = array();   //initialize an array to store all the pending emails\r
49         \r
50                                 //Get the list of students with enrollment privilege\r
51                                 $module =& $moduleFactory->getModule('_core/enrolment');\r
52                                 $sql    = "SELECT email, first_name, last_name, `privileges` FROM ".TABLE_PREFIX."members m INNER JOIN ".TABLE_PREFIX."course_enrollment ce ON m.member_id=ce.member_id WHERE ce.privileges > 0 AND ce.course_id=$course";\r
53                                 $result = mysql_query($sql, $db);\r
54                                 while ($row     = mysql_fetch_assoc($result))\r
55                                 {\r
56                                         if (query_bit($row['privileges'], $module->getPrivilege()))\r
57                                         {\r
58                                                 unset($row['privileges']);      //we don't need the privilege to flow around\r
59                                                 $mail_list[] = $row;\r
60                                         }\r
61                                 }\r
62                                 \r
63                                 //Get instructor information\r
64                                 $ins_id = $system_courses[$course]['member_id'];\r
65                                 $sql    = "SELECT email, first_name, last_name FROM ".TABLE_PREFIX."members WHERE member_id=$ins_id";\r
66                                 $result = mysql_query($sql, $db);\r
67                                 $row    = mysql_fetch_assoc($result);\r
68                                 $mail_list[] = $row;\r
69         \r
70                                 //Send email notification to both assistants with privileges & Instructor\r
71                                 foreach ($mail_list as $row)\r
72                                 {\r
73                                         $to_email = $row['email'];\r
74                                         $tmp_message  = $row['first_name']  .' ' . $row['last_name']."\n\n";\r
75                                         $tmp_message .= _AT('enrol_messagenew', $system_courses[$course]['title'], AT_BASE_HREF );\r
76                                         if ($to_email != '') {\r
77                                                 require(AT_INCLUDE_PATH . 'classes/phpmailer/atutormailer.class.php');\r
78         \r
79                                                 $mail = new ATutorMailer;\r
80                                                 $mail->From     = $_config['contact_email'];\r
81                                                 $mail->FromName = $_config['site_name'];\r
82                                                 $mail->AddAddress($to_email);\r
83                                                 $mail->Subject = _AT('enrol_message3');\r
84                                                 $mail->Body    = $tmp_message;\r
85         \r
86                                                 if (!$mail->Send()) \r
87                                                 {\r
88                                                    $msg->addError('SENDING_ERROR');\r
89                                                 }\r
90                                                 unset($mail);\r
91                                         }\r
92                                 }\r
93                         }\r
94                 } else {\r
95                         $sql    = "INSERT INTO ".TABLE_PREFIX."course_enrollment VALUES ($member_id, $course, 'y', 0, '"._AT('student')."', 0)";\r
96                         $result = mysql_query($sql, $db);\r
97                 }\r
98         }\r
99         \r
100 }\r
101 ?>