diff --git a/app/Console/Commands/AddLanguage.php b/app/Console/Commands/AddLanguage.php new file mode 100644 index 00000000..f4eb3308 --- /dev/null +++ b/app/Console/Commands/AddLanguage.php @@ -0,0 +1,55 @@ +argument('code'); + $translation = $this->argument('translation'); + + // check if language does not exist + $exist = Language::find($code); + + if ($exist) { + $this->error('Language ' . $code . ' already exists!'); + return; + } + + Language::create(['code' => $code, 'name' => $translation]); + + $this->line('Successfully installed.'); + } +} diff --git a/app/Console/Kernel.php b/app/Console/Kernel.php index e4fc0c23..395f776d 100644 --- a/app/Console/Kernel.php +++ b/app/Console/Kernel.php @@ -2,6 +2,7 @@ namespace App\Console; +use App\Console\Commands\AddLanguage; use Illuminate\Console\Scheduling\Schedule; use Illuminate\Foundation\Console\Kernel as ConsoleKernel; @@ -21,6 +22,7 @@ class Kernel extends ConsoleKernel Commands\TranslateAll::class, Commands\InitDatabaseSchema::class, Commands\SetTheme::class, + AddLanguage::class ]; /** diff --git a/app/Models/Language.php b/app/Models/Language.php new file mode 100644 index 00000000..3aca77ac --- /dev/null +++ b/app/Models/Language.php @@ -0,0 +1,18 @@ +string('code', 8) + ->primary(); + $table->string('name') + ->comment('Translated name for given language'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::drop('languages'); + } +}