class CreateRoles < ActiveRecord::Migration
  def self.up
    create_table :roles do |t|
      t.column :name,        :string, :limit => 100, :null => false
      t.column :search_name, :string, :limit => 100, :null => false

      # And standard stuff for modifiable objects:
      t.column :created_at, :datetime, :null => false
      t.column :updated_at, :datetime, :null => false
    end

    add_owner_access_control_keys_and_indexes_for :roles

    add_index :roles, [:owner_firm_id, :search_name], :unique => true,
       :name => 'ix_role_by_name_and_owner'
  end

  def self.down
    drop_table :roles
  end
end

