diff --git a/core/src/Controllers/Frame.php b/core/src/Controllers/Frame.php index 26a2920076..c29d683a2f 100644 --- a/core/src/Controllers/Frame.php +++ b/core/src/Controllers/Frame.php @@ -318,7 +318,7 @@ protected function menuBarsIcon(): string protected function evoLogoIcon(): string { - $path = MODX_MANAGER_PATH . 'media/style/common/images/misc/logo-evo.svg'; + $path = EVO_MANAGER_PATH . 'media/style/common/images/misc/logo-evo.svg'; if (is_file($path)) { $svg = file_get_contents($path); if ($svg !== false) { diff --git a/core/src/Controllers/Users/LogInOut.php b/core/src/Controllers/Users/LogInOut.php index 4f81a64a37..97e4db6625 100644 --- a/core/src/Controllers/Users/LogInOut.php +++ b/core/src/Controllers/Users/LogInOut.php @@ -50,7 +50,7 @@ public function logout() session_destroy(); } // show login screen - header('Location: ' . MODX_MANAGER_URL); + header('Location: ' . EVO_MANAGER_URL); exit(); } @@ -105,7 +105,7 @@ public function simpleLogin() header($header); } } else { - $header = 'Location: ' . MODX_MANAGER_URL; + $header = 'Location: ' . EVO_MANAGER_URL; if ($ajax === 1) { echo $header; } else { @@ -124,7 +124,7 @@ public function loginFromHash() exit(); } - header('Location: ' . MODX_MANAGER_URL.'#?a=28'); + header('Location: ' . EVO_MANAGER_URL . '#?a=28'); exit(); } diff --git a/core/src/ManagerTheme.php b/core/src/ManagerTheme.php index 36be39ece8..1bb5d9852d 100644 --- a/core/src/ManagerTheme.php +++ b/core/src/ManagerTheme.php @@ -184,8 +184,8 @@ public function __construct(CoreInterface $core, string $theme) { $this->core = $core; - $this->getCore()['view']->addNamespace('manager', MODX_MANAGER_PATH . '/media/style/' . $theme . '/views/'); - $this->getCore()['view']->addNamespace('manager', MODX_MANAGER_PATH . '/views/'); + $this->getCore()['view']->addNamespace('manager', EVO_MANAGER_PATH . '/media/style/' . $theme . '/views/'); + $this->getCore()['view']->addNamespace('manager', EVO_MANAGER_PATH . '/views/'); $this->theme = $theme; @@ -317,12 +317,12 @@ protected function loadStyle() */ public function getThemeDir($full = true): string { - return ($full ? MODX_MANAGER_PATH : '') . 'media/style/' . $this->getTheme() . '/'; + return ($full ? EVO_MANAGER_PATH : '') . 'media/style/' . $this->getTheme() . '/'; } public function getThemeUrl(): string { - return MODX_MANAGER_URL . $this->getThemeDir(false); + return EVO_MANAGER_URL . $this->getThemeDir(false); } /** @@ -363,10 +363,10 @@ public function getFileProcessor($filepath, $theme = null) $theme = $this->getTheme(); } - if (is_file(MODX_MANAGER_PATH . '/media/style/' . $theme . '/' . $filepath)) { - $element = MODX_MANAGER_PATH . '/media/style/' . $theme . '/' . $filepath; + if (is_file(EVO_MANAGER_PATH . '/media/style/' . $theme . '/' . $filepath)) { + $element = EVO_MANAGER_PATH . '/media/style/' . $theme . '/' . $filepath; } else { - $element = MODX_MANAGER_PATH . ltrim($filepath, '/'); + $element = EVO_MANAGER_PATH . ltrim($filepath, '/'); } return $element; diff --git a/core/src/Traits/Models/ManagerActions.php b/core/src/Traits/Models/ManagerActions.php index 70903439a5..0e9a2d2d64 100644 --- a/core/src/Traits/Models/ManagerActions.php +++ b/core/src/Traits/Models/ManagerActions.php @@ -27,6 +27,6 @@ public function makeUrl($type, bool $full = false, array $options = []) :string $out = '#'; } - return ($full ? MODX_MANAGER_URL : '') . $out; + return ($full ? EVO_MANAGER_URL : '') . $out; } } diff --git a/core/src/Traits/Path.php b/core/src/Traits/Path.php index 70ce151dc0..7c16f63298 100644 --- a/core/src/Traits/Path.php +++ b/core/src/Traits/Path.php @@ -77,7 +77,7 @@ public function environmentPath() */ public function publicPath($path = '') { - return MODX_BASE_PATH . $path; + return EVO_BASE_PATH . $path; } /** @@ -184,7 +184,7 @@ public function getManagerPath() */ public function getManagerUrl() { - return MODX_MANAGER_URL; + return EVO_MANAGER_URL; } /** diff --git a/core/src/Traits/Settings.php b/core/src/Traits/Settings.php index 0f8cd273e7..bdfeeb58d9 100644 --- a/core/src/Traits/Settings.php +++ b/core/src/Traits/Settings.php @@ -126,16 +126,16 @@ public function getSettings() } // store base_url and base_path inside config array - $this->setConfig('base_url', MODX_BASE_URL); - $this->setConfig('base_path', MODX_BASE_PATH); - $this->setConfig('site_url', MODX_SITE_URL); - $this->setConfig('site_manager_path', MODX_MANAGER_PATH); + $this->setConfig('base_url', EVO_BASE_URL); + $this->setConfig('base_path', EVO_BASE_PATH); + $this->setConfig('site_url', EVO_SITE_URL); + $this->setConfig('site_manager_path', EVO_MANAGER_PATH); $this->error_reporting = $this->getConfig('error_reporting'); $this->setConfig( 'filemanager_path', str_replace( '[(base_path)]', - MODX_BASE_PATH, + EVO_BASE_PATH, $this->getConfig('filemanager_path') ) ); @@ -143,7 +143,7 @@ public function getSettings() 'snapshot_path', str_replace( '[(base_path)]', - MODX_BASE_PATH, + EVO_BASE_PATH, $this->getConfig('snapshot_path') ) ); @@ -151,7 +151,7 @@ public function getSettings() 'rb_base_dir', str_replace( '[(base_path)]', - MODX_BASE_PATH, + EVO_BASE_PATH, $this->getConfig('rb_base_dir') ) ); diff --git a/core/tests/Unit/ManagerPathConstantUsageTest.php b/core/tests/Unit/ManagerPathConstantUsageTest.php new file mode 100644 index 0000000000..1105d24684 --- /dev/null +++ b/core/tests/Unit/ManagerPathConstantUsageTest.php @@ -0,0 +1,125 @@ +assertSame(EVO_BASE_PATH, $carrier->publicPath()); + $this->assertSame(EVO_MANAGER_URL, $carrier->getManagerUrl()); + } + + public function testManagerActionsFullUrlsUseEvoManagerUrl(): void + { + $resource = new class { + use ManagerActions; + + public $exists = false; + protected $managerActionsMap = [ + 'view' => 27, + ]; + }; + + $this->assertSame(EVO_MANAGER_URL . '?a=27', $resource->makeUrl('view', true)); + } + + public function testManagerThemePathHelpersUseEvoManagerConstants(): void + { + $theme = (new ReflectionClass(ManagerTheme::class))->newInstanceWithoutConstructor(); + $setter = \Closure::bind(function (string $themeName): void { + $this->theme = $themeName; + }, $theme, ManagerTheme::class); + $setter('default'); + + $this->assertSame(EVO_MANAGER_PATH . 'media/style/default/', $theme->getThemeDir()); + $this->assertSame('media/style/default/', $theme->getThemeDir(false)); + $this->assertSame(EVO_MANAGER_URL . 'media/style/default/', $theme->getThemeUrl()); + } + + public function testSettingsTraitStoresEvoPathConstantsInConfig(): void + { + $settings = new class { + use Settings; + + public $error_reporting; + + public function getFactorySettings(): array + { + return []; + } + + public function getConfig($name = '', $default = null) + { + return $this->config[$name] ?? $default; + } + + public function setConfig($name, $value = '') + { + $this->config[$name] = $value; + } + }; + + $settings->config = [ + 'filemanager_path' => '[(base_path)]assets/files', + 'snapshot_path' => '[(base_path)]assets/backup', + 'rb_base_dir' => '[(base_path)]assets', + ]; + + $settings->getSettings(); + + $this->assertSame(EVO_BASE_URL, $settings->config['base_url']); + $this->assertSame(EVO_BASE_PATH, $settings->config['base_path']); + $this->assertSame(EVO_SITE_URL, $settings->config['site_url']); + $this->assertSame(EVO_MANAGER_PATH, $settings->config['site_manager_path']); + $this->assertStringContainsString(EVO_BASE_PATH, $settings->config['filemanager_path']); + $this->assertStringContainsString(EVO_BASE_PATH, $settings->config['snapshot_path']); + $this->assertStringContainsString(EVO_BASE_PATH, $settings->config['rb_base_dir']); + } +} diff --git a/manager/views/frame/1.blade.php b/manager/views/frame/1.blade.php index 812fb62af6..4fc8300009 100644 --- a/manager/views/frame/1.blade.php +++ b/manager/views/frame/1.blade.php @@ -100,8 +100,10 @@ function iconHtml($icon, $attrs = '') { // GLOBAL variable modx var modx = { MGR_DIR: '{{MGR_DIR}}', - MODX_SITE_URL: '{{MODX_SITE_URL}}', - MODX_MANAGER_URL: '{{MODX_MANAGER_URL}}', + EVO_SITE_URL: '{{EVO_SITE_URL}}', + EVO_MANAGER_URL: '{{EVO_MANAGER_URL}}', + MODX_SITE_URL: '{{EVO_SITE_URL}}', + MODX_MANAGER_URL: '{{EVO_MANAGER_URL}}', user: { role: {{(int)$user['role']}}, username: '{{$user['username']}}', @@ -294,7 +296,7 @@ function iconHtml($icon, $attrs = '') {