31 lines
908 B
PHP
31 lines
908 B
PHP
<?php
|
|
declare(strict_types=1);
|
|
|
|
use Migrations\AbstractMigration;
|
|
use Phinx\Db\Adapter\MysqlAdapter;
|
|
|
|
final class AdminPermissionSplit extends AbstractMigration
|
|
{
|
|
public $autoId = false; // turn off automatic `id` column create. We want it to be `int(10) unsigned`
|
|
|
|
public function change(): void
|
|
{
|
|
$exists = $this->table('roles')->hasColumn('perm_community_admin');
|
|
if (!$exists) {
|
|
$this->table('roles')
|
|
->addColumn('perm_community_admin', 'boolean', [
|
|
'default' => 0,
|
|
'null' => false,
|
|
])
|
|
->addIndex('perm_community_admin')
|
|
->update();
|
|
}
|
|
$builder = $this->getQueryBuilder();
|
|
$builder
|
|
->update('roles')
|
|
->set('perm_community_admin', true)
|
|
->where(['perm_admin' => true])
|
|
->execute();
|
|
}
|
|
}
|