diff options
Diffstat (limited to 'include/Contact.php')
-rw-r--r-- | include/Contact.php | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/include/Contact.php b/include/Contact.php index 675d1c81e..14e1a52cd 100644 --- a/include/Contact.php +++ b/include/Contact.php @@ -139,6 +139,10 @@ function terminate_friendship($user,$self,$contact) { if(! function_exists('mark_for_death')) { function mark_for_death($contact) { + + if($contact['archive']) + return; + if($contact['term-date'] == '0000-00-00 00:00:00') { q("UPDATE `contact` SET `term-date` = '%s' WHERE `id` = %d LIMIT 1", dbesc(datetime_convert()), @@ -146,12 +150,23 @@ function mark_for_death($contact) { ); } else { + + // TODO: We really should send a notification to the owner after 2-3 weeks + // so they won't be surprised when the contact vanishes and can take + // remedial action if this was a serious mistake or glitch + $expiry = $contact['term-date'] . ' + 32 days '; if(datetime_convert() > datetime_convert('UTC','UTC',$expiry)) { // relationship is really truly dead. + // archive them rather than delete + // though if the owner tries to unarchive them we'll start the whole process over again + + q("update contact set `archive` = 1 where id = %d limit 1", + intval($contact['id']) + ); - contact_remove($contact['id']); + //contact_remove($contact['id']); } } |