41 lines
1.4 KiB
PHP
41 lines
1.4 KiB
PHP
<?php
|
|
|
|
use A7kz\Platform\Models\UniModel;
|
|
use A7kz\Platform\Modules\Platform\Core\Facades\Core;
|
|
use A7kz\Platform\Modules\Platform\Segment\Facades\Segment;
|
|
use Carbon\Carbon;
|
|
use Illuminate\Database\Schema\Blueprint;
|
|
use Illuminate\Support\Facades\DB;
|
|
use Illuminate\Support\Facades\Schema;
|
|
use Illuminate\Support\Facades\Storage;
|
|
use \A7kz\Platform\Commands\InstallScript;
|
|
|
|
return new class extends \A7kz\Platform\Commands\InstallScript {
|
|
|
|
public function install($module_name, $module_version)
|
|
{
|
|
}
|
|
|
|
public function update($module_name, $module_version): void
|
|
{
|
|
$this->upgrade();
|
|
}
|
|
|
|
private function upgrade(): void
|
|
{
|
|
$segments = Segment::listActive();
|
|
foreach ($segments as $segment) {
|
|
if (!Schema::connection($segment->connector)->hasColumn('core_users', 'auth_token')) {
|
|
Schema::connection($segment->connector)->table('core_users', static function (Blueprint $table) {
|
|
$table->string('auth_token')->nullable()->unique();
|
|
});
|
|
}
|
|
if (!Schema::connection($segment->connector)->hasColumn('personal_access_tokens', 'expires_at')) {
|
|
Schema::connection($segment->connector)->table('personal_access_tokens', static function (Blueprint $table) {
|
|
$table->timestamp('expires_at')->nullable();
|
|
});
|
|
}
|
|
}
|
|
}
|
|
};
|