aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Macgirvin <mike@macgirvin.com>2010-10-28 16:05:09 -0700
committerMike Macgirvin <mike@macgirvin.com>2010-10-28 16:05:09 -0700
commita0f6f8ad533ee0ef89cee104d0d0ef1c0c54be7b (patch)
treeea0e29115182d47c97f3890fd2807aa881f8c405
parent42e6b6cfe4f0b2bd6a2e8361479cb813857ca0e6 (diff)
downloadvolse-hubzilla-a0f6f8ad533ee0ef89cee104d0d0ef1c0c54be7b.tar.gz
volse-hubzilla-a0f6f8ad533ee0ef89cee104d0d0ef1c0c54be7b.tar.bz2
volse-hubzilla-a0f6f8ad533ee0ef89cee104d0d0ef1c0c54be7b.zip
preserve utf-8 on notification emails
-rw-r--r--boot.php16
-rw-r--r--mod/dfrn_notify.php18
2 files changed, 31 insertions, 3 deletions
diff --git a/boot.php b/boot.php
index 1c74cc156..07810a50e 100644
--- a/boot.php
+++ b/boot.php
@@ -1295,4 +1295,18 @@ function activity_match($haystack,$needle) {
if(($haystack === $needle) || (($basename($needle) === $haystack) && strstr($needle,NAMESPACE_ACTIVITY_SCHEMA)))
return true;
return false;
-}} \ No newline at end of file
+}}
+
+
+if(! function_exists('get_tags')) {
+function get_tags($s) {
+ if(preg_match_all('/([@#][^ ,.:?\-]*)[ ,.:?\-]/',$s,$match))
+ return $match[1];
+}}
+
+
+if(! function_exists('qp')) {
+function qp($s) {
+return str_replace ("%","=",rawurlencode($s));
+}}
+
diff --git a/mod/dfrn_notify.php b/mod/dfrn_notify.php
index fc609ddc0..630af8398 100644
--- a/mod/dfrn_notify.php
+++ b/mod/dfrn_notify.php
@@ -111,8 +111,18 @@ function dfrn_notify_post(&$a) {
// send email notification if requested.
+ $body = html_entity
+
require_once('bbcode.php');
if($importer['notify-flags'] & NOTIFY_MAIL) {
+
+ $body = html_entity_decode(strip_tags(bbcode(stripslashes($msg['body']))),ENT_QUOTES,'UTF-8');
+
+ if(function_exists('quoted_printable_encode'))
+ $body = quoted_printable_encode($body);
+ else
+ $body = qp($body);
+
$tpl = load_view_file('view/mail_received_eml.tpl');
$email_tpl = replace_macros($tpl, array(
'$sitename' => $a->config['sitename'],
@@ -121,11 +131,15 @@ function dfrn_notify_post(&$a) {
'$email' => $importer['email'],
'$from' => $msg['from-name'],
'$title' => stripslashes($msg['title']),
- '$body' => strip_tags(bbcode(stripslashes($msg['body'])))
+ '$body' => $body
));
$res = mail($importer['email'], t('New mail received at ') . $a->config['sitename'],
- $email_tpl, 'From: ' . t('Administrator') . '@' . $a->get_hostname() );
+ $email_tpl, 'From: ' . t('Administrator') . '@' . $a->get_hostname() . "\r\n"
+ . 'MIME-Version: 1.0' . "\r\n"
+ . 'Content-type: text/plain; charset=UTF-8' . "\r\n"
+ . 'Content-transfer-encoding: quoted-printable' . "\r\n"
+ );
}
xml_status(0);
// NOTREACHED