added settings

This commit is contained in:
KodeStar
2018-02-04 20:50:59 +00:00
parent afe78c4e06
commit d21138529f
19 changed files with 446 additions and 13 deletions

View File

@@ -0,0 +1,37 @@
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateSettingsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('settings', function (Blueprint $table) {
$table->increments('id');
$table->integer('group_id')->default(0);
$table->string('key');
$table->string('type')->default('text');
$table->string('label');
$table->string('value')->nullable();
$table->string('order')->default(0);
$table->boolean('system')->default(false);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('settings');
}
}

View File

@@ -0,0 +1,32 @@
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateSettingGroupsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('setting_groups', function (Blueprint $table) {
$table->increments('id');
$table->string('title');
$table->integer('order')->default(0);
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('setting_groups');
}
}

View File

@@ -11,6 +11,6 @@ class DatabaseSeeder extends Seeder
*/
public function run()
{
// $this->call(UsersTableSeeder::class);
$this->call(SettingsSeeder::class);
}
}

View File

@@ -0,0 +1,70 @@
<?php
use Illuminate\Database\Seeder;
use App\Setting;
use App\SettingGroup;
class SettingsSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
// Groups
if(!SettingGroup::find(1)) {
$setting_group = new SettingGroup;
$setting_group->id = 1;
$setting_group->title = 'System';
$setting_group->order = 0;
$setting_group->save();
}
if(!SettingGroup::find(2)) {
$setting_group = new SettingGroup;
$setting_group->id = 2;
$setting_group->title = 'Appearance';
$setting_group->order = 1;
$setting_group->save();
}
if(!SettingGroup::find(3)) {
$setting_group = new SettingGroup;
$setting_group->id = 3;
$setting_group->title = 'Miscellaneous';
$setting_group->order = 2;
$setting_group->save();
}
if(!Setting::find(1)) {
$setting = new Setting;
$setting->id = 1;
$setting->group_id = 1;
$setting->key = 'version';
$setting->type = 'text';
$setting->label = 'Version';
$setting->value = config('app.version');
$setting->system = true;
$setting->save();
}
if(!Setting::find(2)) {
$setting = new Setting;
$setting->id = 2;
$setting->group_id = 2;
$setting->key = 'background_image';
$setting->type = 'image';
$setting->label = 'Background Image';
$setting->save();
}
if(!Setting::find(3)) {
$setting = new Setting;
$setting->id = 3;
$setting->group_id = 3;
$setting->key = 'homepage_search';
$setting->type = 'text';
$setting->label = 'Homepage Search';
$setting->save();
}
}
}