mirror of
https://github.com/openSUSE/osem.git
synced 2026-08-13 19:54:02 +00:00
Initial Rails4 Port
This commit is contained in:
parent
5923a66a88
commit
2e9b92c3af
19 changed files with 394 additions and 817 deletions
110
Gemfile
110
Gemfile
|
|
@ -1,60 +1,92 @@
|
||||||
source 'https://rubygems.org'
|
source 'https://rubygems.org'
|
||||||
|
|
||||||
gem 'rails', '3.2.17'
|
# Use rails as framework
|
||||||
|
gem 'rails', '4.0.0'
|
||||||
|
|
||||||
# Bundle edge Rails instead:
|
# Use mysql as the database for Active Record
|
||||||
# gem 'rails', :git => 'git://github.com/rails/rails.git'
|
gem 'mysql2'
|
||||||
|
|
||||||
# Gems used only for assets and not required
|
# Use rails-observers for observing records
|
||||||
# in production environments by default.
|
gem 'rails-observers'
|
||||||
group :assets do
|
|
||||||
# gem 'coffee-rails', '~> 3.2.1'
|
|
||||||
|
|
||||||
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
|
# User paper_trail for tracking data changes
|
||||||
gem 'therubyracer', :platforms => :ruby
|
gem 'paper_trail'
|
||||||
|
|
||||||
gem 'uglifier', '>= 1.2.2'
|
# Use devise as authentification framework
|
||||||
end
|
gem 'devise'
|
||||||
|
|
||||||
group :development, :test do
|
# Use cancan as authorization framework
|
||||||
gem 'pry'
|
gem 'cancan'
|
||||||
gem 'sqlite3'
|
|
||||||
gem 'thin'
|
|
||||||
gem 'letter_opener'
|
|
||||||
gem 'rspec-rails', '~> 3.0.0.beta'
|
|
||||||
gem 'capybara'
|
|
||||||
gem 'rdoc-generator-fivefish'
|
|
||||||
gem 'factory_girl_rails'
|
|
||||||
end
|
|
||||||
|
|
||||||
group :production do
|
# Use transitions as state machine
|
||||||
gem 'mysql2'
|
gem 'transitions', :require => ["transitions", "active_record/transitions"]
|
||||||
end
|
|
||||||
|
|
||||||
gem 'will_paginate'
|
# Use acts_as_commentable_with_threading for comments
|
||||||
gem 'paperclip', '~> 3.0'
|
gem 'acts_as_commentable_with_threading'
|
||||||
|
|
||||||
|
# Use haml as templating language
|
||||||
|
gem "haml-rails"
|
||||||
|
|
||||||
|
# Use SCSS for stylesheets
|
||||||
|
gem "sass-rails", ">= 4.0.2"
|
||||||
|
|
||||||
|
# Use Uglifier as compressor for JavaScript assets
|
||||||
|
gem 'uglifier', '>= 1.3.0'
|
||||||
|
|
||||||
|
# Use bootstrap as the front-end framework
|
||||||
|
gem 'bootstrap-sass'
|
||||||
|
gem 'formtastic-bootstrap'
|
||||||
|
|
||||||
|
|
||||||
|
# Use jquery as the JavaScript library
|
||||||
gem 'jquery-rails'
|
gem 'jquery-rails'
|
||||||
gem 'jquery-ui-rails'
|
gem 'jquery-ui-rails'
|
||||||
gem 'jquery-fileupload-rails'
|
gem 'jquery-fileupload-rails'
|
||||||
gem 'devise'
|
|
||||||
gem 'cancan'
|
|
||||||
gem "haml"
|
|
||||||
gem 'bcrypt-ruby', '~> 3.0.0'
|
|
||||||
#gem 'node'
|
|
||||||
gem 'paper_trail'
|
|
||||||
gem 'formtastic-bootstrap'
|
|
||||||
gem 'bootstrap-sass'
|
|
||||||
gem 'sass-rails', '>= 3.2'
|
|
||||||
gem 'cocoon'
|
gem 'cocoon'
|
||||||
gem 'transitions', :require => ["transitions", "active_record/transitions"]
|
|
||||||
gem 'acts_as_commentable_with_threading'
|
# Use gravtastic for user avatars
|
||||||
|
gem 'gravtastic'
|
||||||
|
|
||||||
|
# Use paperclip for upload management
|
||||||
|
gem 'paperclip'
|
||||||
|
|
||||||
|
# Use prawn as PDF generator
|
||||||
gem 'prawn'
|
gem 'prawn'
|
||||||
gem 'prawn_rails'
|
gem 'prawn_rails'
|
||||||
gem 'gravtastic'
|
|
||||||
gem 'active_model_serializers'
|
# Use axlsx_rails to render XLS spreadsheets
|
||||||
gem 'axlsx_rails'
|
gem 'axlsx_rails'
|
||||||
|
|
||||||
|
# Use d3js for building our statistics
|
||||||
gem 'd3_rails'
|
gem 'd3_rails'
|
||||||
|
|
||||||
|
# We use coveralls for measuring test coverage
|
||||||
gem 'coveralls', require: false
|
gem 'coveralls', require: false
|
||||||
# Use a self-hosted errbit with the old notifier
|
# Use a self-hosted errbit with the old notifier
|
||||||
gem 'hoptoad_notifier', "~> 2.3"
|
gem 'hoptoad_notifier', "~> 2.3"
|
||||||
|
gem 'rails-observers'
|
||||||
|
|
||||||
|
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
|
||||||
|
gem 'turbolinks'
|
||||||
|
|
||||||
|
# Use active_model_serializers for JSON serializatioin our API
|
||||||
|
gem 'active_model_serializers'
|
||||||
|
|
||||||
|
# Use sqlite3 as the database in development
|
||||||
|
gem 'sqlite3', group: [:development]
|
||||||
|
|
||||||
|
# Use letter_opener to open mails in development
|
||||||
|
gem 'letter_opener', group: [:development]
|
||||||
|
|
||||||
|
# Use rspec and capybara as testing framework
|
||||||
|
gem 'rspec-rails', '~> 3.0.0.beta', group: [:test]
|
||||||
|
gem 'capybara', group: [:test]
|
||||||
|
|
||||||
|
# FIXME: We should use http://weblog.rubyonrails.org/2012/3/21/strong-parameters/
|
||||||
|
gem 'protected_attributes'
|
||||||
|
|
||||||
|
# We use this bootstrap/html5 rdoc generator
|
||||||
|
gem 'rdoc-generator-fivefish'
|
||||||
|
|
||||||
|
# We use factory_girl for seeds
|
||||||
|
gem 'factory_girl_rails'
|
||||||
|
|
|
||||||
211
Gemfile.lock
211
Gemfile.lock
|
|
@ -1,56 +1,51 @@
|
||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
actionmailer (3.2.17)
|
actionmailer (4.0.0)
|
||||||
actionpack (= 3.2.17)
|
actionpack (= 4.0.0)
|
||||||
mail (~> 2.5.4)
|
mail (~> 2.5.3)
|
||||||
actionpack (3.2.17)
|
actionpack (4.0.0)
|
||||||
activemodel (= 3.2.17)
|
activesupport (= 4.0.0)
|
||||||
activesupport (= 3.2.17)
|
builder (~> 3.1.0)
|
||||||
builder (~> 3.0.0)
|
|
||||||
erubis (~> 2.7.0)
|
erubis (~> 2.7.0)
|
||||||
journey (~> 1.0.4)
|
rack (~> 1.5.2)
|
||||||
rack (~> 1.4.5)
|
rack-test (~> 0.6.2)
|
||||||
rack-cache (~> 1.2)
|
|
||||||
rack-test (~> 0.6.1)
|
|
||||||
sprockets (~> 2.2.1)
|
|
||||||
active_model_serializers (0.8.1)
|
active_model_serializers (0.8.1)
|
||||||
activemodel (>= 3.0)
|
activemodel (>= 3.0)
|
||||||
activemodel (3.2.17)
|
activemodel (4.0.0)
|
||||||
activesupport (= 3.2.17)
|
activesupport (= 4.0.0)
|
||||||
builder (~> 3.0.0)
|
builder (~> 3.1.0)
|
||||||
activerecord (3.2.17)
|
activerecord (4.0.0)
|
||||||
activemodel (= 3.2.17)
|
activemodel (= 4.0.0)
|
||||||
activesupport (= 3.2.17)
|
activerecord-deprecated_finders (~> 1.0.2)
|
||||||
arel (~> 3.0.2)
|
activesupport (= 4.0.0)
|
||||||
tzinfo (~> 0.3.29)
|
arel (~> 4.0.0)
|
||||||
activeresource (3.2.17)
|
activerecord-deprecated_finders (1.0.3)
|
||||||
activemodel (= 3.2.17)
|
activesupport (4.0.0)
|
||||||
activesupport (= 3.2.17)
|
|
||||||
activesupport (3.2.17)
|
|
||||||
i18n (~> 0.6, >= 0.6.4)
|
i18n (~> 0.6, >= 0.6.4)
|
||||||
multi_json (~> 1.0)
|
minitest (~> 4.2)
|
||||||
|
multi_json (~> 1.3)
|
||||||
|
thread_safe (~> 0.1)
|
||||||
|
tzinfo (~> 0.3.37)
|
||||||
acts_as_commentable_with_threading (1.2.0)
|
acts_as_commentable_with_threading (1.2.0)
|
||||||
activerecord (>= 3.0)
|
activerecord (>= 3.0)
|
||||||
activesupport (>= 3.0)
|
activesupport (>= 3.0)
|
||||||
awesome_nested_set (>= 2.0)
|
awesome_nested_set (>= 2.0)
|
||||||
addressable (2.3.5)
|
addressable (2.3.6)
|
||||||
arel (3.0.3)
|
arel (4.0.2)
|
||||||
atomic (1.1.16)
|
|
||||||
awesome_nested_set (2.1.6)
|
awesome_nested_set (2.1.6)
|
||||||
activerecord (>= 3.0.0)
|
activerecord (>= 3.0.0)
|
||||||
axlsx (2.0.1)
|
axlsx (2.0.1)
|
||||||
htmlentities (~> 4.3.1)
|
htmlentities (~> 4.3.1)
|
||||||
nokogiri (>= 1.4.1)
|
nokogiri (>= 1.4.1)
|
||||||
rubyzip (~> 1.0.0)
|
rubyzip (~> 1.0.0)
|
||||||
axlsx_rails (0.1.5)
|
axlsx_rails (0.2.0)
|
||||||
axlsx
|
axlsx (>= 2.0.1)
|
||||||
rails (>= 3.1)
|
rails (>= 3.1)
|
||||||
bcrypt (3.1.7)
|
bcrypt (3.1.7)
|
||||||
bcrypt-ruby (3.0.1)
|
bootstrap-sass (3.1.1.1)
|
||||||
bootstrap-sass (3.1.1.0)
|
|
||||||
sass (~> 3.2)
|
sass (~> 3.2)
|
||||||
builder (3.0.4)
|
builder (3.1.4)
|
||||||
cancan (1.6.10)
|
cancan (1.6.10)
|
||||||
capybara (2.2.1)
|
capybara (2.2.1)
|
||||||
mime-types (>= 1.16)
|
mime-types (>= 1.16)
|
||||||
|
|
@ -60,19 +55,24 @@ GEM
|
||||||
xpath (~> 2.0)
|
xpath (~> 2.0)
|
||||||
climate_control (0.0.3)
|
climate_control (0.0.3)
|
||||||
activesupport (>= 3.0)
|
activesupport (>= 3.0)
|
||||||
cocaine (0.5.3)
|
cocaine (0.5.4)
|
||||||
climate_control (>= 0.0.3, < 1.0)
|
climate_control (>= 0.0.3, < 1.0)
|
||||||
cocoon (1.2.5)
|
cocoon (1.2.6)
|
||||||
coderay (1.1.0)
|
coffee-rails (4.0.1)
|
||||||
|
coffee-script (>= 2.2.0)
|
||||||
|
railties (>= 4.0.0, < 5.0)
|
||||||
|
coffee-script (2.2.0)
|
||||||
|
coffee-script-source
|
||||||
|
execjs
|
||||||
|
coffee-script-source (1.7.0)
|
||||||
coveralls (0.7.0)
|
coveralls (0.7.0)
|
||||||
multi_json (~> 1.3)
|
multi_json (~> 1.3)
|
||||||
rest-client
|
rest-client
|
||||||
simplecov (>= 0.7)
|
simplecov (>= 0.7)
|
||||||
term-ansicolor
|
term-ansicolor
|
||||||
thor
|
thor
|
||||||
d3_rails (3.4.3)
|
d3_rails (3.4.6)
|
||||||
railties (>= 3.1.0)
|
railties (>= 3.1.0)
|
||||||
daemons (1.1.9)
|
|
||||||
devise (3.2.4)
|
devise (3.2.4)
|
||||||
bcrypt (~> 3.0)
|
bcrypt (~> 3.0)
|
||||||
orm_adapter (~> 0.1)
|
orm_adapter (~> 0.1)
|
||||||
|
|
@ -82,7 +82,6 @@ GEM
|
||||||
diff-lcs (1.2.5)
|
diff-lcs (1.2.5)
|
||||||
docile (1.1.3)
|
docile (1.1.3)
|
||||||
erubis (2.7.0)
|
erubis (2.7.0)
|
||||||
eventmachine (1.0.3)
|
|
||||||
execjs (2.0.2)
|
execjs (2.0.2)
|
||||||
factory_girl (4.4.0)
|
factory_girl (4.4.0)
|
||||||
activesupport (>= 3.0.0)
|
activesupport (>= 3.0.0)
|
||||||
|
|
@ -96,6 +95,11 @@ GEM
|
||||||
gravtastic (3.2.6)
|
gravtastic (3.2.6)
|
||||||
haml (4.0.5)
|
haml (4.0.5)
|
||||||
tilt
|
tilt
|
||||||
|
haml-rails (0.5.1)
|
||||||
|
actionpack (~> 4.0.0)
|
||||||
|
activesupport (~> 4.0.0)
|
||||||
|
haml (>= 3.1, < 5.0)
|
||||||
|
railties (~> 4.0.0)
|
||||||
hike (1.2.3)
|
hike (1.2.3)
|
||||||
hoptoad_notifier (2.4.11)
|
hoptoad_notifier (2.4.11)
|
||||||
activesupport
|
activesupport
|
||||||
|
|
@ -104,83 +108,75 @@ GEM
|
||||||
i18n (0.6.9)
|
i18n (0.6.9)
|
||||||
inversion (0.12.3)
|
inversion (0.12.3)
|
||||||
loggability (~> 0.4)
|
loggability (~> 0.4)
|
||||||
journey (1.0.4)
|
|
||||||
jquery-fileupload-rails (0.4.1)
|
jquery-fileupload-rails (0.4.1)
|
||||||
actionpack (>= 3.1)
|
actionpack (>= 3.1)
|
||||||
railties (>= 3.1)
|
railties (>= 3.1)
|
||||||
jquery-rails (3.1.0)
|
jquery-rails (3.1.0)
|
||||||
railties (>= 3.0, < 5.0)
|
railties (>= 3.0, < 5.0)
|
||||||
thor (>= 0.14, < 2.0)
|
thor (>= 0.14, < 2.0)
|
||||||
jquery-ui-rails (4.1.2)
|
jquery-ui-rails (4.2.1)
|
||||||
railties (>= 3.1.0)
|
railties (>= 3.2.16)
|
||||||
json (1.8.1)
|
json (1.8.1)
|
||||||
launchy (2.4.2)
|
launchy (2.4.2)
|
||||||
addressable (~> 2.3)
|
addressable (~> 2.3)
|
||||||
letter_opener (1.2.0)
|
letter_opener (1.2.0)
|
||||||
launchy (~> 2.2)
|
launchy (~> 2.2)
|
||||||
libv8 (3.16.14.3)
|
loggability (0.11.0)
|
||||||
loggability (0.10.1)
|
|
||||||
mail (2.5.4)
|
mail (2.5.4)
|
||||||
mime-types (~> 1.16)
|
mime-types (~> 1.16)
|
||||||
treetop (~> 1.4.8)
|
treetop (~> 1.4.8)
|
||||||
method_source (0.8.2)
|
|
||||||
mime-types (1.25.1)
|
mime-types (1.25.1)
|
||||||
mini_portile (0.5.3)
|
mini_portile (0.5.3)
|
||||||
|
minitest (4.7.5)
|
||||||
multi_json (1.9.2)
|
multi_json (1.9.2)
|
||||||
mysql2 (0.3.15)
|
mysql2 (0.3.15)
|
||||||
nokogiri (1.6.1)
|
nokogiri (1.6.1)
|
||||||
mini_portile (~> 0.5.0)
|
mini_portile (~> 0.5.0)
|
||||||
orm_adapter (0.5.0)
|
orm_adapter (0.5.0)
|
||||||
paper_trail (3.0.0)
|
paper_trail (3.0.1)
|
||||||
activerecord (>= 3.0, < 5.0)
|
activerecord (>= 3.0, < 5.0)
|
||||||
activesupport (>= 3.0, < 5.0)
|
activesupport (>= 3.0, < 5.0)
|
||||||
paperclip (3.5.4)
|
paperclip (4.1.1)
|
||||||
activemodel (>= 3.0.0)
|
activemodel (>= 3.0.0)
|
||||||
activesupport (>= 3.0.0)
|
activesupport (>= 3.0.0)
|
||||||
cocaine (~> 0.5.3)
|
cocaine (~> 0.5.3)
|
||||||
mime-types
|
mime-types
|
||||||
pdf-core (0.1.6)
|
pdf-core (0.2.5)
|
||||||
polyglot (0.3.4)
|
polyglot (0.3.4)
|
||||||
prawn (0.15.0)
|
prawn (1.0.0)
|
||||||
pdf-core (~> 0.1.3)
|
pdf-core (~> 0.2.2)
|
||||||
ttfunk (~> 1.1.0)
|
ttfunk (~> 1.1.1)
|
||||||
prawn_rails (0.0.11)
|
prawn_rails (0.0.11)
|
||||||
prawn (>= 0.11.1)
|
prawn (>= 0.11.1)
|
||||||
railties (>= 3.0.0)
|
railties (>= 3.0.0)
|
||||||
pry (0.9.12.6)
|
protected_attributes (1.0.3)
|
||||||
coderay (~> 1.0)
|
activemodel (>= 4.0.0, < 5.0)
|
||||||
method_source (~> 0.8)
|
rack (1.5.2)
|
||||||
slop (~> 3.4)
|
|
||||||
rack (1.4.5)
|
|
||||||
rack-cache (1.2)
|
|
||||||
rack (>= 0.4)
|
|
||||||
rack-ssl (1.3.4)
|
|
||||||
rack
|
|
||||||
rack-test (0.6.2)
|
rack-test (0.6.2)
|
||||||
rack (>= 1.0)
|
rack (>= 1.0)
|
||||||
rails (3.2.17)
|
rails (4.0.0)
|
||||||
actionmailer (= 3.2.17)
|
actionmailer (= 4.0.0)
|
||||||
actionpack (= 3.2.17)
|
actionpack (= 4.0.0)
|
||||||
activerecord (= 3.2.17)
|
activerecord (= 4.0.0)
|
||||||
activeresource (= 3.2.17)
|
activesupport (= 4.0.0)
|
||||||
activesupport (= 3.2.17)
|
bundler (>= 1.3.0, < 2.0)
|
||||||
bundler (~> 1.0)
|
railties (= 4.0.0)
|
||||||
railties (= 3.2.17)
|
sprockets-rails (~> 2.0.0)
|
||||||
railties (3.2.17)
|
rails-observers (0.1.2)
|
||||||
actionpack (= 3.2.17)
|
activemodel (~> 4.0)
|
||||||
activesupport (= 3.2.17)
|
railties (4.0.0)
|
||||||
rack-ssl (~> 1.3.2)
|
actionpack (= 4.0.0)
|
||||||
|
activesupport (= 4.0.0)
|
||||||
rake (>= 0.8.7)
|
rake (>= 0.8.7)
|
||||||
rdoc (~> 3.4)
|
thor (>= 0.18.1, < 2.0)
|
||||||
thor (>= 0.14.6, < 2.0)
|
rake (10.3.1)
|
||||||
rake (10.2.2)
|
rdoc (4.1.1)
|
||||||
rdoc (3.12.2)
|
|
||||||
json (~> 1.4)
|
json (~> 1.4)
|
||||||
rdoc-generator-fivefish (0.0.1)
|
rdoc-generator-fivefish (0.1.0)
|
||||||
inversion (~> 0.10)
|
inversion (~> 0.12)
|
||||||
rdoc (~> 3.12)
|
loggability (~> 0.6)
|
||||||
|
rdoc (~> 4.0)
|
||||||
yajl-ruby (~> 1.1)
|
yajl-ruby (~> 1.1)
|
||||||
ref (1.0.5)
|
|
||||||
rest-client (1.6.7)
|
rest-client (1.6.7)
|
||||||
mime-types (>= 1.16)
|
mime-types (>= 1.16)
|
||||||
rspec-collection_matchers (0.0.3)
|
rspec-collection_matchers (0.0.3)
|
||||||
|
|
@ -204,35 +200,31 @@ GEM
|
||||||
rspec-support (= 3.0.0.beta2)
|
rspec-support (= 3.0.0.beta2)
|
||||||
rspec-support (3.0.0.beta2)
|
rspec-support (3.0.0.beta2)
|
||||||
rubyzip (1.0.0)
|
rubyzip (1.0.0)
|
||||||
sass (3.2.14)
|
sass (3.2.19)
|
||||||
sass-rails (3.2.6)
|
sass-rails (4.0.3)
|
||||||
railties (~> 3.2.0)
|
railties (>= 4.0.0, < 5.0)
|
||||||
sass (>= 3.1.10)
|
sass (~> 3.2.0)
|
||||||
tilt (~> 1.3)
|
sprockets (~> 2.8, <= 2.11.0)
|
||||||
|
sprockets-rails (~> 2.0)
|
||||||
simplecov (0.8.2)
|
simplecov (0.8.2)
|
||||||
docile (~> 1.1.0)
|
docile (~> 1.1.0)
|
||||||
multi_json
|
multi_json
|
||||||
simplecov-html (~> 0.8.0)
|
simplecov-html (~> 0.8.0)
|
||||||
simplecov-html (0.8.0)
|
simplecov-html (0.8.0)
|
||||||
slop (3.4.7)
|
sprockets (2.11.0)
|
||||||
sprockets (2.2.2)
|
|
||||||
hike (~> 1.2)
|
hike (~> 1.2)
|
||||||
multi_json (~> 1.0)
|
multi_json (~> 1.0)
|
||||||
rack (~> 1.0)
|
rack (~> 1.0)
|
||||||
tilt (~> 1.1, != 1.3.0)
|
tilt (~> 1.1, != 1.3.0)
|
||||||
|
sprockets-rails (2.0.1)
|
||||||
|
actionpack (>= 3.0)
|
||||||
|
activesupport (>= 3.0)
|
||||||
|
sprockets (~> 2.8)
|
||||||
sqlite3 (1.3.9)
|
sqlite3 (1.3.9)
|
||||||
term-ansicolor (1.3.0)
|
term-ansicolor (1.3.0)
|
||||||
tins (~> 1.0)
|
tins (~> 1.0)
|
||||||
therubyracer (0.12.1)
|
thor (0.19.1)
|
||||||
libv8 (~> 3.16.14.0)
|
thread_safe (0.3.3)
|
||||||
ref
|
|
||||||
thin (1.6.2)
|
|
||||||
daemons (>= 1.0.9)
|
|
||||||
eventmachine (>= 1.0.0)
|
|
||||||
rack (>= 1.0.0)
|
|
||||||
thor (0.18.1)
|
|
||||||
thread_safe (0.3.1)
|
|
||||||
atomic (>= 1.1.7, < 2)
|
|
||||||
tilt (1.4.1)
|
tilt (1.4.1)
|
||||||
tins (1.1.0)
|
tins (1.1.0)
|
||||||
transitions (0.1.12)
|
transitions (0.1.12)
|
||||||
|
|
@ -240,13 +232,14 @@ GEM
|
||||||
polyglot
|
polyglot
|
||||||
polyglot (>= 0.3.1)
|
polyglot (>= 0.3.1)
|
||||||
ttfunk (1.1.1)
|
ttfunk (1.1.1)
|
||||||
tzinfo (0.3.38)
|
turbolinks (2.2.2)
|
||||||
uglifier (2.4.0)
|
coffee-rails
|
||||||
|
tzinfo (0.3.39)
|
||||||
|
uglifier (2.5.0)
|
||||||
execjs (>= 0.3.0)
|
execjs (>= 0.3.0)
|
||||||
json (>= 1.8.0)
|
json (>= 1.8.0)
|
||||||
warden (1.2.3)
|
warden (1.2.3)
|
||||||
rack (>= 1.0)
|
rack (>= 1.0)
|
||||||
will_paginate (3.0.5)
|
|
||||||
xpath (2.0.0)
|
xpath (2.0.0)
|
||||||
nokogiri (~> 1.3)
|
nokogiri (~> 1.3)
|
||||||
yajl-ruby (1.2.0)
|
yajl-ruby (1.2.0)
|
||||||
|
|
@ -258,7 +251,6 @@ DEPENDENCIES
|
||||||
active_model_serializers
|
active_model_serializers
|
||||||
acts_as_commentable_with_threading
|
acts_as_commentable_with_threading
|
||||||
axlsx_rails
|
axlsx_rails
|
||||||
bcrypt-ruby (~> 3.0.0)
|
|
||||||
bootstrap-sass
|
bootstrap-sass
|
||||||
cancan
|
cancan
|
||||||
capybara
|
capybara
|
||||||
|
|
@ -269,7 +261,7 @@ DEPENDENCIES
|
||||||
factory_girl_rails
|
factory_girl_rails
|
||||||
formtastic-bootstrap
|
formtastic-bootstrap
|
||||||
gravtastic
|
gravtastic
|
||||||
haml
|
haml-rails
|
||||||
hoptoad_notifier (~> 2.3)
|
hoptoad_notifier (~> 2.3)
|
||||||
jquery-fileupload-rails
|
jquery-fileupload-rails
|
||||||
jquery-rails
|
jquery-rails
|
||||||
|
|
@ -277,17 +269,16 @@ DEPENDENCIES
|
||||||
letter_opener
|
letter_opener
|
||||||
mysql2
|
mysql2
|
||||||
paper_trail
|
paper_trail
|
||||||
paperclip (~> 3.0)
|
paperclip
|
||||||
prawn
|
prawn
|
||||||
prawn_rails
|
prawn_rails
|
||||||
pry
|
protected_attributes
|
||||||
rails (= 3.2.17)
|
rails (= 4.0.0)
|
||||||
|
rails-observers
|
||||||
rdoc-generator-fivefish
|
rdoc-generator-fivefish
|
||||||
rspec-rails (~> 3.0.0.beta)
|
rspec-rails (~> 3.0.0.beta)
|
||||||
sass-rails (>= 3.2)
|
sass-rails (>= 4.0.2)
|
||||||
sqlite3
|
sqlite3
|
||||||
therubyracer
|
|
||||||
thin
|
|
||||||
transitions
|
transitions
|
||||||
uglifier (>= 1.2.2)
|
turbolinks
|
||||||
will_paginate
|
uglifier (>= 1.3.0)
|
||||||
|
|
|
||||||
|
|
@ -11,8 +11,8 @@
|
||||||
// GO AFTER THE REQUIRES BELOW.
|
// GO AFTER THE REQUIRES BELOW.
|
||||||
//
|
//
|
||||||
//= require jquery
|
//= require jquery
|
||||||
//= require jquery_ujs
|
|
||||||
//= require jquery.ui.all
|
//= require jquery.ui.all
|
||||||
|
//= require jquery_ujs
|
||||||
//= require jquery-fileupload
|
//= require jquery-fileupload
|
||||||
//= require jquery-ui-timepicker-addon
|
//= require jquery-ui-timepicker-addon
|
||||||
//= require jquery.dataTables
|
//= require jquery.dataTables
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
/*
|
/*
|
||||||
*= require strap-on.css.scss
|
*= require strap-on
|
||||||
*= require formtastic-bootstrap
|
*= require formtastic-bootstrap
|
||||||
*= require jquery-ui-1.9.2.custom
|
*= require jquery.ui.all
|
||||||
*= require jquery.fileupload-ui
|
*= require jquery.fileupload-ui
|
||||||
*= require jquery-ui-timepicker-addon
|
*= require jquery-ui-timepicker-addon
|
||||||
*= require jquery.dataTables_themeroller
|
*= require jquery.dataTables_themeroller
|
||||||
|
|
|
||||||
462
app/assets/stylesheets/jquery-ui-1.9.2.custom.css
vendored
462
app/assets/stylesheets/jquery-ui-1.9.2.custom.css
vendored
|
|
@ -1,462 +0,0 @@
|
||||||
/*! jQuery UI - v1.9.2 - 2013-01-20
|
|
||||||
* http://jqueryui.com
|
|
||||||
* Includes: jquery.ui.core.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css
|
|
||||||
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=segoe%20ui%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=6px&bgColorHeader=ece8da&bgTextureHeader=12_gloss_wave.png&bgImgOpacityHeader=100&borderColorHeader=d4ccb0&fcHeader=433f38&iconColorHeader=847e71&bgColorContent=f5f3e5&bgTextureContent=04_highlight_hard.png&bgImgOpacityContent=100&borderColorContent=dfd9c3&fcContent=312e25&iconColorContent=808080&bgColorDefault=459e00&bgTextureDefault=04_highlight_hard.png&bgImgOpacityDefault=15&borderColorDefault=327E04&fcDefault=ffffff&iconColorDefault=eeeeee&bgColorHover=67b021&bgTextureHover=03_highlight_soft.png&bgImgOpacityHover=25&borderColorHover=327E04&fcHover=ffffff&iconColorHover=ffffff&bgColorActive=fafaf4&bgTextureActive=04_highlight_hard.png&bgImgOpacityActive=100&borderColorActive=d4ccb0&fcActive=459e00&iconColorActive=8DC262&bgColorHighlight=fcf0ba&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=e8e1b5&fcHighlight=363636&iconColorHighlight=8DC262&bgColorError=ffedad&bgTextureError=03_highlight_soft.png&bgImgOpacityError=95&borderColorError=e3a345&fcError=cd5c0a&iconColorError=cd0a0a&bgColorOverlay=2b2922&bgTextureOverlay=05_inset_soft.png&bgImgOpacityOverlay=15&opacityOverlay=90&bgColorShadow=cccccc&bgTextureShadow=04_highlight_hard.png&bgImgOpacityShadow=95&opacityShadow=20&thicknessShadow=12px&offsetTopShadow=-12px&offsetLeftShadow=-12px&cornerRadiusShadow=10px
|
|
||||||
* Copyright (c) 2013 jQuery Foundation and other contributors Licensed MIT */
|
|
||||||
|
|
||||||
/* Layout helpers
|
|
||||||
----------------------------------*/
|
|
||||||
.ui-helper-hidden { display: none; }
|
|
||||||
.ui-helper-hidden-accessible { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
|
|
||||||
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
|
|
||||||
.ui-helper-clearfix:before, .ui-helper-clearfix:after { content: ""; display: table; }
|
|
||||||
.ui-helper-clearfix:after { clear: both; }
|
|
||||||
.ui-helper-clearfix { zoom: 1; }
|
|
||||||
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
|
|
||||||
|
|
||||||
|
|
||||||
/* Interaction Cues
|
|
||||||
----------------------------------*/
|
|
||||||
.ui-state-disabled { cursor: default !important; }
|
|
||||||
|
|
||||||
|
|
||||||
/* Icons
|
|
||||||
----------------------------------*/
|
|
||||||
|
|
||||||
/* states and images */
|
|
||||||
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
|
|
||||||
|
|
||||||
|
|
||||||
/* Misc visuals
|
|
||||||
----------------------------------*/
|
|
||||||
|
|
||||||
/* Overlays */
|
|
||||||
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
|
|
||||||
.ui-resizable { position: relative;}
|
|
||||||
.ui-resizable-handle { position: absolute;font-size: 0.1px; display: block; }
|
|
||||||
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
|
|
||||||
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; }
|
|
||||||
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; }
|
|
||||||
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; }
|
|
||||||
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; }
|
|
||||||
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
|
|
||||||
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
|
|
||||||
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
|
|
||||||
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; }
|
|
||||||
.ui-accordion .ui-accordion-header { display: block; cursor: pointer; position: relative; margin-top: 2px; padding: .5em .5em .5em .7em; zoom: 1; }
|
|
||||||
.ui-accordion .ui-accordion-icons { padding-left: 2.2em; }
|
|
||||||
.ui-accordion .ui-accordion-noicons { padding-left: .7em; }
|
|
||||||
.ui-accordion .ui-accordion-icons .ui-accordion-icons { padding-left: 2.2em; }
|
|
||||||
.ui-accordion .ui-accordion-header .ui-accordion-header-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
|
|
||||||
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; overflow: auto; zoom: 1; }
|
|
||||||
.ui-autocomplete {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
cursor: default;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* workarounds */
|
|
||||||
* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */
|
|
||||||
.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */
|
|
||||||
.ui-button, .ui-button:link, .ui-button:visited, .ui-button:hover, .ui-button:active { text-decoration: none; }
|
|
||||||
.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */
|
|
||||||
button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */
|
|
||||||
.ui-button-icons-only { width: 3.4em; }
|
|
||||||
button.ui-button-icons-only { width: 3.7em; }
|
|
||||||
|
|
||||||
/*button text element */
|
|
||||||
.ui-button .ui-button-text { display: block; line-height: 1.4; }
|
|
||||||
.ui-button-text-only .ui-button-text { padding: .4em 1em; }
|
|
||||||
.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; }
|
|
||||||
.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; }
|
|
||||||
.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; }
|
|
||||||
.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; }
|
|
||||||
/* no icon support for input elements, provide padding by default */
|
|
||||||
input.ui-button { padding: .4em 1em; }
|
|
||||||
|
|
||||||
/*button icon element(s) */
|
|
||||||
.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; }
|
|
||||||
.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; }
|
|
||||||
.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; }
|
|
||||||
.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
|
|
||||||
.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
|
|
||||||
|
|
||||||
/*button sets*/
|
|
||||||
.ui-buttonset { margin-right: 7px; }
|
|
||||||
.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; }
|
|
||||||
|
|
||||||
/* workarounds */
|
|
||||||
button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */
|
|
||||||
.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; }
|
|
||||||
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
|
|
||||||
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
|
|
||||||
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
|
|
||||||
.ui-datepicker .ui-datepicker-prev { left:2px; }
|
|
||||||
.ui-datepicker .ui-datepicker-next { right:2px; }
|
|
||||||
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
|
|
||||||
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
|
|
||||||
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; }
|
|
||||||
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
|
|
||||||
.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
|
|
||||||
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
|
|
||||||
.ui-datepicker select.ui-datepicker-month,
|
|
||||||
.ui-datepicker select.ui-datepicker-year { width: 49%;}
|
|
||||||
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
|
|
||||||
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; }
|
|
||||||
.ui-datepicker td { border: 0; padding: 1px; }
|
|
||||||
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
|
|
||||||
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
|
|
||||||
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
|
|
||||||
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
|
|
||||||
|
|
||||||
/* with multiple calendars */
|
|
||||||
.ui-datepicker.ui-datepicker-multi { width:auto; }
|
|
||||||
.ui-datepicker-multi .ui-datepicker-group { float:left; }
|
|
||||||
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
|
|
||||||
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
|
|
||||||
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
|
|
||||||
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
|
|
||||||
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
|
|
||||||
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
|
|
||||||
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
|
|
||||||
.ui-datepicker-row-break { clear:both; width:100%; font-size:0em; }
|
|
||||||
|
|
||||||
/* RTL support */
|
|
||||||
.ui-datepicker-rtl { direction: rtl; }
|
|
||||||
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
|
|
||||||
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
|
|
||||||
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
|
|
||||||
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
|
|
||||||
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
|
|
||||||
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
|
|
||||||
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
|
|
||||||
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
|
|
||||||
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
|
|
||||||
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
|
|
||||||
|
|
||||||
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
|
|
||||||
.ui-datepicker-cover {
|
|
||||||
position: absolute; /*must have*/
|
|
||||||
z-index: -1; /*must have*/
|
|
||||||
filter: mask(); /*must have*/
|
|
||||||
top: -4px; /*must have*/
|
|
||||||
left: -4px; /*must have*/
|
|
||||||
width: 200px; /*must have*/
|
|
||||||
height: 200px; /*must have*/
|
|
||||||
}.ui-dialog { position: absolute; top: 0; left: 0; padding: .2em; width: 300px; overflow: hidden; }
|
|
||||||
.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; }
|
|
||||||
.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; }
|
|
||||||
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
|
|
||||||
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
|
|
||||||
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
|
|
||||||
.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
|
|
||||||
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
|
|
||||||
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
|
|
||||||
.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
|
|
||||||
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
|
|
||||||
.ui-draggable .ui-dialog-titlebar { cursor: move; }
|
|
||||||
.ui-menu { list-style:none; padding: 2px; margin: 0; display:block; outline: none; }
|
|
||||||
.ui-menu .ui-menu { margin-top: -3px; position: absolute; }
|
|
||||||
.ui-menu .ui-menu-item { margin: 0; padding: 0; zoom: 1; width: 100%; }
|
|
||||||
.ui-menu .ui-menu-divider { margin: 5px -2px 5px -2px; height: 0; font-size: 0; line-height: 0; border-width: 1px 0 0 0; }
|
|
||||||
.ui-menu .ui-menu-item a { text-decoration: none; display: block; padding: 2px .4em; line-height: 1.5; zoom: 1; font-weight: normal; }
|
|
||||||
.ui-menu .ui-menu-item a.ui-state-focus,
|
|
||||||
.ui-menu .ui-menu-item a.ui-state-active { font-weight: normal; margin: -1px; }
|
|
||||||
|
|
||||||
.ui-menu .ui-state-disabled { font-weight: normal; margin: .4em 0 .2em; line-height: 1.5; }
|
|
||||||
.ui-menu .ui-state-disabled a { cursor: default; }
|
|
||||||
|
|
||||||
/* icon support */
|
|
||||||
.ui-menu-icons { position: relative; }
|
|
||||||
.ui-menu-icons .ui-menu-item a { position: relative; padding-left: 2em; }
|
|
||||||
|
|
||||||
/* left-aligned */
|
|
||||||
.ui-menu .ui-icon { position: absolute; top: .2em; left: .2em; }
|
|
||||||
|
|
||||||
/* right-aligned */
|
|
||||||
.ui-menu .ui-menu-icon { position: static; float: right; }
|
|
||||||
.ui-progressbar { height:2em; text-align: left; overflow: hidden; }
|
|
||||||
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }.ui-slider { position: relative; text-align: left; }
|
|
||||||
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
|
|
||||||
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; }
|
|
||||||
|
|
||||||
.ui-slider-horizontal { height: .8em; }
|
|
||||||
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
|
|
||||||
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
|
|
||||||
.ui-slider-horizontal .ui-slider-range-min { left: 0; }
|
|
||||||
.ui-slider-horizontal .ui-slider-range-max { right: 0; }
|
|
||||||
|
|
||||||
.ui-slider-vertical { width: .8em; height: 100px; }
|
|
||||||
.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
|
|
||||||
.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
|
|
||||||
.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
|
|
||||||
.ui-slider-vertical .ui-slider-range-max { top: 0; }.ui-spinner { position:relative; display: inline-block; overflow: hidden; padding: 0; vertical-align: middle; }
|
|
||||||
.ui-spinner-input { border: none; background: none; padding: 0; margin: .2em 0; vertical-align: middle; margin-left: .4em; margin-right: 22px; }
|
|
||||||
.ui-spinner-button { width: 16px; height: 50%; font-size: .5em; padding: 0; margin: 0; text-align: center; position: absolute; cursor: default; display: block; overflow: hidden; right: 0; }
|
|
||||||
.ui-spinner a.ui-spinner-button { border-top: none; border-bottom: none; border-right: none; } /* more specificity required here to overide default borders */
|
|
||||||
.ui-spinner .ui-icon { position: absolute; margin-top: -8px; top: 50%; left: 0; } /* vertical centre icon */
|
|
||||||
.ui-spinner-up { top: 0; }
|
|
||||||
.ui-spinner-down { bottom: 0; }
|
|
||||||
|
|
||||||
/* TR overrides */
|
|
||||||
.ui-spinner .ui-icon-triangle-1-s {
|
|
||||||
/* need to fix icons sprite */
|
|
||||||
background-position:-65px -16px;
|
|
||||||
}
|
|
||||||
.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
|
|
||||||
.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
|
|
||||||
.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 0; margin: 1px .2em 0 0; border-bottom: 0; padding: 0; white-space: nowrap; }
|
|
||||||
.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
|
|
||||||
.ui-tabs .ui-tabs-nav li.ui-tabs-active { margin-bottom: -1px; padding-bottom: 1px; }
|
|
||||||
.ui-tabs .ui-tabs-nav li.ui-tabs-active a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-tabs-loading a { cursor: text; }
|
|
||||||
.ui-tabs .ui-tabs-nav li a, .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
|
|
||||||
.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
|
|
||||||
.ui-tooltip {
|
|
||||||
padding: 8px;
|
|
||||||
position: absolute;
|
|
||||||
z-index: 9999;
|
|
||||||
max-width: 300px;
|
|
||||||
-webkit-box-shadow: 0 0 5px #aaa;
|
|
||||||
box-shadow: 0 0 5px #aaa;
|
|
||||||
}
|
|
||||||
/* Fades and background-images don't work well together in IE6, drop the image */
|
|
||||||
* html .ui-tooltip {
|
|
||||||
background-image: none;
|
|
||||||
}
|
|
||||||
body .ui-tooltip { border-width: 2px; }
|
|
||||||
|
|
||||||
/* Component containers
|
|
||||||
----------------------------------*/
|
|
||||||
.ui-widget { font-family: segoe ui,Arial,sans-serif; font-size: 1.1em; }
|
|
||||||
.ui-widget .ui-widget { font-size: 1em; }
|
|
||||||
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: segoe ui,Arial,sans-serif; font-size: 1em; }
|
|
||||||
.ui-widget-content { border: 1px solid #dfd9c3; background: #f5f3e5 url(images/ui-bg_highlight-hard_100_f5f3e5_1x100.png) 50% top repeat-x; color: #312e25; }
|
|
||||||
.ui-widget-content a { color: #312e25; }
|
|
||||||
.ui-widget-header { border: 1px solid #d4ccb0; background: #ece8da url(images/ui-bg_gloss-wave_100_ece8da_500x100.png) 50% 50% repeat-x; color: #433f38; font-weight: bold; }
|
|
||||||
.ui-widget-header a { color: #433f38; }
|
|
||||||
|
|
||||||
/* Interaction states
|
|
||||||
----------------------------------*/
|
|
||||||
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #327E04; background: #459e00 url(images/ui-bg_highlight-hard_15_459e00_1x100.png) 50% 50% repeat-x; font-weight: bold; color: #ffffff; }
|
|
||||||
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #ffffff; text-decoration: none; }
|
|
||||||
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #327E04; background: #67b021 url(images/ui-bg_highlight-soft_25_67b021_1x100.png) 50% 50% repeat-x; font-weight: bold; color: #ffffff; }
|
|
||||||
.ui-state-hover a, .ui-state-hover a:hover, .ui-state-hover a:link, .ui-state-hover a:visited { color: #ffffff; text-decoration: none; }
|
|
||||||
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #d4ccb0; background: #fafaf4 url(images/ui-bg_highlight-hard_100_fafaf4_1x100.png) 50% 50% repeat-x; font-weight: bold; color: #459e00; }
|
|
||||||
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #459e00; text-decoration: none; }
|
|
||||||
|
|
||||||
/* Interaction Cues
|
|
||||||
----------------------------------*/
|
|
||||||
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #e8e1b5; background: #fcf0ba url(images/ui-bg_glass_55_fcf0ba_1x400.png) 50% 50% repeat-x; color: #363636; }
|
|
||||||
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }
|
|
||||||
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #e3a345; background: #ffedad url(images/ui-bg_highlight-soft_95_ffedad_1x100.png) 50% top repeat-x; color: #cd5c0a; }
|
|
||||||
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd5c0a; }
|
|
||||||
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd5c0a; }
|
|
||||||
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
|
|
||||||
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
|
|
||||||
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
|
|
||||||
.ui-state-disabled .ui-icon { filter:Alpha(Opacity=35); } /* For IE8 - See #6059 */
|
|
||||||
|
|
||||||
/* Icons
|
|
||||||
----------------------------------*/
|
|
||||||
|
|
||||||
/* states and images */
|
|
||||||
.ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_808080_256x240.png); }
|
|
||||||
.ui-widget-content .ui-icon {background-image: url(images/ui-icons_808080_256x240.png); }
|
|
||||||
.ui-widget-header .ui-icon {background-image: url(images/ui-icons_847e71_256x240.png); }
|
|
||||||
.ui-state-default .ui-icon { background-image: url(images/ui-icons_eeeeee_256x240.png); }
|
|
||||||
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_ffffff_256x240.png); }
|
|
||||||
.ui-state-active .ui-icon {background-image: url(images/ui-icons_8DC262_256x240.png); }
|
|
||||||
.ui-state-highlight .ui-icon {background-image: url(images/ui-icons_8DC262_256x240.png); }
|
|
||||||
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); }
|
|
||||||
|
|
||||||
/* positioning */
|
|
||||||
.ui-icon-carat-1-n { background-position: 0 0; }
|
|
||||||
.ui-icon-carat-1-ne { background-position: -16px 0; }
|
|
||||||
.ui-icon-carat-1-e { background-position: -32px 0; }
|
|
||||||
.ui-icon-carat-1-se { background-position: -48px 0; }
|
|
||||||
.ui-icon-carat-1-s { background-position: -64px 0; }
|
|
||||||
.ui-icon-carat-1-sw { background-position: -80px 0; }
|
|
||||||
.ui-icon-carat-1-w { background-position: -96px 0; }
|
|
||||||
.ui-icon-carat-1-nw { background-position: -112px 0; }
|
|
||||||
.ui-icon-carat-2-n-s { background-position: -128px 0; }
|
|
||||||
.ui-icon-carat-2-e-w { background-position: -144px 0; }
|
|
||||||
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
|
||||||
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
|
||||||
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
|
||||||
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
|
||||||
.ui-icon-triangle-1-s { background-position: -64px -16px; }
|
|
||||||
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
|
||||||
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
|
||||||
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
|
||||||
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
|
||||||
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
|
||||||
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
|
||||||
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
|
||||||
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
|
||||||
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
|
||||||
.ui-icon-arrow-1-s { background-position: -64px -32px; }
|
|
||||||
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
|
||||||
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
|
||||||
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
|
||||||
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
|
||||||
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
|
||||||
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
|
||||||
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
|
||||||
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
|
||||||
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
|
||||||
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
|
||||||
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
|
||||||
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
|
|
||||||
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
|
||||||
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
|
||||||
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
|
||||||
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
|
||||||
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
|
||||||
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
|
||||||
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
|
||||||
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
|
||||||
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
|
||||||
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
|
||||||
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
|
||||||
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
|
||||||
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
|
||||||
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
|
||||||
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
|
||||||
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
|
||||||
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
|
||||||
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
|
||||||
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
|
||||||
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
|
||||||
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
|
||||||
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
|
||||||
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
|
||||||
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
|
||||||
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
|
||||||
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
|
||||||
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
|
||||||
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
|
||||||
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
|
||||||
.ui-icon-extlink { background-position: -32px -80px; }
|
|
||||||
.ui-icon-newwin { background-position: -48px -80px; }
|
|
||||||
.ui-icon-refresh { background-position: -64px -80px; }
|
|
||||||
.ui-icon-shuffle { background-position: -80px -80px; }
|
|
||||||
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
|
||||||
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
|
||||||
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
|
||||||
.ui-icon-folder-open { background-position: -16px -96px; }
|
|
||||||
.ui-icon-document { background-position: -32px -96px; }
|
|
||||||
.ui-icon-document-b { background-position: -48px -96px; }
|
|
||||||
.ui-icon-note { background-position: -64px -96px; }
|
|
||||||
.ui-icon-mail-closed { background-position: -80px -96px; }
|
|
||||||
.ui-icon-mail-open { background-position: -96px -96px; }
|
|
||||||
.ui-icon-suitcase { background-position: -112px -96px; }
|
|
||||||
.ui-icon-comment { background-position: -128px -96px; }
|
|
||||||
.ui-icon-person { background-position: -144px -96px; }
|
|
||||||
.ui-icon-print { background-position: -160px -96px; }
|
|
||||||
.ui-icon-trash { background-position: -176px -96px; }
|
|
||||||
.ui-icon-locked { background-position: -192px -96px; }
|
|
||||||
.ui-icon-unlocked { background-position: -208px -96px; }
|
|
||||||
.ui-icon-bookmark { background-position: -224px -96px; }
|
|
||||||
.ui-icon-tag { background-position: -240px -96px; }
|
|
||||||
.ui-icon-home { background-position: 0 -112px; }
|
|
||||||
.ui-icon-flag { background-position: -16px -112px; }
|
|
||||||
.ui-icon-calendar { background-position: -32px -112px; }
|
|
||||||
.ui-icon-cart { background-position: -48px -112px; }
|
|
||||||
.ui-icon-pencil { background-position: -64px -112px; }
|
|
||||||
.ui-icon-clock { background-position: -80px -112px; }
|
|
||||||
.ui-icon-disk { background-position: -96px -112px; }
|
|
||||||
.ui-icon-calculator { background-position: -112px -112px; }
|
|
||||||
.ui-icon-zoomin { background-position: -128px -112px; }
|
|
||||||
.ui-icon-zoomout { background-position: -144px -112px; }
|
|
||||||
.ui-icon-search { background-position: -160px -112px; }
|
|
||||||
.ui-icon-wrench { background-position: -176px -112px; }
|
|
||||||
.ui-icon-gear { background-position: -192px -112px; }
|
|
||||||
.ui-icon-heart { background-position: -208px -112px; }
|
|
||||||
.ui-icon-star { background-position: -224px -112px; }
|
|
||||||
.ui-icon-link { background-position: -240px -112px; }
|
|
||||||
.ui-icon-cancel { background-position: 0 -128px; }
|
|
||||||
.ui-icon-plus { background-position: -16px -128px; }
|
|
||||||
.ui-icon-plusthick { background-position: -32px -128px; }
|
|
||||||
.ui-icon-minus { background-position: -48px -128px; }
|
|
||||||
.ui-icon-minusthick { background-position: -64px -128px; }
|
|
||||||
.ui-icon-close { background-position: -80px -128px; }
|
|
||||||
.ui-icon-closethick { background-position: -96px -128px; }
|
|
||||||
.ui-icon-key { background-position: -112px -128px; }
|
|
||||||
.ui-icon-lightbulb { background-position: -128px -128px; }
|
|
||||||
.ui-icon-scissors { background-position: -144px -128px; }
|
|
||||||
.ui-icon-clipboard { background-position: -160px -128px; }
|
|
||||||
.ui-icon-copy { background-position: -176px -128px; }
|
|
||||||
.ui-icon-contact { background-position: -192px -128px; }
|
|
||||||
.ui-icon-image { background-position: -208px -128px; }
|
|
||||||
.ui-icon-video { background-position: -224px -128px; }
|
|
||||||
.ui-icon-script { background-position: -240px -128px; }
|
|
||||||
.ui-icon-alert { background-position: 0 -144px; }
|
|
||||||
.ui-icon-info { background-position: -16px -144px; }
|
|
||||||
.ui-icon-notice { background-position: -32px -144px; }
|
|
||||||
.ui-icon-help { background-position: -48px -144px; }
|
|
||||||
.ui-icon-check { background-position: -64px -144px; }
|
|
||||||
.ui-icon-bullet { background-position: -80px -144px; }
|
|
||||||
.ui-icon-radio-on { background-position: -96px -144px; }
|
|
||||||
.ui-icon-radio-off { background-position: -112px -144px; }
|
|
||||||
.ui-icon-pin-w { background-position: -128px -144px; }
|
|
||||||
.ui-icon-pin-s { background-position: -144px -144px; }
|
|
||||||
.ui-icon-play { background-position: 0 -160px; }
|
|
||||||
.ui-icon-pause { background-position: -16px -160px; }
|
|
||||||
.ui-icon-seek-next { background-position: -32px -160px; }
|
|
||||||
.ui-icon-seek-prev { background-position: -48px -160px; }
|
|
||||||
.ui-icon-seek-end { background-position: -64px -160px; }
|
|
||||||
.ui-icon-seek-start { background-position: -80px -160px; }
|
|
||||||
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
|
|
||||||
.ui-icon-seek-first { background-position: -80px -160px; }
|
|
||||||
.ui-icon-stop { background-position: -96px -160px; }
|
|
||||||
.ui-icon-eject { background-position: -112px -160px; }
|
|
||||||
.ui-icon-volume-off { background-position: -128px -160px; }
|
|
||||||
.ui-icon-volume-on { background-position: -144px -160px; }
|
|
||||||
.ui-icon-power { background-position: 0 -176px; }
|
|
||||||
.ui-icon-signal-diag { background-position: -16px -176px; }
|
|
||||||
.ui-icon-signal { background-position: -32px -176px; }
|
|
||||||
.ui-icon-battery-0 { background-position: -48px -176px; }
|
|
||||||
.ui-icon-battery-1 { background-position: -64px -176px; }
|
|
||||||
.ui-icon-battery-2 { background-position: -80px -176px; }
|
|
||||||
.ui-icon-battery-3 { background-position: -96px -176px; }
|
|
||||||
.ui-icon-circle-plus { background-position: 0 -192px; }
|
|
||||||
.ui-icon-circle-minus { background-position: -16px -192px; }
|
|
||||||
.ui-icon-circle-close { background-position: -32px -192px; }
|
|
||||||
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
|
||||||
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
|
||||||
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
|
||||||
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
|
||||||
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
|
||||||
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
|
||||||
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
|
||||||
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
|
||||||
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
|
||||||
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
|
||||||
.ui-icon-circle-check { background-position: -208px -192px; }
|
|
||||||
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
|
||||||
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
|
||||||
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
|
||||||
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
|
||||||
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
|
||||||
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
|
||||||
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
|
||||||
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
|
||||||
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
|
||||||
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
|
||||||
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
|
||||||
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
|
||||||
|
|
||||||
|
|
||||||
/* Misc visuals
|
|
||||||
----------------------------------*/
|
|
||||||
|
|
||||||
/* Corner radius */
|
|
||||||
.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 6px; -webkit-border-top-left-radius: 6px; -khtml-border-top-left-radius: 6px; border-top-left-radius: 6px; }
|
|
||||||
.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 6px; -webkit-border-top-right-radius: 6px; -khtml-border-top-right-radius: 6px; border-top-right-radius: 6px; }
|
|
||||||
.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 6px; -webkit-border-bottom-left-radius: 6px; -khtml-border-bottom-left-radius: 6px; border-bottom-left-radius: 6px; }
|
|
||||||
.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 6px; -webkit-border-bottom-right-radius: 6px; -khtml-border-bottom-right-radius: 6px; border-bottom-right-radius: 6px; }
|
|
||||||
|
|
||||||
/* Overlays */
|
|
||||||
.ui-widget-overlay { background: #2b2922 url(images/ui-bg_inset-soft_15_2b2922_1x100.png) 50% bottom repeat-x; opacity: .9;filter:Alpha(Opacity=90); }
|
|
||||||
.ui-widget-shadow { margin: -12px 0 0 -12px; padding: 12px; background: #cccccc url(images/ui-bg_highlight-hard_95_cccccc_1x100.png) 50% top repeat-x; opacity: .2;filter:Alpha(Opacity=20); -moz-border-radius: 10px; -khtml-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px; }
|
|
||||||
|
|
@ -11,6 +11,10 @@ body > #messages {
|
||||||
padding: 60px 15px 0;
|
padding: 60px 15px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
body > #content {
|
||||||
|
padding-bottom: 60px;
|
||||||
|
}
|
||||||
|
|
||||||
#footer {
|
#footer {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
|
|
|
||||||
|
|
@ -59,8 +59,7 @@ class Conference < ActiveRecord::Base
|
||||||
:start_date,
|
:start_date,
|
||||||
:end_date
|
:end_date
|
||||||
validates_uniqueness_of :short_title
|
validates_uniqueness_of :short_title
|
||||||
validates_format_of :short_title, :with => /^[a-zA-Z0-9_-]*$/
|
validates_format_of :short_title, :with => /\A[a-zA-Z0-9_-]*\z/
|
||||||
|
|
||||||
before_create :generate_guid
|
before_create :generate_guid
|
||||||
before_create :create_venue
|
before_create :create_venue
|
||||||
before_create :create_email_settings
|
before_create :create_email_settings
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ class Event < ActiveRecord::Base
|
||||||
has_many :event_people, :dependent => :destroy
|
has_many :event_people, :dependent => :destroy
|
||||||
has_many :event_attachments, :dependent => :destroy
|
has_many :event_attachments, :dependent => :destroy
|
||||||
has_many :people, :through => :event_people
|
has_many :people, :through => :event_people
|
||||||
has_many :speakers, :through => :event_people, :source => :person, :conditions => {"event_people.event_role" => "speaker"}
|
has_many :speakers, :through => :event_people, :source => :person
|
||||||
has_many :votes
|
has_many :votes
|
||||||
has_many :voters, :through => :votes, :source => :person
|
has_many :voters, :through => :votes, :source => :person
|
||||||
belongs_to :event_type
|
belongs_to :event_type
|
||||||
|
|
@ -31,7 +31,7 @@ class Event < ActiveRecord::Base
|
||||||
validates :abstract, :presence => true
|
validates :abstract, :presence => true
|
||||||
validates :media_type, :allow_nil => true, inclusion: {in: Conference.media_types.values}
|
validates :media_type, :allow_nil => true, inclusion: {in: Conference.media_types.values}
|
||||||
|
|
||||||
scope :confirmed, where(:state => "confirmed")
|
scope :confirmed, -> { where(state: 'confirmed') }
|
||||||
|
|
||||||
state_machine :initial => :new do
|
state_machine :initial => :new do
|
||||||
state :new
|
state :new
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,14 @@
|
||||||
= semantic_form_for(@conference, :url => admin_conference_index_path) do |f|
|
.row
|
||||||
= f.inputs "Basic Information" do
|
.col-md-6.col-md-offset-3
|
||||||
= f.input :title, :hint => "The name of your conference as it shall appear throughout the site. Example: 'OpenSUSE Conference 2013'"
|
= semantic_form_for(@conference, :url => admin_conference_index_path) do |f|
|
||||||
= f.input :short_title, :hint => "A short and unique handle for your conference, using only lower-case letters, numbers and underscores. This will be used to identify your conference in URLs etc. Example: 'froscon2011'"
|
= f.inputs "Basic Information" do
|
||||||
= f.input :social_tag, :hint => "The hashtag you'll use on Twitter and Google+. Don't include the '#' sign!'"
|
= f.input :title, :hint => "The name of your conference as it shall appear throughout the site. Example: 'OpenSUSE Conference 2013'"
|
||||||
= f.input :contact_email, :hint => "Contact email address for your conference. Will be used as reply-to address in emails sent out by the system."
|
= f.input :short_title, :hint => "A short and unique handle for your conference, using only lower-case letters, numbers and underscores. This will be used to identify your conference in URLs etc. Example: 'froscon2011'"
|
||||||
= f.inputs "Scheduling" do
|
= f.input :social_tag, :hint => "The hashtag you'll use on Twitter and Google+. Don't include the '#' sign!'"
|
||||||
= f.input :timezone, :as => :time_zone, :hint => "Please select in what time zone your conference will take place. This is needed to correctly display times for your events."
|
= f.input :contact_email, :hint => "Contact email address for your conference. Will be used as reply-to address in emails sent out by the system."
|
||||||
= f.input :start_date, :as => :string, :input_html => { :id => "conference-start-datepicker", :readonly => "readonly" }
|
= f.inputs "Scheduling" do
|
||||||
= f.input :end_date, :as => :string, :input_html => { :id => "conference-end-datepicker", :readonly => "readonly" }
|
= f.input :timezone, :as => :time_zone, :hint => "Please select in what time zone your conference will take place."
|
||||||
= f.input :html_export_path, :hint => "The path for static HTML exports"
|
= f.input :start_date, :as => :string, :input_html => { :id => "conference-start-datepicker", :readonly => "readonly" }
|
||||||
= f.actions do
|
= f.input :end_date, :as => :string, :input_html => { :id => "conference-end-datepicker", :readonly => "readonly" }
|
||||||
= f.action :submit, :button_html => {:class => "btn primary"}
|
= f.actions do
|
||||||
|
= f.action :submit, :button_html => {:class => "btn btn-success pull-right"}
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@
|
||||||
%span.icon-bar
|
%span.icon-bar
|
||||||
%span.icon-bar
|
%span.icon-bar
|
||||||
%span.icon-bar
|
%span.icon-bar
|
||||||
= link_to "OSEM", root_path, :class => 'navbar-brand', :title => "Open Source Event Manager"
|
= link_to CONFIG['name'], root_path, :class => 'navbar-brand', :title => "Open Source Event Manager"
|
||||||
.collapse.navbar-collapse
|
.collapse.navbar-collapse
|
||||||
- if @conference && !@conference.short_title.nil?
|
- if @conference && !@conference.short_title.nil?
|
||||||
%p.navbar-text
|
%p.navbar-text
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,13 @@
|
||||||
#footer
|
#footer
|
||||||
.container
|
.container
|
||||||
%p.muted.text-center
|
%p.muted.text-center
|
||||||
OSEM is (C) 2013
|
%small
|
||||||
= link_to "Matt Barringer", "http://incoherent.de"
|
©#{Date.today.year}
|
||||||
and released under the GPL. You can get the source code from
|
= link_to "Matt Barringer.", "http://incoherent.de"
|
||||||
= link_to "Github.", "https://github.com/mbarringer/osem"
|
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"
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,12 @@
|
||||||
defaults: &defaults
|
defaults: &defaults
|
||||||
|
# The name of your instance
|
||||||
|
name: OSEM
|
||||||
# The sender address of emails
|
# The sender address of emails
|
||||||
devise_mail_sender: "no-reply@localhost"
|
devise_mail_sender: "no-reply@localhost"
|
||||||
# The hostname to be used when building the URL in the emails
|
# The hostname to be used when building the URL in the emails
|
||||||
url_for_emails: "localhost:3000"
|
url_for_emails: "localhost:3000"
|
||||||
|
# A secret key for your rails app. You can generate one with 'rake secret'
|
||||||
|
secret_key: 12345
|
||||||
# A secret key. You can generate one with 'rake secret'
|
# A secret key. You can generate one with 'rake secret'
|
||||||
devise_secret_key: '12345'
|
devise_secret_key: '12345'
|
||||||
# errbit configuration, get your own instance: https://github.com/errbit/errbit
|
# errbit configuration, get your own instance: https://github.com/errbit/errbit
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
# Load the rails application
|
# Load the rails application
|
||||||
require File.expand_path('../application', __FILE__)
|
require File.expand_path('../application', __FILE__)
|
||||||
|
|
||||||
|
# Load the configuration file
|
||||||
path = Rails.root.join("config", "config.yml")
|
path = Rails.root.join("config", "config.yml")
|
||||||
|
|
||||||
begin
|
begin
|
||||||
CONFIG = YAML.load_file(path)[Rails.env]
|
CONFIG = YAML.load_file(path)[Rails.env]
|
||||||
rescue Exception
|
rescue Exception
|
||||||
|
|
@ -12,3 +12,4 @@ end
|
||||||
|
|
||||||
# Initialize the rails application
|
# Initialize the rails application
|
||||||
Osem::Application.initialize!
|
Osem::Application.initialize!
|
||||||
|
Osem::Application.config.secret_keybase = CONFIG['secret_key']
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,6 @@ Osem::Application.configure do
|
||||||
# since you don't have to restart the web server when you make code changes.
|
# since you don't have to restart the web server when you make code changes.
|
||||||
config.cache_classes = false
|
config.cache_classes = false
|
||||||
|
|
||||||
# Log error messages when you accidentally call methods on nil.
|
|
||||||
config.whiny_nils = true
|
|
||||||
|
|
||||||
# Show full error reports and disable caching
|
# Show full error reports and disable caching
|
||||||
config.consider_all_requests_local = true
|
config.consider_all_requests_local = true
|
||||||
config.action_controller.perform_caching = false
|
config.action_controller.perform_caching = false
|
||||||
|
|
@ -28,15 +25,16 @@ Osem::Application.configure do
|
||||||
# Raise exception on mass assignment protection for Active Record models
|
# Raise exception on mass assignment protection for Active Record models
|
||||||
config.active_record.mass_assignment_sanitizer = :strict
|
config.active_record.mass_assignment_sanitizer = :strict
|
||||||
|
|
||||||
# Log the query plan for queries taking more than this (works
|
|
||||||
# with SQLite, MySQL, and PostgreSQL)
|
|
||||||
config.active_record.auto_explain_threshold_in_seconds = 0.5
|
|
||||||
|
|
||||||
# Do not compress assets
|
# Do not compress assets
|
||||||
config.assets.compress = false
|
config.assets.compress = false
|
||||||
|
|
||||||
# Expands the lines which load the assets
|
# Expands the lines which load the assets
|
||||||
config.assets.debug = true
|
config.assets.debug = true
|
||||||
|
|
||||||
|
# Do not eager load code on boot.
|
||||||
|
config.eager_load = false
|
||||||
|
|
||||||
|
# Set the detault url for action mailer
|
||||||
config.action_mailer.default_url_options = { :host => CONFIG['url_for_emails'] }
|
config.action_mailer.default_url_options = { :host => CONFIG['url_for_emails'] }
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,12 @@ Osem::Application.configure do
|
||||||
config.consider_all_requests_local = false
|
config.consider_all_requests_local = false
|
||||||
config.action_controller.perform_caching = true
|
config.action_controller.perform_caching = true
|
||||||
|
|
||||||
|
# Eager load code on boot. This eager loads most of Rails and
|
||||||
|
# your application in memory, allowing both thread web servers
|
||||||
|
# and those relying on copy on write to perform better.
|
||||||
|
# Rake tasks automatically ignore this option for performance.
|
||||||
|
config.eager_load = true
|
||||||
|
|
||||||
# Disable Rails's static asset server (Apache or nginx will already do this)
|
# Disable Rails's static asset server (Apache or nginx will already do this)
|
||||||
config.serve_static_assets = false
|
config.serve_static_assets = false
|
||||||
# Compress JavaScripts and CSS
|
# Compress JavaScripts and CSS
|
||||||
|
|
@ -60,10 +66,6 @@ Osem::Application.configure do
|
||||||
# Send deprecation notices to registered listeners
|
# Send deprecation notices to registered listeners
|
||||||
config.active_support.deprecation = :notify
|
config.active_support.deprecation = :notify
|
||||||
|
|
||||||
# Log the query plan for queries taking more than this (works
|
# Set the detault url for action mailer
|
||||||
# with SQLite, MySQL, and PostgreSQL)
|
|
||||||
# config.active_record.auto_explain_threshold_in_seconds = 0.5
|
|
||||||
|
|
||||||
config.action_mailer.default_url_options = { :host => CONFIG['url_for_emails'] }
|
config.action_mailer.default_url_options = { :host => CONFIG['url_for_emails'] }
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -11,8 +11,8 @@ Osem::Application.configure do
|
||||||
config.serve_static_assets = true
|
config.serve_static_assets = true
|
||||||
config.static_cache_control = "public, max-age=3600"
|
config.static_cache_control = "public, max-age=3600"
|
||||||
|
|
||||||
# Log error messages when you accidentally call methods on nil
|
# Do not eager load code on boot.
|
||||||
config.whiny_nils = true
|
config.eager_load = false
|
||||||
|
|
||||||
# Show full error reports and disable caching
|
# Show full error reports and disable caching
|
||||||
config.consider_all_requests_local = true
|
config.consider_all_requests_local = true
|
||||||
|
|
|
||||||
|
|
@ -1,12 +1,13 @@
|
||||||
# Use this hook to configure devise mailer, warden hooks and so forth.
|
# Use this hook to configure devise mailer, warden hooks and so forth.
|
||||||
# Many of these configuration options can be set straight in your model.
|
# Many of these configuration options can be set straight in your model.
|
||||||
Devise.setup do |config|
|
Devise.setup do |config|
|
||||||
# ==> Secret key
|
# ==> Secret key, generate one with `rake secret`
|
||||||
config.secret_key = CONFIG['devise_secret_key']
|
config.secret_key = CONFIG['devise_secret_key']
|
||||||
|
|
||||||
# ==> Mailer Configuration
|
# ==> Mailer Configuration
|
||||||
# Configure the e-mail address which will be shown in Devise::Mailer,
|
# Configure the e-mail address which will be shown in Devise::Mailer,
|
||||||
# note that it will be overwritten if you use your own mailer class with default "from" parameter.
|
# note that it will be overwritten if you use your own mailer class with default "from" parameter.
|
||||||
config.mailer_sender = CONFIG['devise_mail_sender']
|
config.mailer_sender = CONFIG['sender_for_emails']
|
||||||
|
|
||||||
# Configure the class responsible to send e-mails.
|
# Configure the class responsible to send e-mails.
|
||||||
# config.mailer = "Devise::Mailer"
|
# config.mailer = "Devise::Mailer"
|
||||||
|
|
|
||||||
|
|
@ -17,13 +17,13 @@ Osem::Application.routes.draw do
|
||||||
delete "/registrations" => "registrations#delete"
|
delete "/registrations" => "registrations#delete"
|
||||||
put "/registrations/change_field" => "registrations#change_field"
|
put "/registrations/change_field" => "registrations#change_field"
|
||||||
get "/emailsettings" => "emails#show", :as => "email_settings"
|
get "/emailsettings" => "emails#show", :as => "email_settings"
|
||||||
put "/emailsettings" => "emails#update", :as => "email_settings"
|
put "/emailsettings" => "emails#update"
|
||||||
get "/supporter_levels" => "SupporterLevels#show"
|
get "/supporter_levels" => "supporter_levels#show"
|
||||||
put "/supporter_levels" => "SupporterLevels#update"
|
put "/supporter_levels" => "supporter_levels#update"
|
||||||
get "/venue" => "venue#show", :as => "venue_info"
|
get "/venue" => "venue#show", :as => "venue_info"
|
||||||
put "/venue" => "venue#update", :as => "venue_update"
|
put "/venue" => "venue#update", :as => "venue_update"
|
||||||
get "/social_events" => "SocialEvents#show", :as => "social_events"
|
get "/social_events" => "social_events#show", :as => "social_events"
|
||||||
put "/social_events" => "SocialEvents#update", :as => "social_events"
|
put "/social_events" => "social_events#update"
|
||||||
get "/rooms" => "rooms#show", :as => "rooms_list"
|
get "/rooms" => "rooms#show", :as => "rooms_list"
|
||||||
put "/rooms" => "rooms#update", :as => "rooms_update"
|
put "/rooms" => "rooms#update", :as => "rooms_update"
|
||||||
get "/tracks" => "tracks#show", :as => "tracks_list"
|
get "/tracks" => "tracks#show", :as => "tracks_list"
|
||||||
|
|
@ -57,16 +57,16 @@ Osem::Application.routes.draw do
|
||||||
|
|
||||||
resources :conference, :only => [] do
|
resources :conference, :only => [] do
|
||||||
resources :proposal do
|
resources :proposal do
|
||||||
resources :event_attachment, :controller => "EventAttachments"
|
resources :event_attachment, :controller => "event_attachments"
|
||||||
put "/confirm" => "proposal#confirm"
|
put "/confirm" => "proposal#confirm"
|
||||||
end
|
end
|
||||||
resource :schedule, :only => [] do
|
resource :schedule, :only => [] do
|
||||||
get "/" => "schedule#index"
|
get "/" => "schedule#index"
|
||||||
end
|
end
|
||||||
member do
|
member do
|
||||||
get "/register" => "ConferenceRegistration#register"
|
get "/register" => "conference_registration#register"
|
||||||
put "/register" => "ConferenceRegistration#update"
|
put "/register" => "conference_registration#update"
|
||||||
delete "/register" => "ConferenceRegistration#unregister"
|
delete "/register" => "conference_registration#unregister"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
@ -86,7 +86,7 @@ Osem::Application.routes.draw do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
match "/admin" => redirect("/admin/conference")
|
get "/admin" => redirect("/admin/conference")
|
||||||
|
|
||||||
root :to => "home#index"
|
root :to => "home#index"
|
||||||
end
|
end
|
||||||
|
|
|
||||||
306
db/schema.rb
306
db/schema.rb
|
|
@ -9,161 +9,161 @@
|
||||||
# from scratch. The latter is a flawed and unsustainable approach (the more migrations
|
# from scratch. The latter is a flawed and unsustainable approach (the more migrations
|
||||||
# you'll amass, the slower it'll run and the greater likelihood for issues).
|
# you'll amass, the slower it'll run and the greater likelihood for issues).
|
||||||
#
|
#
|
||||||
# It's strongly recommended to check this file into your version control system.
|
# It's strongly recommended that you check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema.define(:version => 20140414131028) do
|
ActiveRecord::Schema.define(version: 20140414131028) do
|
||||||
|
|
||||||
create_table "answers", :force => true do |t|
|
create_table "answers", force: true do |t|
|
||||||
t.string "title"
|
t.string "title"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
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
|
||||||
t.date "end_date", :null => false
|
t.date "end_date", null: false
|
||||||
t.date "hard_deadline", :null => false
|
t.date "hard_deadline", null: false
|
||||||
t.text "description", :null => false
|
t.text "description", null: false
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.boolean "schedule_changes", :default => false
|
t.boolean "schedule_changes", default: false
|
||||||
t.integer "rating", :default => 3
|
t.integer "rating", default: 3
|
||||||
t.text "rating_desc"
|
t.text "rating_desc"
|
||||||
t.boolean "schedule_public"
|
t.boolean "schedule_public"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "comments", :force => true do |t|
|
create_table "comments", force: true do |t|
|
||||||
t.string "title", :limit => 50, :default => ""
|
t.string "title", limit: 50, default: ""
|
||||||
t.text "body"
|
t.text "body"
|
||||||
t.integer "commentable_id"
|
t.integer "commentable_id"
|
||||||
t.string "commentable_type"
|
t.string "commentable_type"
|
||||||
t.integer "user_id"
|
t.integer "user_id"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.string "subject"
|
t.string "subject"
|
||||||
t.integer "parent_id"
|
t.integer "parent_id"
|
||||||
t.integer "lft"
|
t.integer "lft"
|
||||||
t.integer "rgt"
|
t.integer "rgt"
|
||||||
end
|
end
|
||||||
|
|
||||||
add_index "comments", ["commentable_id"], :name => "index_comments_on_commentable_id"
|
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", ["commentable_type"], name: "index_comments_on_commentable_type"
|
||||||
add_index "comments", ["user_id"], :name => "index_comments_on_user_id"
|
add_index "comments", ["user_id"], name: "index_comments_on_user_id"
|
||||||
|
|
||||||
create_table "conferences", :force => true do |t|
|
create_table "conferences", force: true do |t|
|
||||||
t.string "guid", :null => false
|
t.string "guid", null: false
|
||||||
t.string "title", :null => false
|
t.string "title", null: false
|
||||||
t.string "short_title", :null => false
|
t.string "short_title", null: false
|
||||||
t.string "social_tag"
|
t.string "social_tag"
|
||||||
t.string "contact_email", :null => false
|
t.string "contact_email", null: false
|
||||||
t.string "timezone", :null => false
|
t.string "timezone", null: false
|
||||||
t.string "html_export_path"
|
t.string "html_export_path"
|
||||||
t.date "start_date", :null => false
|
t.date "start_date", null: false
|
||||||
t.date "end_date", :null => false
|
t.date "end_date", null: false
|
||||||
t.integer "venue_id"
|
t.integer "venue_id"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.date "registration_start_date"
|
t.date "registration_start_date"
|
||||||
t.date "registration_end_date"
|
t.date "registration_end_date"
|
||||||
t.string "logo_file_name"
|
t.string "logo_file_name"
|
||||||
t.string "logo_content_type"
|
t.string "logo_content_type"
|
||||||
t.integer "logo_file_size"
|
t.integer "logo_file_size"
|
||||||
t.datetime "logo_updated_at"
|
t.datetime "logo_updated_at"
|
||||||
t.boolean "use_dietary_choices", :default => false
|
t.boolean "use_dietary_choices", default: false
|
||||||
t.boolean "use_supporter_levels", :default => false
|
t.boolean "use_supporter_levels", default: false
|
||||||
t.integer "revision"
|
t.integer "revision"
|
||||||
t.boolean "use_vpositions", :default => false
|
t.boolean "use_vpositions", default: false
|
||||||
t.boolean "use_vdays", :default => false
|
t.boolean "use_vdays", default: false
|
||||||
t.boolean "use_difficulty_levels", :default => false
|
t.boolean "use_difficulty_levels", default: false
|
||||||
t.boolean "use_volunteers"
|
t.boolean "use_volunteers"
|
||||||
t.string "media_id"
|
t.string "media_id"
|
||||||
t.string "media_type"
|
t.string "media_type"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "conferences_questions", :id => false, :force => true do |t|
|
create_table "conferences_questions", id: false, force: true do |t|
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.integer "question_id"
|
t.integer "question_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "dietary_choices", :force => true do |t|
|
create_table "dietary_choices", force: true do |t|
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.string "title", :null => false
|
t.string "title", null: false
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "difficulty_levels", :force => true do |t|
|
create_table "difficulty_levels", force: true do |t|
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.string "title"
|
t.string "title"
|
||||||
t.text "description"
|
t.text "description"
|
||||||
t.string "color", :default => "#ffffff"
|
t.string "color", default: "#ffffff"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "email_settings", :force => true do |t|
|
create_table "email_settings", force: true do |t|
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.boolean "send_on_registration", :default => true
|
t.boolean "send_on_registration", default: true
|
||||||
t.boolean "send_on_accepted", :default => true
|
t.boolean "send_on_accepted", default: true
|
||||||
t.boolean "send_on_rejected", :default => true
|
t.boolean "send_on_rejected", default: true
|
||||||
t.boolean "send_on_confirmed_without_registration", :default => true
|
t.boolean "send_on_confirmed_without_registration", default: true
|
||||||
t.text "registration_email_template"
|
t.text "registration_email_template"
|
||||||
t.text "accepted_email_template"
|
t.text "accepted_email_template"
|
||||||
t.text "rejected_email_template"
|
t.text "rejected_email_template"
|
||||||
t.text "confirmed_email_template"
|
t.text "confirmed_email_template"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.string "registration_subject"
|
t.string "registration_subject"
|
||||||
t.string "accepted_subject"
|
t.string "accepted_subject"
|
||||||
t.string "rejected_subject"
|
t.string "rejected_subject"
|
||||||
t.string "confirmed_without_registration_subject"
|
t.string "confirmed_without_registration_subject"
|
||||||
end
|
end
|
||||||
|
|
||||||
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.boolean "public", :default => false
|
t.boolean "public", default: false
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "event_people", :force => true do |t|
|
create_table "event_people", force: true do |t|
|
||||||
t.integer "proposal_id"
|
t.integer "proposal_id"
|
||||||
t.integer "person_id"
|
t.integer "person_id"
|
||||||
t.integer "event_id"
|
t.integer "event_id"
|
||||||
t.string "event_role", :default => "participant", :null => false
|
t.string "event_role", default: "participant", null: false
|
||||||
t.string "comment"
|
t.string "comment"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "event_types", :force => true do |t|
|
create_table "event_types", force: true do |t|
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.string "title", :null => false
|
t.string "title", null: false
|
||||||
t.integer "length", :default => 30
|
t.integer "length", default: 30
|
||||||
t.integer "minimum_abstract_length", :default => 0
|
t.integer "minimum_abstract_length", default: 0
|
||||||
t.integer "maximum_abstract_length", :default => 500
|
t.integer "maximum_abstract_length", default: 500
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "events", :force => true do |t|
|
create_table "events", force: true do |t|
|
||||||
t.string "guid", :null => false
|
t.string "guid", null: false
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.integer "event_type_id"
|
t.integer "event_type_id"
|
||||||
t.string "title", :null => false
|
t.string "title", null: false
|
||||||
t.string "subtitle"
|
t.string "subtitle"
|
||||||
t.integer "time_slots"
|
t.integer "time_slots"
|
||||||
t.string "state", :default => "new", :null => false
|
t.string "state", default: "new", null: false
|
||||||
t.string "progress", :default => "new", :null => false
|
t.string "progress", default: "new", null: false
|
||||||
t.string "language"
|
t.string "language"
|
||||||
t.datetime "start_time"
|
t.datetime "start_time"
|
||||||
t.text "abstract"
|
t.text "abstract"
|
||||||
t.text "description"
|
t.text "description"
|
||||||
t.boolean "public", :default => true
|
t.boolean "public", default: true
|
||||||
t.string "logo_file_name"
|
t.string "logo_file_name"
|
||||||
t.string "logo_content_type"
|
t.string "logo_content_type"
|
||||||
t.integer "logo_file_size"
|
t.integer "logo_file_size"
|
||||||
|
|
@ -171,26 +171,26 @@ ActiveRecord::Schema.define(:version => 20140414131028) do
|
||||||
t.text "proposal_additional_speakers"
|
t.text "proposal_additional_speakers"
|
||||||
t.integer "track_id"
|
t.integer "track_id"
|
||||||
t.integer "room_id"
|
t.integer "room_id"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.string "media_id"
|
t.string "media_id"
|
||||||
t.string "media_type"
|
t.string "media_type"
|
||||||
t.boolean "require_registration"
|
t.boolean "require_registration"
|
||||||
t.integer "difficulty_level_id"
|
t.integer "difficulty_level_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "events_registrations", :id => false, :force => true do |t|
|
create_table "events_registrations", id: false, force: true do |t|
|
||||||
t.integer "registration_id"
|
t.integer "registration_id"
|
||||||
t.integer "event_id"
|
t.integer "event_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "people", :force => true do |t|
|
create_table "people", force: true do |t|
|
||||||
t.string "guid", :null => false
|
t.string "guid", null: false
|
||||||
t.string "first_name", :default => ""
|
t.string "first_name", default: ""
|
||||||
t.string "last_name", :default => ""
|
t.string "last_name", default: ""
|
||||||
t.string "public_name", :default => ""
|
t.string "public_name", default: ""
|
||||||
t.string "company", :default => ""
|
t.string "company", default: ""
|
||||||
t.string "email", :null => false
|
t.string "email", null: false
|
||||||
t.boolean "email_public"
|
t.boolean "email_public"
|
||||||
t.string "avatar_file_name"
|
t.string "avatar_file_name"
|
||||||
t.string "avatar_content_type"
|
t.string "avatar_content_type"
|
||||||
|
|
@ -198,8 +198,8 @@ ActiveRecord::Schema.define(:version => 20140414131028) do
|
||||||
t.datetime "avatar_updated_at"
|
t.datetime "avatar_updated_at"
|
||||||
t.text "biography"
|
t.text "biography"
|
||||||
t.integer "user_id"
|
t.integer "user_id"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.string "irc_nickname"
|
t.string "irc_nickname"
|
||||||
t.text "volunteer_experience"
|
t.text "volunteer_experience"
|
||||||
t.string "tshirt"
|
t.string "tshirt"
|
||||||
|
|
@ -207,119 +207,119 @@ ActiveRecord::Schema.define(:version => 20140414131028) do
|
||||||
t.string "languages"
|
t.string "languages"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "qanswers", :force => true do |t|
|
create_table "qanswers", force: true do |t|
|
||||||
t.integer "question_id"
|
t.integer "question_id"
|
||||||
t.integer "answer_id"
|
t.integer "answer_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "qanswers_registrations", :id => false, :force => true do |t|
|
create_table "qanswers_registrations", id: false, force: true do |t|
|
||||||
t.integer "registration_id", :null => false
|
t.integer "registration_id", null: false
|
||||||
t.integer "qanswer_id", :null => false
|
t.integer "qanswer_id", null: false
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "question_types", :force => true do |t|
|
create_table "question_types", force: true do |t|
|
||||||
t.string "title"
|
t.string "title"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "questions", :force => true do |t|
|
create_table "questions", force: true do |t|
|
||||||
t.string "title"
|
t.string "title"
|
||||||
t.integer "question_type_id"
|
t.integer "question_type_id"
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.boolean "global"
|
t.boolean "global"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "registrations", :force => true do |t|
|
create_table "registrations", force: true do |t|
|
||||||
t.integer "person_id"
|
t.integer "person_id"
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.boolean "attending_social_events", :default => true
|
t.boolean "attending_social_events", default: true
|
||||||
t.boolean "attending_with_partner", :default => false
|
t.boolean "attending_with_partner", default: false
|
||||||
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.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
t.integer "dietary_choice_id"
|
t.integer "dietary_choice_id"
|
||||||
t.text "other_dietary_choice"
|
t.text "other_dietary_choice"
|
||||||
t.boolean "handicapped_access_required", :default => false
|
t.boolean "handicapped_access_required", default: false
|
||||||
t.text "other_special_needs"
|
t.text "other_special_needs"
|
||||||
t.boolean "attended", :default => false
|
t.boolean "attended", default: false
|
||||||
t.boolean "volunteer"
|
t.boolean "volunteer"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "registrations_social_events", :id => false, :force => true do |t|
|
create_table "registrations_social_events", id: false, force: true do |t|
|
||||||
t.integer "registration_id"
|
t.integer "registration_id"
|
||||||
t.integer "social_event_id"
|
t.integer "social_event_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "registrations_vchoices", :id => false, :force => true do |t|
|
create_table "registrations_vchoices", id: false, force: true do |t|
|
||||||
t.integer "registration_id"
|
t.integer "registration_id"
|
||||||
t.integer "vchoice_id"
|
t.integer "vchoice_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "roles", :force => true do |t|
|
create_table "roles", force: true do |t|
|
||||||
t.string "name"
|
t.string "name"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "roles_users", :id => false, :force => true do |t|
|
create_table "roles_users", id: false, force: true do |t|
|
||||||
t.integer "role_id"
|
t.integer "role_id"
|
||||||
t.integer "user_id"
|
t.integer "user_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "rooms", :force => true do |t|
|
create_table "rooms", force: true do |t|
|
||||||
t.string "guid", :null => false
|
t.string "guid", null: false
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.string "name", :null => false
|
t.string "name", null: false
|
||||||
t.integer "size"
|
t.integer "size"
|
||||||
t.boolean "public", :default => true
|
t.boolean "public", default: true
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "social_events", :force => true do |t|
|
create_table "social_events", force: true do |t|
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.string "title"
|
t.string "title"
|
||||||
t.text "description"
|
t.text "description"
|
||||||
t.date "date"
|
t.date "date"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "supporter_levels", :force => true do |t|
|
create_table "supporter_levels", force: true do |t|
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.string "title", :null => false
|
t.string "title", null: false
|
||||||
t.string "url"
|
t.string "url"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "supporter_registrations", :force => true do |t|
|
create_table "supporter_registrations", force: true do |t|
|
||||||
t.integer "registration_id"
|
t.integer "registration_id"
|
||||||
t.integer "supporter_level_id"
|
t.integer "supporter_level_id"
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.string "name"
|
t.string "name"
|
||||||
t.string "email"
|
t.string "email"
|
||||||
t.string "code"
|
t.string "code"
|
||||||
t.boolean "code_is_valid", :default => false
|
t.boolean "code_is_valid", default: false
|
||||||
t.datetime "created_at"
|
t.datetime "created_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "tracks", :force => true do |t|
|
create_table "tracks", force: true do |t|
|
||||||
t.string "guid", :null => false
|
t.string "guid", null: false
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.string "name", :null => false
|
t.string "name", null: false
|
||||||
t.text "description"
|
t.text "description"
|
||||||
t.string "color", :default => "#ffffff"
|
t.string "color", default: "#ffffff"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "users", :force => true do |t|
|
create_table "users", force: true do |t|
|
||||||
t.string "email", :default => "", :null => false
|
t.string "email", default: "", null: false
|
||||||
t.string "encrypted_password", :default => "", :null => false
|
t.string "encrypted_password", default: "", null: false
|
||||||
t.string "reset_password_token"
|
t.string "reset_password_token"
|
||||||
t.datetime "reset_password_sent_at"
|
t.datetime "reset_password_sent_at"
|
||||||
t.datetime "remember_created_at"
|
t.datetime "remember_created_at"
|
||||||
t.integer "sign_in_count", :default => 0
|
t.integer "sign_in_count", default: 0
|
||||||
t.datetime "current_sign_in_at"
|
t.datetime "current_sign_in_at"
|
||||||
t.datetime "last_sign_in_at"
|
t.datetime "last_sign_in_at"
|
||||||
t.string "current_sign_in_ip"
|
t.string "current_sign_in_ip"
|
||||||
|
|
@ -328,65 +328,65 @@ ActiveRecord::Schema.define(:version => 20140414131028) do
|
||||||
t.datetime "confirmed_at"
|
t.datetime "confirmed_at"
|
||||||
t.datetime "confirmation_sent_at"
|
t.datetime "confirmation_sent_at"
|
||||||
t.string "unconfirmed_email"
|
t.string "unconfirmed_email"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
add_index "users", ["confirmation_token"], :name => "index_users_on_confirmation_token", :unique => true
|
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", ["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", ["reset_password_token"], name: "index_users_on_reset_password_token", unique: true
|
||||||
|
|
||||||
create_table "vchoices", :force => true do |t|
|
create_table "vchoices", force: true do |t|
|
||||||
t.integer "vday_id"
|
t.integer "vday_id"
|
||||||
t.integer "vposition_id"
|
t.integer "vposition_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "vdays", :force => true do |t|
|
create_table "vdays", force: true do |t|
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.date "day"
|
t.date "day"
|
||||||
t.text "description"
|
t.text "description"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "venues", :force => true do |t|
|
create_table "venues", force: true do |t|
|
||||||
t.string "guid"
|
t.string "guid"
|
||||||
t.text "name", :limit => 255
|
t.text "name", limit: 255
|
||||||
t.text "address", :limit => 255
|
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"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "versions", :force => true do |t|
|
create_table "versions", force: true do |t|
|
||||||
t.string "item_type", :null => false
|
t.string "item_type", null: false
|
||||||
t.integer "item_id", :null => false
|
t.integer "item_id", null: false
|
||||||
t.string "event", :null => false
|
t.string "event", null: false
|
||||||
t.string "whodunnit"
|
t.string "whodunnit"
|
||||||
t.text "object"
|
t.text "object"
|
||||||
t.text "object_changes"
|
t.text "object_changes"
|
||||||
t.datetime "created_at"
|
t.datetime "created_at"
|
||||||
end
|
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"
|
||||||
|
|
||||||
create_table "votes", :force => true do |t|
|
create_table "votes", force: true do |t|
|
||||||
t.integer "person_id"
|
t.integer "person_id"
|
||||||
t.integer "event_id"
|
t.integer "event_id"
|
||||||
t.integer "rating"
|
t.integer "rating"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "vpositions", :force => true do |t|
|
create_table "vpositions", force: true do |t|
|
||||||
t.integer "conference_id"
|
t.integer "conference_id"
|
||||||
t.string "title", :null => false
|
t.string "title", null: false
|
||||||
t.text "description"
|
t.text "description"
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at"
|
||||||
t.datetime "updated_at", :null => false
|
t.datetime "updated_at"
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue