aboutsummaryrefslogtreecommitdiffstats
path: root/public/matomo/matomo-proxy.php
diff options
context:
space:
mode:
Diffstat (limited to 'public/matomo/matomo-proxy.php')
-rw-r--r--public/matomo/matomo-proxy.php36
1 files changed, 36 insertions, 0 deletions
diff --git a/public/matomo/matomo-proxy.php b/public/matomo/matomo-proxy.php
new file mode 100644
index 0000000..c049bd6
--- /dev/null
+++ b/public/matomo/matomo-proxy.php
@@ -0,0 +1,36 @@
+<?php
+
+define('MATOMO_PROXY_FROM_ENDPOINT', 1);
+
+$path = 'index.php';
+
+$SUPPORTED_METHODS = [
+ 'CoreAdminHome.optOut'
+];
+$VALID_FILES = [
+ 'plugins/CoreAdminHome/javascripts/optOut.js'
+];
+
+$module = isset($_GET['module']) ? $_GET['module'] : null;
+if (empty($module)) {
+ $module = isset($_POST['module']) ? $_POST['module'] : null;
+}
+
+$action = isset($_GET['action']) ? $_GET['action'] : null;
+if (empty($action)) {
+ $action = isset($_POST['action']) ? $_POST['action'] : null;
+}
+
+$filerequest = isset($_GET['file']) ? $_GET['file'] : null;
+if (empty($filerequest)) {
+ $filerequest = isset($_POST['file']) ? $_POST['file'] : null;
+}
+
+if (!(isset($filerequest) && in_array($filerequest, $VALID_FILES))
+ && !(isset($module) && isset($action) && in_array("$module.$action", $SUPPORTED_METHODS))
+) {
+ http_response_code(404);
+ exit;
+}
+
+include __DIR__ . '/proxy.php';