Seditio Source
Root |
./othercms/croogo-4.0.7/vendor/croogo/croogo/Nodes/config/Migrations/20160807105214_NodesInitialMigration.php
<?php

use Migrations\AbstractMigration;

class
NodesInitialMigration extends AbstractMigration
{
    public function
up()
    {

       
$this->table('nodes')
            ->
addColumn('parent_id', 'integer', [
               
'default' => null,
               
'limit' => 20,
               
'null' => true,
            ])
            ->
addColumn('user_id', 'integer', [
               
'default' => 0,
               
'limit' => 20,
               
'null' => false,
            ])
            ->
addColumn('title', 'string', [
               
'default' => null,
               
'limit' => 255,
               
'null' => false,
            ])
            ->
addColumn('slug', 'string', [
               
'default' => null,
               
'limit' => 255,
               
'null' => false,
            ])
            ->
addColumn('body', 'text', [
               
'default' => null,
               
'limit' => null,
               
'null' => false,
            ])
            ->
addColumn('excerpt', 'text', [
               
'default' => null,
               
'limit' => null,
               
'null' => true,
            ])
            ->
addColumn('status', 'integer', [
               
'default' => null,
               
'limit' => 1,
               
'null' => true,
            ])
            ->
addColumn('mime_type', 'string', [
               
'default' => null,
               
'limit' => 100,
               
'null' => true,
            ])
            ->
addColumn('comment_status', 'integer', [
               
'default' => 1,
               
'limit' => 1,
               
'null' => false,
            ])
            ->
addColumn('comment_count', 'integer', [
               
'default' => 0,
               
'limit' => 11,
               
'null' => true,
            ])
            ->
addColumn('promote', 'boolean', [
               
'default' => false,
               
'limit' => null,
               
'null' => false,
            ])
            ->
addColumn('path', 'string', [
               
'default' => null,
               
'limit' => 255,
               
'null' => false,
            ])
            ->
addColumn('terms', 'text', [
               
'default' => null,
               
'limit' => null,
               
'null' => true,
            ])
            ->
addColumn('sticky', 'boolean', [
               
'default' => false,
               
'limit' => null,
               
'null' => false,
            ])
            ->
addColumn('lft', 'integer', [
               
'default' => null,
               
'limit' => 11,
               
'null' => true,
            ])
            ->
addColumn('rght', 'integer', [
               
'default' => null,
               
'limit' => 11,
               
'null' => true,
            ])
            ->
addColumn('visibility_roles', 'text', [
               
'default' => null,
               
'limit' => null,
               
'null' => true,
            ])
            ->
addColumn('type', 'string', [
               
'default' => 'post',
               
'limit' => 100,
               
'null' => false,
            ])
            ->
addColumn('created_by', 'integer', [
               
'default' => null,
               
'limit' => 11,
               
'null' => false,
            ])
            ->
addColumn('updated_by', 'integer', [
               
'default' => null,
               
'limit' => 11,
               
'null' => true,
            ])
            ->
addColumn('publish_start', 'datetime', [
               
'default' => null,
               
'limit' => null,
               
'null' => true,
            ])
            ->
addColumn('publish_end', 'datetime', [
               
'default' => null,
               
'limit' => null,
               
'null' => true,
            ])
            ->
addTimestamps('created', 'updated')
            ->
addForeignKey('user_id', 'users', ['id'], [
               
'constraint' => 'fk_nodes2users',
               
'delete' => 'RESTRICT',
            ])
            ->
addIndex([
               
'type', 'slug',
            ], [
               
'name' => 'ix_nodes_slug_by_type',
               
'unique' => true,
               
'limit' => 190,
            ])
            ->
create();
    }

    public function
down()
    {
       
$this->table('nodes')->drop()->save();
    }
}