This repository was archived by the owner on Oct 10, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathboot.php
More file actions
97 lines (80 loc) · 3.38 KB
/
boot.php
File metadata and controls
97 lines (80 loc) · 3.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<?php
$package = rex_addon::get('uikit_collection');
$path = $package->getConfig('path');
$prefix = $package->getConfig('prefix');
// Backend-spezifische Konfiguration
$backend_path = $package->getConfig('backend_path', $path);
$backend_prefix = $package->getConfig('backend_prefix', $prefix);
if ($prefix!='')
{
$prefix = '.'.$prefix;
}
if ($backend_prefix!='')
{
$backend_prefix = '.'.$backend_prefix;
}
if (rex_plugin::get('yform', 'manager')->isAvailable()) {
rex_yform::addTemplatePath($package->getPath('ytemplates'));
}
if (rex::isBackend() && rex::getUser()) {
rex_perm::register('uikit_modul[]');
// Backend-spezifische UIkit Assets verwenden
if ($backend_path) {
$backend_css_file = $backend_path.'/css/uikit'.$backend_prefix.'.min.css';
$backend_js_file = $backend_path.'/js/uikit.min.js';
$backend_js_icons_file = $backend_path.'/js/uikit-icons.min.js';
} else {
// Standard-Assets verwenden wenn kein Backend-Pfad gesetzt
$backend_css_file = $package->getAssetsUrl('css/uikit'.$backend_prefix.'.min.css');
$backend_js_file = $package->getAssetsUrl('js/uikit.min.js');
$backend_js_icons_file = $package->getAssetsUrl('js/uikit-icons.min.js');
}
rex_view::addCssFile($backend_css_file);
rex_view::addCssFile($package->getAssetsUrl('uikit_backend_fix.css'));
rex_view::addJsFile($backend_js_file);
rex_view::addJsFile($backend_js_icons_file);
}
// Frontend: UIkit Assets einbinden, wenn aktiviert
if (rex::isFrontend() && $package->getConfig('include_assets', false) === true) {
rex_extension::register('OUTPUT_FILTER', function(rex_extension_point $ep) use ($path, $prefix, $package) {
$content = $ep->getSubject();
// UIkit CSS - korrekte Pfade
if ($path) {
$cssFile = $path.'/css/uikit'.$prefix.'.min.css';
} else {
$cssFile = $package->getAssetsUrl('css/uikit'.$prefix.'.min.css');
}
$cssLink = '<link rel="stylesheet" href="'.$cssFile.'">';
// UIkit JS - korrekte Pfade
if ($path) {
$jsFile = $path.'/js/uikit.min.js';
$jsIconsFile = $path.'/js/uikit-icons.min.js';
} else {
$jsFile = $package->getAssetsUrl('js/uikit.min.js');
$jsIconsFile = $package->getAssetsUrl('js/uikit-icons.min.js');
}
$jsLink = '<script src="'.$jsFile.'"></script>';
$jsIconsLink = '<script src="'.$jsIconsFile.'"></script>';
// Im </head> einfügen
$content = str_replace('</head>', $cssLink."\n</head>", $content);
$content = str_replace('</body>', $jsLink."\n".$jsIconsLink."\n</body>", $content);
return $content;
});
}
// Füge die Optionen für das AddOn in der config.yml hinzu, wenn sie noch nicht vorhanden sind
if (!$package->hasConfig('include_assets')) {
$package->setConfig('include_assets', false);
}
if (!$package->hasConfig('path')) {
$package->setConfig('path', 'assets/addons/uikit_collection');
}
if (!$package->hasConfig('prefix')) {
$package->setConfig('prefix', '');
}
// Backend-spezifische Konfigurationen hinzufügen
if (!$package->hasConfig('backend_path')) {
$package->setConfig('backend_path', '');
}
if (!$package->hasConfig('backend_prefix')) {
$package->setConfig('backend_prefix', '');
}