From b331bb33d95009fa9205237e6d926b17401e1833 Mon Sep 17 00:00:00 2001 From: snipe Date: Mon, 20 Sep 2021 15:37:24 -0700 Subject: [PATCH 1/3] Code fixes and a new migration Signed-off-by: snipe --- .../Api/StatuslabelsController.php | 6 +-- ...45619_add_show_in_nav_to_status_labels.php | 2 +- ...54937_add_default_flag_on_statuslabels.php | 2 +- ...83216_change_default_label_to_nullable.php | 38 +++++++++++++++++++ 4 files changed, 43 insertions(+), 5 deletions(-) create mode 100644 database/migrations/2021_09_20_183216_change_default_label_to_nullable.php diff --git a/app/Http/Controllers/Api/StatuslabelsController.php b/app/Http/Controllers/Api/StatuslabelsController.php index 534c49a568..89bc73f4b5 100644 --- a/app/Http/Controllers/Api/StatuslabelsController.php +++ b/app/Http/Controllers/Api/StatuslabelsController.php @@ -73,7 +73,7 @@ class StatuslabelsController extends Controller $statuslabel->archived = $statusType['archived']; $statuslabel->color = $request->input('color'); $statuslabel->show_in_nav = $request->input('show_in_nav', 0); - $statuslabel->default_label = $request->input('default_label'); + $statuslabel->default_label = $request->input('default_label', 0); if ($statuslabel->save()) { @@ -124,8 +124,8 @@ class StatuslabelsController extends Controller $statuslabel->pending = $statusType['pending']; $statuslabel->archived = $statusType['archived']; $statuslabel->color = $request->input('color'); - $statuslabel->show_in_nav = $request->input('show_in_nav'); - $statuslabel->default_label = $request->input('default_label'); + $statuslabel->show_in_nav = $request->input('show_in_nav', 0); + $statuslabel->default_label = $request->input('default_label', 0); if ($statuslabel->save()) { return response()->json(Helper::formatStandardApiResponse('success', $statuslabel, trans('admin/statuslabels/message.update.success'))); diff --git a/database/migrations/2016_08_23_145619_add_show_in_nav_to_status_labels.php b/database/migrations/2016_08_23_145619_add_show_in_nav_to_status_labels.php index a67f34db59..1dde84e813 100644 --- a/database/migrations/2016_08_23_145619_add_show_in_nav_to_status_labels.php +++ b/database/migrations/2016_08_23_145619_add_show_in_nav_to_status_labels.php @@ -13,7 +13,7 @@ class AddShowInNavToStatusLabels extends Migration public function up() { Schema::table('status_labels', function (Blueprint $table) { - $table->boolean('show_in_nav')->default(0); + $table->boolean('show_in_nav')->nullable()->default(0); }); } diff --git a/database/migrations/2018_03_06_054937_add_default_flag_on_statuslabels.php b/database/migrations/2018_03_06_054937_add_default_flag_on_statuslabels.php index 54a62bd770..ebbe372733 100644 --- a/database/migrations/2018_03_06_054937_add_default_flag_on_statuslabels.php +++ b/database/migrations/2018_03_06_054937_add_default_flag_on_statuslabels.php @@ -14,7 +14,7 @@ class AddDefaultFlagOnStatuslabels extends Migration public function up() { Schema::table('status_labels', function (Blueprint $table) { - $table->boolean('default_label')->default(0); + $table->boolean('default_label')->nullable()->default(0); }); } diff --git a/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php b/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php new file mode 100644 index 0000000000..6a3ce03dea --- /dev/null +++ b/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php @@ -0,0 +1,38 @@ +boolean('default_label')->nullable()->default(0); + $table->boolean('show_in_nav')->nullable()->default(0); + }); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('nullable', function (Blueprint $table) { + // + }); + } +} From c59c7337a5f1300896e81bb62edca99873303e01 Mon Sep 17 00:00:00 2001 From: snipe Date: Mon, 20 Sep 2021 15:42:25 -0700 Subject: [PATCH 2/3] Forgot the ->change() method Signed-off-by: snipe --- ..._20_183216_change_default_label_to_nullable.php | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php b/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php index 6a3ce03dea..d819a3356e 100644 --- a/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php +++ b/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php @@ -16,12 +16,12 @@ class ChangeDefaultLabelToNullable extends Migration */ public function up() { - Schema::table('nullable', function (Blueprint $table) { - Schema::table('status_labels', function (Blueprint $table) { - $table->boolean('default_label')->nullable()->default(0); - $table->boolean('show_in_nav')->nullable()->default(0); - }); + + Schema::table('status_labels', function (Blueprint $table) { + $table->boolean('default_label')->nullable()->default(0)->change(); + $table->boolean('show_in_nav')->nullable()->default(0)->change(); }); + } /** @@ -31,8 +31,6 @@ class ChangeDefaultLabelToNullable extends Migration */ public function down() { - Schema::table('nullable', function (Blueprint $table) { - // - }); + // } } From d24822e342eaa7b1d4d9b8a8f344022d7707a9eb Mon Sep 17 00:00:00 2001 From: snipe Date: Mon, 20 Sep 2021 15:47:29 -0700 Subject: [PATCH 3/3] Retroactively fix any existing settings for that table Signed-off-by: snipe --- ...1_09_20_183216_change_default_label_to_nullable.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php b/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php index d819a3356e..72d9c8c2be 100644 --- a/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php +++ b/database/migrations/2021_09_20_183216_change_default_label_to_nullable.php @@ -3,6 +3,7 @@ use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; +use App\Models\Statuslabel; class ChangeDefaultLabelToNullable extends Migration { @@ -17,11 +18,20 @@ class ChangeDefaultLabelToNullable extends Migration public function up() { + + Statuslabel::whereNull('default_label') + ->update(['default_label' => 0]); + + Statuslabel::whereNull('show_in_nav') + ->update(['show_in_nav' => 0]); + + Schema::table('status_labels', function (Blueprint $table) { $table->boolean('default_label')->nullable()->default(0)->change(); $table->boolean('show_in_nav')->nullable()->default(0)->change(); }); + } /**