progress however tedious
This commit is contained in:
parent
364266e7a0
commit
672da80282
5
done
5
done
@ -28,11 +28,10 @@ include/
|
|||||||
conversation.php
|
conversation.php
|
||||||
+ cronhooks.php
|
+ cronhooks.php
|
||||||
? crypto.php
|
? crypto.php
|
||||||
datetime.php
|
+ datetime.php (todo: html removal)
|
||||||
? dba.php
|
? dba.php
|
||||||
delivery.php
|
delivery.php
|
||||||
directory.php
|
+ directory.php
|
||||||
EmailNotification.php
|
|
||||||
- email.php
|
- email.php
|
||||||
enotify.php
|
enotify.php
|
||||||
event.php
|
event.php
|
||||||
|
@ -1,59 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
|
|
||||||
class EmailNotification {
|
|
||||||
/**
|
|
||||||
* Send a multipart/alternative message with Text and HTML versions
|
|
||||||
*
|
|
||||||
* @param fromName name of the sender
|
|
||||||
* @param fromEmail email fo the sender
|
|
||||||
* @param replyTo replyTo address to direct responses
|
|
||||||
* @param toEmail destination email address
|
|
||||||
* @param messageSubject subject of the message
|
|
||||||
* @param htmlVersion html version of the message
|
|
||||||
* @param textVersion text only version of the message
|
|
||||||
*/
|
|
||||||
static public function sendTextHtmlEmail($fromName,$fromEmail,$replyTo,$toEmail,$messageSubject,$htmlVersion,$textVersion) {
|
|
||||||
|
|
||||||
$fromName = email_header_encode($fromName,'UTF-8');
|
|
||||||
$messageSubject = email_header_encode($messageSubject,'UTF-8');
|
|
||||||
|
|
||||||
|
|
||||||
// generate a mime boundary
|
|
||||||
$mimeBoundary =rand(0,9)."-"
|
|
||||||
.rand(10000000000,9999999999)."-"
|
|
||||||
.rand(10000000000,9999999999)."=:"
|
|
||||||
.rand(10000,99999);
|
|
||||||
|
|
||||||
// generate a multipart/alternative message header
|
|
||||||
$messageHeader =
|
|
||||||
"From: {$fromName} <{$fromEmail}>\n" .
|
|
||||||
"Reply-To: {$replyTo}\n" .
|
|
||||||
"MIME-Version: 1.0\n" .
|
|
||||||
"Content-Type: multipart/alternative; boundary=\"{$mimeBoundary}\"";
|
|
||||||
|
|
||||||
// assemble the final multipart message body with the text and html types included
|
|
||||||
$textBody = chunk_split(base64_encode($textVersion));
|
|
||||||
$htmlBody = chunk_split(base64_encode($htmlVersion));
|
|
||||||
$multipartMessageBody =
|
|
||||||
"--" . $mimeBoundary . "\n" . // plain text section
|
|
||||||
"Content-Type: text/plain; charset=UTF-8\n" .
|
|
||||||
"Content-Transfer-Encoding: base64\n\n" .
|
|
||||||
$textBody . "\n" .
|
|
||||||
"--" . $mimeBoundary . "\n" . // text/html section
|
|
||||||
"Content-Type: text/html; charset=UTF-8\n" .
|
|
||||||
"Content-Transfer-Encoding: base64\n\n" .
|
|
||||||
$htmlBody . "\n" .
|
|
||||||
"--" . $mimeBoundary . "--\n"; // message ending
|
|
||||||
|
|
||||||
// send the message
|
|
||||||
$res = mail(
|
|
||||||
$toEmail, // send to address
|
|
||||||
$messageSubject, // subject
|
|
||||||
$multipartMessageBody, // message body
|
|
||||||
$messageHeader // message headers
|
|
||||||
);
|
|
||||||
logger("sendTextHtmlEmail: END");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
?>
|
|
@ -445,58 +445,3 @@ function cal($y = 0,$m = 0, $links = false, $class='') {
|
|||||||
}}
|
}}
|
||||||
|
|
||||||
|
|
||||||
function update_contact_birthdays() {
|
|
||||||
|
|
||||||
// This only handles foreign or alien networks where a birthday has been provided.
|
|
||||||
// In-network birthdays are handled within local_delivery
|
|
||||||
|
|
||||||
$r = q("SELECT * FROM contact WHERE `bd` != '' AND `bd` != '0000-00-00' AND SUBSTRING(`bd`,1,4) != `bdyear` ");
|
|
||||||
if(count($r)) {
|
|
||||||
foreach($r as $rr) {
|
|
||||||
|
|
||||||
logger('update_contact_birthday: ' . $rr['bd']);
|
|
||||||
|
|
||||||
$nextbd = datetime_convert('UTC','UTC','now','Y') . substr($rr['bd'],4);
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* Add new birthday event for this person
|
|
||||||
*
|
|
||||||
* $bdtext is just a readable placeholder in case the event is shared
|
|
||||||
* with others. We will replace it during presentation to our $importer
|
|
||||||
* to contain a sparkle link and perhaps a photo.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
$bdtext = sprintf( t('%s\'s birthday'), $rr['name']);
|
|
||||||
$bdtext2 = sprintf( t('Happy Birthday %s'), ' [url=' . $rr['url'] . ']' . $rr['name'] . '[/url]') ;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$r = q("INSERT INTO `event` (`uid`,`cid`,`created`,`edited`,`start`,`finish`,`summary`,`desc`,`type`,`adjust`)
|
|
||||||
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%d' ) ",
|
|
||||||
intval($rr['uid']),
|
|
||||||
intval($rr['id']),
|
|
||||||
dbesc(datetime_convert()),
|
|
||||||
dbesc(datetime_convert()),
|
|
||||||
dbesc(datetime_convert('UTC','UTC', $nextbd)),
|
|
||||||
dbesc(datetime_convert('UTC','UTC', $nextbd . ' + 1 day ')),
|
|
||||||
dbesc($bdtext),
|
|
||||||
dbesc($bdtext2),
|
|
||||||
dbesc('birthday'),
|
|
||||||
intval(0)
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
// update bdyear
|
|
||||||
|
|
||||||
q("UPDATE `contact` SET `bdyear` = '%s', `bd` = '%s' WHERE `uid` = %d AND `id` = %d LIMIT 1",
|
|
||||||
dbesc(substr($nextbd,0,4)),
|
|
||||||
dbesc($nextbd),
|
|
||||||
intval($rr['uid']),
|
|
||||||
intval($rr['id'])
|
|
||||||
);
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@ -81,8 +81,6 @@ function poller_run($argv, $argc){
|
|||||||
|
|
||||||
if($d2 != intval($d1)) {
|
if($d2 != intval($d1)) {
|
||||||
|
|
||||||
update_contact_birthdays();
|
|
||||||
|
|
||||||
update_suggestions();
|
update_suggestions();
|
||||||
|
|
||||||
set_config('system','last_expire_day',$d2);
|
set_config('system','last_expire_day',$d2);
|
||||||
|
Reference in New Issue
Block a user