aboutsummaryrefslogtreecommitdiffstats
path: root/include/items.php
diff options
context:
space:
mode:
authorfriendica <info@friendica.com>2013-11-06 18:28:36 -0800
committerfriendica <info@friendica.com>2013-11-06 18:28:36 -0800
commit6162de142c2765c770f43bf269f0444310551705 (patch)
tree6a3052455f58f8d3c9afe38ef993ca126757fe25 /include/items.php
parent8b9633e46b7cdd4241e369d8f9cf10cec14956d2 (diff)
downloadvolse-hubzilla-6162de142c2765c770f43bf269f0444310551705.tar.gz
volse-hubzilla-6162de142c2765c770f43bf269f0444310551705.tar.bz2
volse-hubzilla-6162de142c2765c770f43bf269f0444310551705.zip
allow private mail sender to set an expiration on their messages. Once expired the message is destroyed at both ends (subject to the granularity of the polling interval) and is gone. Officially it takes some form of language independent string like 2013/11/22, but English speakers can use anything that strtotime() understands, like "+30 minutes" or "next Tuesday".
Diffstat (limited to 'include/items.php')
-rwxr-xr-xinclude/items.php6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/items.php b/include/items.php
index 5fcbb0cc5..520ea7230 100755
--- a/include/items.php
+++ b/include/items.php
@@ -910,6 +910,7 @@ function encode_mail($item) {
$x['message_id'] = $item['mid'];
$x['message_parent'] = $item['parent_mid'];
$x['created'] = $item['created'];
+ $x['expires'] = $item['expires'];
$x['title'] = $item['title'];
$x['body'] = $item['body'];
$x['from'] = encode_item_xchan($item['from']);
@@ -939,6 +940,10 @@ function get_mail_elements($x) {
$arr['title'] = (($x['title'])? htmlentities($x['title'],ENT_COMPAT,'UTF-8',false) : '');
$arr['created'] = datetime_convert('UTC','UTC',$x['created']);
+ if((! array_key_exists('expires',$x)) || ($x['expires'] === '0000-00-00 00:00:00'))
+ $arr['expires'] = '0000-00-00 00:00:00';
+ else
+ $arr['expires'] = datetime_convert('UTC','UTC',$x['expires']);
$arr['mail_flags'] = 0;
@@ -2465,6 +2470,7 @@ function mail_store($arr) {
$arr['from_xchan'] = ((x($arr,'from_xchan')) ? notags(trim($arr['from_xchan'])) : '');
$arr['to_xchan'] = ((x($arr,'to_xchan')) ? notags(trim($arr['to_xchan'])) : '');
$arr['created'] = ((x($arr,'created') !== false) ? datetime_convert('UTC','UTC',$arr['created']) : datetime_convert());
+ $arr['expires'] = ((x($arr,'expires') !== false) ? datetime_convert('UTC','UTC',$arr['expires']) : '0000-00-00 00:00:00');
$arr['title'] = ((x($arr,'title')) ? notags(trim($arr['title'])) : '');
$arr['parent_mid'] = ((x($arr,'parent_mid')) ? notags(trim($arr['parent_mid'])) : '');
$arr['body'] = ((x($arr,'body')) ? trim($arr['body']) : '');