X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2FContact.php;h=14e1a52cddfdb3400cc6cf54f9ce3821432f38e4;hb=788a6626ef4bd9607f33bbffd0eea0c05a4578c0;hp=2523fc0231a594189b057738873140a3e331b748;hpb=2e2bb5e8b0d2ab4a732cafd2ada30a76c4883177;p=friendica.git diff --git a/include/Contact.php b/include/Contact.php index 2523fc0231..14e1a52cdd 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']); } } @@ -209,7 +224,7 @@ function contact_photo_menu($contact) { ); - $args = array('contact' => $contact, 'menu' => $menu); + $args = array('contact' => $contact, 'menu' => &$menu); call_hooks('contact_photo_menu', $args);