function GetRecentChangeContent() { global $k_aConfig, $k_strWikiURI; define('CookieName', 'RecentChanges'); $astrList = GetLatestChangePageList(); // Récupération de la dernière visite $dateLastVisit = isset($_COOKIE[CookieName]) ? $_COOKIE[CookieName] : 0; $strContent = ''; $strDayPrev = ''; foreach ($astrList as $strEntry => $date) { $strDay = substr($date, 0, 8); $strTime = substr($date, 8); if ($strDay != $strDayPrev) { $strContent .= "\n" . '!' . substr($strDay, 0, 4) . '-' . substr($strDay, 4, 2) . '-' . substr($strDay, 6, 2); } $bNew = $date - $dateLastVisit > 0; $strContent .= "\n" . '- '; if ($bNew) { $strContent .= '__'; } $strContent .= substr($strTime, 0, 2) . ':' . substr($strTime, 2, 2) . ' [' . $strEntry . ']'; if ($bNew) { $strContent .= '__'; } $strDayPrev = $strDay; } // Enregistrement de la dernière date $dateLatest = reset($astrList); setcookie(CookieName, $dateLatest, time() + 3600 * 24 * 365, $k_strWikiURI); return $strContent; }
$strSecond = substr($strDate, 12, 2); $date = mktime($strHour, $strMinute, $strSecond, $strMonth, $strDay, $strYear); return gmdate('D, d M Y H:i:s', $date) . ' GMT'; } function FormatLongIso8601Date($strDate) { $strYear = substr($strDate, 0, 4); $strMonth = substr($strDate, 4, 2); $strDay = substr($strDate, 6, 2); $strHour = substr($strDate, 8, 2); $strMinute = substr($strDate, 10, 2); $strSecond = substr($strDate, 12, 2); $date = mktime($strHour, $strMinute, $strSecond, $strMonth, $strDay, $strYear); return date('Y-m-d H:i:s', $date); } $astrLatestChanges = GetLatestChangePageList(); $strLatestDate = FormatRfc1123Date(reset($astrLatestChanges)); $strDomain = 'http://' . $_SERVER['SERVER_NAME']; $strURI = $strDomain . $k_strWikiURI; $aEntries = array(); foreach ($astrLatestChanges as $strPage => $strDate) { $entry = array(); $entry['page'] = htmlspecialchars($strPage); $entry['link'] = $strDomain . GetScriptURI('Wiki') . rawurlencode($strPage); $entry['date'] = $strDate; $aEntries[] = $entry; } header('Content-Type: application/xml; charset=UTF-8'); echo '<?xml version="1.0" encoding="UTF-8"?>' . "\n"; //////////////////////////////////////////////////////////////////////////////// ?>