@@ -30,7 +30,8 @@ public function create()
3030 [
3131 'prefix ' => LaravelLocalization::setLocale (),
3232 'middleware ' => [LaravelLocalizationViewPath::class],
33- ], function () use ($ routes ) {
33+ ],
34+ function () use ($ routes ) {
3435 PageRedirectService::getRoutes ();
3536 $ this ->setRouteList ($ routes );
3637 }
@@ -97,7 +98,7 @@ private function getControllerClassName(Menu $page): string|false
9798 return false ;
9899 }
99100
100- $ pageClassName = sprintf ('App \\Http \\Controllers \\Page \\%sController ' , ucfirst ($ page ->template ->controller ?? $ page ->template ->filename ));
101+ $ pageClassName = sprintf ('App \\Http \\Controllers \\Page \\%sController ' , ucfirst ($ page ->template ->controller ?? $ this -> transformFilename ( $ page ->template ->filename ) ));
101102
102103 if (class_exists ($ pageClassName )) {
103104 return $ pageClassName ;
@@ -112,6 +113,21 @@ private function getControllerClassName(Menu $page): string|false
112113 return false ;
113114 }
114115
116+ private function transformFilename (string $ filename ): string
117+ {
118+ if (substr ($ filename , -4 , 4 ) === 'page ' ) {
119+ $ filename = substr ($ filename , 0 , -4 );
120+ $ filename .= 'Page ' ;
121+ }
122+ $ filenameParts = preg_split ('/[\/-]/ ' , $ filename );
123+ $ cappedParts = [];
124+ foreach ($ filenameParts as $ key => $ part ) {
125+ $ cappedParts [] = ucfirst ($ part );
126+ }
127+
128+ return implode ('\\' , $ cappedParts );
129+ }
130+
115131 private function cliError ($ message ): void
116132 {
117133 if (! $ this ->output ) {
0 commit comments