コード例 #1
0
ファイル: AJAX.php プロジェクト: victorfcm/VuFind-Plus
 function sendEmail()
 {
     global $interface;
     global $configArray;
     $to = strip_tags($_REQUEST['to']);
     $from = strip_tags($_REQUEST['from']);
     $message = $_REQUEST['message'];
     $id = $_REQUEST['id'];
     require_once ROOT_DIR . '/RecordDrivers/GroupedWorkDriver.php';
     $recordDriver = new GroupedWorkDriver($id);
     $interface->assign('recordDriver', $recordDriver);
     if (isset($_REQUEST['related_record'])) {
         $relatedRecord = $_REQUEST['related_record'];
         require_once ROOT_DIR . '/RecordDrivers/GroupedWorkDriver.php';
         $recordDriver = new GroupedWorkDriver($id);
         $relatedRecords = $recordDriver->getRelatedRecords();
         foreach ($relatedRecords as $curRecord) {
             if ($curRecord['id'] = $relatedRecord) {
                 if (isset($curRecord['callNumber'])) {
                     $interface->assign('callnumber', $curRecord['callNumber']);
                 }
                 if (isset($curRecord['shelfLocation'])) {
                     $interface->assign('shelfLocation', strip_tags($curRecord['shelfLocation']));
                 }
             }
         }
     }
     $subject = translate("Library Catalog Record") . ": " . $recordDriver->getTitle();
     $interface->assign('from', $from);
     $interface->assign('emailDetails', $recordDriver->getEmail());
     $interface->assign('recordID', $recordDriver->getUniqueID());
     if (strpos($message, 'http') === false && strpos($message, 'mailto') === false && $message == strip_tags($message)) {
         $interface->assign('message', $message);
         $body = $interface->fetch('Emails/grouped-work-email.tpl');
         require_once ROOT_DIR . '/sys/Mailer.php';
         $mail = new VuFindMailer();
         $emailResult = $mail->send($to, $configArray['Site']['email'], $subject, $body, $from);
         if ($emailResult === true) {
             $result = array('result' => true, 'message' => 'Your e-mail was sent successfully.');
         } elseif (PEAR_Singleton::isError($emailResult)) {
             $result = array('result' => false, 'message' => "Your e-mail message could not be sent: {$emailResult}.");
         } else {
             $result = array('result' => false, 'message' => 'Your e-mail message could not be sent due to an unknown error.');
         }
     } else {
         $result = array('result' => false, 'message' => 'Sorry, we can't send e-mails with html or other data in it.');
     }
     return json_encode($result);
 }