소스 검색

Add new migration

Daniel Supernault 6 년 전
부모
커밋
9eb94bc9bb
1개의 변경된 파일75개의 추가작업 그리고 0개의 파일을 삭제
  1. 75 0
      database/migrations/2018_12_22_055940_add_account_status_to_profiles_table.php

+ 75 - 0
database/migrations/2018_12_22_055940_add_account_status_to_profiles_table.php

@@ -0,0 +1,75 @@
+<?php
+
+use Illuminate\Support\Facades\Schema;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Database\Migrations\Migration;
+
+class AddAccountStatusToProfilesTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        // Drop old columns, fix stories
+        if(Schema::hasColumn('profiles', 'hub_url')) {
+            Schema::table('profiles', function (Blueprint $table) {
+                $table->dropColumn('verify_token');
+                $table->dropColumn('secret');
+                $table->dropColumn('salmon_url');
+                $table->dropColumn('hub_url');
+            });
+        }
+
+        if(Schema::hasColumn('stories', 'bigIncrements')) {
+            Schema::table('stories', function (Blueprint $table) {
+                $table->dropColumn('bigIncrements');
+            });
+            Schema::table('stories', function (Blueprint $table) {
+                $table->bigIncrements('id')->first();
+            });
+        }
+
+        // Add account status to profile and user tables
+
+        Schema::table('profiles', function (Blueprint $table) {
+            $table->string('status')->nullable()->index()->after('username');
+        });
+
+        Schema::table('users', function (Blueprint $table) {
+            $table->string('status')->nullable()->index()->after('email');
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::table('profiles', function (Blueprint $table) {
+            $table->string('verify_token')->nullable();
+            $table->string('secret')->nullable();
+            $table->string('salmon_url')->nullable();
+            $table->string('hub_url')->nullable();
+        });
+
+        Schema::table('stories', function (Blueprint $table) {
+            $table->dropColumn('id');
+        });
+        Schema::table('stories', function (Blueprint $table) {
+            $table->bigIncrements('bigIncrements')->first();
+        });
+
+        Schema::table('profiles', function (Blueprint $table) {
+            $table->dropColumn('status');
+        });
+
+        Schema::table('users', function (Blueprint $table) {
+            $table->dropColumn('status');
+        });
+    }
+}