}
-
/// \brief It returns an array of the "condition" (as number) and the date of the "most recent" report of the specified page (to decode as list($condition, $date);
///
/// If no condition is present, array(NULL, NULL) is returned
}
+/// \brief Returns true if the user is allowed to delete reports (in general)
+function wrReportUserMayDelete() {
+ global $wgUser;
+ global $wgWrReportDeleteMode;
+ return $wgWrReportDeleteMode == 'allow' || ($wgWrReportDeleteMode == 'loggedin' && $wgUser->isLoggedIn());
+}
+
+
+
// Parser Hook Functions
// ---------------------
$order = 'date_report desc, date_entry desc';
$rows = wrReportGetReports($conditions, $order);
if (count($rows) == 0) return wrReportSandboxParse("''Es wurden keine Bahnberichte in der Datenbank gefunden.''\n\n");
- return wrReportTableRender2($rows, WRREPORT_COMPACT, true);
+ return wrReportTableRender2($rows, WRREPORT_COMPACT, wrReportUserMayDelete());
}
$order = 'date_entry desc, date_report desc';
$rows = wrReportGetReports($conditions, $order);
if (count($rows) == 0) $wgOut->addWikiText("''Es wurden keine Bahnberichte in der Datenbank gefunden.''\n\n");
- $wgOut->addHTML(wrReportTableRender2($rows, WRREPORT_DETAIL, True));
+ $wgOut->addHTML(wrReportTableRender2($rows, WRREPORT_DETAIL, wrReportUserMayDelete()));
}
// Action deletepreview or delete
if ($delete_person_userid == 0) $delete_person_userid = NULL; // to store a NULL value in the database if no user is logged in instead of 0.
$delete_person_username = $wgUser->getName();
- // Check permissions
+ // Check permissions - see also function wrReportUserMayDelete, that does also check permissions but does not return an error message.
$errorMsg = NULL;
global $wgWrReportDeleteMode;
if ($wgWrReportDeleteMode == 'deny') $errorMsg = utf8_encode('Das Löschen von Rodelbahnberichten ist derzeit leider nicht erlaubt.');