X-Git-Url: https://git.toastfreeware.priv.at/philipp/winterrodeln/mediawiki_extensions/wrreport.git/blobdiff_plain/7b2b9c7a4343f88252bafc0fbb0eb45aa2572354..9f035cccfbec3869cd78738f46d4ec8bae58a985:/wrreport_body.php diff --git a/wrreport_body.php b/wrreport_body.php index 00c9e78..824307c 100644 --- a/wrreport_body.php +++ b/wrreport_body.php @@ -7,7 +7,9 @@ // $wgWrReportBlackListAll = array(); // array of page names where reports disallowed for all users. Example: array('Birgitzer Alm (vom Adelshof)'); // $wgWrReportBlackListStrangers = array(); // array of page names where reports are disallowed for not logged in users // $wgWrReportDeleteMode = 'loggedin'; // 'allow', 'loggedin', 'deny' -// $wgWrReportFeedRoot = 'http://www.winterrodeln.org/feed'; // root URL of the Winterrodeln feed without trailing slash +// $wgWrReportFeedRoot = 'https://www.winterrodeln.org/feed'; // root URL of the Winterrodeln feed without trailing slash +// $wgWrReportEnableIntermaps = true; // show Intermaps sledrun information column +// $wgWrReportIntermapsValidDays = 1; // number of days the last check of the Intermaps data may be in the past // // // The following tags are supported: @@ -773,6 +775,8 @@ class WrReport { global $wgWrReportMode; // e.g. 'summer' global $wgWrReportBlackListAll; global $wgWrReportBlackListStrangers; + global $wgWrReportEnableIntermaps; + global $wgWrReportIntermapsValidDays; // Determine, whether the user is allowed to make a new report $userMayReport = ($wgWrReportMode == 'allow' || ($wgWrReportMode == 'loggedin' && $wgUser->isLoggedIn())); @@ -788,7 +792,7 @@ class WrReport { $tr->appendElement('th')->appendElement('img', array('src' => '/vorlagen/s_lift.png', 'alt' => wfMessage('wrreport-icon-lift')->text(), 'title' => wfMessage('wrreport-icon-lift')->text())); $tr->appendElement('th')->appendElement('img', array('src' => '/vorlagen/s_walk.png', 'alt' => wfMessage('wrreport-icon-walkupseparate')->text(), 'title' => wfMessage('wrreport-icon-walkupseparate')->text())); $tr->appendElement('th')->appendElement('img', array('src' => '/vorlagen/s_bus.png', 'alt' => wfMessage('wrreport-icon-publictransport')->text(), 'title' => wfMessage('wrreport-icon-publictransport')->text())); - if ($wgWrReportMode != 'summer') $tr->appendElement('th')->appendElement('img', array('src' => '/vorlagen/s_open.png', 'alt' => wfMessage('wrreport-icon-intermaps-status')->text(), 'title' => wfMessage('wrreport-icon-intermaps-status')->text())); + if ($wgWrReportMode != 'summer' && $wgWrReportEnableIntermaps) $tr->appendElement('th')->appendElement('img', array('src' => '/vorlagen/s_open.png', 'alt' => wfMessage('wrreport-icon-intermaps-status')->text(), 'title' => wfMessage('wrreport-icon-intermaps-status')->text())); $tr->appendElement('th')->appendText(wfMessage('wrreport-sledrun')->text()); if ($wgWrReportMode != 'summer') $tr->appendElement('th')->appendText(wfMessage('wrreport-newreport-condition')->text()); $tr->appendElement('th')->appendText(wfMessage('wrreport-sledrun-information')->text()); @@ -797,6 +801,7 @@ class WrReport { $tr->appendElement('th')->appendText(wfMessage('wrreport-sledrun-length')->text()); // Rows + $now = new DateTime(); while ($row = $dbr->fetchObject($res)) { $title = Title::newFromRow($row); $tr = $table->appendElement('tr'); @@ -820,17 +825,18 @@ class WrReport { $td = $tr->appendElement('td'); if ($row->public_transport and $row->public_transport != 5) $td->appendElement('img', array('src' => '/vorlagen/s_bus.png', 'alt' => wfMessage('wrreport-icon-publictransport')->text(), 'title' => wfMessage('wrreport-icon-publictransport')->text())); - if ($wgWrReportMode != 'summer') { + if ($wgWrReportMode != 'summer' && $wgWrReportEnableIntermaps) { $td = $tr->appendElement('td'); if ($row->show_status) { - if ($row->status == 'open') { - $msg = wfMessage('wrreport-icon-intermaps-open', $row->last_update)->text(); - $td->appendElement('img', array('src' => '/vorlagen/s_open.png', 'alt' => $msg, 'title' => $msg)); - } elseif ($row->status == 'closed') { - $msg = wfMessage('wrreport-icon-intermaps-closed', $row->last_update)->text(); - $td->appendElement('img', array('src' => '/vorlagen/s_closed.png', 'alt' => $msg, 'title' => $msg)); - } else { - $td->appendText($row->status); + $date_last_check = new DateTime($row->last_check); + if ($date_last_check->diff($now)->days <= $wgWrReportIntermapsValidDays) { + if ($row->status == 'open') { + $msg = wfMessage('wrreport-icon-intermaps-open', $row->last_update)->text(); + $td->appendElement('img', array('src' => '/vorlagen/s_open.png', 'alt' => $msg, 'title' => $msg)); + } elseif ($row->status == 'closed') { + $msg = wfMessage('wrreport-icon-intermaps-closed', $row->last_update)->text(); + $td->appendElement('img', array('src' => '/vorlagen/s_closed.png', 'alt' => $msg, 'title' => $msg)); + } } } }