Merge pull request #1 from hennevogel/master

Some minor fixes/features
This commit is contained in:
Henne Vogelsang 2013-05-15 06:18:18 -07:00
commit 22282318e5
18 changed files with 329 additions and 153 deletions

View file

@ -134,13 +134,13 @@ class ProposalController < ApplicationController
end end
def show def show
@event = Event.find(params[:id])
end end
def confirm def confirm
if @event.transition_possible? :confirm if @event.transition_possible? :confirm
begin begin
@event.confirm! @event.confirm!(:send_mail => params[:send_mail])
rescue Exception => e rescue Exception => e
redirect_to(conference_proposal_index_path(:conference_id => @conference.short_title), :alert => "Event was NOT confirmed: #{e.message}") redirect_to(conference_proposal_index_path(:conference_id => @conference.short_title), :alert => "Event was NOT confirmed: #{e.message}")
return return

View file

@ -35,7 +35,7 @@ class Event < ActiveRecord::Base
state :rejected state :rejected
event :start_review do event :start_review do
transitions :to => :review, :from => [:new, :rejected] transitions :to => :review, :from => [:new, :rejected, :canceled]
end end
event :withdraw do event :withdraw do
transitions :to => :withdrawn, :from => [:new, :review, :unconfirmed] transitions :to => :withdrawn, :from => [:new, :review, :unconfirmed]
@ -98,7 +98,7 @@ class Event < ActiveRecord::Base
self.class.state_machine.events_for(self.current_state).include?(transition) self.class.state_machine.events_for(self.current_state).include?(transition)
end end
def process_confirmation def process_confirmation(options)
if self.conference.email_settings.send_on_confirmed_without_registration? if self.conference.email_settings.send_on_confirmed_without_registration?
if self.conference.registrations.where(:person_id => self.submitter.id).first.nil? if self.conference.registrations.where(:person_id => self.submitter.id).first.nil?
Mailbot.confirm_reminder_mail(self).deliver Mailbot.confirm_reminder_mail(self).deliver
@ -171,4 +171,4 @@ class Event < ActiveRecord::Base
self.guid = guid self.guid = guid
end end
end end

View file

@ -5,14 +5,17 @@
%i= @event.subtitle %i= @event.subtitle
.span2 .span2
-#= link_to "Edit Submission", edit_admin_conference_event_path(@conference.short_title, @event),
-# :class => "btn btn-mini btn-primary pull-right", :style => "margin-top:20px;", :onclick => "javascript:alert('Not ready yet');"
= link_to "Edit Submission", "#", = link_to "Edit Submission", "#",
:class => "btn btn-mini btn-primary pull-right", :style => "margin-top:20px;", :onclick => "javascript:alert('Not ready yet');" :class => "btn btn-mini btn-primary pull-right", :style => "margin-top:20px;", :onclick => "javascript:alert('Not ready yet');"
.row-fluid .row-fluid
.span12 .span12
%table.table %table.table
%tr
%td
%b Type
%td
= @event.event_type.title
%tr %tr
%td %td
%b State %b State

View file

