<?php

namespace App\Database\Migrations;

use CodeIgniter\Database\Migration;
use CodeIgniter\Database\RawSql;

class AddTableImposicionEsquemas extends Migration
{
    protected array $COLUMNS = [
        "id" => [
            "type" => "INT",
            "unsigned" => true,
            "auto_increment" => true
        ],
        "name" => [
            "type" => "VARCHAR",
            "constraint" => 255,
        ],
        "rows" => [
            "type" => "INT",
            "unsigned" => true,
            "default" => 0,
        ],
        "columns" => [
            "type" => "INT",
            "unsigned" => true,
            "default" => 0,
        ],
        "orientacion" => [
            "type" => "ENUM",
            "constraint" => ["H","V"],
            "default" => "H",
        ],
        "rotativa" => [
            "type" => "BOOLEAN",
            "default" => false,
        ],
        "cosido" => [
            "type" => "BOOLEAN",
            "default" => false,
        ],
        "svg_schema" => [
            "type" => "LONGTEXT",
            "null" => true
        ],
    ];

    public function up()
    {

        $this->forge->addField($this->COLUMNS);
        $currenttime = new RawSql("CURRENT_TIMESTAMP");
        $this->forge->addField([
            "created_at" => [
                "type" => "TIMESTAMP",
                "default" => $currenttime,

            ],
            "updated_at" => [
                "type" => "TIMESTAMP",
                "null" => true,

            ],
            "deleted_at" => [
                "type" => "TIMESTAMP",
                "null" => true,
            ],
        ]);
        $this->forge->addPrimaryKey("id");
        $this->forge->createTable("imposicion_esquemas");
    }

    public function down()
    {
        $this->forge->dropTable("imposicion_esquemas",true);

    }
}
