From 8502031eb9ade71ce9e64daaf608bfec6389b9fb Mon Sep 17 00:00:00 2001 From: int2001 Date: Sun, 18 Feb 2024 07:51:00 +0000 Subject: [PATCH] Added Caching for ContestCalendar --- application/controllers/Contestcalendar.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/application/controllers/Contestcalendar.php b/application/controllers/Contestcalendar.php index 197b5d062..ac8eda27e 100644 --- a/application/controllers/Contestcalendar.php +++ b/application/controllers/Contestcalendar.php @@ -8,8 +8,13 @@ class Contestcalendar extends CI_Controller { $data['page_title'] = "Contest Calendar"; - $url = 'https://www.contestcalendar.com/calendar.rss'; - $data['rss'] = simplexml_load_file($url, null, LIBXML_NOCDATA); + $this->load->driver('cache', array('adapter' => 'file', 'backup' => 'file')); + $rssUrl = 'https://www.contestcalendar.com/calendar.rss'; + if (!$rssRawData = $this->cache->get('RssRawContestCal')) { + $rssRawData = file_get_contents($rssUrl, true); + $this->cache->save('RssRawContestCal', $rssRawData, (60*12)); + } + $data['rss'] = simplexml_load_string($rssRawData, null, LIBXML_NOCDATA); $footerData['scripts'] = [ 'assets/js/sections/dxcalendar.js?' . filemtime(realpath(__DIR__ . "/../../assets/js/sections/dxcalendar.js"))