BookStack/database/migrations/2015_12_05_145049_fulltext_weighting.php

55 lines
1.6 KiB
PHP
Raw Normal View History

<?php
use Illuminate\Database\Migrations\Migration;
2021-06-26 23:23:15 +08:00
use Illuminate\Database\Schema\Blueprint;
class FulltextWeighting extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
// This was removed for v0.24 since these indexes are removed anyway
// and will cause issues for db engines that don't support such indexes.
// $prefix = DB::getTablePrefix();
// DB::statement("ALTER TABLE {$prefix}pages ADD FULLTEXT name_search(name)");
// DB::statement("ALTER TABLE {$prefix}books ADD FULLTEXT name_search(name)");
// DB::statement("ALTER TABLE {$prefix}chapters ADD FULLTEXT name_search(name)");
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
$sm = Schema::getConnection()->getDoctrineSchemaManager();
$pages = $sm->listTableDetails('pages');
$books = $sm->listTableDetails('books');
$chapters = $sm->listTableDetails('chapters');
if ($pages->hasIndex('name_search')) {
2021-06-26 23:23:15 +08:00
Schema::table('pages', function (Blueprint $table) {
$table->dropIndex('name_search');
});
}
if ($books->hasIndex('name_search')) {
2021-06-26 23:23:15 +08:00
Schema::table('books', function (Blueprint $table) {
$table->dropIndex('name_search');
});
}
if ($chapters->hasIndex('name_search')) {
2021-06-26 23:23:15 +08:00
Schema::table('chapters', function (Blueprint $table) {
$table->dropIndex('name_search');
});
}
}
}