diff --git a/migrations/2018_01_30_222800_create_notification_preferences_table.php b/migrations/2018_01_30_222800_create_notification_preferences_table.php deleted file mode 100644 index 17f1b8b62..000000000 --- a/migrations/2018_01_30_222800_create_notification_preferences_table.php +++ /dev/null @@ -1,30 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -use Illuminate\Database\Schema\Blueprint; -use Illuminate\Database\Schema\Builder; - -return [ - 'up' => function (Builder $schema) { - $schema->create('notification_preferences', function (Blueprint $table) { - $table->integer('user_id')->unsigned(); - $table->string('type'); - $table->string('channel'); - $table->boolean('enabled')->default(false); - - $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); - }); - }, - - 'down' => function (Builder $schema) { - $schema->drop('notification_preferences'); - } -]; diff --git a/migrations/2018_01_30_222800_create_users_table_preferences_columns.php b/migrations/2018_01_30_222800_create_users_table_preferences_columns.php deleted file mode 100644 index 6fa9b5c93..000000000 --- a/migrations/2018_01_30_222800_create_users_table_preferences_columns.php +++ /dev/null @@ -1,27 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -use Illuminate\Database\Schema\Blueprint; -use Illuminate\Database\Schema\Builder; - -return [ - 'up' => function (Builder $schema) { - $schema->table('users', function (Blueprint $table) { - $table->boolean('disclose_online')->default(false); - }); - }, - - 'down' => function (Builder $schema) { - $schema->table('users', function (Blueprint $table) { - $table->dropColumn('disclose_online'); - }); - } -]; diff --git a/migrations/2018_01_30_222801_migrate_users_table_preferences_columns.php b/migrations/2018_01_30_222801_migrate_users_table_preferences_columns.php deleted file mode 100644 index c95c10654..000000000 --- a/migrations/2018_01_30_222801_migrate_users_table_preferences_columns.php +++ /dev/null @@ -1,51 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -use Illuminate\Database\Eloquent\Collection; -use Illuminate\Database\Schema\Builder; -use Illuminate\Support\Arr; - -return [ - 'up' => function (Builder $builder) { - $db = $builder->getConnection(); - - $db->table('users') - ->whereNotNull('preferences') - ->orderBy('id') - ->chunk(50, function (Collection $users) use ($db) { - $users->each(function ($user) use ($db) { - collect(json_decode(Arr::get($user, 'preferences', '{}'))) - ->each(function ($value, $key) use ($user, $db) { - if ($key === 'discloses_online') { - $db->table('users') - ->where('id', $user['id']) - ->update(['discloses_online' => (bool) $value]); - } - if (preg_match('/^notify_(?[^_]+)_(?.*)$/', $key, $matches)) { - $db->table('notification_preferences') - ->insert([ - 'user_id' => $user['id'], - 'type' => $matches['type'], - 'channel' => $matches['channel'], - 'enabled' => (bool) $value - ]); - } - }); - }); - }); - }, - - 'down' => function (Builder $builder) { - $db = $builder->getConnection(); - - $db->table('notification_preferences')->truncate(); - } -];