From 28a1c14bf82d9d0a8311f8f18746d0b4cd821314 Mon Sep 17 00:00:00 2001 From: emkael Date: Fri, 1 Feb 2019 14:38:59 +0100 Subject: Weaponizing cache files --- _cron/check-empty-cache-files | 1 - _cron/fb-cache-files | 2 ++ bin/refresh-fb-cache.php | 34 ++++++++++++++++++++++++++++++++++ providers/Facebook.php | 21 ++++++++++++--------- 4 files changed, 48 insertions(+), 10 deletions(-) delete mode 100644 _cron/check-empty-cache-files create mode 100644 _cron/fb-cache-files create mode 100755 bin/refresh-fb-cache.php diff --git a/_cron/check-empty-cache-files b/_cron/check-empty-cache-files deleted file mode 100644 index 41a5938..0000000 --- a/_cron/check-empty-cache-files +++ /dev/null @@ -1 +0,0 @@ -10 * * * * find $SITEPATH/cache -size 6c diff --git a/_cron/fb-cache-files b/_cron/fb-cache-files new file mode 100644 index 0000000..c6b2cb1 --- /dev/null +++ b/_cron/fb-cache-files @@ -0,0 +1,2 @@ +*/10 * * * * $SITEPATH/bin/refresh-fb-cache.php +10 * * * * find $SITEPATH/cache -size 6c diff --git a/bin/refresh-fb-cache.php b/bin/refresh-fb-cache.php new file mode 100755 index 0000000..35c7822 --- /dev/null +++ b/bin/refresh-fb-cache.php @@ -0,0 +1,34 @@ +#!/usr/bin/env php + TRUE]); + if (!$provider->get()) { + throw new \Exception(sprintf('Feed %s failed to fetch!', $feed)); + } +} + +?> diff --git a/providers/Facebook.php b/providers/Facebook.php index e2afef6..2126189 100644 --- a/providers/Facebook.php +++ b/providers/Facebook.php @@ -7,7 +7,17 @@ require_once('Item.php'); class Facebook extends \Providers\HtmlFeed { - protected $_cacheTimeout = '5 minutes'; + protected $_cacheTimeout = '300 years'; + + public function __construct($feed, $options) { + parent::__construct($feed, $options); + if (isset($this->_options['dump'])) { + $this->_options['force'] = TRUE; + } + if (isset($this->_options['force'])) { + $this->_cacheTimeout = '1 second'; + } + } protected function _getCachePath() { return '../cache/facebook.%s'; @@ -18,14 +28,7 @@ class Facebook extends \Providers\HtmlFeed { } protected function __getUserAgent() { - return 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0'; - } - - protected function _getItems() { - if (isset($this->_options['dump'])) { - $this->_cacheTimeout = '1 second'; - } - return parent::_getItems(); + return 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0.1'; } protected function _parseFeedContent($tree) { -- cgit v1.2.3