@ -1,53 +1,65 @@
.row-fluid .row-fluid
.span12 .span12
%table.table.table-striped.table-bordered.table-hover %h2
%thead Events
%th - if @events
%b Title = "(#{@events.length})"
%th .well
%b Submitter %table.table.table-striped.table-bordered.table-hover#events
%th %thead
%b Type %th
%th %b Title
%b State %th
- @events.each do |event| %b Submitter
%tr %th
%td %b Type
=link_to event.title, admin_conference_event_path(@conference.short_title, event) %th
%td %b State
- if !event.submitter.nil? - @events.each do |event|
=link_to event.submitter.public_name, admin_person_path(event.submitter) %tr
- else %td
Unknown submitter =link_to event.title, admin_conference_event_path(@conference.short_title, event)
%td %td
= event.event_type.title - if !event.submitter.nil?
%td =link_to event.submitter.public_name, admin_person_path(event.submitter)
- if event.state == "withdrawn" - else
Withdrawn Unknown submitter
- else %td
.dropdown = event.event_type.title
= link_to "#", :class => "dropdown-toggle" do %td
= event.state.humanize - if event.state == "withdrawn"
<b class="caret"></b> Withdrawn
%ul.dropdown-menu - else
- if event.transition_possible? :accept .dropdown
%li= link_to "Accept event (no email)", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :accept, :send_mail => false), = link_to "#", :class => "dropdown-toggle" do
:method => :put, :hint => "Accept this event without sending an automated email." = event.state.humanize
%li= link_to "Accept event (WITH email)", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :accept, :send_mail => true), <b class="caret"></b>
:method => :put, :hint => "Accept this event and send an automated email." %ul.dropdown-menu
- if event.transition_possible? :reject - if event.transition_possible? :accept
%li= link_to "Reject event (no email)", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :reject, :send_mail => false), %li= link_to "Accept event (no email)", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :accept, :send_mail => false),
:method => :put, :confirm => "Are you sure?", :method => :put, :hint => "Accept this event without sending an automated email."
:hint => "Reject this event without sending an automated email." %li= link_to "Accept event (WITH email)", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :accept, :send_mail => true),
%li= link_to "Reject event (WITH email)", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :reject, :send_mail => true), :method => :put, :hint => "Accept this event and send an automated email."
:method => :put, :confirm => "Are you sure?", - if event.transition_possible? :reject
:hint => "Reject this event and send an automated email." %li= link_to "Reject event (no email)", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :reject, :send_mail => false),
- if event.transition_possible? :start_review :method => :put, :confirm => "Are you sure?",
%li= link_to "Start review", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :start_review), :hint => "Reject this event without sending an automated email."
:method => :put %li= link_to "Reject event (WITH email)", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :reject, :send_mail => true),
- if event.transition_possible? :confirm :method => :put, :confirm => "Are you sure?",
%li= link_to "Confirm event", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :confirm), :hint => "Reject this event and send an automated email."
:method => :put, :hint => "Confirm that the speaker(s) will be present and that the event will actually take place." - if event.transition_possible? :start_review
- if event.transition_possible? :cancel %li= link_to "Start review", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :start_review),
%li= link_to "Cancel event", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :cancel), :method => :put
:method => :put, :hint => "Mark this event as cancelled. Usually this means that the speakers had to cancel their appearance." - if event.transition_possible? :confirm
%li= link_to "Confirm event", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :confirm),
:method => :put, :hint => "Confirm that the speaker(s) will be present and that the event will actually take place."
- if event.transition_possible? :cancel
%li= link_to "Cancel event", update_state_admin_conference_event_path(@conference.short_title, event, :transition => :cancel),
:method => :put, :hint => "Mark this event as cancelled. Usually this means that the speakers had to cancel their appearance."
:javascript
$(document).ready(function() {
$('#events').dataTable( {
"bPaginate": false
} );
} );

View file

@ -1,18 +1,35 @@
%table.table.table-striped.table-bordered.table-hover %h2
%thead People
%th - if @people
%b Last Name = "(#{@people.length})"
%th .well
%b First Name %table.table.table-striped.table-bordered.table-hover#people
%th %thead
%b Public Name %th
%th %b Email
%b # of Conference Registrations %th
%th %b Last Name
- @people.each do |person| %th
%tr %b First Name
%td= person.last_name %th
%td= person.first_name %b Public Name
%td= person.public_name %th
%td= person.registrations.count %b # of Conference Registrations
%td= link_to "View", admin_person_path(person) %th
- @people.each do |person|
%tr
%td= person.email
%td= person.last_name
%td= person.first_name
%td= person.public_name
%td= person.registrations.count
%td= link_to "View", admin_person_path(person)
:javascript
$(document).ready(function() {
$('#people').dataTable( {
"bScrollInfinite": true,
"bScrollCollapse": true,
"sScrollY": "200px"
} );
} );

View file

@ -4,6 +4,10 @@
= link_to "Export PDF", admin_conference_registrations_path(@conference.short_title, :format => :pdf), :class => "btn btn-success" = link_to "Export PDF", admin_conference_registrations_path(@conference.short_title, :format => :pdf), :class => "btn btn-success"
.row-fluid .row-fluid
.span12 .span12
%h2
Registrations
- if @registrations
= "(#{@registrations.length})"
%table.table.table-striped.table-bordered.table-hover %table.table.table-striped.table-bordered.table-hover
%thead %thead
%th %th
@ -45,4 +49,4 @@
%td %td
= link_to "Edit", "#", :class => "btn btn-primary" = link_to "Edit", "#", :class => "btn btn-primary"
%td %td
= link_to "Delete", "#", :class => "btn btn-danger", :confirm => "Really delete registration for #{registration.public_name}?" = link_to "Delete", "#", :class => "btn btn-danger", :confirm => "Really delete registration for #{registration.public_name}?"

