Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Steur <tsteur@users.noreply.github.com>2020-06-17 23:52:36 +0300
committerGitHub <noreply@github.com>2020-06-17 23:52:36 +0300
commitd25356a09f9913f575201b4bdf0abd6827cd1e47 (patch)
tree54c4b6fb98896d39daf674b9265cda425a9550db /LegacyAutoloader.php
parent5dd7d4fbc323cf8a506d928cb0827f4f7d656a2e (diff)
Add legacy autoloader to support Matomo namespaces in 3.X (#16069)
Diffstat (limited to 'LegacyAutoloader.php')
-rw-r--r--LegacyAutoloader.php31
1 files changed, 31 insertions, 0 deletions
diff --git a/LegacyAutoloader.php b/LegacyAutoloader.php
new file mode 100644
index 0000000000..44b4a62e28
--- /dev/null
+++ b/LegacyAutoloader.php
@@ -0,0 +1,31 @@
+<?php
+
+class LegacyAutoloader
+{
+ public function __construct()
+ {
+ spl_autoload_register(array($this, 'load_class'));
+ }
+
+ public static function register()
+ {
+ new LegacyAutoloader();
+ }
+
+ public function load_class($className)
+ {
+ if (strpos($className, 'Matomo\\') === 0) {
+ $newName = 'Piwik' . substr($className, 6);
+ if (class_exists($newName) && !class_exists($className, false)) {
+ @class_alias($newName, $className);
+ }
+ } elseif (strpos($className, 'Piwik\\') === 0) {
+ $newName = 'Matomo' . substr($className, 5);
+ if (class_exists($newName) && !class_exists($className, false)) {
+ @class_alias($newName, $className);
+ }
+ }
+ }
+}
+
+LegacyAutoloader::register(); \ No newline at end of file