move code up one directory
[atutor.git] / mods / _core / users / admin_email.php
1 <?php
2 /************************************************************************/
3 /* ATutor                                                                                                                               */
4 /************************************************************************/
5 /* Copyright (c) 2002-2010                                              */
6 /* Inclusive Design Institute                                           */
7 /* http://atutor.ca                                                     */
8 /* This program is free software. You can redistribute it and/or        */
9 /* modify it under the terms of the GNU General Public License          */
10 /* as published by the Free Software Foundation.                        */
11 /************************************************************************/
12 // $Id$
13
14 define('AT_INCLUDE_PATH', '../../../include/');
15 require (AT_INCLUDE_PATH.'vitals.inc.php');
16 admin_authenticate(AT_ADMIN_PRIV_USERS);
17
18 if ($_POST['cancel']) {
19         $msg->addFeedback('CANCELLED');
20
21         header('Location: users.php#feedback');
22         exit;
23 } else if ($_POST['submit']) {
24         $missing_fields = array();
25
26         $_POST['subject'] = trim($_POST['subject']);
27         $_POST['body'] = trim($_POST['body']);
28
29         if (($_POST['to'] == '') || ($_POST['to'] == 0)) {
30                 $missing_fields[] = _AT('to');
31         }
32
33         if ($_POST['subject'] == '') {
34                 $missing_fields[] = _AT('subject');
35         }
36
37         if ($_POST['body'] == '') {
38                 $missing_fields[] = _AT('body');
39         }
40
41         if ($missing_fields) {
42                 $missing_fields = implode(', ', $missing_fields);
43                 $msg->addError(array('EMPTY_FIELDS', $missing_fields));
44         }
45         if (!$msg->containsErrors()) {
46                 if ($_POST['to'] == 1) {
47                         // choose all instructors
48                         $sql    = "SELECT * FROM ".TABLE_PREFIX."members WHERE status = ".AT_STATUS_INSTRUCTOR;
49                 } else if ($_POST['to'] == 2) {
50                         // choose all students
51                         $sql    = "SELECT * FROM ".TABLE_PREFIX."members WHERE status = ".AT_STATUS_STUDENT;
52                 } else {
53                         // choose all members
54                         $sql    = "SELECT * FROM ".TABLE_PREFIX."members WHERE status = ".AT_STATUS_INSTRUCTOR." OR status = ".AT_STATUS_STUDENT;
55                 }
56                 
57                 $result = mysql_query($sql,$db);
58
59                 require(AT_INCLUDE_PATH . 'classes/phpmailer/atutormailer.class.php');
60
61                 $mail = new ATutorMailer;
62
63                 while ($row = mysql_fetch_assoc($result)) {
64                         $mail->AddBCC($row['email']);
65                 }
66
67
68                 $mail->From     = $_config['contact_email'];
69                 $mail->FromName = $_config['site_name'];
70                 $mail->AddAddress($_config['contact_email']);
71                 $mail->Subject = $stripslashes($_POST['subject']);
72                 $mail->Body    = $stripslashes($_POST['body']);
73
74                 if(!$mail->Send()) {
75                    //echo 'There was an error sending the message';
76                    $msg->printErrors('SENDING_ERROR');
77                    exit;
78                 }
79                 unset($mail);
80
81                 $msg->addFeedback('ACTION_COMPLETED_SUCCESSFULLY');
82                 header('Location: users.php');
83                 exit;
84         }
85 }
86
87 $title = _AT('admin_email');
88
89 $onload = 'document.form.subject.focus();';
90
91 require(AT_INCLUDE_PATH.'header.inc.php');
92
93 $sql    = "SELECT COUNT(*) AS cnt FROM ".TABLE_PREFIX."members ORDER BY login";
94 $result = mysql_query($sql,$db);
95 $row    = mysql_fetch_array($result);
96 if ($row['cnt'] == 0) {
97         $msg->printErrors('NO_MEMBERS');
98         require(AT_INCLUDE_PATH.'footer.inc.php');
99         exit;
100 }
101
102 $savant->display('admin/users/admin_email.tmpl.php');
103 require(AT_INCLUDE_PATH.'footer.inc.php'); ?>