From e586944f6aad2f8c99b81d990a204fbc0006e334 Mon Sep 17 00:00:00 2001 From: Prince Dorcis Date: Thu, 6 May 2021 13:08:07 +0000 Subject: [PATCH 1/2] fix: first fix log dir --- src/Menu/BaseMenu.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Menu/BaseMenu.php b/src/Menu/BaseMenu.php index 3f36be7..ab9467c 100644 --- a/src/Menu/BaseMenu.php +++ b/src/Menu/BaseMenu.php @@ -162,7 +162,7 @@ public function logger() $menuName = Str::pascalCase(array_pop($exploded)); $menuRelativePath = $exploded ? implode(Os::slash(), $exploded) : ''; - $dir = !$menuRelativePath ?: $dir.'/'.$menuRelativePath; + $dir = !$menuRelativePath ? $dir : $dir.'/'.$menuRelativePath; if (!is_dir($dir)) { mkdir($dir, 0777, true); From dd34db9e40772b1e327ac79c0dc86febbd5d722b Mon Sep 17 00:00:00 2001 From: Prince Dorcis Date: Fri, 7 May 2021 12:48:43 +0000 Subject: [PATCH 2/2] fix: fix menu logger dir --- src/Menu/BaseMenu.php | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/src/Menu/BaseMenu.php b/src/Menu/BaseMenu.php index ab9467c..4baa033 100644 --- a/src/Menu/BaseMenu.php +++ b/src/Menu/BaseMenu.php @@ -155,13 +155,30 @@ public function log($data, $level = 'info') public function logger() { if (!$this->logger) { - $dir = $this->app->path('log_root_dir').'menus/'.date('Y-m-d'); - $dir = Os::toPathStyle($dir); + $rootDir = $this->app->path('project_root'); + $menuClassDir = $this->app->path('app_menu_class_dir'); + + $menuClassDirRelative = substr_replace($menuClassDir, '', 0, strlen($rootDir)); + + $menuClassDirRelativeExploded = explode(Os::slash(), $menuClassDirRelative); + $menuClassDirRelativeExploded = array_filter($menuClassDirRelativeExploded, function ($folder) { + return trim($folder); + }); + $menuClassDirRelativeExploded = array_map(function ($folder) { + return ucfirst($folder); + }, $menuClassDirRelativeExploded); + + $menuClassDirRelative = implode('\\', $menuClassDirRelativeExploded); - $exploded = explode($this->app->menuNamespaceDelimiter(), $this->name); + $menuName = substr_replace($this->name, '', 0, strlen($menuClassDirRelative.'\\')); + + $exploded = explode($this->app->menuNamespaceDelimiter(), $menuName); $menuName = Str::pascalCase(array_pop($exploded)); $menuRelativePath = $exploded ? implode(Os::slash(), $exploded) : ''; + + $dir = $this->app->path('log_root_dir').'menus/'.date('Y-m-d'); + $dir = Os::toPathStyle($dir); $dir = !$menuRelativePath ? $dir : $dir.'/'.$menuRelativePath; if (!is_dir($dir)) { @@ -170,6 +187,7 @@ public function logger() $file = $dir.'/'.$menuName.'.log'; $cache = $dir.'/.count'; + $this->logger = new Log($file, $cache); }