View file

@ -28,11 +28,11 @@ prawn_document(:force_download=>true, :filename => @pdf_filename) do |pdf|
else else
row << " " row << " "
end end
row << registration.arrival row << registration.arrival.to_s
row << registration.departure row << registration.departure.to_s
table_array << row table_array << row
end end
pdf.text "#{@conference.title} Registrations", :font_size => 25 pdf.text "#{@conference.title} Registrations", :font_size => 25
pdf.table table_array, :header => true, :cell_style => {:size => 5, :border_width => 1} pdf.table table_array, :header => true, :cell_style => {:size => 5, :border_width => 1}
end end

View file

@ -13,6 +13,7 @@
= link_to "New Supporter", "#", :id => "new-supporter-button", :class => "btn btn-success" = link_to "New Supporter", "#", :id => "new-supporter-button", :class => "btn btn-success"
.row-fluid .row-fluid
.span12 .span12
%h2 Supporters
.well .well
%table.table.table-striped#supporters %table.table.table-striped#supporters
%thead %thead

View file

@ -1,57 +1,70 @@
.container-fluid .container-fluid
.row-fluid .row-fluid
.span12 .span12
%table.table.table-striped.table-bordered.table-hover %h2
%thead Users
%th - if @users
%b Email = "(#{@users.length})"
%th .well
%b Last Name %table.table.table-striped.table-bordered.table-hover#users
%th %thead
%b First Name %th
%th %b Email
%b Public Name %th
%th %b Last Name
%b Roles %th
%th %b First Name
%th %th
- @users.each do |user| %b Public Name
%tr %th
%td %b Roles
= user.email %th
%td %th
= user.last_name - @users.each do |user|
%td %tr
= user.first_name %td
%td = user.email
= user.public_name %td
%td = user.last_name
= user.roles.map { |role| role.name }.join ',' %td
%td = user.first_name
.modal.hide.fade{:id => "user-role-selection-#{user.id}", "role" => "dialog", "aria-hidden" => "true"} %td
.modal-header = user.public_name
%button{"type"=>"button", :class=>"close", "data-dismiss"=>"modal", "aria-hidden"=>"true"} %td
× = user.roles.map { |role| role.name }.join ','
%h3{:id => "role-selector-header-#{user.id}"} %td
Modifying Roles .modal.hide.fade{:id => "user-role-selection-#{user.id}", "role" => "dialog", "aria-hidden" => "true"}
.modal-body .modal-header
- if current_user == user %button{"type"=>"button", :class=>"close", "data-dismiss"=>"modal", "aria-hidden"=>"true"}
You cannot modify your own role! ×
%br %h3{:id => "role-selector-header-#{user.id}"}
%button{:class=> "btn btn-danger", "data-dismiss"=> "modal", "aria-hidden"=>"true"} Modifying Roles
Cancel .modal-body
- if current_user == user
- else You cannot modify your own role!
= "Give #{user.public_name} (#{user.email}) the following roles:" %br
= semantic_form_for(user, :url => admin_user_path(user), :method => :put) do |f|
= f.input :roles, :label => false
%button{:class=> "btn btn-danger", "data-dismiss"=> "modal", "aria-hidden"=>"true"} %button{:class=> "btn btn-danger", "data-dismiss"=> "modal", "aria-hidden"=>"true"}
Cancel Cancel
= f.action :submit, :as => :button, :button_html => {:value => "Save", :class => "btn btn-primary"}
=link_to "Modify Roles", "#", "data-toggle" => "modal", "data-target" => "#user-role-selection-#{user.id}}"
%td
=link_to "Details", "javascript: void(0)", :class => "user-details-popover", "data-trigger" => "click", "data-placement" => "bottom",
"data-html" => "true",
"data-content" => user.popup_details,
"data-original-title" => ""
- else
= "Give #{user.public_name} (#{user.email}) the following roles:"
= semantic_form_for(user, :url => admin_user_path(user), :method => :put) do |f|
= f.input :roles, :label => false
%button{:class=> "btn btn-danger", "data-dismiss"=> "modal", "aria-hidden"=>"true"}
Cancel
= f.action :submit, :as => :button, :button_html => {:value => "Save", :class => "btn btn-primary"}
=link_to "Modify Roles", "#", "data-toggle" => "modal", "data-target" => "#user-role-selection-#{user.id}}"
%td
=link_to "Details", "javascript: void(0)", :class => "user-details-popover", "data-trigger" => "click", "data-placement" => "bottom",
"data-html" => "true",
"data-content" => user.popup_details,
"data-original-title" => ""
:javascript
$(document).ready(function() {
$('#users').dataTable( {
"bScrollInfinite": true,
"bScrollCollapse": true,
"sScrollY": "200px"
} );
} );

