mirror of
https://github.com/friendica/friendica
synced 2025-04-30 13:44:22 +02:00
Issue 13955: Check for publish date upon receival
This commit is contained in:
parent
f2ccce05b8
commit
bae7644d6f
5 changed files with 48 additions and 40 deletions
|
@ -1105,4 +1105,35 @@ class Item
|
|||
Tag::store($toUriId, $receiver['type'], $receiver['name'], $receiver['url']);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if the item is too old
|
||||
*
|
||||
* @param string $created
|
||||
* @param integer $uid
|
||||
* @return boolean item is too old
|
||||
*/
|
||||
public function isTooOld(string $created, int $uid = 0): bool
|
||||
{
|
||||
// check for create date and expire time
|
||||
$expire_interval = DI::config()->get('system', 'dbclean-expire-days', 0);
|
||||
|
||||
if ($uid) {
|
||||
$user = DBA::selectFirst('user', ['expire'], ['uid' => $uid]);
|
||||
if (DBA::isResult($user) && ($user['expire'] > 0) && (($user['expire'] < $expire_interval) || ($expire_interval == 0))) {
|
||||
$expire_interval = $user['expire'];
|
||||
}
|
||||
}
|
||||
|
||||
if (($expire_interval > 0) && !empty($created)) {
|
||||
$expire_date = time() - ($expire_interval * 86400);
|
||||
$created_date = strtotime($created);
|
||||
if ($created_date < $expire_date) {
|
||||
Logger::notice('Item created before expiration interval.', ['created' => date('c', $created_date), 'expired' => date('c', $expire_date)]);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue