migrations for campaigns

git-svn-id: file:///home/svn/framework3/trunk@10380 4d416f70-5f16-0410-b530-b9f4589650da
unstable
James Lee 2010-09-19 23:45:40 +00:00
parent 711fe18ac2
commit c0137c7d61
1 changed files with 61 additions and 0 deletions

View File

@ -0,0 +1,61 @@
class AddCampaignsAndTemplates < ActiveRecord::Migration
def self.up
create_table :campaigns do |t|
t.integer :workspace_id, :null => false
t.string :name, :limit => 512
# Serialized, stores SMTP/other protocol config options etc.
t.text :prefs
t.integer :status, :default => 0
t.timestamp :started_at
t.timestamps
end
create_table :email_templates do |t|
t.string :name, :limit => 512
t.string :subject, :limit => 1024
t.text :body
t.integer :parent_id
t.integer :campaign_id
end
create_table :attachments do |t|
t.string :name, :limit => 512
t.binary :data
t.string :content_type, :limit => 512
t.boolean :inline, :null => false, :default => true
t.boolean :zip, :null => false, :default => false
end
create_table :attachments_email_templates, :id => false do |t|
t.integer :attachment_id
t.integer :email_template_id
end
create_table :email_addresses do |t|
t.integer :campaign_id, :null => false
t.string :first_name, :limit => 512
t.string :last_name, :limit => 512
t.string :address, :limit => 512
t.boolean :sent, :null => false, :default => false
t.timestamp :clicked_at
end
create_table :web_templates do |t|
t.string :name, :limit => 512
t.string :title, :limit => 512
t.string :body, :limit => 524288
t.integer :campaign_id
end
end
def self.down
drop_table :campaigns
drop_table :email_templates
drop_table :attachments
drop_table :attachments_email_templates
drop_table :email_addresses
drop_table :web_templates
end
end