View file

@ -30,20 +30,22 @@
%li %li
= link_to "Schedule ", admin_conference_schedule_path(@conference.short_title) = link_to "Schedule ", admin_conference_schedule_path(@conference.short_title)
%ul.nav.secondary-nav.pull-right %ul.nav.secondary-nav.pull-right
%li
= link_to "User Area", root_url
- if !@conference.nil? - if !@conference.nil?
%li.dropdown %li.dropdown
= link_to "#", :class => "dropdown-toggle" do = link_to "#", :class => "dropdown-toggle", :id =>'drop1', "data-toggle" => 'dropdown' do
Export Export
<b class="caret"></b> <b class="caret"></b>
%ul.dropdown-menu %ul.dropdown-menu{:role => 'menu', "aria-labelledby" => "drop1"}
%li= link_to "JSON", "#" %li= link_to "JSON", "#"
%li= link_to "HTML", "#" %li= link_to "HTML", "#"
%li.dropdown %li.dropdown
- unless Conference.count == 1 && !has_role?(current_user, "admin") - unless Conference.count == 1 && !has_role?(current_user, "admin")
= link_to "#", :class => "dropdown-toggle" do = link_to "#", :class => "dropdown-toggle", :id => 'drop2', "data-toggle" => 'dropdown' do
Conferences Conferences
<b class="caret"></b> <b class="caret"></b>
%ul.dropdown-menu %ul.dropdown-menu{:role => 'menu', "aria-labelledby" => "drop2"}
- conferences = Conference.order("created_at DESC") - conferences = Conference.order("created_at DESC")
- unless conferences.nil? - unless conferences.nil?
- conferences.each do |c| - conferences.each do |c|
@ -54,4 +56,4 @@
- if has_role?(current_user, "admin") - if has_role?(current_user, "admin")
%li= link_to "Users", admin_users_path %li= link_to "Users", admin_users_path
%li= link_to "People", admin_people_path %li= link_to "People", admin_people_path
%li= link_to "Log out", destroy_user_session_path, :method => :delete %li= link_to "Log out", destroy_user_session_path, :method => :delete

View file

@ -30,3 +30,16 @@
- if user_signed_in? - if user_signed_in?
%li %li
= link_to('Edit account', edit_user_registration_path) = link_to('Edit account', edit_user_registration_path)
%li.dropdown
- unless Conference.count == 1 && !has_role?(current_user, "admin")
= link_to "#", :class => "dropdown-toggle" do
Conferences
<b class="caret"></b>
%ul.dropdown-menu
- conferences = Conference.order("created_at DESC")
- unless conferences.nil?
- conferences.each do |c|
- unless @conference == c
%li= link_to c.short_title, admin_conference_path(c.short_title)
- if has_role?(current_user, "admin")
%li= link_to "New Conference", new_admin_conference_path

View file

@ -6,7 +6,7 @@
= f.input :subtitle, :as => :string = f.input :subtitle, :as => :string
%section#details %section#details
= f.input :event_type_id,:as => :select, :collection => @event_types, :include_blank => false, :label => "Session Type" = f.input :event_type_id,:as => :select, :collection => @event_types, :include_blank => false, :label => "Session Type"
= f.input :abstract, :input_html => {:rows => 5}, = f.input :abstract, :input_html => {:rows => 5, :class => "span11"},
:required => true, :label => "Session Abstract" :required => true, :label => "Session Abstract"
You have used You have used
%span#abstract-count #{@event.abstract_word_count} %span#abstract-count #{@event.abstract_word_count}
@ -19,13 +19,13 @@
words. words.
%br %br
%br %br
= f.input :description, :input_html => {:rows => 5}, :hint => "This will only be shown to organizers, not to attendees." = f.input :description, :input_html => {:rows => 5, :class=> "span11"}, :hint => "This will only be shown to organizers, not to attendees."
%section#information %section#information
= f.inputs :name => "Your Information" do = f.inputs :name => "Your Information" do
= semantic_fields_for @person do |p| = semantic_fields_for @person do |p|
= p.input :public_name, :as => :string, :required => true = p.input :public_name, :as => :string, :required => true
= p.input :company, :as => :string, :label => "Affiliation", :hint => "This could be a company, a user group, or nothing at all." = p.input :company, :as => :string, :label => "Affiliation", :hint => "This could be a company, a user group, or nothing at all."
= p.input :biography, :required => true, :input_html => {:rows => 5, "onkeyup" => "word_count(this, 'biography-count', 150)"} = p.input :biography, :required => true, :input_html => {:rows => 5, :class => 'span11', "onkeyup" => "word_count(this, 'biography-count', 150)"}
You have used You have used
%span#biography-count #{@person.biography_word_count} %span#biography-count #{@person.biography_word_count}
words. Biographies are limited to 150 words. words. Biographies are limited to 150 words.
@ -36,7 +36,7 @@
= f.inputs :name => "Additional Speakers" do = f.inputs :name => "Additional Speakers" do
Will there be any additional speakers? If so, please enter their full names, email address, and a short Will there be any additional speakers? If so, please enter their full names, email address, and a short
biography for each. biography for each.
= f.input :proposal_additional_speakers, :input_html => {:rows => 5}, :label => false = f.input :proposal_additional_speakers, :input_html => {:rows => 5, :class => "span11"}, :label => false
= f.action :submit, :as => :button, :label => "Submit Session", :button_html => {:class => "btn btn-primary"} = f.action :submit, :as => :button, :label => "Submit Session", :button_html => {:class => "btn btn-primary"}
:javascript :javascript
@ -54,4 +54,4 @@
$("#event_abstract").bind('keyup', function() { $("#event_abstract").bind('keyup', function() {
word_count(this, 'abstract-count', maxcount); word_count(this, 'abstract-count', maxcount);
} ); } );

View file

@ -18,7 +18,7 @@
- @events.each do |event| - @events.each do |event|
%tr %tr
%td %td
= event.title = link_to event.title, conference_proposal_path(@conference.short_title, event.id)
%td %td
= event.public_state = event.public_state
- if event.confirmed? && !@conference.user_registered?(current_user) - if event.confirmed? && !@conference.user_registered?(current_user)
@ -27,7 +27,7 @@
%td %td
.pull-right .pull-right
- if event.transition_possible? :confirm - if event.transition_possible? :confirm
= link_to "Confirm", conference_proposal_confirm_path(@conference.short_title, event), :method => :put, :class => "btn btn-mini btn-success" = link_to "Confirm", conference_proposal_confirm_path(@conference.short_title, event, :send_mail=>false), :method => :put, :class => "btn btn-mini btn-success"
- if @conference.cfp_open? - if @conference.cfp_open?
- if !event.unconfirmed? && !event.confirmed? - if !event.unconfirmed? && !event.confirmed?
= link_to "Edit", edit_conference_proposal_path(@conference.short_title, event.id), :class => "btn btn-mini btn-primary" = link_to "Edit", edit_conference_proposal_path(@conference.short_title, event.id), :class => "btn btn-mini btn-primary"

View file

