diff --git a/app/Console/Commands/MakeModule.php b/app/Console/Commands/MakeModule.php index 688c04b53d31..25fca1d74f45 100644 --- a/app/Console/Commands/MakeModule.php +++ b/app/Console/Commands/MakeModule.php @@ -67,6 +67,7 @@ class MakeModule extends Command Artisan::call('ninja:make-class', ['name' => $name, 'module' => $name, 'class' => 'request', 'prefix' => 'update']); Artisan::call('ninja:make-class', ['name' => $name, 'module' => $name, 'class' => 'api-controller']); Artisan::call('ninja:make-class', ['name' => $name, 'module' => $name, 'class' => 'transformer', '--fields' => $fields]); + Artisan::call('ninja:make-class', ['name' => $name, 'module' => $name, 'class' => 'lang', '--filename' => 'texts']); if ($migrate) { Artisan::call('module:migrate', ['module' => $name]); diff --git a/app/Console/Commands/stubs/lang.stub b/app/Console/Commands/stubs/lang.stub new file mode 100644 index 000000000000..a31749e36762 --- /dev/null +++ b/app/Console/Commands/stubs/lang.stub @@ -0,0 +1,10 @@ + '$STUDLY_NAME$', +); + +return $LANG; + +?> diff --git a/app/Http/routes.php b/app/Http/routes.php index 718d09178f45..86c6f54b785e 100644 --- a/app/Http/routes.php +++ b/app/Http/routes.php @@ -908,6 +908,16 @@ if (!defined('CONTACT_EMAIL')) { return $string != $english ? $string : ''; } } + + // include modules in translations + function mtrans($entityType, $text) + { + if ( ! Utils::isNinjaProd() && $module = Module::find($entityType)) { + return trans("{$module->getLowerName()}::texts.{$text}"); + } else { + return trans("texts.{$text}"); + } + } } diff --git a/config/modules.php b/config/modules.php index 0e78fc317eb0..8f26ebb982b3 100644 --- a/config/modules.php +++ b/config/modules.php @@ -105,7 +105,7 @@ return [ 'filter' => 'Http/Middleware', 'request' => 'Http/Requests', 'provider' => 'Providers', - 'lang' => 'Resources/lang', + 'lang' => 'Resources/lang/en', 'views' => 'Resources/views', 'test' => 'Tests', 'jobs' => 'Jobs', diff --git a/resources/views/partials/navigation_option.blade.php b/resources/views/partials/navigation_option.blade.php index 838a1eeb7a7f..8716e342ec35 100644 --- a/resources/views/partials/navigation_option.blade.php +++ b/resources/views/partials/navigation_option.blade.php @@ -20,7 +20,7 @@ style="font-size:16px; padding-top:6px; padding-bottom:6px" class="{{ Request::is("{$option}*") ? 'active' : '' }}"> - {{ ($option == 'recurring_invoices') ? trans('texts.recurring') : trans("texts.{$option}") }} + {{ ($option == 'recurring_invoices') ? trans('texts.recurring') : mtrans($option, $option) }} {!! Utils::isTrial() && in_array($option, ['quotes', 'tasks', 'expenses', 'vendors']) ? ' ' . trans('texts.pro') . '' : '' !!}