From f9b707b0bba4ac3929c45d7208b49d13edeedd44 Mon Sep 17 00:00:00 2001 From: f4ilji Date: Thu, 21 Nov 2024 23:01:36 +0500 Subject: [PATCH] Changes --- ..._add_two_factor_columns_to_users_table.php | 46 +++++++++++++++++++ ...022_12_14_083707_create_settings_table.php | 24 ++++++++++ ...0_03_140231_create_checkpoint_settings.php | 31 +++++++++++++ ..._two_factor_type_column_to_users_table.php | 18 ++++++++ 4 files changed, 119 insertions(+) create mode 100644 database/migrations/2014_10_12_200000_add_two_factor_columns_to_users_table.php create mode 100644 database/migrations/2022_12_14_083707_create_settings_table.php create mode 100644 database/migrations/2024_11_20_235102_2024_10_03_140231_create_checkpoint_settings.php create mode 100644 database/migrations/2024_11_21_001758_add_two_factor_type_column_to_users_table.php diff --git a/database/migrations/2014_10_12_200000_add_two_factor_columns_to_users_table.php b/database/migrations/2014_10_12_200000_add_two_factor_columns_to_users_table.php new file mode 100644 index 0000000..b490e24 --- /dev/null +++ b/database/migrations/2014_10_12_200000_add_two_factor_columns_to_users_table.php @@ -0,0 +1,46 @@ +text('two_factor_secret') + ->after('password') + ->nullable(); + + $table->text('two_factor_recovery_codes') + ->after('two_factor_secret') + ->nullable(); + + if (Fortify::confirmsTwoFactorAuthentication()) { + $table->timestamp('two_factor_confirmed_at') + ->after('two_factor_recovery_codes') + ->nullable(); + } + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::table('users', function (Blueprint $table) { + $table->dropColumn(array_merge([ + 'two_factor_secret', + 'two_factor_recovery_codes', + ], Fortify::confirmsTwoFactorAuthentication() ? [ + 'two_factor_confirmed_at', + ] : [])); + }); + } +}; diff --git a/database/migrations/2022_12_14_083707_create_settings_table.php b/database/migrations/2022_12_14_083707_create_settings_table.php new file mode 100644 index 0000000..9b14b86 --- /dev/null +++ b/database/migrations/2022_12_14_083707_create_settings_table.php @@ -0,0 +1,24 @@ +id(); + + $table->string('group'); + $table->string('name'); + $table->boolean('locked')->default(false); + $table->json('payload'); + + $table->timestamps(); + + $table->unique(['group', 'name']); + }); + } +}; diff --git a/database/migrations/2024_11_20_235102_2024_10_03_140231_create_checkpoint_settings.php b/database/migrations/2024_11_20_235102_2024_10_03_140231_create_checkpoint_settings.php new file mode 100644 index 0000000..fe0df03 --- /dev/null +++ b/database/migrations/2024_11_20_235102_2024_10_03_140231_create_checkpoint_settings.php @@ -0,0 +1,31 @@ +migrator->inGroup('checkpoint', function (SettingsBlueprint $migrator) { + $migrator->add('max_attempts', 3); + $migrator->add('lockout_duration', 120); + $migrator->add('notify_on_lockout', false); + $migrator->add('notification_emails', ''); + $migrator->add('notify_after_lockouts', 5); + $migrator->add('notification_time_frame', 300); + }); + } + + public function down(): void + { + $this->migrator->inGroup('checkpoint', function (SettingsBlueprint $migrator) { + $migrator->delete('max_attempts'); + $migrator->delete('lockout_duration'); + $migrator->delete('notify_on_lockout'); + $migrator->delete('notification_emails'); + $migrator->delete('notify_after_lockouts'); + $migrator->delete('notification_time_frame'); + }); + } +}; diff --git a/database/migrations/2024_11_21_001758_add_two_factor_type_column_to_users_table.php b/database/migrations/2024_11_21_001758_add_two_factor_type_column_to_users_table.php new file mode 100644 index 0000000..77a0993 --- /dev/null +++ b/database/migrations/2024_11_21_001758_add_two_factor_type_column_to_users_table.php @@ -0,0 +1,18 @@ +enum('two_factor_type', TwoFactorType::names())->nullable()->after('two_factor_recovery_codes'); + }); + } + } +};