. * */ namespace Friendica\Worker; use Friendica\Database\DBA; use Friendica\DI; use Friendica\Model\Photo; use Friendica\Util\Proxy as ProxyUtils; /** * Clear cache entries */ class ClearCache { public static function execute() { $a = DI::app(); // clear old cache DI::cache()->clear(); // clear old item cache files clear_cache(); // clear cache for photos clear_cache($a->getBasePath(), $a->getBasePath() . "/photo"); // clear smarty cache clear_cache($a->getBasePath() . "/view/smarty3/compiled", $a->getBasePath() . "/view/smarty3/compiled"); // clear cache for image proxy if (!DI::config()->get("system", "proxy_disabled")) { clear_cache($a->getBasePath(), $a->getBasePath() . "/proxy"); $cachetime = DI::config()->get('system', 'proxy_cache_time'); if (!$cachetime) { $cachetime = ProxyUtils::DEFAULT_TIME; } $condition = ['`uid` = 0 AND `resource-id` LIKE "pic:%" AND `created` < NOW() - INTERVAL ? SECOND', $cachetime]; Photo::delete($condition); } // Delete the cached OEmbed entries that are older than three month DBA::delete('oembed', ["`created` < NOW() - INTERVAL 3 MONTH"]); // Delete the cached "parsed_url" entries that are expired DBA::delete('parsed_url', ["`expires` < NOW()"]); } }