Version 1
[yaffs-website] / web / core / modules / dblog / dblog.admin.inc
diff --git a/web/core/modules/dblog/dblog.admin.inc b/web/core/modules/dblog/dblog.admin.inc
new file mode 100644 (file)
index 0000000..1af89a6
--- /dev/null
@@ -0,0 +1,43 @@
+<?php
+
+/**
+ * @file
+ * Administrative page callbacks for the Database Logging module.
+ */
+
+use Drupal\Core\Logger\RfcLogLevel;
+
+/**
+ * Creates a list of database log administration filters that can be applied.
+ *
+ * @return array
+ *   Associative array of filters. The top-level keys are used as the form
+ *   element names for the filters, and the values are arrays with the following
+ *   elements:
+ *   - title: Title of the filter.
+ *   - where: The filter condition.
+ *   - options: Array of options for the select list for the filter.
+ */
+function dblog_filters() {
+  $filters = [];
+
+  foreach (_dblog_get_message_types() as $type) {
+    $types[$type] = t($type);
+  }
+
+  if (!empty($types)) {
+    $filters['type'] = [
+      'title' => t('Type'),
+      'where' => "w.type = ?",
+      'options' => $types,
+    ];
+  }
+
+  $filters['severity'] = [
+    'title' => t('Severity'),
+    'where' => 'w.severity = ?',
+    'options' => RfcLogLevel::getLevels(),
+  ];
+
+  return $filters;
+}