1) Исправления в связи со сменой API MySQL
[openlib.git] / www / sendtomail.php
1 <?php\r
2 \r
3 require_once ("config.php");\r
4 require_once "resources/PHPMailer/class.phpmailer.php";\r
5 require_once "book.php";\r
6 \r
7 if (is_null ($config['cops_mail_configuration']) ||\r
8     !is_array ($config['cops_mail_configuration']) ||\r
9     empty ($config['cops_mail_configuration']["smtp.host"]) ||\r
10     empty ($config['cops_mail_configuration']["address.from"])) {\r
11     echo "NOK. bad configuration of $config ['cops_mail_configuration']";\r
12     exit;\r
13 }\r
14 \r
15 $idData = $_REQUEST["data"];\r
16 if (empty ($idData)) {\r
17     echo 'No data sent.';\r
18     exit;\r
19 }\r
20 $emailDest = $_REQUEST["email"];\r
21 if (empty ($emailDest)) {\r
22     echo 'No email sent.';\r
23     exit;\r
24 }\r
25 \r
26 $book = Book::getBookByDataId($idData);\r
27 $data = $book->getDataById ($idData);\r
28 \r
29 if (filesize ($data->getLocalPath ()) > 10 * 1024 * 1024) {\r
30     echo 'Attachement too big';\r
31     exit;\r
32 }\r
33 \r
34 $mail = new PHPMailer;\r
35 \r
36 $mail->IsSMTP();\r
37 $mail->Timeout = 30; // 30 seconds as some files can be big\r
38 $mail->Host = $config['cops_mail_configuration']["smtp.host"];\r
39 if (!empty ($config['cops_mail_configuration']["smtp.secure"])) {\r
40     $mail->SMTPSecure = $config['cops_mail_configuration']["smtp.secure"];\r
41     $mail->Port = 465;\r
42 }\r
43 $mail->SMTPAuth = !empty ($config['cops_mail_configuration']["smtp.username"]);\r
44 if (!empty ($config['cops_mail_configuration']["smtp.username"])) $mail->Username = $config['cops_mail_configuration']["smtp.username"];\r
45 if (!empty ($config['cops_mail_configuration']["smtp.password"])) $mail->Password = $config['cops_mail_configuration']["smtp.password"];\r
46 if (!empty ($config['cops_mail_configuration']["smtp.secure"])) $mail->SMTPSecure = $config['cops_mail_configuration']["smtp.secure"];\r
47 \r
48 $mail->From = $config['cops_mail_configuration']["address.from"];\r
49 $mail->FromName = $config['cops_title_default'];\r
50 \r
51 foreach (explode (";", $emailDest) as $emailAddress) {\r
52     if (empty ($emailAddress)) { continue; }\r
53     $mail->AddAddress($emailAddress);\r
54 }\r
55 \r
56 $mail->AddAttachment($data->getLocalPath ());\r
57 \r
58 $mail->IsHTML(false); \r
59 $mail->Subject = 'Sent by COPS';\r
60 $mail->Body    = 'Sent by COPS';\r
61 \r
62 if(!$mail->Send()) {\r
63    echo localize ("mail.messagenotsent");\r
64    echo 'Mailer Error: ' . $mail->ErrorInfo;\r
65    exit;\r
66 }\r
67 \r
68 echo localize ("mail.messagesent");\r
69 \r