update
This commit is contained in:
parent
28e55f3f50
commit
a5a2db4077
156 changed files with 3203 additions and 1206 deletions
76
db/migrate/20151018152439_create_programs_table.rb
Normal file
76
db/migrate/20151018152439_create_programs_table.rb
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
class CreateProgramsTable< ActiveRecord::Migration
|
||||
class TempConference < ActiveRecord::Base
|
||||
self.table_name = 'conferences'
|
||||
end
|
||||
|
||||
class TempCfp < ActiveRecord::Base
|
||||
self.table_name = 'cfps'
|
||||
end
|
||||
|
||||
class TempCallForPaper < ActiveRecord::Base
|
||||
self.table_name = 'call_for_papers'
|
||||
end
|
||||
|
||||
class TempProgram < ActiveRecord::Base
|
||||
self.table_name = 'programs'
|
||||
end
|
||||
|
||||
def up
|
||||
create_table :programs do |t|
|
||||
t.references :conference
|
||||
t.integer :rating, default: 0
|
||||
t.boolean :schedule_public, default: false
|
||||
t.boolean :schedule_fluid, default: false
|
||||
t.timestamps
|
||||
end
|
||||
|
||||
add_column :call_for_papers, :program_id, :integer
|
||||
|
||||
TempConference.all.each do |conference|
|
||||
unless TempProgram.find_by(conference_id: conference.id)
|
||||
program = TempProgram.new
|
||||
program.conference_id = conference.id
|
||||
program.save!
|
||||
|
||||
if (cfp = TempCallForPaper.find_by(conference_id: conference.id))
|
||||
cfp.program_id = program.id
|
||||
cfp.save!
|
||||
|
||||
program.rating = cfp.rating
|
||||
program.schedule_public = cfp.schedule_public
|
||||
program.schedule_fluid = cfp.schedule_changes
|
||||
program.save!
|
||||
end
|
||||
end
|
||||
end
|
||||
remove_column :call_for_papers, :conference_id
|
||||
remove_column :call_for_papers, :rating
|
||||
remove_column :call_for_papers, :schedule_public
|
||||
remove_column :call_for_papers, :schedule_changes
|
||||
rename_table :call_for_papers, :cfps
|
||||
end
|
||||
|
||||
def down
|
||||
rename_table :cfps, :call_for_papers
|
||||
add_column :call_for_papers, :conference_id, :integer
|
||||
add_column :call_for_papers, :rating, :integer, default: 0
|
||||
add_column :call_for_papers, :schedule_public, :boolean, default: false
|
||||
add_column :call_for_papers, :schedule_changes, :boolean, default: false
|
||||
|
||||
TempConference.all.each do |conference|
|
||||
if (program = TempProgram.find_by(conference_id: conference.id))
|
||||
if (cfp = TempCallForPaper.find_by(program_id: program.id))
|
||||
cfp.conference_id = program.conference_id
|
||||
cfp.rating = program.rating
|
||||
cfp.schedule_public = program.schedule_public
|
||||
cfp.schedule_changes = program.schedule_fluid
|
||||
|
||||
cfp.save!
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
remove_column :call_for_papers, :program_id
|
||||
drop_table :programs
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1,99 @@
|
|||
class RenameConferenceIdToProgramIdInEventsTracksDifficultyLevels < ActiveRecord::Migration
|
||||
class TempConference < ActiveRecord::Base
|
||||
self.table_name = 'conferences'
|
||||
end
|
||||
|
||||
class TempEvent < ActiveRecord::Base
|
||||
self.table_name = 'events'
|
||||
end
|
||||
|
||||
class TempEventType < ActiveRecord::Base
|
||||
self.table_name = 'event_types'
|
||||
end
|
||||
|
||||
class TempTrack < ActiveRecord::Base
|
||||
self.table_name = 'tracks'
|
||||
end
|
||||
|
||||
class TempDifficultyLevel < ActiveRecord::Base
|
||||
self.table_name = 'difficulty_levels'
|
||||
end
|
||||
|
||||
class TempProgram < ActiveRecord::Base
|
||||
self.table_name = 'programs'
|
||||
end
|
||||
|
||||
def up
|
||||
add_column :events, :program_id, :integer
|
||||
add_column :event_types, :program_id, :integer
|
||||
add_column :tracks, :program_id, :integer
|
||||
add_column :difficulty_levels, :program_id, :integer
|
||||
|
||||
TempConference.all.each do |conference|
|
||||
program = Program.find_by(conference_id: conference.id)
|
||||
|
||||
TempEvent.where(conference_id: conference.id).each do |event|
|
||||
event.program_id = program.id
|
||||
event.save!
|
||||
end
|
||||
|
||||
TempEventType.where(conference_id: conference.id).each do |event_type|
|
||||
event_type.program_id = program.id
|
||||
event_type.save!
|
||||
end
|
||||
|
||||
TempTrack.where(conference_id: conference.id).each do |track|
|
||||
track.program_id = program.id
|
||||
track.save!
|
||||
end
|
||||
|
||||
TempDifficultyLevel.where(conference_id: conference.id).each do |difficulty_level|
|
||||
difficulty_level.program_id = program.id
|
||||
difficulty_level.save!
|
||||
end
|
||||
end
|
||||
|
||||
remove_column :events, :conference_id
|
||||
remove_column :event_types, :conference_id
|
||||
remove_column :tracks, :conference_id
|
||||
remove_column :difficulty_levels, :conference_id
|
||||
end
|
||||
|
||||
def down
|
||||
add_column :events, :conference_id, :integer
|
||||
add_column :event_types, :conference_id, :integer
|
||||
add_column :tracks, :conference_id, :integer
|
||||
add_column :difficulty_levels, :conference_id, :integer
|
||||
|
||||
TempConference.all.each do |conference|
|
||||
program = TempProgram.find_by(conference_id: conference.id)
|
||||
|
||||
if program
|
||||
TempEvent.where(program_id: program.id).each do |event|
|
||||
event.conference_id = conference.id
|
||||
event.save!
|
||||
end
|
||||
|
||||
TempEventType.where(program_id: program.id).each do |event_type|
|
||||
event_type.conference_id = conference.id
|
||||
event_type.save!
|
||||
end
|
||||
|
||||
TempTrack.where(program_id: program.id).each do |track|
|
||||
track.conference_id = conference.id
|
||||
track.save!
|
||||
end
|
||||
|
||||
TempDifficultyLevel.where(program_id: program.id).each do |difficulty_level|
|
||||
difficulty_level.conference_id = conference.id
|
||||
difficulty_level.save!
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
remove_column :events, :program_id
|
||||
remove_column :event_types, :program_id
|
||||
remove_column :tracks, :program_id
|
||||
remove_column :difficulty_levels, :program_id
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
class RenameEmailSettingsWithCfpAndProgram < ActiveRecord::Migration
|
||||
def change
|
||||
rename_column :email_settings, :send_on_call_for_papers_schedule_public, :send_on_program_schedule_public
|
||||
rename_column :email_settings, :call_for_papers_schedule_public_body, :program_schedule_public_body
|
||||
rename_column :email_settings, :call_for_papers_schedule_public_subject, :program_schedule_public_subject
|
||||
rename_column :email_settings, :send_on_call_for_papers_dates_updated, :send_on_cfp_dates_updated
|
||||
rename_column :email_settings, :call_for_papers_dates_updated_subject, :cfp_dates_updated_subject
|
||||
rename_column :email_settings, :call_for_papers_dates_updated_body, :cfp_dates_updated_body
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1,56 @@
|
|||
class ChangeConferenceIdToVenueIdInRooms < ActiveRecord::Migration
|
||||
class TempConference < ActiveRecord::Base
|
||||
self.table_name = 'conferences'
|
||||
|
||||
has_one :temp_venue
|
||||
end
|
||||
|
||||
class TempVenue < ActiveRecord::Base
|
||||
self.table_name = 'venues'
|
||||
|
||||
belongs_to :temp_conference
|
||||
has_many :temp_rooms
|
||||
end
|
||||
|
||||
class TempRoom < ActiveRecord::Base
|
||||
self.table_name = 'rooms'
|
||||
|
||||
belongs_to :temp_venue
|
||||
end
|
||||
|
||||
def up
|
||||
add_column :rooms, :venue_id, :integer
|
||||
|
||||
TempRoom.all.each do |room|
|
||||
venue = TempVenue.find_by(conference_id: room.conference_id)
|
||||
if venue
|
||||
room.venue_id = venue.id
|
||||
else
|
||||
test_venue = Venue.find_or_create_by!(conference_id: room.conference_id, name: 'test venue', street: 'test street', city: 'test city', country: 'test')
|
||||
room.venue_id = test_venue.id
|
||||
end
|
||||
room.save!
|
||||
end
|
||||
|
||||
change_column :rooms, :venue_id, :integer, null: false
|
||||
remove_column :rooms, :conference_id
|
||||
end
|
||||
|
||||
def down
|
||||
add_column :rooms, :conference_id, :integer
|
||||
|
||||
TempRoom.all.each do |room|
|
||||
venue = TempVenue.find(room.venue_id)
|
||||
conference = TempConference.find(venue.conference_id)
|
||||
|
||||
if conference
|
||||
room.conference_id = conference.id
|
||||
end
|
||||
|
||||
room.save!
|
||||
end
|
||||
|
||||
change_column :rooms, :conference_id, :integer, null: false
|
||||
remove_column :rooms, :venue_id
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
class AddRegistrationLimitToConferences < ActiveRecord::Migration
|
||||
def change
|
||||
add_column :conferences, :registration_limit, :integer, default: 0
|
||||
end
|
||||
end
|
||||
62
db/schema.rb
62
db/schema.rb
|
|
@ -11,8 +11,7 @@
|
|||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
|
||||
ActiveRecord::Schema.define(version: 20151005161518) do
|
||||
ActiveRecord::Schema.define(version: 20160201221411) do
|
||||
|
||||
create_table "ahoy_events", force: true do |t|
|
||||
t.uuid "visit_id"
|
||||
|
|
@ -32,17 +31,6 @@ ActiveRecord::Schema.define(version: 20151005161518) do
|
|||
t.datetime "updated_at"
|
||||
end
|
||||
|
||||
create_table "call_for_papers", force: true do |t|
|
||||
t.date "start_date", null: false
|
||||
t.date "end_date", null: false
|
||||
t.integer "conference_id"
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
t.boolean "schedule_changes", default: false
|
||||
t.integer "rating", default: 3
|
||||
t.boolean "schedule_public"
|
||||
end
|
||||
|
||||
create_table "campaigns", force: true do |t|
|
||||
t.integer "conference_id"
|
||||
t.string "name"
|
||||
|
|
@ -55,6 +43,14 @@ ActiveRecord::Schema.define(version: 20151005161518) do
|
|||
t.datetime "updated_at"
|
||||
end
|
||||
|
||||
create_table "cfps", force: true do |t|
|
||||
t.date "start_date", null: false
|
||||
t.date "end_date", null: false
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
t.integer "program_id"
|
||||
end
|
||||
|
||||
create_table "comments", force: true do |t|
|
||||
t.string "title", limit: 50, default: ""
|
||||
t.text "body"
|
||||
|
|
@ -106,6 +102,7 @@ ActiveRecord::Schema.define(version: 20151005161518) do
|
|||
t.string "color"
|
||||
t.text "events_per_week"
|
||||
t.text "description"
|
||||
t.integer "registration_limit", default: 0
|
||||
end
|
||||
|
||||
create_table "conferences_questions", id: false, force: true do |t|
|
||||
|
|
@ -150,12 +147,12 @@ ActiveRecord::Schema.define(version: 20151005161518) do
|
|||
end
|
||||
|
||||
create_table "difficulty_levels", force: true do |t|
|
||||
t.integer "conference_id"
|
||||
t.string "title"
|
||||
t.text "description"
|
||||
t.string "color"
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
t.integer "program_id"
|
||||
end
|
||||
|
||||
create_table "email_settings", force: true do |t|
|
||||
|
|
@ -183,22 +180,22 @@ ActiveRecord::Schema.define(version: 20151005161518) do
|
|||
t.boolean "send_on_venue_updated", default: false
|
||||
t.string "venue_updated_subject"
|
||||
t.text "venue_updated_body"
|
||||
t.boolean "send_on_call_for_papers_dates_updated", default: false
|
||||
t.boolean "send_on_call_for_papers_schedule_public", default: false
|
||||
t.string "call_for_papers_schedule_public_subject"
|
||||
t.string "call_for_papers_dates_updated_subject"
|
||||
t.text "call_for_papers_schedule_public_body"
|
||||
t.text "call_for_papers_dates_updated_body"
|
||||
t.boolean "send_on_cfp_dates_updated", default: false
|
||||
t.boolean "send_on_program_schedule_public", default: false
|
||||
t.string "program_schedule_public_subject"
|
||||
t.string "cfp_dates_updated_subject"
|
||||
t.text "program_schedule_public_body"
|
||||
t.text "cfp_dates_updated_body"
|
||||
end
|
||||
|
||||
create_table "event_types", force: true do |t|
|
||||
t.integer "conference_id"
|
||||
t.string "title", null: false
|
||||
t.integer "length", default: 30
|
||||
t.integer "minimum_abstract_length", default: 0
|
||||
t.integer "maximum_abstract_length", default: 500
|
||||
t.string "color"
|
||||
t.string "description"
|
||||
t.integer "program_id"
|
||||
end
|
||||
|
||||
create_table "event_users", force: true do |t|
|
||||
|
|
@ -212,7 +209,6 @@ ActiveRecord::Schema.define(version: 20151005161518) do
|
|||
|
||||
create_table "events", force: true do |t|
|
||||
t.string "guid", null: false
|
||||
t.integer "conference_id"
|
||||
t.integer "event_type_id"
|
||||
t.string "title", null: false
|
||||
t.string "subtitle"
|
||||
|
|
@ -237,6 +233,7 @@ ActiveRecord::Schema.define(version: 20151005161518) do
|
|||
t.integer "difficulty_level_id"
|
||||
t.integer "week"
|
||||
t.boolean "is_highlight", default: false
|
||||
t.integer "program_id"
|
||||
end
|
||||
|
||||
create_table "events_registrations", id: false, force: true do |t|
|
||||
|
|
@ -277,6 +274,15 @@ ActiveRecord::Schema.define(version: 20151005161518) do
|
|||
t.datetime "updated_at"
|
||||
end
|
||||
|
||||
create_table "programs", force: true do |t|
|
||||
t.integer "conference_id"
|
||||
t.integer "rating", default: 0
|
||||
t.boolean "schedule_public", default: false
|
||||
t.boolean "schedule_fluid", default: false
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
end
|
||||
|
||||
create_table "qanswers", force: true do |t|
|
||||
t.integer "question_id"
|
||||
t.integer "answer_id"
|
||||
|
|
@ -357,10 +363,10 @@ ActiveRecord::Schema.define(version: 20151005161518) do
|
|||
add_index "roles_users", ["user_id", "role_id"], name: "index_roles_users_on_user_id_and_role_id"
|
||||
|
||||
create_table "rooms", force: true do |t|
|
||||
t.string "guid", null: false
|
||||
t.integer "conference_id"
|
||||
t.string "name", null: false
|
||||
t.string "guid", null: false
|
||||
t.string "name", null: false
|
||||
t.integer "size"
|
||||
t.integer "venue_id", null: false
|
||||
end
|
||||
|
||||
create_table "social_events", force: true do |t|
|
||||
|
|
@ -443,13 +449,13 @@ ActiveRecord::Schema.define(version: 20151005161518) do
|
|||
end
|
||||
|
||||
create_table "tracks", force: true do |t|
|
||||
t.string "guid", null: false
|
||||
t.integer "conference_id"
|
||||
t.string "name", null: false
|
||||
t.string "guid", null: false
|
||||
t.string "name", null: false
|
||||
t.text "description"
|
||||
t.string "color"
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
t.integer "program_id"
|
||||
end
|
||||
|
||||
create_table "users", force: true do |t|
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue