File size: 1.95Kb
<?php
namespace xenMade\ACPE;
use XF\AddOn\AbstractSetup;
use XF\AddOn\StepRunnerInstallTrait;
use XF\AddOn\StepRunnerUninstallTrait;
use XF\AddOn\StepRunnerUpgradeTrait;
use XF\Db\Schema\Alter;
use XF\Db\Schema\Create;
class Setup extends AbstractSetup
{
use StepRunnerInstallTrait;
use StepRunnerUpgradeTrait;
use StepRunnerUninstallTrait;
public function installStep1()
{
$sm = $this->schemaManager();
$this->schemaManager()->createTable('xf_xenmade_acpe_login_log', function(\XF\Db\Schema\Create $table)
{
$table->addColumn('log_id', 'int')->autoIncrement();
$table->addColumn('user_id', 'int');
$table->addColumn('username', 'varchar', 50);
$table->addColumn('status', 'enum')
->values(['', 'success', 'user_not_exists', 'password_incorrect', 'no_admin', 'ip_not_allowed'])
->setDefault('');
$table->addColumn('login', 'enum')
->values(['', 'front', 'acp'])
->setDefault('');
$table->addColumn('dateline', 'int');
$table->addColumn('hash', 'varchar', 60);
$table->addColumn('ip', 'varchar', 60);
$table->addPrimaryKey('log_id');
$table->addKey('hash');
$table->addKey('user_id');
$table->addKey('status');
$table->addKey('login');
$table->addKey('ip');
});
$sm->alterTable('xf_option_group', function(Alter $table)
{
$table->addColumn('display_sort', 'int')->setDefault(0);
});
}
public function uninstallStep1(array $stepParams = [])
{
$sm = $this->schemaManager();
$this->schemaManager()->dropTable('xf_xenmade_acpe_login_log');
$sm->alterTable('xf_option_group', function(Alter $table)
{
$table->dropColumns('display_sort');
});
}
}