Merge fafadb4e26 into 7e9d1dbf84
This commit is contained in:
commit
62b292a122
25 changed files with 103 additions and 118 deletions
1
Gemfile
1
Gemfile
|
|
@ -7,6 +7,7 @@ end
|
|||
|
||||
# as web framework
|
||||
gem 'rails', '~> 4.2.8'
|
||||
gem 'pg'
|
||||
|
||||
# enables serving assets in production and setting your logger to standard out
|
||||
# both of which are required to run an application on a twelve-factor provider
|
||||
|
|
|
|||
|
|
@ -328,6 +328,7 @@ GEM
|
|||
parser (2.4.0.0)
|
||||
ast (~> 2.2)
|
||||
pdf-core (0.2.5)
|
||||
pg (0.21.0)
|
||||
phantomjs (2.1.1.0)
|
||||
piwik_analytics (1.0.2)
|
||||
actionpack
|
||||
|
|
@ -615,6 +616,7 @@ DEPENDENCIES
|
|||
omniauth-google-oauth2
|
||||
omniauth-openid
|
||||
paper_trail
|
||||
pg
|
||||
phantomjs
|
||||
piwik_analytics (~> 1.0.1)
|
||||
poltergeist
|
||||
|
|
@ -662,4 +664,4 @@ DEPENDENCIES
|
|||
whenever
|
||||
|
||||
BUNDLED WITH
|
||||
1.15.1
|
||||
1.15.3
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
*= require strap-on
|
||||
*= require formtastic-bootstrap
|
||||
*= require dataTables/bootstrap/3/jquery.dataTables.bootstrap
|
||||
*= require osem-fonts
|
||||
*= require osem
|
||||
*= require osem-rating
|
||||
*= require osem-schedule
|
||||
|
|
@ -9,7 +10,6 @@
|
|||
*= require osem-dashboard
|
||||
*= require osem-splash
|
||||
*= require font-awesome
|
||||
*= require osem-fonts
|
||||
*= require bootstrap-markdown
|
||||
*= require bootstrap-datetimepicker
|
||||
*= require leaflet
|
||||
|
|
|
|||
|
|
@ -1,13 +1,25 @@
|
|||
//== max mearsheimers colors
|
||||
$darkgray: #263238;
|
||||
$blue: #22C2E6;
|
||||
$mediumgray: #4A4A4A;
|
||||
$green: rgba(121, 188, 130, 1);
|
||||
$darkblue: rgba(0, 123, 171, 1);
|
||||
|
||||
//== Bootstrap Colors
|
||||
$brand-primary: $blue;
|
||||
|
||||
html {
|
||||
position: relative;
|
||||
min-height: 100%;
|
||||
}
|
||||
$program: 'program-n4', Program, sans-serif;
|
||||
|
||||
body {
|
||||
/* Margin bottom by 2 times the footer height */
|
||||
margin-bottom: 60px;
|
||||
/* Margin bottom by navbar height */
|
||||
padding-top: 60px;
|
||||
font-family: $program, Program, serif !important;
|
||||
}
|
||||
|
||||
#content {
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@
|
|||
= f.input :registration_body, input_html: { rows: 10, cols: 20 }
|
||||
%a.btn.btn-link.control_label.load_template{ 'data-subject-input-id' => 'email_settings_registration_subject', 'data-subject-text' => 'Thank you for registering',
|
||||
'data-body-input-id' => 'email_settings_registration_body',
|
||||
'data-body-text' => "Dear {name},\n\nThank you for Registering for the conference {conference}.\nPlease complete your registration by filling out your travel information.\n\nIf you are unable to attend please unregister online:\n{registrationlink}\n\nFeel free to contact us with any questions or concerns.\nWe look forward to see you there.\n\nBest wishes\n\n{conference} Team" } Load Template
|
||||
'data-body-text' => "Dear {name},\n\nThank you for Registering for the conference {conference}.\nPlease complete your registration.\n\nIf you are unable to attend please unregister online:\n{registrationlink}\n\nFeel free to contact us with any questions or concerns.\nWe look forward to see you there.\n\nBest wishes\n\n{conference} Team" } Load Template
|
||||
%a.btn.btn-link.control_label.template_help_link{ 'data-name' => 'registration_help' } Show Help
|
||||
= render partial: 'help', locals: { id: 'registration_help', show_event_variables: false }
|
||||
#proposal.tab-pane{ role: 'tabpanel' }
|
||||
|
|
|
|||
|
|
@ -19,8 +19,8 @@
|
|||
readonly: true,
|
||||
data: { size: 'small', on_color: 'success', off_color: 'warning', on_text: 'Yes', off_text: 'No' }
|
||||
= f.input :is_admin, hint: 'An admin can create a new conference, manage users and make other users admins.'
|
||||
= f.input :name, as: :string
|
||||
= f.input :username, :as => :string if @user.new_record?
|
||||
= f.input :username, label: "First Name", :as => :string if @user.new_record?
|
||||
= f.input :name, label: "Last Name", as: :string
|
||||
= f.input :email
|
||||
= f.input :password if @user.new_record?
|
||||
= f.input :affiliation, as: :string
|
||||
|
|
|
|||
|
|
@ -9,10 +9,6 @@
|
|||
.col-md-8
|
||||
- unless current_user
|
||||
%legend
|
||||
%span
|
||||
=link_to('#signup', role: 'tab', "aria-controls" => "home", "data-toggle" => "tab") do
|
||||
= ENV['OSEM_NAME'] || 'OSEM'
|
||||
Account
|
||||
%span.pull-right#account-already
|
||||
=link_to('#signin', role: 'tab', "aria-controls" => "home", "data-toggle" => "tab") do
|
||||
Already have an account?
|
||||
|
|
|
|||
|
|
@ -1,21 +1,17 @@
|
|||
- if @conference.questions.any?
|
||||
= render partial: 'conference_registrations/questions', locals: { f: f }
|
||||
- if @conference.program.events.with_registration_open.any? || @registration.events.any?
|
||||
= f.inputs 'Pre-registration required for the following:' do
|
||||
|
||||
- @registration.events_ordered.each do |event|
|
||||
%label
|
||||
= hidden_field_tag "registration[event_ids][]", nil
|
||||
= check_box_tag "registration[event_ids][]", event.id, event.registrations.include?(@registration)
|
||||
= event.title
|
||||
.text-muted
|
||||
= registered_text(event)
|
||||
- if event.scheduled?
|
||||
(Scheduled on: #{event.time.to_date})
|
||||
%br
|
||||
|
||||
|
||||
|
||||
= f.inputs 'Your Travel Info' do
|
||||
= f.input :arrival, as: :string, label: 'Your arrival time', hint: "Leave blank if not sure", input_html: { value: (f.object.arrival.to_formatted_s(:db_without_seconds) unless f.object.arrival.nil?), id: 'registration-arrival-datepicker',start_date: @conference.start_date,end_date: @conference.end_date}
|
||||
= f.input :departure, as: :string, label: 'Your departure time', hint: "Leave blank if not sure", input_html: { value: (f.object.departure.to_formatted_s(:db_without_seconds) unless f.object.departure.nil?), id: 'registration-departure-datepicker'}
|
||||
= f.inputs 'Select which events you will attend:' do
|
||||
%table.table
|
||||
%tr
|
||||
%td Register?
|
||||
%td Track
|
||||
%td Title
|
||||
- @registration.events_ordered.each do |event|
|
||||
%tr
|
||||
%label
|
||||
= hidden_field_tag "registration[event_ids][]", nil
|
||||
%td= check_box_tag "registration[event_ids][]", event.id, event.registrations.include?(@registration)
|
||||
%td= (event&.track&.name || "All")
|
||||
%td= event.title
|
||||
%br
|
||||
|
|
|
|||
|
|
@ -14,28 +14,6 @@
|
|||
= "#{@conference.venue.city} / #{@conference.venue.country_name}."
|
||||
%small
|
||||
= date_string(@conference.start_date, @conference.end_date)
|
||||
.row
|
||||
.col-md-12
|
||||
%h4
|
||||
%span.fa-stack
|
||||
%i.fa.fa-square-o.fa-stack-2x
|
||||
%i.fa.fa-plane.fa-stack-1x
|
||||
Travel Schedule
|
||||
%ul
|
||||
%li
|
||||
- if @registration.arrival.present?
|
||||
arrive at
|
||||
%strong
|
||||
= @registration.arrival.strftime('%A, %B %-d. %Y %H:%M')
|
||||
- else
|
||||
You haven't scheduled your arrival
|
||||
%li
|
||||
- if @registration.departure.present?
|
||||
depart at
|
||||
%strong
|
||||
= @registration.departure.strftime('%A, %B %-d. %Y %H:%M')
|
||||
- else
|
||||
You haven't scheduled your departure
|
||||
- if @conference.questions.any?
|
||||
.row
|
||||
.col-md-12
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
= date_string(conference.start_date, conference.end_date)
|
||||
- if conference.venue
|
||||
%p
|
||||
= "#{conference.venue.city}/#{conference.venue.country_name}"
|
||||
= "#{conference.venue.name} / #{conference.venue.city}"
|
||||
- unless conference.description.blank?
|
||||
%p
|
||||
= markdown(conference.description)
|
||||
|
|
|
|||
|
|
@ -3,12 +3,6 @@
|
|||
.col-md-12
|
||||
%h2.text-center
|
||||
Program
|
||||
%p.lead.text-center
|
||||
%span.notranslate
|
||||
= @conference.short_title
|
||||
has the most awesome program ever!
|
||||
- if @conference.splashpage and @conference.program.tracks.any? and @conference.splashpage.include_tracks
|
||||
See rock-star speakers cover the topics of
|
||||
- if @conference.splashpage and @conference.splashpage.include_tracks
|
||||
- @conference.program.tracks.confirmed.each_slice(3) do |slice|
|
||||
.row.row-centered
|
||||
|
|
@ -34,9 +28,6 @@
|
|||
= link_to(conference_schedule_path(@conference.short_title), class: 'btn btn-default btn-lg') do
|
||||
Full Schedule
|
||||
|
||||
|
||||
%h3.text-center
|
||||
Don't miss out!
|
||||
%br
|
||||
- if @conference.program.events.highlights.any?
|
||||
.row
|
||||
|
|
|
|||
|
|
@ -23,11 +23,13 @@
|
|||
= markdown(@conference.venue.description)
|
||||
.col-md-6
|
||||
%h2
|
||||
= "#{@conference.venue.city} / #{@conference.venue.country_name}"
|
||||
= "#{@conference.venue.name}"
|
||||
%h3
|
||||
= "#{@conference.venue.city}"
|
||||
%address
|
||||
= @conference.venue.street
|
||||
%br
|
||||
= "#{@conference.venue.postalcode}, #{@conference.venue.city}"
|
||||
= "#{@conference.venue.city}, CA #{@conference.venue.postalcode}"
|
||||
%br
|
||||
= @conference.venue.country_name
|
||||
- if @conference.venue.website
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
.row
|
||||
.col-md-12
|
||||
.page-header
|
||||
%h2 Upcoming Conferences
|
||||
%h2 Upcoming Events
|
||||
- @current.each do |conference|
|
||||
= render partial: 'conference_details', locals: { conference: conference }
|
||||
-if @antiquated and @antiquated.any?
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@
|
|||
= @conference.title
|
||||
%p.lead
|
||||
- if @conference.venue
|
||||
= "#{@conference.venue.city} / #{@conference.venue.country_name}"
|
||||
= "#{@conference.venue.name} / #{@conference.venue.city}"
|
||||
- if @conference.start_date && @conference.end_date
|
||||
%br
|
||||
= date_string(@conference.start_date, @conference.end_date)
|
||||
|
|
@ -93,6 +93,6 @@
|
|||
cell_size: 100,
|
||||
x_colors: triangle_colors
|
||||
});
|
||||
$('#banner').css('background-image', 'url("' + pattern.png() + '")');
|
||||
$('#banner').css('background-image', "url('#{@conference.picture_url}')");
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
.row
|
||||
.col-md-12
|
||||
= semantic_form_for(resource, as: resource_name, url: registration_path(resource_name), html: { method: :put }) do |f|
|
||||
= f.input :username, required: false, input_html: { autocomplete: 'off' }
|
||||
= f.input :username, label: "First Name", required: false, input_html: { autocomplete: 'off' }
|
||||
= f.input :email, required: false, input_html: { autocomplete: 'off' }
|
||||
= f.input :email_public
|
||||
= f.input :password, hint: "(Leave blank if you don't want to change it)", input_html: { autocomplete: 'off' }
|
||||
|
|
|
|||
|
|
@ -7,9 +7,9 @@
|
|||
Sign Up
|
||||
.panel-body
|
||||
= semantic_form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f|
|
||||
= f.input :username, input_html: { required: true }, hint: 'This is how the other users see you, not your real name'
|
||||
= f.input :username, label: "First name", input_html: { required: true }
|
||||
= f.input :name, label: "Last name", input_html: { required: true }
|
||||
= f.input :email, input_html: { required: true }
|
||||
= f.input :name, input_html: { required: true }, hint: 'This is your real name'
|
||||
= f.input :password, input_html: { required: true }
|
||||
= f.input :password_confirmation, input_html: { required: true }
|
||||
%p.text-right
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
- unless current_user
|
||||
= semantic_fields_for @user do |u|
|
||||
= u.input :username, input_html: { required: 'required', autocomplete: 'off' }
|
||||
= u.input :username, label: "First Name", input_html: { required: 'required', autocomplete: 'off' }
|
||||
= u.input :name, label: "Last Name", input_html: { required: 'required', autocomplete: 'off' }
|
||||
= u.input :email, input_html: { required: 'required', autocomplete: 'off' }
|
||||
= u.input :password, input_html: { required: 'required', autocomplete: 'off', id: 'password_inline' }
|
||||
= u.input :password_confirmation, input_html: { required: 'required', autocomplete: 'off' }
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
%li.dropdown
|
||||
%a.dropdown-toggle{"data-toggle" => "dropdown", href: '#', id: "current-user-detail"}
|
||||
- if not current_user.name.blank?
|
||||
#{current_user.username}
|
||||
#{current_user.name}
|
||||
-else
|
||||
#{current_user.email}
|
||||
|
|
@ -54,12 +55,12 @@
|
|||
- if ENV['OSEM_ICHAIN_ENABLED'] == 'true'
|
||||
%li{class: "#{active_nav_li(new_ichain_registration_path('user'))}"}
|
||||
= link_to(new_ichain_registration_path('user')) do
|
||||
%span.fa.fa-heart
|
||||
%span.fa.fa-user-plus
|
||||
Sign Up
|
||||
- else
|
||||
%li{class: "#{active_nav_li(new_registration_path('user'))}"}
|
||||
= link_to(new_registration_path('user')) do
|
||||
%span.fa.fa-heart
|
||||
%span.fa.fa-user-plus
|
||||
Sign Up
|
||||
%li.dropdown.visible-desktop
|
||||
%a.dropdown-toggle{"data-toggle" => "dropdown", href: '#'}
|
||||
|
|
|
|||
|
|
@ -3,10 +3,13 @@
|
|||
%meta{charset: 'utf-8'}
|
||||
%meta{name: 'viewport', content: 'width=device-width, initial-scale=1, maximum-scale=1'}
|
||||
%title= content_for?(:title) ? yield(:title) : (ENV['OSEM_NAME'] || 'OSEM')
|
||||
= javascript_include_tag '//use.typekit.net/uzo8iqp.js'
|
||||
%script{ type: 'text/javascript', src: '//use.typekit.net/uzo8iqp.js' }
|
||||
%script{ type: 'text/javascript' } try{Typekit.load();}catch(e){}
|
||||
%meta{content: '', name: 'description'}
|
||||
%meta{content: '', name: 'author'}
|
||||
= stylesheet_link_tag "application", media: 'all'
|
||||
= javascript_include_tag "application"
|
||||
= stylesheet_link_tag "application", media: 'all'
|
||||
|
||||
= csrf_meta_tags
|
||||
:javascript
|
||||
|
|
@ -33,14 +36,5 @@
|
|||
= yield
|
||||
#footer
|
||||
.container
|
||||
%p.muted.text-center
|
||||
%small
|
||||
This tool is
|
||||
=link_to "free software,", "http://www.gnu.org/philosophy/free-sw.html"
|
||||
released under the
|
||||
=link_to "MIT license.", "http://opensource.org/licenses/MIT"
|
||||
You can run, copy, distribute, study, change and improve it.
|
||||
The source code and the developers are on
|
||||
=link_to "github.", "https://github.com/openSUSE/osem"
|
||||
= content_for(:script_body)
|
||||
= piwik_tracking_tag
|
||||
|
|
|
|||
4
config/database.yml.postgresql
Normal file
4
config/database.yml.postgresql
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
development: &default
|
||||
adapter: postgresql
|
||||
encoding: unicode
|
||||
pool: 5
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
class AddAttendedToRegistrations < ActiveRecord::Migration
|
||||
def change
|
||||
add_column :registrations, :attended, :boolean, default: 0
|
||||
add_column :registrations, :attended, :boolean, default: false
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
class AddScheduleChangesToCallForPapers < ActiveRecord::Migration
|
||||
def change
|
||||
add_column :call_for_papers, :schedule_changes, :boolean, default: 0
|
||||
add_column :call_for_papers, :schedule_changes, :boolean, default: false
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ class SplitTicketPriceInPriceAndCurrency < ActiveRecord::Migration
|
|||
end
|
||||
|
||||
def change
|
||||
add_money :tickets, :price
|
||||
add_monetize :tickets, :price
|
||||
|
||||
TempTicket.all.each do |ticket|
|
||||
# Replace currency symbol with ISO Code
|
||||
|
|
|
|||
75
db/schema.rb
75
db/schema.rb
|
|
@ -11,19 +11,22 @@
|
|||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(version: 20170816203325) do
|
||||
ActiveRecord::Schema.define(version: 20170814174637) do
|
||||
|
||||
# These are extensions that must be enabled in order to support this database
|
||||
enable_extension "plpgsql"
|
||||
|
||||
create_table "ahoy_events", force: :cascade do |t|
|
||||
t.uuid "visit_id", limit: 16
|
||||
t.uuid "visit_id"
|
||||
t.integer "user_id"
|
||||
t.string "name"
|
||||
t.text "properties"
|
||||
t.datetime "time"
|
||||
end
|
||||
|
||||
add_index "ahoy_events", ["time"], name: "index_ahoy_events_on_time"
|
||||
add_index "ahoy_events", ["user_id"], name: "index_ahoy_events_on_user_id"
|
||||
add_index "ahoy_events", ["visit_id"], name: "index_ahoy_events_on_visit_id"
|
||||
add_index "ahoy_events", ["time"], name: "index_ahoy_events_on_time", using: :btree
|
||||
add_index "ahoy_events", ["user_id"], name: "index_ahoy_events_on_user_id", using: :btree
|
||||
add_index "ahoy_events", ["visit_id"], name: "index_ahoy_events_on_visit_id", using: :btree
|
||||
|
||||
create_table "answers", force: :cascade do |t|
|
||||
t.string "title"
|
||||
|
|
@ -39,8 +42,8 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.datetime "updated_at", null: false
|
||||
end
|
||||
|
||||
add_index "booth_requests", ["booth_id"], name: "index_booth_requests_on_booth_id"
|
||||
add_index "booth_requests", ["user_id"], name: "index_booth_requests_on_user_id"
|
||||
add_index "booth_requests", ["booth_id"], name: "index_booth_requests_on_booth_id", using: :btree
|
||||
add_index "booth_requests", ["user_id"], name: "index_booth_requests_on_user_id", using: :btree
|
||||
|
||||
create_table "booths", force: :cascade do |t|
|
||||
t.string "title"
|
||||
|
|
@ -90,9 +93,9 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.integer "rgt"
|
||||
end
|
||||
|
||||
add_index "comments", ["commentable_id"], name: "index_comments_on_commentable_id"
|
||||
add_index "comments", ["commentable_type"], name: "index_comments_on_commentable_type"
|
||||
add_index "comments", ["user_id"], name: "index_comments_on_user_id"
|
||||
add_index "comments", ["commentable_id"], name: "index_comments_on_commentable_id", using: :btree
|
||||
add_index "comments", ["commentable_type"], name: "index_comments_on_commentable_type", using: :btree
|
||||
add_index "comments", ["user_id"], name: "index_comments_on_user_id", using: :btree
|
||||
|
||||
create_table "commercials", force: :cascade do |t|
|
||||
t.string "commercial_id"
|
||||
|
|
@ -131,7 +134,7 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.integer "booth_limit", default: 0
|
||||
end
|
||||
|
||||
add_index "conferences", ["organization_id"], name: "index_conferences_on_organization_id"
|
||||
add_index "conferences", ["organization_id"], name: "index_conferences_on_organization_id", using: :btree
|
||||
|
||||
create_table "conferences_questions", id: false, force: :cascade do |t|
|
||||
t.integer "conference_id"
|
||||
|
|
@ -165,7 +168,7 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.datetime "updated_at"
|
||||
end
|
||||
|
||||
add_index "delayed_jobs", ["priority", "run_at"], name: "delayed_jobs_priority"
|
||||
add_index "delayed_jobs", ["priority", "run_at"], name: "delayed_jobs_priority", using: :btree
|
||||
|
||||
create_table "difficulty_levels", force: :cascade do |t|
|
||||
t.string "title"
|
||||
|
|
@ -224,10 +227,10 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.datetime "updated_at", null: false
|
||||
end
|
||||
|
||||
add_index "event_schedules", ["event_id", "schedule_id"], name: "index_event_schedules_on_event_id_and_schedule_id", unique: true
|
||||
add_index "event_schedules", ["event_id"], name: "index_event_schedules_on_event_id"
|
||||
add_index "event_schedules", ["room_id"], name: "index_event_schedules_on_room_id"
|
||||
add_index "event_schedules", ["schedule_id"], name: "index_event_schedules_on_schedule_id"
|
||||
add_index "event_schedules", ["event_id", "schedule_id"], name: "index_event_schedules_on_event_id_and_schedule_id", unique: true, using: :btree
|
||||
add_index "event_schedules", ["event_id"], name: "index_event_schedules_on_event_id", using: :btree
|
||||
add_index "event_schedules", ["room_id"], name: "index_event_schedules_on_room_id", using: :btree
|
||||
add_index "event_schedules", ["schedule_id"], name: "index_event_schedules_on_schedule_id", using: :btree
|
||||
|
||||
create_table "event_types", force: :cascade do |t|
|
||||
t.string "title", null: false
|
||||
|
|
@ -328,7 +331,7 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.string "token"
|
||||
end
|
||||
|
||||
add_index "physical_tickets", ["token"], name: "index_physical_tickets_on_token", unique: true
|
||||
add_index "physical_tickets", ["token"], name: "index_physical_tickets_on_token", unique: true, using: :btree
|
||||
|
||||
create_table "programs", force: :cascade do |t|
|
||||
t.integer "conference_id"
|
||||
|
|
@ -345,7 +348,7 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.integer "schedule_interval", default: 15, null: false
|
||||
end
|
||||
|
||||
add_index "programs", ["selected_schedule_id"], name: "index_programs_on_selected_schedule_id"
|
||||
add_index "programs", ["selected_schedule_id"], name: "index_programs_on_selected_schedule_id", using: :btree
|
||||
|
||||
create_table "qanswers", force: :cascade do |t|
|
||||
t.integer "question_id"
|
||||
|
|
@ -417,8 +420,8 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.string "resource_type"
|
||||
end
|
||||
|
||||
add_index "roles", ["name", "resource_type", "resource_id"], name: "index_roles_on_name_and_resource_type_and_resource_id"
|
||||
add_index "roles", ["name"], name: "index_roles_on_name"
|
||||
add_index "roles", ["name", "resource_type", "resource_id"], name: "index_roles_on_name_and_resource_type_and_resource_id", using: :btree
|
||||
add_index "roles", ["name"], name: "index_roles_on_name", using: :btree
|
||||
|
||||
create_table "rooms", force: :cascade do |t|
|
||||
t.string "guid", null: false
|
||||
|
|
@ -434,8 +437,8 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.integer "track_id"
|
||||
end
|
||||
|
||||
add_index "schedules", ["program_id"], name: "index_schedules_on_program_id"
|
||||
add_index "schedules", ["track_id"], name: "index_schedules_on_track_id"
|
||||
add_index "schedules", ["program_id"], name: "index_schedules_on_program_id", using: :btree
|
||||
add_index "schedules", ["track_id"], name: "index_schedules_on_track_id", using: :btree
|
||||
|
||||
create_table "splashpages", force: :cascade do |t|
|
||||
t.integer "conference_id"
|
||||
|
|
@ -540,9 +543,9 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.integer "selected_schedule_id"
|
||||
end
|
||||
|
||||
add_index "tracks", ["room_id"], name: "index_tracks_on_room_id"
|
||||
add_index "tracks", ["selected_schedule_id"], name: "index_tracks_on_selected_schedule_id"
|
||||
add_index "tracks", ["submitter_id"], name: "index_tracks_on_submitter_id"
|
||||
add_index "tracks", ["room_id"], name: "index_tracks_on_room_id", using: :btree
|
||||
add_index "tracks", ["selected_schedule_id"], name: "index_tracks_on_selected_schedule_id", using: :btree
|
||||
add_index "tracks", ["submitter_id"], name: "index_tracks_on_submitter_id", using: :btree
|
||||
|
||||
create_table "users", force: :cascade do |t|
|
||||
t.string "email", default: "", null: false
|
||||
|
|
@ -577,20 +580,19 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.boolean "is_admin", default: false
|
||||
t.string "username"
|
||||
t.boolean "is_disabled", default: false
|
||||
t.string "token"
|
||||
end
|
||||
|
||||
add_index "users", ["confirmation_token"], name: "index_users_on_confirmation_token", unique: true
|
||||
add_index "users", ["email"], name: "index_users_on_email", unique: true
|
||||
add_index "users", ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
|
||||
add_index "users", ["username"], name: "index_users_on_username", unique: true
|
||||
add_index "users", ["confirmation_token"], name: "index_users_on_confirmation_token", unique: true, using: :btree
|
||||
add_index "users", ["email"], name: "index_users_on_email", unique: true, using: :btree
|
||||
add_index "users", ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true, using: :btree
|
||||
add_index "users", ["username"], name: "index_users_on_username", unique: true, using: :btree
|
||||
|
||||
create_table "users_roles", force: :cascade do |t|
|
||||
t.integer "role_id"
|
||||
t.integer "user_id"
|
||||
end
|
||||
|
||||
add_index "users_roles", ["user_id", "role_id"], name: "index_users_roles_on_user_id_and_role_id"
|
||||
add_index "users_roles", ["user_id", "role_id"], name: "index_users_roles_on_user_id_and_role_id", using: :btree
|
||||
|
||||
create_table "vchoices", force: :cascade do |t|
|
||||
t.integer "vday_id"
|
||||
|
|
@ -634,10 +636,10 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.integer "conference_id"
|
||||
end
|
||||
|
||||
add_index "versions", ["item_type", "item_id"], name: "index_versions_on_item_type_and_item_id"
|
||||
add_index "versions", ["item_type", "item_id"], name: "index_versions_on_item_type_and_item_id", using: :btree
|
||||
|
||||
create_table "visits", force: :cascade do |t|
|
||||
t.uuid "visitor_id", limit: 16
|
||||
t.uuid "visitor_id"
|
||||
t.string "ip"
|
||||
t.text "user_agent"
|
||||
t.text "referrer"
|
||||
|
|
@ -659,7 +661,7 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.datetime "started_at"
|
||||
end
|
||||
|
||||
add_index "visits", ["user_id"], name: "index_visits_on_user_id"
|
||||
add_index "visits", ["user_id"], name: "index_visits_on_user_id", using: :btree
|
||||
|
||||
create_table "votes", force: :cascade do |t|
|
||||
t.integer "event_id"
|
||||
|
|
@ -677,4 +679,9 @@ ActiveRecord::Schema.define(version: 20170816203325) do
|
|||
t.datetime "updated_at"
|
||||
end
|
||||
|
||||
add_foreign_key "booth_requests", "booths"
|
||||
add_foreign_key "booth_requests", "users"
|
||||
add_foreign_key "conferences", "organizations", on_delete: :cascade
|
||||
add_foreign_key "schedules", "tracks"
|
||||
add_foreign_key "tracks", "rooms"
|
||||
end
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue