X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fping.php;h=ba496a70bd87bdbbe7d00f6431077c8be192eabe;hb=4e5b926d2360671ceac530a2ba6550bdcd1dbf51;hp=cde03969f46b394e2091f0723da6168e9ff811ca;hpb=f42d76858655fc62dfbd05c0bcf2f6a49ea0bf30;p=friendica.git diff --git a/mod/ping.php b/mod/ping.php index cde03969f4..ba496a70bd 100644 --- a/mod/ping.php +++ b/mod/ping.php @@ -5,6 +5,7 @@ require_once('include/ForumManager.php'); require_once('include/group.php'); require_once('mod/proxy.php'); require_once('include/xml.php'); +require_once('include/cache.php'); /** * @brief Outputs the counts and the lists of various notifications @@ -195,16 +196,23 @@ function ping_init(App $a) } } - $ev = qu("SELECT count(`event`.`id`) AS total, type, start, adjust FROM `event` - WHERE `event`.`uid` = %d AND `start` < '%s' AND `finish` > '%s' and `ignore` = 0 - ORDER BY `start` ASC ", - intval(local_user()), - dbesc(datetime_convert('UTC', 'UTC', 'now + 7 days')), - dbesc(datetime_convert('UTC', 'UTC', 'now')) - ); + $cachekey = "ping_init:".local_user(); + $ev = Cache::get($cachekey); + if (is_null($ev)) { + $ev = qu("SELECT type, start, adjust FROM `event` + WHERE `event`.`uid` = %d AND `start` < '%s' AND `finish` > '%s' and `ignore` = 0 + ORDER BY `start` ASC ", + intval(local_user()), + dbesc(datetime_convert('UTC', 'UTC', 'now + 7 days')), + dbesc(datetime_convert('UTC', 'UTC', 'now')) + ); + if (dbm::is_result($ev)) { + Cache::set($cachekey, $ev, CACHE_HOUR); + } + } if (dbm::is_result($ev)) { - $all_events = intval($ev[0]['total']); + $all_events = count($ev); if ($all_events) { $str_now = datetime_convert('UTC', $a->timezone, 'now', 'Y-m-d');