castopod/modules/Analytics/Database/Migrations/2017-12-01-090000_add_analy...

53 lines
1.6 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
declare(strict_types=1);
/**
* Class AddAnalyticsUnknownUseragents Creates analytics_unknown_useragents table in database
*
* @copyright 2020 Ad Aures
* @license https://www.gnu.org/licenses/agpl-3.0.en.html AGPL3
* @link https://castopod.org/
*/
namespace Modules\Analytics\Database\Migrations;
use App\Database\Migrations\BaseMigration;
class AddAnalyticsUnknownUseragents extends BaseMigration
{
public function up(): void
{
$this->forge->addField([
'id' => [
'type' => 'INT',
'unsigned' => true,
'auto_increment' => true,
],
'useragent' => [
'type' => 'VARCHAR',
'constraint' => 255,
'unique' => true,
],
'hits' => [
'type' => 'INT',
'unsigned' => true,
'default' => 1,
],
]);
$this->forge->addPrimaryKey('id');
// `created_at` and `updated_at` are created with SQL because Model class wont be used for insertion (Procedure will be used instead)
$this->forge->addField('`created_at` timestamp NOT NULL DEFAULT current_timestamp()');
$this->forge->addField(
'`updated_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp()',
);
$this->forge->createTable('analytics_unknown_useragents');
}
public function down(): void
{
$this->forge->dropTable('analytics_unknown_useragents');
}
}