@ -0,0 +1,84 @@
.row-fluid
.span10
%h3
= @event.title
%i= @event.subtitle
.span2
- if @event.transition_possible? :confirm
= link_to "Confirm", conference_proposal_confirm_path(@conference.short_title, @event), :method => :put, :class => "btn btn-mini btn-success"
= link_to "Withdraw", conference_proposal_path(@conference.short_title, @event.id), :method => :delete,
:confirm => "Are you sure you want to withdraw this proposal?", :class => "btn btn-mini btn-danger"
.row-fluid
.span12
%table.table
%tr
%td
%b Type
%td
- if @event.event_type
= @event.event_type.title
- if !@event.track.nil?
%tr
%td
%b Track
%td
= @event.track.name
- if !@event.room.nil?
%tr
%td
%b Room
%td
= @event.room.name
- if !@event.start_time.nil?
%tr
%td
%b Scheduled time
%td
= @event.start_time
%tr
%td
%b Submitted on
%td= @event.created_at
%tr
%td
%b Last updated on
%td= @event.updated_at
%tr
%td
%b Abstract
%td= simple_format(@event.abstract)
%tr
%td
%b Description
%td= simple_format(@event.description)
- if @event.event_attachments.size > 0
%table.table
%thead
%th
%b Filename
%th
%b Title
%th
%b Size
%th
%b Public?
%th
%tbody
- @event.event_attachments.each do |a|
%tr
%td
= link_to a.attachment_file_name, conference_proposal_event_attachment_path(@conference.short_title, @event.id, a.id)
%td
= a.title
%td
= number_to_human_size a.attachment_file_size
%td
- if a.public?
Public
- else
Not Public
%td
= link_to "Delete", conference_proposal_event_attachment_path(@conference.short_title, @event.id, a.id),
:method => :delete, :confirm => "Are you sure you want to delete this attachment? It's permanant!"

View file

@ -0,0 +1,8 @@
class ChangeAttachmentDefault < ActiveRecord::Migration
def up
change_column_default(:event_attachments, :public, :default => true)
end
def down
change_column_default(:event_attachments, :public, :default => nil)
end
end

View file

@ -0,0 +1,9 @@
class DropAdditionalSpeakers < ActiveRecord::Migration
def up
remove_column :registrations, :additional_speakers
end
def down
add_column :registrations, :additional_speakers
end
end

View file

@ -0,0 +1,11 @@
class ChangeVenueTypes < ActiveRecord::Migration
def up
change_column :venues, :name, :text
change_column :venues, :address, :text
end
def down
change_column :venues, :name, :string
change_column :venues, :address, :string
end
end

View file

@ -11,7 +11,7 @@
# #
# It's strongly recommended to check this file into your version control system. # It's strongly recommended to check this file into your version control system.
ActiveRecord::Schema.define(:version => 20130216122417) do ActiveRecord::Schema.define(:version => 20130515131420) do
create_table "call_for_papers", :force => true do |t| create_table "call_for_papers", :force => true do |t|
t.date "start_date", :null => false t.date "start_date", :null => false
@ -91,14 +91,14 @@ ActiveRecord::Schema.define(:version => 20130216122417) do
create_table "event_attachments", :force => true do |t| create_table "event_attachments", :force => true do |t|
t.integer "event_id" t.integer "event_id"
t.string "title", :null => false t.string "title", :null => false
t.string "attachment_file_name" t.string "attachment_file_name"
t.string "attachment_content_type" t.string "attachment_content_type"
t.integer "attachment_file_size" t.integer "attachment_file_size"
t.datetime "attachment_updated_at" t.datetime "attachment_updated_at"
t.datetime "created_at", :null => false t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false t.datetime "updated_at", :null => false
t.boolean "public" t.boolean "public", :default => false
end end
create_table "event_people", :force => true do |t| create_table "event_people", :force => true do |t|
@ -171,7 +171,6 @@ ActiveRecord::Schema.define(:version => 20130216122417) do
t.boolean "using_affiliated_lodging", :default => false t.boolean "using_affiliated_lodging", :default => false
t.datetime "arrival" t.datetime "arrival"
t.datetime "departure" t.datetime "departure"
t.text "additional_speakers"
t.datetime "created_at", :null => false t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false t.datetime "updated_at", :null => false
t.integer "dietary_choice_id" t.integer "dietary_choice_id"
@ -262,14 +261,14 @@ ActiveRecord::Schema.define(:version => 20130216122417) do
create_table "venues", :force => true do |t| create_table "venues", :force => true do |t|
t.string "guid" t.string "guid"
t.string "name" t.text "name", :limit => 255
t.string "address" t.text "address", :limit => 255
t.string "website" t.string "website"
t.text "description" t.text "description"
t.string "offline_map_url" t.string "offline_map_url"
t.string "offline_map_bounds" t.string "offline_map_bounds"
t.datetime "created_at", :null => false t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false t.datetime "updated_at", :null => false
end end
create_table "versions", :force => true do |t| create_table "versions", :force => true do |t|