Update gems, use d3 gem, initial bootstrap v3 port
This commit is contained in:
parent
24e40a5c90
commit
587126218d
71 changed files with 798 additions and 10411 deletions
7
Gemfile
7
Gemfile
|
|
@ -1,6 +1,6 @@
|
||||||
source 'https://rubygems.org'
|
source 'https://rubygems.org'
|
||||||
|
|
||||||
gem 'rails', '3.2.15'
|
gem 'rails', '3.2.17'
|
||||||
|
|
||||||
# Bundle edge Rails instead:
|
# Bundle edge Rails instead:
|
||||||
# gem 'rails', :git => 'git://github.com/rails/rails.git'
|
# gem 'rails', :git => 'git://github.com/rails/rails.git'
|
||||||
|
|
@ -8,9 +8,7 @@ gem 'rails', '3.2.15'
|
||||||
# Gems used only for assets and not required
|
# Gems used only for assets and not required
|
||||||
# in production environments by default.
|
# in production environments by default.
|
||||||
group :assets do
|
group :assets do
|
||||||
gem 'sass-rails', '~> 3.2.3'
|
|
||||||
# gem 'coffee-rails', '~> 3.2.1'
|
# gem 'coffee-rails', '~> 3.2.1'
|
||||||
gem 'bootstrap-sass'
|
|
||||||
|
|
||||||
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
|
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
|
||||||
gem 'therubyracer', :platforms => :ruby
|
gem 'therubyracer', :platforms => :ruby
|
||||||
|
|
@ -45,6 +43,8 @@ gem 'bcrypt-ruby', '~> 3.0.0'
|
||||||
#gem 'node'
|
#gem 'node'
|
||||||
gem 'paper_trail'
|
gem 'paper_trail'
|
||||||
gem 'formtastic-bootstrap'
|
gem 'formtastic-bootstrap'
|
||||||
|
gem 'bootstrap-sass'
|
||||||
|
gem 'sass-rails', '>= 3.2'
|
||||||
gem 'cocoon'
|
gem 'cocoon'
|
||||||
gem 'transitions', :require => ["transitions", "active_record/transitions"]
|
gem 'transitions', :require => ["transitions", "active_record/transitions"]
|
||||||
gem 'acts_as_commentable_with_threading'
|
gem 'acts_as_commentable_with_threading'
|
||||||
|
|
@ -53,3 +53,4 @@ gem 'prawn_rails'
|
||||||
gem 'gravtastic'
|
gem 'gravtastic'
|
||||||
gem 'active_model_serializers'
|
gem 'active_model_serializers'
|
||||||
gem 'axlsx_rails'
|
gem 'axlsx_rails'
|
||||||
|
gem 'd3_rails'
|
||||||
|
|
|
||||||
160
Gemfile.lock
160
Gemfile.lock
|
|
@ -1,13 +1,12 @@
|
||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
Ascii85 (1.0.2)
|
actionmailer (3.2.17)
|
||||||
actionmailer (3.2.15)
|
actionpack (= 3.2.17)
|
||||||
actionpack (= 3.2.15)
|
|
||||||
mail (~> 2.5.4)
|
mail (~> 2.5.4)
|
||||||
actionpack (3.2.15)
|
actionpack (3.2.17)
|
||||||
activemodel (= 3.2.15)
|
activemodel (= 3.2.17)
|
||||||
activesupport (= 3.2.15)
|
activesupport (= 3.2.17)
|
||||||
builder (~> 3.0.0)
|
builder (~> 3.0.0)
|
||||||
erubis (~> 2.7.0)
|
erubis (~> 2.7.0)
|
||||||
journey (~> 1.0.4)
|
journey (~> 1.0.4)
|
||||||
|
|
@ -17,26 +16,25 @@ GEM
|
||||||
sprockets (~> 2.2.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.15)
|
activemodel (3.2.17)
|
||||||
activesupport (= 3.2.15)
|
activesupport (= 3.2.17)
|
||||||
builder (~> 3.0.0)
|
builder (~> 3.0.0)
|
||||||
activerecord (3.2.15)
|
activerecord (3.2.17)
|
||||||
activemodel (= 3.2.15)
|
activemodel (= 3.2.17)
|
||||||
activesupport (= 3.2.15)
|
activesupport (= 3.2.17)
|
||||||
arel (~> 3.0.2)
|
arel (~> 3.0.2)
|
||||||
tzinfo (~> 0.3.29)
|
tzinfo (~> 0.3.29)
|
||||||
activeresource (3.2.15)
|
activeresource (3.2.17)
|
||||||
activemodel (= 3.2.15)
|
activemodel (= 3.2.17)
|
||||||
activesupport (= 3.2.15)
|
activesupport (= 3.2.17)
|
||||||
activesupport (3.2.15)
|
activesupport (3.2.17)
|
||||||
i18n (~> 0.6, >= 0.6.4)
|
i18n (~> 0.6, >= 0.6.4)
|
||||||
multi_json (~> 1.0)
|
multi_json (~> 1.0)
|
||||||
acts_as_commentable_with_threading (1.1.3)
|
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)
|
||||||
afm (0.2.0)
|
arel (3.0.3)
|
||||||
arel (3.0.2)
|
|
||||||
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)
|
||||||
|
|
@ -47,7 +45,7 @@ GEM
|
||||||
axlsx
|
axlsx
|
||||||
rails (>= 3.1)
|
rails (>= 3.1)
|
||||||
bcrypt-ruby (3.0.1)
|
bcrypt-ruby (3.0.1)
|
||||||
bootstrap-sass (2.3.2.2)
|
bootstrap-sass (3.1.1.0)
|
||||||
sass (~> 3.2)
|
sass (~> 3.2)
|
||||||
builder (3.0.4)
|
builder (3.0.4)
|
||||||
cancan (1.6.10)
|
cancan (1.6.10)
|
||||||
|
|
@ -58,16 +56,18 @@ GEM
|
||||||
rack-test (>= 0.5.4)
|
rack-test (>= 0.5.4)
|
||||||
selenium-webdriver (~> 2.0)
|
selenium-webdriver (~> 2.0)
|
||||||
xpath (~> 0.1.4)
|
xpath (~> 0.1.4)
|
||||||
childprocess (0.3.9)
|
childprocess (0.5.1)
|
||||||
ffi (~> 1.0, >= 1.0.11)
|
ffi (~> 1.0, >= 1.0.11)
|
||||||
climate_control (0.0.3)
|
climate_control (0.0.3)
|
||||||
activesupport (>= 3.0)
|
activesupport (>= 3.0)
|
||||||
cocaine (0.5.2)
|
cocaine (0.5.3)
|
||||||
climate_control (>= 0.0.3, < 1.0)
|
climate_control (>= 0.0.3, < 1.0)
|
||||||
cocoon (1.2.1)
|
cocoon (1.2.5)
|
||||||
coderay (1.0.9)
|
coderay (1.1.0)
|
||||||
|
d3_rails (3.4.3)
|
||||||
|
railties (>= 3.1.0)
|
||||||
daemons (1.1.9)
|
daemons (1.1.9)
|
||||||
devise (2.2.7)
|
devise (2.2.8)
|
||||||
bcrypt-ruby (~> 3.0)
|
bcrypt-ruby (~> 3.0)
|
||||||
orm_adapter (~> 0.1)
|
orm_adapter (~> 0.1)
|
||||||
railties (~> 3.1)
|
railties (~> 3.1)
|
||||||
|
|
@ -76,26 +76,25 @@ GEM
|
||||||
erubis (2.7.0)
|
erubis (2.7.0)
|
||||||
eventmachine (1.0.3)
|
eventmachine (1.0.3)
|
||||||
execjs (2.0.2)
|
execjs (2.0.2)
|
||||||
ffi (1.9.0)
|
ffi (1.9.3)
|
||||||
formtastic (2.2.1)
|
formtastic (2.2.1)
|
||||||
actionpack (>= 3.0)
|
actionpack (>= 3.0)
|
||||||
formtastic-bootstrap (2.1.3)
|
formtastic-bootstrap (3.0.0)
|
||||||
formtastic (~> 2.2)
|
formtastic (>= 2.2)
|
||||||
gravtastic (3.2.6)
|
gravtastic (3.2.6)
|
||||||
haml (4.0.3)
|
haml (4.0.5)
|
||||||
tilt
|
tilt
|
||||||
hashery (2.1.1)
|
|
||||||
hike (1.2.3)
|
hike (1.2.3)
|
||||||
htmlentities (4.3.1)
|
htmlentities (4.3.1)
|
||||||
i18n (0.6.5)
|
i18n (0.6.9)
|
||||||
journey (1.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.0.4)
|
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.0.5)
|
jquery-ui-rails (4.1.2)
|
||||||
railties (>= 3.1.0)
|
railties (>= 3.1.0)
|
||||||
json (1.8.1)
|
json (1.8.1)
|
||||||
libv8 (3.16.14.3)
|
libv8 (3.16.14.3)
|
||||||
|
|
@ -103,36 +102,31 @@ GEM
|
||||||
mime-types (~> 1.16)
|
mime-types (~> 1.16)
|
||||||
treetop (~> 1.4.8)
|
treetop (~> 1.4.8)
|
||||||
method_source (0.8.2)
|
method_source (0.8.2)
|
||||||
mime-types (1.25)
|
mime-types (1.25.1)
|
||||||
mini_portile (0.5.1)
|
mini_portile (0.5.2)
|
||||||
multi_json (1.8.2)
|
multi_json (1.9.0)
|
||||||
mysql2 (0.3.13)
|
mysql2 (0.3.15)
|
||||||
nokogiri (1.6.0)
|
nokogiri (1.6.1)
|
||||||
mini_portile (~> 0.5.0)
|
mini_portile (~> 0.5.0)
|
||||||
orm_adapter (0.4.0)
|
orm_adapter (0.5.0)
|
||||||
paper_trail (2.7.2)
|
paper_trail (3.0.0)
|
||||||
activerecord (~> 3.0)
|
activerecord (>= 3.0, < 5.0)
|
||||||
railties (~> 3.0)
|
activesupport (>= 3.0, < 5.0)
|
||||||
paperclip (3.5.1)
|
paperclip (3.5.4)
|
||||||
activemodel (>= 3.0.0)
|
activemodel (>= 3.0.0)
|
||||||
activesupport (>= 3.0.0)
|
activesupport (>= 3.0.0)
|
||||||
cocaine (~> 0.5.0)
|
cocaine (~> 0.5.3)
|
||||||
mime-types
|
mime-types
|
||||||
pdf-reader (1.3.3)
|
pdf-core (0.1.6)
|
||||||
Ascii85 (~> 1.0.0)
|
polyglot (0.3.4)
|
||||||
afm (~> 0.2.0)
|
prawn (0.15.0)
|
||||||
hashery (~> 2.0)
|
pdf-core (~> 0.1.3)
|
||||||
ruby-rc4
|
ttfunk (~> 1.1.0)
|
||||||
ttfunk
|
|
||||||
polyglot (0.3.3)
|
|
||||||
prawn (0.12.0)
|
|
||||||
pdf-reader (>= 0.9.0)
|
|
||||||
ttfunk (~> 1.0.2)
|
|
||||||
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.2)
|
pry (0.9.12.6)
|
||||||
coderay (~> 1.0.5)
|
coderay (~> 1.0)
|
||||||
method_source (~> 0.8)
|
method_source (~> 0.8)
|
||||||
slop (~> 3.4)
|
slop (~> 3.4)
|
||||||
rack (1.4.5)
|
rack (1.4.5)
|
||||||
|
|
@ -142,22 +136,22 @@ GEM
|
||||||
rack
|
rack
|
||||||
rack-test (0.6.2)
|
rack-test (0.6.2)
|
||||||
rack (>= 1.0)
|
rack (>= 1.0)
|
||||||
rails (3.2.15)
|
rails (3.2.17)
|
||||||
actionmailer (= 3.2.15)
|
actionmailer (= 3.2.17)
|
||||||
actionpack (= 3.2.15)
|
actionpack (= 3.2.17)
|
||||||
activerecord (= 3.2.15)
|
activerecord (= 3.2.17)
|
||||||
activeresource (= 3.2.15)
|
activeresource (= 3.2.17)
|
||||||
activesupport (= 3.2.15)
|
activesupport (= 3.2.17)
|
||||||
bundler (~> 1.0)
|
bundler (~> 1.0)
|
||||||
railties (= 3.2.15)
|
railties (= 3.2.17)
|
||||||
railties (3.2.15)
|
railties (3.2.17)
|
||||||
actionpack (= 3.2.15)
|
actionpack (= 3.2.17)
|
||||||
activesupport (= 3.2.15)
|
activesupport (= 3.2.17)
|
||||||
rack-ssl (~> 1.3.2)
|
rack-ssl (~> 1.3.2)
|
||||||
rake (>= 0.8.7)
|
rake (>= 0.8.7)
|
||||||
rdoc (~> 3.4)
|
rdoc (~> 3.4)
|
||||||
thor (>= 0.14.6, < 2.0)
|
thor (>= 0.14.6, < 2.0)
|
||||||
rake (10.1.0)
|
rake (10.1.1)
|
||||||
rdoc (3.12.2)
|
rdoc (3.12.2)
|
||||||
json (~> 1.4)
|
json (~> 1.4)
|
||||||
ref (1.0.5)
|
ref (1.0.5)
|
||||||
|
|
@ -174,43 +168,42 @@ GEM
|
||||||
activesupport (>= 3.0)
|
activesupport (>= 3.0)
|
||||||
railties (>= 3.0)
|
railties (>= 3.0)
|
||||||
rspec (~> 2.11.0)
|
rspec (~> 2.11.0)
|
||||||
ruby-rc4 (0.1.5)
|
|
||||||
rubyzip (1.0.0)
|
rubyzip (1.0.0)
|
||||||
sass (3.2.12)
|
sass (3.2.14)
|
||||||
sass-rails (3.2.6)
|
sass-rails (3.2.6)
|
||||||
railties (~> 3.2.0)
|
railties (~> 3.2.0)
|
||||||
sass (>= 3.1.10)
|
sass (>= 3.1.10)
|
||||||
tilt (~> 1.3)
|
tilt (~> 1.3)
|
||||||
selenium-webdriver (2.37.0)
|
selenium-webdriver (2.40.0)
|
||||||
childprocess (>= 0.2.5)
|
childprocess (>= 0.5.0)
|
||||||
multi_json (~> 1.0)
|
multi_json (~> 1.0)
|
||||||
rubyzip (~> 1.0.0)
|
rubyzip (~> 1.0)
|
||||||
websocket (~> 1.0.4)
|
websocket (~> 1.0.4)
|
||||||
slop (3.4.6)
|
slop (3.4.7)
|
||||||
sprockets (2.2.2)
|
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)
|
||||||
sqlite3 (1.3.8)
|
sqlite3 (1.3.9)
|
||||||
therubyracer (0.12.0)
|
therubyracer (0.12.1)
|
||||||
libv8 (~> 3.16.14.0)
|
libv8 (~> 3.16.14.0)
|
||||||
ref
|
ref
|
||||||
thin (1.5.1)
|
thin (1.6.2)
|
||||||
daemons (>= 1.0.9)
|
daemons (>= 1.0.9)
|
||||||
eventmachine (>= 0.12.6)
|
eventmachine (>= 1.0.0)
|
||||||
rack (>= 1.0.0)
|
rack (>= 1.0.0)
|
||||||
thor (0.18.1)
|
thor (0.18.1)
|
||||||
tilt (1.4.1)
|
tilt (1.4.1)
|
||||||
transitions (0.1.11)
|
transitions (0.1.12)
|
||||||
treetop (1.4.15)
|
treetop (1.4.15)
|
||||||
polyglot
|
polyglot
|
||||||
polyglot (>= 0.3.1)
|
polyglot (>= 0.3.1)
|
||||||
ttfunk (1.0.3)
|
ttfunk (1.1.1)
|
||||||
tzinfo (0.3.38)
|
tzinfo (0.3.38)
|
||||||
uglifier (2.2.1)
|
uglifier (2.4.0)
|
||||||
execjs (>= 0.3.0)
|
execjs (>= 0.3.0)
|
||||||
multi_json (~> 1.0, >= 1.0.2)
|
json (>= 1.8.0)
|
||||||
warden (1.2.3)
|
warden (1.2.3)
|
||||||
rack (>= 1.0)
|
rack (>= 1.0)
|
||||||
websocket (1.0.7)
|
websocket (1.0.7)
|
||||||
|
|
@ -230,6 +223,7 @@ DEPENDENCIES
|
||||||
cancan
|
cancan
|
||||||
capybara (= 1.1.2)
|
capybara (= 1.1.2)
|
||||||
cocoon
|
cocoon
|
||||||
|
d3_rails
|
||||||
devise (~> 2.2)
|
devise (~> 2.2)
|
||||||
formtastic-bootstrap
|
formtastic-bootstrap
|
||||||
gravtastic
|
gravtastic
|
||||||
|
|
@ -243,9 +237,9 @@ DEPENDENCIES
|
||||||
prawn
|
prawn
|
||||||
prawn_rails
|
prawn_rails
|
||||||
pry
|
pry
|
||||||
rails (= 3.2.15)
|
rails (= 3.2.17)
|
||||||
rspec-rails (= 2.11.0)
|
rspec-rails (= 2.11.0)
|
||||||
sass-rails (~> 3.2.3)
|
sass-rails (>= 3.2)
|
||||||
sqlite3
|
sqlite3
|
||||||
therubyracer
|
therubyracer
|
||||||
thin
|
thin
|
||||||
|
|
|
||||||
|
|
@ -19,10 +19,10 @@
|
||||||
//= require cocoon
|
//= require cocoon
|
||||||
//= require bootstrap
|
//= require bootstrap
|
||||||
//= require osem
|
//= require osem
|
||||||
//= require d3.v3
|
//= require d3
|
||||||
//= require d3.v3.min
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
$('a[disabled=disabled]').click(function(event){
|
$('a[disabled=disabled]').click(function(event){
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
8774
app/assets/javascripts/d3.v3.js
vendored
8774
app/assets/javascripts/d3.v3.js
vendored
File diff suppressed because it is too large
Load diff
5
app/assets/javascripts/d3.v3.min.js
vendored
5
app/assets/javascripts/d3.v3.min.js
vendored
File diff suppressed because one or more lines are too long
|
|
@ -1,10 +1,12 @@
|
||||||
/*
|
/*
|
||||||
*= require strap-on.css.scss
|
*= require strap-on.css.scss
|
||||||
*= require formtastic-bootstrap
|
*= require formtastic-bootstrap
|
||||||
*= require osem
|
|
||||||
*= require jquery-ui-1.9.2.custom
|
*= require jquery-ui-1.9.2.custom
|
||||||
*= 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
|
||||||
|
*= require osem
|
||||||
|
*= require osem-rating
|
||||||
|
*= require osem-schedule
|
||||||
*= require osem-schedule-print
|
*= require osem-schedule-print
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
18
app/assets/stylesheets/osem-rating.css.scss
Normal file
18
app/assets/stylesheets/osem-rating.css.scss
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
/* Styling for voting on proposals*/
|
||||||
|
.myrating.bright { background-image: image-url("star-bright.png"); }
|
||||||
|
.myrating.glow { background-image: image-url("star-glow.png"); }
|
||||||
|
.othersrating.bright { background-image: image-url("star-bright.png"); }
|
||||||
|
.avgrating.bright { background-image: image-url("star-bright.png"); }
|
||||||
|
.avgrating {
|
||||||
|
background: image-url("star.png") 0 0;
|
||||||
|
width: 26px;
|
||||||
|
height: 26px;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
.myrating, .othersrating {
|
||||||
|
background: image-url("star.png") 0 0;
|
||||||
|
width: 26px;
|
||||||
|
height: 26px;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
57
app/assets/stylesheets/osem-schedule.css.scss
Normal file
57
app/assets/stylesheets/osem-schedule.css.scss
Normal file
|
|
@ -0,0 +1,57 @@
|
||||||
|
#schedule td.event {
|
||||||
|
background-image: linear-gradient(bottom, rgb(247,250,242) 24%, rgb(194,232,190) 97%, rgb(194,232,190) 100%);
|
||||||
|
background-image: -o-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(194,232,190) 97%, rgb(194,232,190) 100%);
|
||||||
|
background-image: -moz-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(194,232,190) 97%, rgb(194,232,190) 100%);
|
||||||
|
background-image: -webkit-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(194,232,190) 97%, rgb(194,232,190) 100%);
|
||||||
|
background-image: -ms-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(194,232,190) 97%, rgb(194,232,190) 100%);
|
||||||
|
|
||||||
|
background-image: -webkit-gradient(
|
||||||
|
linear,
|
||||||
|
left bottom,
|
||||||
|
left top,
|
||||||
|
color-stop(0.24, rgb(247,250,242)),
|
||||||
|
color-stop(0.97, rgb(194,232,190)),
|
||||||
|
color-stop(1, rgb(194,232,190))
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
#schedule td.event:hover
|
||||||
|
{
|
||||||
|
background-image: linear-gradient(bottom, rgb(247,250,242) 24%, rgb(83,171,74) 97%, rgb(83,171,74) 100%);
|
||||||
|
background-image: -o-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(83,171,74) 97%, rgb(83,171,74) 100%);
|
||||||
|
background-image: -moz-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(83,171,74) 97%, rgb(83,171,74) 100%);
|
||||||
|
background-image: -webkit-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(83,171,74) 97%, rgb(83,171,74) 100%);
|
||||||
|
background-image: -ms-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(83,171,74) 97%, rgb(83,171,74) 100%);
|
||||||
|
|
||||||
|
background-image: -webkit-gradient(
|
||||||
|
linear,
|
||||||
|
left bottom,
|
||||||
|
left top,
|
||||||
|
color-stop(0.24, rgb(247,250,242)),
|
||||||
|
color-stop(0.97, rgb(83,171,74)),
|
||||||
|
color-stop(1, rgb(83,171,74))
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
.flexvideo {
|
||||||
|
position: relative;
|
||||||
|
padding-bottom: 56.25%; /* 16:9 */
|
||||||
|
padding-top: 25px;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
.flexvideo iframe {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.schedule-title, .schedule-subtitle, .schedule-speaker, .schedule-track {
|
||||||
|
clear: none;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.schedule-subtitle {
|
||||||
|
color: rgb(185, 74, 72);
|
||||||
|
}
|
||||||
|
|
@ -1,207 +1,29 @@
|
||||||
/* Sticky footer styles
|
html {
|
||||||
-------------------------------------------------- */
|
position: relative;
|
||||||
html,
|
min-height: 100%;
|
||||||
body {
|
|
||||||
height: 100%;
|
|
||||||
/* The html and body elements cannot have any padding or margin. */
|
|
||||||
}
|
}
|
||||||
/* Styling for voting on proposals*/
|
body {
|
||||||
.myrating.bright { background-image: url(../assets/star-bright.png); }
|
/* Margin bottom by footer height */
|
||||||
.myrating.glow { background-image: url(../assets/star-glow.png); }
|
margin-bottom: 60px;
|
||||||
.othersrating.bright { background-image: url(../assets/star-bright.png); }
|
|
||||||
.avgrating.bright { background-image: url(../assets/star-bright.png); }
|
|
||||||
.avgrating {
|
|
||||||
background: url(../assets/star.png) 0 0;
|
|
||||||
width: 26px;
|
|
||||||
height: 26px;
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
.myrating, .othersrating {
|
|
||||||
background: url(../assets/star.png) 0 0;
|
|
||||||
width: 26px;
|
|
||||||
height: 26px;
|
|
||||||
float: left;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Wrapper for page content to push down footer */
|
body > #content {
|
||||||
#wrap {
|
padding: 60px 15px 0;
|
||||||
min-height: 100%;
|
|
||||||
height: auto !important;
|
|
||||||
height: 100%;
|
|
||||||
/* Negative indent footer by it's height */
|
|
||||||
margin: 0 auto -60px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Set the fixed height of the footer here */
|
|
||||||
#push,
|
|
||||||
#footer {
|
#footer {
|
||||||
height: 60px;
|
position: absolute;
|
||||||
}
|
bottom: 0;
|
||||||
#footer {
|
width: 100%;
|
||||||
background-color: #f5f5f5;
|
/* Set the fixed height of the footer here */
|
||||||
|
height: 60px;
|
||||||
|
background-color: #f5f5f5;
|
||||||
}
|
}
|
||||||
|
|
||||||
.container .credit {
|
.container .text-muted {
|
||||||
margin: 20px 0;
|
margin: 20px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Lastly, apply responsive CSS fixes as necessary */
|
#footer > .container {
|
||||||
@media (max-width: 767px) {
|
padding: 15px;
|
||||||
#footer {
|
|
||||||
margin-left: -20px;
|
|
||||||
margin-right: -20px;
|
|
||||||
padding-left: 20px;
|
|
||||||
padding-right: 20px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (min-width: 980px) {
|
|
||||||
body { padding-top: 60px; }
|
|
||||||
}
|
|
||||||
|
|
||||||
.center {
|
|
||||||
margin:0 auto;
|
|
||||||
float:none;
|
|
||||||
}
|
|
||||||
|
|
||||||
textarea {
|
|
||||||
-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
|
|
||||||
-moz-box-sizing: border-box; /* Firefox, other Gecko */
|
|
||||||
box-sizing: border-box; /* Opera/IE 8+ */
|
|
||||||
width:100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.dataTables_length label {
|
|
||||||
float: left;
|
|
||||||
text-align: left;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.dataTables_length select {
|
|
||||||
width: 75px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.dataTables_filter label {
|
|
||||||
float: right;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.dataTables_info {
|
|
||||||
padding-top: 8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.dataTables_paginate {
|
|
||||||
float: right;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.table {
|
|
||||||
clear: both;
|
|
||||||
margin-bottom: 6px !important;
|
|
||||||
max-width: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.table thead .sorting,
|
|
||||||
table.table thead .sorting_asc,
|
|
||||||
table.table thead .sorting_desc,
|
|
||||||
table.table thead .sorting_asc_disabled,
|
|
||||||
table.table thead .sorting_desc_disabled {
|
|
||||||
cursor: pointer;
|
|
||||||
*cursor: hand;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.table thead .sorting { background: url('images/sort_both.png') no-repeat center right; }
|
|
||||||
table.table thead .sorting_asc { background: url('images/sort_asc.png') no-repeat center right; }
|
|
||||||
table.table thead .sorting_desc { background: url('images/sort_desc.png') no-repeat center right; }
|
|
||||||
|
|
||||||
table.table thead .sorting_asc_disabled { background: url('images/sort_asc_disabled.png') no-repeat center right; }
|
|
||||||
table.table thead .sorting_desc_disabled { background: url('images/sort_desc_disabled.png') no-repeat center right; }
|
|
||||||
|
|
||||||
table.dataTable th:active {
|
|
||||||
outline: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Scrolling */
|
|
||||||
div.dataTables_scrollHead table {
|
|
||||||
margin-bottom: 0 !important;
|
|
||||||
border-bottom-left-radius: 0;
|
|
||||||
border-bottom-right-radius: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.dataTables_scrollHead table thead tr:last-child th:first-child,
|
|
||||||
div.dataTables_scrollHead table thead tr:last-child td:first-child {
|
|
||||||
border-bottom-left-radius: 0 !important;
|
|
||||||
border-bottom-right-radius: 0 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.dataTables_scrollBody table {
|
|
||||||
border-top: none;
|
|
||||||
margin-bottom: 0 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.dataTables_scrollBody tbody tr:first-child th,
|
|
||||||
div.dataTables_scrollBody tbody tr:first-child td {
|
|
||||||
border-top: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
div.dataTables_scrollFoot table {
|
|
||||||
border-top: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#schedule td.event {
|
|
||||||
background-image: linear-gradient(bottom, rgb(247,250,242) 24%, rgb(194,232,190) 97%, rgb(194,232,190) 100%);
|
|
||||||
background-image: -o-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(194,232,190) 97%, rgb(194,232,190) 100%);
|
|
||||||
background-image: -moz-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(194,232,190) 97%, rgb(194,232,190) 100%);
|
|
||||||
background-image: -webkit-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(194,232,190) 97%, rgb(194,232,190) 100%);
|
|
||||||
background-image: -ms-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(194,232,190) 97%, rgb(194,232,190) 100%);
|
|
||||||
|
|
||||||
background-image: -webkit-gradient(
|
|
||||||
linear,
|
|
||||||
left bottom,
|
|
||||||
left top,
|
|
||||||
color-stop(0.24, rgb(247,250,242)),
|
|
||||||
color-stop(0.97, rgb(194,232,190)),
|
|
||||||
color-stop(1, rgb(194,232,190))
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
#schedule td.event:hover
|
|
||||||
{
|
|
||||||
background-image: linear-gradient(bottom, rgb(247,250,242) 24%, rgb(83,171,74) 97%, rgb(83,171,74) 100%);
|
|
||||||
background-image: -o-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(83,171,74) 97%, rgb(83,171,74) 100%);
|
|
||||||
background-image: -moz-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(83,171,74) 97%, rgb(83,171,74) 100%);
|
|
||||||
background-image: -webkit-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(83,171,74) 97%, rgb(83,171,74) 100%);
|
|
||||||
background-image: -ms-linear-gradient(bottom, rgb(247,250,242) 24%, rgb(83,171,74) 97%, rgb(83,171,74) 100%);
|
|
||||||
|
|
||||||
background-image: -webkit-gradient(
|
|
||||||
linear,
|
|
||||||
left bottom,
|
|
||||||
left top,
|
|
||||||
color-stop(0.24, rgb(247,250,242)),
|
|
||||||
color-stop(0.97, rgb(83,171,74)),
|
|
||||||
color-stop(1, rgb(83,171,74))
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
.flexvideo {
|
|
||||||
position: relative;
|
|
||||||
padding-bottom: 56.25%; /* 16:9 */
|
|
||||||
padding-top: 25px;
|
|
||||||
height: 0;
|
|
||||||
}
|
|
||||||
.flexvideo iframe {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.schedule-title, .schedule-subtitle, .schedule-speaker, .schedule-track {
|
|
||||||
clear: none;
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.schedule-subtitle {
|
|
||||||
color: rgb(185, 74, 72);
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,471 +0,0 @@
|
||||||
/***
|
|
||||||
Spectrum Colorpicker v1.0.1
|
|
||||||
https://github.com/bgrins/spectrum
|
|
||||||
Author: Brian Grinstead
|
|
||||||
License: MIT
|
|
||||||
***/
|
|
||||||
|
|
||||||
.sp-container {
|
|
||||||
position:absolute;
|
|
||||||
top:0;
|
|
||||||
left:0;
|
|
||||||
display:inline-block;
|
|
||||||
*display: inline;
|
|
||||||
*zoom: 1;
|
|
||||||
z-index: 2147483647;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
.sp-container.sp-flat {
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* http://ansciath.tumblr.com/post/7347495869/css-aspect-ratio */
|
|
||||||
.sp-top {
|
|
||||||
position:relative;
|
|
||||||
width: 100%;
|
|
||||||
display:inline-block;
|
|
||||||
}
|
|
||||||
.sp-top-inner {
|
|
||||||
position:absolute;
|
|
||||||
top:0;
|
|
||||||
left:0;
|
|
||||||
bottom:0;
|
|
||||||
right:0;
|
|
||||||
}
|
|
||||||
.sp-color {
|
|
||||||
position: absolute;
|
|
||||||
top:0;
|
|
||||||
left:0;
|
|
||||||
bottom:0;
|
|
||||||
right:20%;
|
|
||||||
}
|
|
||||||
.sp-hue {
|
|
||||||
position: absolute;
|
|
||||||
top:0;
|
|
||||||
right:0;
|
|
||||||
bottom:0;
|
|
||||||
left:84%;
|
|
||||||
height: 100%;
|
|
||||||
}
|
|
||||||
.sp-fill {
|
|
||||||
padding-top: 80%;
|
|
||||||
}
|
|
||||||
.sp-sat, .sp-val {
|
|
||||||
position: absolute;
|
|
||||||
top:0;
|
|
||||||
left:0;
|
|
||||||
right:0;
|
|
||||||
bottom:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-alpha-enabled .sp-top
|
|
||||||
{
|
|
||||||
margin-bottom: 18px;
|
|
||||||
}
|
|
||||||
.sp-alpha-enabled .sp-alpha
|
|
||||||
{
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-alpha-handle
|
|
||||||
{
|
|
||||||
position:absolute;
|
|
||||||
top:-4px;
|
|
||||||
bottom: -4px;
|
|
||||||
width: 6px;
|
|
||||||
left: 50%;
|
|
||||||
cursor: pointer;
|
|
||||||
border: 1px solid black;
|
|
||||||
background: white;
|
|
||||||
opacity: .8;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-alpha
|
|
||||||
{
|
|
||||||
display: none;
|
|
||||||
position: absolute;
|
|
||||||
bottom: -14px;
|
|
||||||
right: 0;
|
|
||||||
left: 0;
|
|
||||||
height: 8px;
|
|
||||||
}
|
|
||||||
.sp-alpha-inner{
|
|
||||||
border: solid 1px #333;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Don't allow text selection */
|
|
||||||
.sp-container, .sp-replacer, .sp-preview, .sp-dragger, .sp-slider, .sp-alpha, .sp-alpha-handle, .sp-container.sp-dragging .sp-input, .sp-container button {
|
|
||||||
-webkit-user-select:none;
|
|
||||||
-moz-user-select: -moz-none;
|
|
||||||
-o-user-select:none;
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-container.sp-input-disabled .sp-input-container {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
.sp-container.sp-buttons-disabled .sp-button-container {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
.sp-palette-only .sp-picker-container {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
.sp-palette-disabled .sp-palette-container {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-initial-disabled .sp-initial {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* Gradients for hue, saturation and value instead of images. Not pretty... but it works */
|
|
||||||
.sp-sat {
|
|
||||||
background-image: -webkit-gradient(linear, 0 0, 100% 0, from(#FFF), to(rgba(204, 154, 129, 0)));
|
|
||||||
background-image: -webkit-linear-gradient(left, #FFF, rgba(204, 154, 129, 0));
|
|
||||||
background-image: -moz-linear-gradient(left, #fff, rgba(204, 154, 129, 0));
|
|
||||||
background-image: -o-linear-gradient(left, #fff, rgba(204, 154, 129, 0));
|
|
||||||
background-image: -ms-linear-gradient(left, #fff, rgba(204, 154, 129, 0));
|
|
||||||
background-image: linear-gradient(to right, #fff, rgba(204, 154, 129, 0));
|
|
||||||
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr=#FFFFFFFF, endColorstr=#00CC9A81)";
|
|
||||||
filter : progid:DXImageTransform.Microsoft.gradient(GradientType = 1, startColorstr='#FFFFFFFF', endColorstr='#00CC9A81');
|
|
||||||
}
|
|
||||||
.sp-val {
|
|
||||||
background-image: -webkit-gradient(linear, 0 100%, 0 0, from(#000000), to(rgba(204, 154, 129, 0)));
|
|
||||||
background-image: -webkit-linear-gradient(bottom, #000000, rgba(204, 154, 129, 0));
|
|
||||||
background-image: -moz-linear-gradient(bottom, #000, rgba(204, 154, 129, 0));
|
|
||||||
background-image: -o-linear-gradient(bottom, #000, rgba(204, 154, 129, 0));
|
|
||||||
background-image: -ms-linear-gradient(bottom, #000, rgba(204, 154, 129, 0));
|
|
||||||
background-image: linear-gradient(to top, #000, rgba(204, 154, 129, 0));
|
|
||||||
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00CC9A81, endColorstr=#FF000000)";
|
|
||||||
filter : progid:DXImageTransform.Microsoft.gradient(startColorstr='#00CC9A81', endColorstr='#FF000000');
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-hue {
|
|
||||||
background: -moz-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
|
|
||||||
background: -ms-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
|
|
||||||
background: -o-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
|
|
||||||
background: -webkit-gradient(linear, left top, left bottom, from(#ff0000), color-stop(0.17, #ffff00), color-stop(0.33, #00ff00), color-stop(0.5, #00ffff), color-stop(0.67, #0000ff), color-stop(0.83, #ff00ff), to(#ff0000));
|
|
||||||
background: -webkit-linear-gradient(top, #ff0000 0%, #ffff00 17%, #00ff00 33%, #00ffff 50%, #0000ff 67%, #ff00ff 83%, #ff0000 100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* IE filters do not support multiple color stops.
|
|
||||||
Generate 6 divs, line them up, and do two color gradients for each.
|
|
||||||
Yes, really.
|
|
||||||
*/
|
|
||||||
|
|
||||||
.sp-1 {
|
|
||||||
height:17%;
|
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000', endColorstr='#ffff00');
|
|
||||||
}
|
|
||||||
.sp-2 {
|
|
||||||
height:16%;
|
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffff00', endColorstr='#00ff00');
|
|
||||||
}
|
|
||||||
.sp-3 {
|
|
||||||
height:17%;
|
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ff00', endColorstr='#00ffff');
|
|
||||||
}
|
|
||||||
.sp-4 {
|
|
||||||
height:17%;
|
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffff', endColorstr='#0000ff');
|
|
||||||
}
|
|
||||||
.sp-5 {
|
|
||||||
height:16%;
|
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0000ff', endColorstr='#ff00ff');
|
|
||||||
}
|
|
||||||
.sp-6 {
|
|
||||||
height:17%;
|
|
||||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff00ff', endColorstr='#ff0000');
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Clearfix hack */
|
|
||||||
.sp-cf:before, .sp-cf:after { content: ""; display: table; }
|
|
||||||
.sp-cf:after { clear: both; }
|
|
||||||
.sp-cf { *zoom: 1; }
|
|
||||||
|
|
||||||
/* Mobile devices, make hue slider bigger so it is easier to slide */
|
|
||||||
@media (max-device-width: 480px) {
|
|
||||||
.sp-color { right: 40%; }
|
|
||||||
.sp-hue { left: 63%; }
|
|
||||||
.sp-fill { padding-top: 60%; }
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-dragger {
|
|
||||||
border-radius: 5px;
|
|
||||||
height: 5px;
|
|
||||||
width: 5px;
|
|
||||||
border: 1px solid #fff;
|
|
||||||
background: #000;
|
|
||||||
cursor: pointer;
|
|
||||||
position:absolute;
|
|
||||||
top:0;
|
|
||||||
left: 0;
|
|
||||||
}
|
|
||||||
.sp-slider {
|
|
||||||
position: absolute;
|
|
||||||
top:0;
|
|
||||||
cursor:pointer;
|
|
||||||
height: 3px;
|
|
||||||
left: -1px;
|
|
||||||
right: -1px;
|
|
||||||
border: 1px solid #000;
|
|
||||||
background: white;
|
|
||||||
opacity: .8;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Basic display options (colors, fonts, global widths) */
|
|
||||||
.sp-container {
|
|
||||||
border-radius: 0;
|
|
||||||
background-color: #ECECEC;
|
|
||||||
border: solid 1px #f0c49B;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
.sp-container, .sp-container button, .sp-container input, .sp-color, .sp-hue
|
|
||||||
{
|
|
||||||
font: normal 12px "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Verdana, sans-serif;
|
|
||||||
-webkit-box-sizing: border-box;
|
|
||||||
-moz-box-sizing: border-box;
|
|
||||||
-ms-box-sizing: border-box;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
.sp-top
|
|
||||||
{
|
|
||||||
margin-bottom: 3px;
|
|
||||||
}
|
|
||||||
.sp-color, .sp-hue
|
|
||||||
{
|
|
||||||
border: solid 1px #666;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Input */
|
|
||||||
.sp-input-container {
|
|
||||||
float:right;
|
|
||||||
width: 100px;
|
|
||||||
margin-bottom: 4px;
|
|
||||||
}
|
|
||||||
.sp-initial-disabled .sp-input-container {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
.sp-input {
|
|
||||||
font-size: 12px !important;
|
|
||||||
border: 1px inset;
|
|
||||||
padding: 4px 5px;
|
|
||||||
margin: 0;
|
|
||||||
width: 100%;
|
|
||||||
background:transparent;
|
|
||||||
border-radius: 3px;
|
|
||||||
color: #222;
|
|
||||||
}
|
|
||||||
.sp-input:focus {
|
|
||||||
border: 1px solid orange;
|
|
||||||
}
|
|
||||||
.sp-input.sp-validation-error
|
|
||||||
{
|
|
||||||
border: 1px solid red;
|
|
||||||
background: #fdd;
|
|
||||||
}
|
|
||||||
.sp-picker-container , .sp-palette-container
|
|
||||||
{
|
|
||||||
float:left;
|
|
||||||
position: relative;
|
|
||||||
padding: 10px;
|
|
||||||
padding-bottom: 300px;
|
|
||||||
margin-bottom: -290px;
|
|
||||||
}
|
|
||||||
.sp-picker-container
|
|
||||||
{
|
|
||||||
width: 172px;
|
|
||||||
border-left: solid 1px #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Palettes */
|
|
||||||
.sp-palette-container
|
|
||||||
{
|
|
||||||
border-right: solid 1px #ccc;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-palette .sp-thumb-el {
|
|
||||||
display: block;
|
|
||||||
position:relative;
|
|
||||||
float:left;
|
|
||||||
width: 24px;
|
|
||||||
height: 15px;
|
|
||||||
margin: 3px;
|
|
||||||
cursor: pointer;
|
|
||||||
border:solid 2px transparent;
|
|
||||||
}
|
|
||||||
.sp-palette .sp-thumb-el:hover, .sp-palette .sp-thumb-el.sp-thumb-active {
|
|
||||||
border-color: orange;
|
|
||||||
}
|
|
||||||
.sp-thumb-el
|
|
||||||
{
|
|
||||||
position:relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Initial */
|
|
||||||
.sp-initial
|
|
||||||
{
|
|
||||||
float: left;
|
|
||||||
border: solid 1px #333;
|
|
||||||
}
|
|
||||||
.sp-initial span {
|
|
||||||
width: 30px;
|
|
||||||
height: 25px;
|
|
||||||
border:none;
|
|
||||||
display:block;
|
|
||||||
float:left;
|
|
||||||
margin:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Buttons */
|
|
||||||
.sp-button-container {
|
|
||||||
float: right;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Replacer (the little preview div that shows up instead of the <input>) */
|
|
||||||
.sp-replacer {
|
|
||||||
margin:0;
|
|
||||||
overflow:hidden;
|
|
||||||
cursor:pointer;
|
|
||||||
padding: 4px;
|
|
||||||
display:inline-block;
|
|
||||||
*zoom: 1;
|
|
||||||
*display: inline;
|
|
||||||
border: solid 1px #91765d;
|
|
||||||
background: #eee;
|
|
||||||
color: #333;
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
.sp-replacer:hover, .sp-replacer.sp-active {
|
|
||||||
border-color: #F0C49B;
|
|
||||||
color: #111;
|
|
||||||
}
|
|
||||||
.sp-replacer.sp-disabled {
|
|
||||||
cursor:default;
|
|
||||||
border-color: silver;
|
|
||||||
color: silver;
|
|
||||||
}
|
|
||||||
.sp-dd {
|
|
||||||
padding: 2px 0;
|
|
||||||
height: 16px;
|
|
||||||
line-height: 16px;
|
|
||||||
float:left;
|
|
||||||
font-size:10px;
|
|
||||||
}
|
|
||||||
.sp-preview
|
|
||||||
{
|
|
||||||
position:relative;
|
|
||||||
width:25px;
|
|
||||||
height: 20px;
|
|
||||||
border: solid 1px #222;
|
|
||||||
margin-right: 5px;
|
|
||||||
float:left;
|
|
||||||
z-index: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-palette
|
|
||||||
{
|
|
||||||
*width: 220px;
|
|
||||||
max-width: 220px;
|
|
||||||
}
|
|
||||||
.sp-palette .sp-thumb-el
|
|
||||||
{
|
|
||||||
width:16px;
|
|
||||||
height: 16px;
|
|
||||||
margin:2px 1px;
|
|
||||||
border: solid 1px #d0d0d0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-container
|
|
||||||
{
|
|
||||||
padding-bottom:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* Buttons: http://hellohappy.org/css3-buttons/ */
|
|
||||||
.sp-container button {
|
|
||||||
background-color: #eeeeee;
|
|
||||||
background-image: -webkit-linear-gradient(top, #eeeeee, #cccccc);
|
|
||||||
background-image: -moz-linear-gradient(top, #eeeeee, #cccccc);
|
|
||||||
background-image: -ms-linear-gradient(top, #eeeeee, #cccccc);
|
|
||||||
background-image: -o-linear-gradient(top, #eeeeee, #cccccc);
|
|
||||||
background-image: -ms-linear-gradient(top, #eeeeee, #cccccc);
|
|
||||||
background-image: linear-gradient(to bottom, #eeeeee, #cccccc);
|
|
||||||
border: 1px solid #ccc;
|
|
||||||
border-bottom: 1px solid #bbb;
|
|
||||||
border-radius: 3px;
|
|
||||||
color: #333;
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: 1;
|
|
||||||
padding: 5px 4px;
|
|
||||||
text-align: center;
|
|
||||||
text-shadow: 0 1px 0 #eee;
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
.sp-container button:hover {
|
|
||||||
background-color: #dddddd;
|
|
||||||
background-image: -webkit-linear-gradient(top, #dddddd, #bbbbbb);
|
|
||||||
background-image: -moz-linear-gradient(top, #dddddd, #bbbbbb);
|
|
||||||
background-image: -ms-linear-gradient(top, #dddddd, #bbbbbb);
|
|
||||||
background-image: -o-linear-gradient(top, #dddddd, #bbbbbb);
|
|
||||||
background-image: -ms-linear-gradient(top, #dddddd, #bbbbbb);
|
|
||||||
background-image: linear-gradient(to bottom, #dddddd, #bbbbbb);
|
|
||||||
border: 1px solid #bbb;
|
|
||||||
border-bottom: 1px solid #999;
|
|
||||||
cursor: pointer;
|
|
||||||
text-shadow: 0 1px 0 #ddd;
|
|
||||||
}
|
|
||||||
.sp-container button:active {
|
|
||||||
border: 1px solid #aaa;
|
|
||||||
border-bottom: 1px solid #888;
|
|
||||||
-webkit-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
|
|
||||||
-moz-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
|
|
||||||
-ms-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
|
|
||||||
-o-box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
|
|
||||||
box-shadow: inset 0 0 5px 2px #aaaaaa, 0 1px 0 0 #eeeeee;
|
|
||||||
}
|
|
||||||
.sp-cancel
|
|
||||||
{
|
|
||||||
font-size: 11px;
|
|
||||||
color: #d93f3f !important;
|
|
||||||
margin:0;
|
|
||||||
padding:2px;
|
|
||||||
margin-right: 5px;
|
|
||||||
vertical-align: middle;
|
|
||||||
text-decoration:none;
|
|
||||||
|
|
||||||
}
|
|
||||||
.sp-cancel:hover
|
|
||||||
{
|
|
||||||
color: #d93f3f !important;
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.sp-palette span:hover, .sp-palette span.sp-thumb-active
|
|
||||||
{
|
|
||||||
border-color: #000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-preview, .sp-alpha, .sp-thumb-el
|
|
||||||
{
|
|
||||||
position:relative;
|
|
||||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==);
|
|
||||||
}
|
|
||||||
.sp-preview-inner, .sp-alpha-inner, .sp-thumb-inner
|
|
||||||
{
|
|
||||||
display:block;
|
|
||||||
position:absolute;
|
|
||||||
top:0;left:0;bottom:0;right:0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-palette .sp-thumb-light.sp-thumb-active .sp-thumb-inner
|
|
||||||
{
|
|
||||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIVJREFUeNpiYBhsgJFMffxAXABlN5JruT4Q3wfi/0DsT64h8UD8HmpIPCWG/KemIfOJCUB+Aoacx6EGBZyHBqI+WsDCwuQ9mhxeg2A210Ntfo8klk9sOMijaURm7yc1UP2RNCMbKE9ODK1HM6iegYLkfx8pligC9lCD7KmRof0ZhjQACDAAceovrtpVBRkAAAAASUVORK5CYII=);
|
|
||||||
}
|
|
||||||
|
|
||||||
.sp-palette .sp-thumb-dark.sp-thumb-active .sp-thumb-inner
|
|
||||||
{
|
|
||||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAAMdJREFUOE+tkgsNwzAMRMugEAahEAahEAZhEAqlEAZhEAohEAYh81X2dIm8fKpEspLGvudPOsUYpxE2BIJCroJmEW9qJ+MKaBFhEMNabSy9oIcIPwrB+afvAUFoK4H0tMaQ3XtlrggDhOVVMuT4E5MMG0FBbCEYzjYT7OxLEvIHQLY2zWwQ3D+9luyOQTfKDiFD3iUIfPk8VqrKjgAiSfGFPecrg6HN6m/iBcwiDAo7WiBeawa+Kwh7tZoSCGLMqwlSAzVDhoK+6vH4G0P5wdkAAAAASUVORK5CYII=);
|
|
||||||
}
|
|
||||||
|
|
@ -1,15 +1,8 @@
|
||||||
$navbarBackground: #299a0b;
|
$navbar-default-bg: #299a0b;
|
||||||
$navbarBackgroundHighlight: #299a0b;
|
$navbar-default-link-active-bg: #DFE0DF;
|
||||||
$navbarBorder: 1px solid #d4d4d4;
|
$navbar-default-border: 1px solid #d4d4d4;
|
||||||
$navbarText: #ffffff;
|
$navbar-default-color: #ffffff;
|
||||||
$navbarLinkColor: white;
|
$navbar-default-link-color: #ffffff;
|
||||||
$navbarLinkColorHover: black;
|
$navbar-default-link-hover-color: #000000;
|
||||||
$navbarLinkBackgroundActive: #DFE0DF;
|
|
||||||
|
|
||||||
@import "bootstrap";
|
@import "bootstrap";
|
||||||
@import "bootstrap-responsive";
|
|
||||||
|
|
||||||
/* Set to navbarBackgroundHighlight otherwise */
|
|
||||||
.navbar .nav > li > a {
|
|
||||||
text-shadow: none;
|
|
||||||
}
|
|
||||||
|
|
@ -1,14 +1,13 @@
|
||||||
.container-fluid
|
.row-fluid
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= semantic_form_for(@cfp, :url => admin_conference_cfp_update_path(@conference.short_title),:html => {:multipart => true}) do |f|
|
||||||
= semantic_form_for(@cfp, :url => admin_conference_cfp_update_path(@conference.short_title),:html => {:multipart => true}) do |f|
|
= f.input :start_date, :as => :string, :input_html => { :id => "conference-start-datepicker", :readonly => "readonly" }
|
||||||
= f.input :start_date, :as => :string, :input_html => { :id => "conference-start-datepicker", :readonly => "readonly" }
|
= f.input :end_date, :as => :string, :input_html => { :id => "conference-end-datepicker", :readonly => "readonly" }
|
||||||
= f.input :end_date, :as => :string, :input_html => { :id => "conference-end-datepicker", :readonly => "readonly" }
|
= f.input :hard_deadline, :as => :string, :input_html => { :id => "cfp-hard-datepicker", :readonly => "readonly" }
|
||||||
= f.input :hard_deadline, :as => :string, :input_html => { :id => "cfp-hard-datepicker", :readonly => "readonly" }
|
= f.input :description, :hint => "Welcome text for the Call for Papers"
|
||||||
= f.input :description, :hint => "Welcome text for the Call for Papers"
|
= f.input :schedule_changes
|
||||||
= f.input :schedule_changes
|
= f.input :rating, :hint => "Enter the number of different rating levels you want to have for voting on proposals. Enter 0 if you do not want to vote on proposals."
|
||||||
= f.input :rating, :hint => "Enter the number of different rating levels you want to have for voting on proposals. Enter 0 if you do not want to vote on proposals."
|
= f.input :rating_desc, :label => "Rating Description", :hint => "Enter comments about voting process.", :input_html => {:value => "1 is for 'I don't like this proposal',\n2 is for 'I am ok with this proposal.',\n3 is for 'I love this proposal!'", :rows => 5, :class => "span6"}
|
||||||
= f.input :rating_desc, :label => "Rating Description", :hint => "Enter comments about voting process.", :input_html => {:value => "1 is for 'I don't like this proposal',\n2 is for 'I am ok with this proposal.',\n3 is for 'I love this proposal!'", :rows => 5, :class => "span6"}
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
|
||||||
|
|
@ -1,29 +1,26 @@
|
||||||
.well.sidebar-nav
|
.well.sidebar-nav
|
||||||
%ul.nav.nav-list
|
%ul.nav.nav-pills.nav-stacked
|
||||||
%li.nav-header
|
%li{:class=> active_nav_li(admin_conference_path(@conference.short_title))}
|
||||||
=@conference.short_title
|
= link_to "Conference", admin_conference_path(@conference.short_title)
|
||||||
Settings
|
%li{:class=> active_nav_li(admin_conference_venue_info_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_path(@conference.short_title))}
|
= link_to "Venue", admin_conference_venue_info_path(@conference.short_title)
|
||||||
= link_to "Conference", admin_conference_path(@conference.short_title)
|
%li{:class=> active_nav_li(admin_conference_cfp_info_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_venue_info_path(@conference.short_title))}
|
= link_to "Call for Papers", admin_conference_cfp_info_path(@conference.short_title)
|
||||||
= link_to "Venue", admin_conference_venue_info_path(@conference.short_title)
|
%li{:class=> active_nav_li(admin_conference_rooms_list_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_cfp_info_path(@conference.short_title))}
|
= link_to "Rooms", admin_conference_rooms_list_path(@conference.short_title)
|
||||||
= link_to "Call for Papers", admin_conference_cfp_info_path(@conference.short_title)
|
%li{:class=> active_nav_li(admin_conference_tracks_list_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_rooms_list_path(@conference.short_title))}
|
= link_to "Tracks", admin_conference_tracks_list_path(@conference.short_title)
|
||||||
= link_to "Rooms", admin_conference_rooms_list_path(@conference.short_title)
|
%li{:class=> active_nav_li(admin_conference_eventtype_list_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_tracks_list_path(@conference.short_title))}
|
= link_to "Event Types", admin_conference_eventtype_list_path(@conference.short_title)
|
||||||
= link_to "Tracks", admin_conference_tracks_list_path(@conference.short_title)
|
%li{:class=> active_nav_li(admin_conference_difficulty_levels_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_eventtype_list_path(@conference.short_title))}
|
= link_to "Difficulty Levels", admin_conference_difficulty_levels_path(@conference.short_title)
|
||||||
= link_to "Event Types", admin_conference_eventtype_list_path(@conference.short_title)
|
%li{:class=> active_nav_li(admin_conference_social_events_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_difficulty_levels_path(@conference.short_title))}
|
= link_to "Social Events", admin_conference_social_events_path(@conference.short_title)
|
||||||
= link_to "Difficulty Levels", admin_conference_difficulty_levels_path(@conference.short_title)
|
%li{:class=> active_nav_li(admin_conference_supporter_levels_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_social_events_path(@conference.short_title))}
|
= link_to "Supporter Levels", admin_conference_supporter_levels_path(@conference.short_title)
|
||||||
= link_to "Social Events", admin_conference_social_events_path(@conference.short_title)
|
%li{:class=> active_nav_li(admin_conference_email_settings_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_supporter_levels_path(@conference.short_title))}
|
= link_to "Emails", admin_conference_email_settings_path(@conference.short_title)
|
||||||
= link_to "Supporter Levels", admin_conference_supporter_levels_path(@conference.short_title)
|
%li{:class=> active_nav_li(admin_conference_questions_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_email_settings_path(@conference.short_title))}
|
= link_to "Questions", admin_conference_questions_path(@conference.short_title)
|
||||||
= link_to "Emails", admin_conference_email_settings_path(@conference.short_title)
|
%li{:class=> active_nav_li(admin_conference_volunteers_info_path(@conference.short_title))}
|
||||||
%li{:class=> active_nav_li(admin_conference_questions_path(@conference.short_title))}
|
= link_to "Volunteers", admin_conference_volunteers_info_path(@conference.short_title)
|
||||||
= link_to "Questions", admin_conference_questions_path(@conference.short_title)
|
|
||||||
%li{:class=> active_nav_li(admin_conference_volunteers_info_path(@conference.short_title))}
|
|
||||||
= link_to "Volunteers", admin_conference_volunteers_info_path(@conference.short_title)
|
|
||||||
|
|
|
||||||
|
|
@ -1,20 +1,19 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= semantic_form_for(@conference, :url => admin_conference_path(@conference.short_title),:html => {:multipart => true}) do |f|
|
||||||
= semantic_form_for(@conference, :url => admin_conference_path(@conference.short_title),:html => {:multipart => true}) do |f|
|
= f.input :title, :hint => "The full name of the conference, such as 'OpenSUSE Conference 2013'"
|
||||||
= f.input :title, :hint => "The full name of the conference, such as 'OpenSUSE Conference 2013'"
|
= f.input :short_title, :hint => "A short title, such as 'osc2013', to be used in URLs"
|
||||||
= f.input :short_title, :hint => "A short title, such as 'osc2013', to be used in URLs"
|
= f.input :social_tag, :hint => "The hashtag you'll use on Twitter and Google+. Don't include the '#' sign!'"
|
||||||
= f.input :social_tag, :hint => "The hashtag you'll use on Twitter and Google+. Don't include the '#' sign!'"
|
= 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 :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 :timezone, :as => :time_zone, :hint => "The conference time zone"
|
||||||
= f.input :timezone, :as => :time_zone, :hint => "The conference time zone"
|
= f.input :start_date, :as => :string, :input_html => { :id => "conference-start-datepicker", :readonly => "readonly" }
|
||||||
= f.input :start_date, :as => :string, :input_html => { :id => "conference-start-datepicker", :readonly => "readonly" }
|
= f.input :end_date, :as => :string, :input_html => { :id => "conference-end-datepicker", :readonly => "readonly" }
|
||||||
= f.input :end_date, :as => :string, :input_html => { :id => "conference-end-datepicker", :readonly => "readonly" }
|
= f.input :registration_start_date, :as => :string, :input_html => { :id => "conference-reg-start-datepicker", :readonly => "readonly" }
|
||||||
= f.input :registration_start_date, :as => :string, :input_html => { :id => "conference-reg-start-datepicker", :readonly => "readonly" }
|
= f.input :registration_end_date, :as => :string, :input_html => { :id => "conference-reg-end-datepicker", :readonly => "readonly" }
|
||||||
= f.input :registration_end_date, :as => :string, :input_html => { :id => "conference-reg-end-datepicker", :readonly => "readonly" }
|
- if !@conference.logo.blank?
|
||||||
- if !@conference.logo.blank?
|
= image_tag @conference.logo(:thumb)
|
||||||
= image_tag @conference.logo(:thumb)
|
= f.input :logo, :label => "Conference Logo", :hint => "This will be displayed on the front page."
|
||||||
= f.input :logo, :label => "Conference Logo", :hint => "This will be displayed on the front page."
|
= f.input :html_export_path, :hint => "The path for static HTML exports"
|
||||||
= f.input :html_export_path, :hint => "The path for static HTML exports"
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,8 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.span3
|
||||||
.span3
|
= render 'admin/conference/sidebar', :activated => "Diet"
|
||||||
= render 'admin/conference/sidebar', :activated => "Diet"
|
.span9
|
||||||
.span9
|
= semantic_form_for(@conference, :url => admin_conference_dietary_update_path(@conference.short_title)) do |f|
|
||||||
= semantic_form_for(@conference, :url => admin_conference_dietary_update_path(@conference.short_title)) do |f|
|
= f.input :use_dietary_choices, :label => false
|
||||||
= f.input :use_dietary_choices, :label => false
|
= dynamic_association :dietary_choices, "Dietary Choices", f
|
||||||
= dynamic_association :dietary_choices, "Dietary Choices", f
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
@ -1,9 +1,8 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= semantic_form_for(@conference, :url => admin_conference_difficulty_levels_path(@conference.short_title)) do |f|
|
||||||
= semantic_form_for(@conference, :url => admin_conference_difficulty_levels_path(@conference.short_title)) do |f|
|
= f.input :use_difficulty_levels, :label => false
|
||||||
= f.input :use_difficulty_levels, :label => false
|
= dynamic_association :difficulty_levels, "Difficulty_Levels", f
|
||||||
= dynamic_association :difficulty_levels, "Difficulty_Levels", f
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
|
||||||
|
|
@ -1,45 +1,43 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= link_to "Template Help", "#", :id => "template-help-link"
|
||||||
= link_to "Template Help", "#", :id => "template-help-link"
|
#template-help
|
||||||
#template-help
|
Valid attributes:
|
||||||
Valid attributes:
|
%table.table
|
||||||
%table.table
|
%tr
|
||||||
%tr
|
%td {email}
|
||||||
%td {email}
|
%td The user's email address
|
||||||
%td The user's email address
|
%tr
|
||||||
%tr
|
%td {name}
|
||||||
%td {name}
|
%td The user's full name
|
||||||
%td The user's full name
|
%tr
|
||||||
%tr
|
%td {conference}
|
||||||
%td {conference}
|
%td The full conference title
|
||||||
%td The full conference title
|
%tr
|
||||||
%tr
|
%td {proposalslink}
|
||||||
%td {proposalslink}
|
%td A link to the user's proposal page
|
||||||
%td A link to the user's proposal page
|
%tr
|
||||||
%tr
|
%td {registrationlink}
|
||||||
%td {registrationlink}
|
%td A link to the registration page
|
||||||
%td A link to the registration page
|
%tr
|
||||||
%tr
|
%td {eventtitle}
|
||||||
%td {eventtitle}
|
%td The title of an accepted or rejected proposal
|
||||||
%td The title of an accepted or rejected proposal
|
= semantic_form_for(@settings, :url => admin_conference_email_settings_path(@conference.short_title),:html => {:multipart => true}) do |f|
|
||||||
|
= f.input :send_on_registration, :label => false, :hint => "Send an email when the user registers for the conference?"
|
||||||
= semantic_form_for(@settings, :url => admin_conference_email_settings_path(@conference.short_title),:html => {:multipart => true}) do |f|
|
= f.input :registration_subject
|
||||||
= f.input :send_on_registration, :label => false, :hint => "Send an email when the user registers for the conference?"
|
= f.input :registration_email_template, :input_html => { :rows => 10, :cols => 20}
|
||||||
= f.input :registration_subject
|
= f.input :send_on_accepted, :label => false, :hint => "Send an email when the proposal is accepted?"
|
||||||
= f.input :registration_email_template, :input_html => { :rows => 10, :cols => 20}
|
= f.input :accepted_subject
|
||||||
= f.input :send_on_accepted, :label => false, :hint => "Send an email when the proposal is accepted?"
|
= f.input :accepted_email_template, :input_html => { :rows => 10, :cols => 20 }
|
||||||
= f.input :accepted_subject
|
= f.input :send_on_rejected, :label => false, :hint => "Send an email when the proposal is rejected?"
|
||||||
= f.input :accepted_email_template, :input_html => { :rows => 10, :cols => 20 }
|
= f.input :rejected_subject
|
||||||
= f.input :send_on_rejected, :label => false, :hint => "Send an email when the proposal is rejected?"
|
= f.input :rejected_email_template, :input_html => { :rows => 10, :cols => 20 }
|
||||||
= f.input :rejected_subject
|
= f.input :send_on_confirmed_without_registration, :label => false, :hint => "Send an email when a user has a confirmed proposal, but isn't yet registered?"
|
||||||
= f.input :rejected_email_template, :input_html => { :rows => 10, :cols => 20 }
|
= f.input :confirmed_without_registration_subject
|
||||||
= f.input :send_on_confirmed_without_registration, :label => false, :hint => "Send an email when a user has a confirmed proposal, but isn't yet registered?"
|
= f.input :confirmed_email_template, :input_html => { :rows => 10, :cols => 20 }
|
||||||
= f.input :confirmed_without_registration_subject
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.input :confirmed_email_template, :input_html => { :rows => 10, :cols => 20 }
|
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
||||||
:javascript
|
:javascript
|
||||||
$(document).ready( function() {
|
$(document).ready( function() {
|
||||||
|
|
|
||||||
|
|
@ -1,45 +1,42 @@
|
||||||
.row-fluid
|
.row
|
||||||
.row
|
.col-md-12
|
||||||
.span12
|
= link_to "Show Events Stats", "#", :id => "events-stats-link", :class => "btn btn-default pull-right"
|
||||||
%h5{:style=>"text-align: right"}
|
.clearfix
|
||||||
= link_to "Events Stats", "#", :id => "events-stats-link", :class => "btn btn-success"
|
#events-stats
|
||||||
|
.span12
|
||||||
#events-stats
|
%table.table.table-bordered.table-striped
|
||||||
.span12
|
%thead
|
||||||
%table.table.table-bordered.table-striped
|
%th
|
||||||
%thead
|
- @mystates.each do |state|
|
||||||
%th
|
%th{:colspan => 2, :style => "text-align:center"}
|
||||||
- @mystates.each do |state|
|
State "#{state.name}"
|
||||||
%th{:colspan => 2, :style => "text-align:center"}
|
%th{:colspan => 2, :style => "text-align:center"}
|
||||||
State "#{state.name}"
|
Total
|
||||||
%th{:colspan => 2, :style => "text-align:center"}
|
%br
|
||||||
Total
|
No & Time
|
||||||
%br
|
|
||||||
No & Time
|
|
||||||
|
|
||||||
%tr
|
|
||||||
%td
|
|
||||||
%b Total
|
|
||||||
- @mystates.each do |mystate|
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
= @eventstats["#{mystate.name}"]["count"]
|
|
||||||
%td
|
|
||||||
%b
|
|
||||||
#{@eventstats["#{mystate.name}"]["length"] / 60} h #{@eventstats["#{mystate.name}"]["length"] - @eventstats["#{mystate.name}"]["length"] / 60 * 60} m
|
|
||||||
%td
|
|
||||||
%b= @events.count
|
|
||||||
%td
|
|
||||||
%b= show_time(@eventstats["totallength"])
|
|
||||||
|
|
||||||
- @mytypes.each do |mytype|
|
|
||||||
%tr
|
%tr
|
||||||
%td= "#{mytype.title} (#{show_time(mytype.length)})"
|
%td
|
||||||
- @mystates.each do |mystate|
|
%b Total
|
||||||
%td= @eventstats["#{mytype.title}"]["#{mystate.name}"]["type_state_count"] unless @eventstats["#{mytype.title}"]["#{mystate.name}"] == nil
|
- @mystates.each do |mystate|
|
||||||
%td= show_time(@eventstats["#{mytype.title}"]["#{mystate.name}"]["type_state_length"]) unless @eventstats["#{mytype.title}"]["#{mystate.name}"] == nil
|
%td
|
||||||
%td= @eventstats["#{mytype.title}"]["count"]
|
%b
|
||||||
%td= show_time(@eventstats["#{mytype.title}"]["length"])
|
= @eventstats["#{mystate.name}"]["count"]
|
||||||
|
%td
|
||||||
|
%b
|
||||||
|
#{@eventstats["#{mystate.name}"]["length"] / 60} h #{@eventstats["#{mystate.name}"]["length"] - @eventstats["#{mystate.name}"]["length"] / 60 * 60} m
|
||||||
|
%td
|
||||||
|
%b= @events.count
|
||||||
|
%td
|
||||||
|
%b= show_time(@eventstats["totallength"])
|
||||||
|
|
||||||
|
- @mytypes.each do |mytype|
|
||||||
|
%tr
|
||||||
|
%td= "#{mytype.title} (#{show_time(mytype.length)})"
|
||||||
|
- @mystates.each do |mystate|
|
||||||
|
%td= @eventstats["#{mytype.title}"]["#{mystate.name}"]["type_state_count"] unless @eventstats["#{mytype.title}"]["#{mystate.name}"] == nil
|
||||||
|
%td= show_time(@eventstats["#{mytype.title}"]["#{mystate.name}"]["type_state_length"]) unless @eventstats["#{mytype.title}"]["#{mystate.name}"] == nil
|
||||||
|
%td= @eventstats["#{mytype.title}"]["count"]
|
||||||
|
%td= show_time(@eventstats["#{mytype.title}"]["length"])
|
||||||
|
|
||||||
|
|
||||||
:javascript
|
:javascript
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,14 @@
|
||||||
.row-fluid
|
.row
|
||||||
.span10
|
.col-md-12
|
||||||
%h3
|
%h3
|
||||||
= @event.title
|
= @event.title
|
||||||
%br
|
%br
|
||||||
%span.muted
|
%small
|
||||||
= @event.subtitle
|
= @event.subtitle
|
||||||
.span2
|
= link_to "Edit", edit_admin_conference_event_path(@conference.short_title, @event), :class => "btn btn-mini btn-default pull-right"
|
||||||
= link_to "Edit", edit_admin_conference_event_path(@conference.short_title, @event), :class => "btn btn-mini btn-primary"
|
|
||||||
|
|
||||||
.row-fluid
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
%table.table
|
%table.table
|
||||||
%tr
|
%tr
|
||||||
%td{:style => "width:15%"}
|
%td{:style => "width:15%"}
|
||||||
|
|
@ -161,7 +160,7 @@
|
||||||
= link_to "Delete", conference_proposal_event_attachment_path(@conference.short_title, @event.id, a.id),
|
= link_to "Delete", conference_proposal_event_attachment_path(@conference.short_title, @event.id, a.id),
|
||||||
:method => :delete, :confirm => "Are you sure you want to delete this attachment? It's permanant!"
|
:method => :delete, :confirm => "Are you sure you want to delete this attachment? It's permanant!"
|
||||||
|
|
||||||
.row-fluid
|
.row
|
||||||
= link_to "Comments (#{@comment_count})", "#", :id => "event-comment-link"
|
= link_to "Comments (#{@comment_count})", "#", :id => "event-comment-link"
|
||||||
#comments-div
|
#comments-div
|
||||||
%hr
|
%hr
|
||||||
|
|
|
||||||
|
|
@ -1,2 +1 @@
|
||||||
.container
|
= render 'proposal/form'
|
||||||
= render 'proposal/form'
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
= render :partial => "events_stats"
|
= render :partial => "events_stats"
|
||||||
|
|
||||||
.row-fluid
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
%h2
|
%h2
|
||||||
Events
|
Events
|
||||||
- if @events
|
- if @events
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
#proposal-content.tab-pane.active
|
#proposal-content.tab-pane.active
|
||||||
= render 'proposal'
|
= render 'proposal'
|
||||||
#history-content.tab-pane
|
#history-content.tab-pane
|
||||||
.span12
|
.col-md-12
|
||||||
%table.table
|
%table.table
|
||||||
%thead
|
%thead
|
||||||
%th
|
%th
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= semantic_form_for(@conference, :url => admin_conference_eventtype_update_path(@conference.short_title)) do |f|
|
||||||
= semantic_form_for(@conference, :url => admin_conference_eventtype_update_path(@conference.short_title)) do |f|
|
= dynamic_association :event_types, "Event Types", f
|
||||||
= dynamic_association :event_types, "Event Types", f
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,14 @@
|
||||||
.row-fluid
|
.row
|
||||||
.span6
|
.col-md-12
|
||||||
%h2
|
.page-header
|
||||||
People
|
%h1
|
||||||
- if @people
|
People
|
||||||
= "(#{@people.length})"
|
- if @people
|
||||||
.span6
|
= "(#{@people.length})"
|
||||||
.pull-right{:style=>"margin-top:20px; margin-bottom:20px;"}
|
= link_to "New person", new_admin_person_path, :class => "btn btn-success pull-right"
|
||||||
= link_to "New person", new_admin_person_path, :class => "btn btn-success"
|
|
||||||
|
|
||||||
.row-fluid
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
.well
|
.well
|
||||||
%table.table.table-striped.table-bordered.table-hover#people
|
%table.table.table-striped.table-bordered.table-hover#people
|
||||||
%thead
|
%thead
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
.row-fluid
|
.row
|
||||||
.span6
|
.col-md-6
|
||||||
%legend Question
|
%legend Question
|
||||||
= f.input :title, :label => "Your Question"
|
= f.input :title, :label => "Your Question"
|
||||||
= f.input :question_type
|
= f.input :question_type
|
||||||
= f.input :global, :label => "Make Global", :hint => "(Global questions are available for selection to all conferences)"
|
= f.input :global, :label => "Make Global", :hint => "(Global questions are available for selection to all conferences)"
|
||||||
.span6
|
.col-md-6
|
||||||
= dynamic_association :answers, "Answers", f, :hint => "Insert your answers in the order you want them to appear"
|
= dynamic_association :answers, "Answers", f, :hint => "Insert your answers in the order you want them to appear"
|
||||||
|
|
@ -1,31 +1,29 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
.pull-right
|
||||||
.pull-right
|
%b= link_to "Create New Question","#", "data-toggle" => "modal", "data-target" => "#new-question", :class => "btn btn-success"
|
||||||
%b= link_to "Create New Question","#", "data-toggle" => "modal", "data-target" => "#new-question", :class => "btn btn-success"
|
%br
|
||||||
%br
|
%br
|
||||||
%br
|
- if @questions.count > 0
|
||||||
|
= semantic_form_for(@conference, :url => admin_conference_questions_update_conference_path(@conference.short_title), :method => 'put') do |f|
|
||||||
|
.questions{:id => "myquestions"}
|
||||||
|
= render :partial => "questions"
|
||||||
|
= f.submit "Update Questions for #{@conference.short_title}", :class => "btn btn-primary", :confirm => "Are you sure you want to make these changes?"
|
||||||
|
|
||||||
- if @questions.count > 0
|
|
||||||
|
|
||||||
= semantic_form_for(@conference, :url => admin_conference_questions_update_conference_path(@conference.short_title), :method => 'put') do |f|
|
.modal.fade{:id => "new-question", "role" => "dialog", "aria-hidden" => "true"}
|
||||||
|
.modal-dialog
|
||||||
.questions{:id => "myquestions"}
|
.modal-content
|
||||||
= render :partial => "questions"
|
.modal-header
|
||||||
|
%h3{:id => "new-question-header"}
|
||||||
= f.submit "Update Questions for #{@conference.short_title}", :class => "btn btn-primary", :confirm => "Are you sure you want to make these changes?"
|
Add new question
|
||||||
|
.modal-body
|
||||||
.modal.hide.fade{:id => "new-question", "role" => "dialog", "aria-hidden" => "true"}
|
= semantic_form_for(@new_question, :url => admin_conference_questions_path(@conference.short_title), :method => :post) do |f|
|
||||||
.modal-header
|
= render :partial => "form", :locals => {:f => f}
|
||||||
%h3{:id => "new-question-header"}
|
%button{:class => "btn btn-primary"}
|
||||||
Add new question
|
Save
|
||||||
.modal-body
|
.pull-right
|
||||||
= semantic_form_for(@new_question, :url => admin_conference_questions_path(@conference.short_title), :method => :post) do |f|
|
%button{:class=> "btn btn-danger", "data-dismiss"=> "modal", "aria-hidden"=>"true"}
|
||||||
= render :partial => "form", :locals => {:f => f}
|
Cancel
|
||||||
%button{:class => "btn btn-primary"}
|
|
||||||
Save
|
|
||||||
.pull-right
|
|
||||||
%button{:class=> "btn btn-danger", "data-dismiss"=> "modal", "aria-hidden"=>"true"}
|
|
||||||
Cancel
|
|
||||||
|
|
|
||||||
|
|
@ -1,41 +1,35 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-12
|
||||||
.span12
|
%h3
|
||||||
%h3
|
Edit registration of #{@person.public_name} (#{@person.email}) for #{@conference.title}
|
||||||
Edit registration of #{@person.public_name} (#{@person.email}) for #{@conference.title}
|
%br
|
||||||
%br
|
.row
|
||||||
.row-fluid
|
.col-md-12
|
||||||
.span12
|
= semantic_form_for(@registration, :url => admin_conference_registrations_edit_path(@conference.short_title, @registration.id), :html => { :method => :put }) do |f|
|
||||||
= semantic_form_for(@registration, :url => admin_conference_registrations_edit_path(@conference.short_title, @registration.id), :html => { :method => :put }) do |f|
|
= f.inputs "Personal Information" do
|
||||||
|
= f.fields_for :person do |p|
|
||||||
= f.inputs "Personal Information" do
|
= p.input :first_name, :as => :string
|
||||||
= f.fields_for :person do |p|
|
= p.input :last_name, :as => :string
|
||||||
= p.input :first_name, :as => :string
|
= p.label :Nickname, :as => :string
|
||||||
= p.input :last_name, :as => :string
|
= p.text_field :irc_nickname, :as => :string
|
||||||
= p.label :Nickname, :as => :string
|
= p.label :Affiliation
|
||||||
= p.text_field :irc_nickname, :as => :string
|
= p.text_field :company, :placeholder => "Company/User Group/nothing", :as => :string
|
||||||
= p.label :Affiliation
|
= f.inputs "Registration Information" do
|
||||||
= p.text_field :company, :placeholder => "Company/User Group/nothing", :as => :string
|
- if @conference.use_supporter_levels? and @conference.supporter_levels.length > 0
|
||||||
|
= f.semantic_fields_for :supporter_registration do |reg|
|
||||||
= f.inputs "Registration Information" do
|
= reg.input :supporter_level, :as => :select, :collection => @conference.supporter_levels
|
||||||
- if @conference.use_supporter_levels? and @conference.supporter_levels.length > 0
|
= reg.input :code, :label => "Confirmation or registration code (if applicable)"
|
||||||
= f.semantic_fields_for :supporter_registration do |reg|
|
%span#supporter-link.help-block
|
||||||
= reg.input :supporter_level, :as => :select, :collection => @conference.supporter_levels
|
= f.input :attending_with_partner, :label => false
|
||||||
= reg.input :code, :label => "Confirmation or registration code (if applicable)"
|
= f.input :using_affiliated_lodging, :label => false
|
||||||
%span#supporter-link.help-block
|
= f.input :handicapped_access_required, :label => false
|
||||||
|
= f.input :other_special_needs, :label => "Any other special needs?", :input_html => {:rows => 2, :class => "span6"}
|
||||||
= f.input :attending_with_partner, :label => false
|
- if @conference.social_events.count > 0
|
||||||
= f.input :using_affiliated_lodging, :label => false
|
= f.inputs "Are you planning to attend any of the parties?" do
|
||||||
= f.input :handicapped_access_required, :label => false
|
%br Yes, I'll be attending...
|
||||||
= f.input :other_special_needs, :label => "Any other special needs?", :input_html => {:rows => 2, :class => "span6"}
|
%br
|
||||||
|
= f.input :social_events, :as => :check_boxes, :label => false, :collection => @conference.social_events
|
||||||
- if @conference.social_events.count > 0
|
= f.action :submit, :button_html => { :value => "Edit Registration", :class => "btn btn-primary" }
|
||||||
= f.inputs "Are you planning to attend any of the parties?" do
|
|
||||||
%br Yes, I'll be attending...
|
|
||||||
%br
|
|
||||||
= f.input :social_events, :as => :check_boxes, :label => false, :collection => @conference.social_events
|
|
||||||
|
|
||||||
= f.action :submit, :button_html => { :value => "Edit Registration", :class => "btn btn-primary" }
|
|
||||||
:javascript
|
:javascript
|
||||||
$("#registration_supporter_registration_attributes_supporter_level_id").change(function () {
|
$("#registration_supporter_registration_attributes_supporter_level_id").change(function () {
|
||||||
var str = "";
|
var str = "";
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
%h3
|
%h3
|
||||||
Create new account and registration
|
Create new account and registration
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
= semantic_form_for(@registration, :url => admin_conference_registrations_new_path(@conference.short_title), :html => { :method => :put }) do |f|
|
= semantic_form_for(@registration, :url => admin_conference_registrations_new_path(@conference.short_title), :html => { :method => :put }) do |f|
|
||||||
|
|
||||||
= f.inputs "Your details" do
|
= f.inputs "Your details" do
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,15 @@
|
||||||
.row-fluid
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
.pull-right{:style=>"margin-top:20px; margin-bottom:20px;"}
|
.page-header
|
||||||
= link_to "New", admin_conference_registrations_new_path(@conference.short_title), :class => "btn btn-primary"
|
%h2
|
||||||
= link_to "Export PDF", admin_conference_registrations_path(@conference.short_title, :format => :pdf), :class => "btn btn-success"
|
Registrations
|
||||||
= link_to "Export xlsx", {:format => :xlsx}, :class => "btn btn-success"
|
- if @registrations
|
||||||
.row-fluid
|
= "(#{@registrations.length})"
|
||||||
.span12
|
= " - Attended (#{@attended})"
|
||||||
%h2
|
.btn-group.pull-right
|
||||||
Registrations
|
= link_to "New", admin_conference_registrations_new_path(@conference.short_title), :class => "btn btn-default"
|
||||||
- if @registrations
|
= link_to "Export PDF", admin_conference_registrations_path(@conference.short_title, :format => :pdf), :class => "btn btn-default"
|
||||||
= "(#{@registrations.length})"
|
= link_to "Export XLS", {:format => :xlsx}, :class => "btn btn-default"
|
||||||
= " - Attended (#{@attended})"
|
|
||||||
%table.table.table-bordered.table-striped.table-hover#registrations
|
%table.table.table-bordered.table-striped.table-hover#registrations
|
||||||
%thead
|
%thead
|
||||||
%th
|
%th
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= semantic_form_for(@conference, :url => admin_conference_rooms_update_path(@conference.short_title)) do |f|
|
||||||
= semantic_form_for(@conference, :url => admin_conference_rooms_update_path(@conference.short_title)) do |f|
|
= dynamic_association :rooms, "Rooms", f
|
||||||
= dynamic_association :rooms, "Rooms", f
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= semantic_form_for(@conference, :url => admin_conference_social_events_path(@conference.short_title)) do |f|
|
||||||
= semantic_form_for(@conference, :url => admin_conference_social_events_path(@conference.short_title)) do |f|
|
= dynamic_association :social_events, "Social Events", f
|
||||||
= dynamic_association :social_events, "Social Events", f
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
.row-fluid
|
.row
|
||||||
.span4
|
.col-md-4
|
||||||
- if @registered > 0
|
- if @registered > 0
|
||||||
- if @attendees > 0
|
- if @attendees > 0
|
||||||
%h4{:style => "text-indent: 25px"}= "Registrations - Attendees (#{(@attendees.to_f / @registered * 100).round }%)"
|
%h4{:style => "text-indent: 25px"}= "Registrations - Attendees (#{(@attendees.to_f / @registered * 100).round }%)"
|
||||||
|
|
@ -11,32 +11,31 @@
|
||||||
- else
|
- else
|
||||||
%h5 There are no registrations yet.
|
%h5 There are no registrations yet.
|
||||||
|
|
||||||
|
.col-md-4
|
||||||
.span4
|
|
||||||
- if @registered > 0
|
- if @registered > 0
|
||||||
%h4{:style => "text-indent: 10px"}= "Attendance of pre-registered"
|
%h4{:style => "text-indent: 10px"}= "Attendance of pre-registered"
|
||||||
.row-fluid
|
.row-fluid
|
||||||
.span12#registered_attended
|
.span12#registered_attended
|
||||||
= render :partial => "registered_attended"
|
= render :partial => "registered_attended"
|
||||||
|
|
||||||
.span4
|
.col-md-4
|
||||||
- if @registered > 0
|
- if @registered > 0
|
||||||
%h4{:style => "text-indent: 25px"}= "% of pre-registered"
|
%h4{:style => "text-indent: 25px"}= "% of pre-registered"
|
||||||
.row-fluid
|
.row-fluid
|
||||||
.span12#preregistered_onsite
|
.span12#preregistered_onsite
|
||||||
= render :partial => "preregistered_onsite"
|
= render :partial => "preregistered_onsite"
|
||||||
|
|
||||||
.row-fluid
|
.row
|
||||||
.span6
|
.col-md-6
|
||||||
- if @registered > 0
|
- if @registered > 0
|
||||||
%h4= "Other Info"
|
%h4= "Other Info"
|
||||||
.row-fluid
|
.row-fluid
|
||||||
.span12#other_info
|
.span12#other_info
|
||||||
= render :partial => "other_info"
|
= render :partial => "other_info"
|
||||||
|
|
||||||
.span6
|
.col-md-6
|
||||||
- if @registered > 0
|
- if @registered > 0
|
||||||
%h4{:style => "text-indent: 98px"}= "Registrations over time"
|
%h4{:style => "text-indent: 98px"}= "Registrations over time"
|
||||||
.row-fluid
|
.row-fluid
|
||||||
.span12#registered_time
|
.span12#registered_time
|
||||||
= render :partial => "registered_time"
|
= render :partial => "registered_time"
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
.row-fluid
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
%ul.nav.nav-tabs#myTab
|
%ul.nav.nav-tabs#myTab
|
||||||
%li.active
|
%li.active
|
||||||
%a{:href=>"#registrations", "data-toggle"=>"tab"} Registrations
|
%a{:href=>"#registrations", "data-toggle"=>"tab"} Registrations
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,8 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= semantic_form_for(@conference, :url => admin_conference_supporter_levels_path(@conference.short_title)) do |f|
|
||||||
= semantic_form_for(@conference, :url => admin_conference_supporter_levels_path(@conference.short_title)) do |f|
|
= f.input :use_supporter_levels, :label => false
|
||||||
= f.input :use_supporter_levels, :label => false
|
= dynamic_association :supporter_levels, "Supporter Levels", f
|
||||||
= dynamic_association :supporter_levels, "Supporter Levels", f
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,12 @@
|
||||||
= f.input :code_is_valid, :as => :boolean, :label => false
|
= f.input :code_is_valid, :as => :boolean, :label => false
|
||||||
= f.action :submit, :button_html => { :value => "Save", :class => "btn btn-primary" }
|
= f.action :submit, :button_html => { :value => "Save", :class => "btn btn-primary" }
|
||||||
|
|
||||||
.row-fluid
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
.pull-right{:style=>"margin-top:20px; margin-bottom:20px;"}
|
.pull-right{:style=>"margin-top:20px; margin-bottom:20px;"}
|
||||||
= link_to "New Supporter", "#", :id => "new-supporter-button", :class => "btn btn-success"
|
= link_to "New Supporter", "#", :id => "new-supporter-button", :class => "btn btn-success"
|
||||||
.row-fluid
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
%h2 Supporters
|
%h2 Supporters
|
||||||
.well
|
.well
|
||||||
%table.table.table-striped#supporters
|
%table.table.table-striped#supporters
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= semantic_form_for(@conference, :url => admin_conference_tracks_update_path(@conference.short_title)) do |f|
|
||||||
= semantic_form_for(@conference, :url => admin_conference_tracks_update_path(@conference.short_title)) do |f|
|
= dynamic_association :tracks, "Tracks", f
|
||||||
= dynamic_association :tracks, "Tracks", f
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
|
||||||
|
|
@ -1,76 +1,74 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-12
|
||||||
.span12
|
%h2
|
||||||
%h2
|
Users
|
||||||
Users
|
- if @users
|
||||||
- if @users
|
= "(#{@users.length})"
|
||||||
= "(#{@users.length})"
|
.well
|
||||||
.well
|
%table.table.table-striped.table-bordered.table-hover#users
|
||||||
%table.table.table-striped.table-bordered.table-hover#users
|
%thead
|
||||||
%thead
|
%th
|
||||||
%th
|
%b ID
|
||||||
%b ID
|
%th
|
||||||
%th
|
%b State
|
||||||
%b State
|
%th
|
||||||
%th
|
%b Email
|
||||||
%b Email
|
%th
|
||||||
%th
|
%b Last Name
|
||||||
%b Last Name
|
%th
|
||||||
%th
|
%b First Name
|
||||||
%b First Name
|
%th
|
||||||
%th
|
%b Public Name
|
||||||
%b Public Name
|
%th
|
||||||
%th
|
%b Roles
|
||||||
%b Roles
|
%th
|
||||||
%th
|
%th
|
||||||
%th
|
- @users.each do |user|
|
||||||
- @users.each do |user|
|
- person = Person.find_person_by_user_id(user.id)
|
||||||
- person = Person.find_person_by_user_id(user.id)
|
%tr
|
||||||
%tr
|
%td
|
||||||
%td
|
= user.id
|
||||||
= user.id
|
%td
|
||||||
%td
|
- if user.confirmed?
|
||||||
- if user.confirmed?
|
confirmed
|
||||||
confirmed
|
- else
|
||||||
- else
|
unconfirmed
|
||||||
unconfirmed
|
%td
|
||||||
%td
|
= user.email
|
||||||
= user.email
|
%td
|
||||||
%td
|
= user.last_name
|
||||||
= user.last_name
|
%td
|
||||||
%td
|
= user.first_name
|
||||||
= user.first_name
|
%td
|
||||||
%td
|
= user.public_name
|
||||||
= user.public_name
|
%td
|
||||||
%td
|
= user.roles.map { |role| role.name }.join ','
|
||||||
= user.roles.map { |role| role.name }.join ','
|
%td
|
||||||
%td
|
.modal.hide.fade{:id => "user-role-selection-#{user.id}", "role" => "dialog", "aria-hidden" => "true"}
|
||||||
.modal.hide.fade{:id => "user-role-selection-#{user.id}", "role" => "dialog", "aria-hidden" => "true"}
|
.modal-header
|
||||||
.modal-header
|
%button{"type"=>"button", :class=>"close", "data-dismiss"=>"modal", "aria-hidden"=>"true"}
|
||||||
%button{"type"=>"button", :class=>"close", "data-dismiss"=>"modal", "aria-hidden"=>"true"}
|
×
|
||||||
×
|
%h3{:id => "role-selector-header-#{user.id}"}
|
||||||
%h3{:id => "role-selector-header-#{user.id}"}
|
Modifying Roles
|
||||||
Modifying Roles
|
.modal-body
|
||||||
.modal-body
|
- if current_user == user
|
||||||
- if current_user == user
|
You cannot modify your own role!
|
||||||
You cannot modify your own role!
|
%br
|
||||||
%br
|
%button{:class=> "btn btn-danger", "data-dismiss"=> "modal", "aria-hidden"=>"true"}
|
||||||
|
Cancel
|
||||||
|
- else
|
||||||
|
= "Give #{user.public_name} (#{user.email}) the following roles:"
|
||||||
|
= semantic_form_for(user, :url => admin_user_path(user), :method => :put) do |f|
|
||||||
|
= f.input :roles, :label => false
|
||||||
%button{:class=> "btn btn-danger", "data-dismiss"=> "modal", "aria-hidden"=>"true"}
|
%button{:class=> "btn btn-danger", "data-dismiss"=> "modal", "aria-hidden"=>"true"}
|
||||||
Cancel
|
Cancel
|
||||||
|
= f.action :submit, :as => :button, :button_html => {:value => "Save", :class => "btn btn-primary"}
|
||||||
- else
|
=link_to "Modify Roles", "#", "data-toggle" => "modal", "data-target" => "#user-role-selection-#{user.id}"
|
||||||
= "Give #{user.public_name} (#{user.email}) the following roles:"
|
%td
|
||||||
= semantic_form_for(user, :url => admin_user_path(user), :method => :put) do |f|
|
=link_to "Details", "javascript: void(0)", :class => "user-details-popover", "data-trigger" => "click", "data-placement" => "bottom",
|
||||||
= f.input :roles, :label => false
|
"data-html" => "true",
|
||||||
%button{:class=> "btn btn-danger", "data-dismiss"=> "modal", "aria-hidden"=>"true"}
|
"data-content" => user.popup_details,
|
||||||
Cancel
|
"data-original-title" => ""
|
||||||
= f.action :submit, :as => :button, :button_html => {:value => "Save", :class => "btn btn-primary"}
|
|
||||||
=link_to "Modify Roles", "#", "data-toggle" => "modal", "data-target" => "#user-role-selection-#{user.id}"
|
|
||||||
%td
|
|
||||||
=link_to "Details", "javascript: void(0)", :class => "user-details-popover", "data-trigger" => "click", "data-placement" => "bottom",
|
|
||||||
"data-html" => "true",
|
|
||||||
"data-content" => user.popup_details,
|
|
||||||
"data-original-title" => ""
|
|
||||||
|
|
||||||
:javascript
|
:javascript
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,10 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= semantic_form_for(@venue, :url => admin_conference_venue_update_path(@conference.short_title),:html => {:multipart => true}) do |f|
|
||||||
= semantic_form_for(@venue, :url => admin_conference_venue_update_path(@conference.short_title),:html => {:multipart => true}) do |f|
|
= f.input :name, :input_html => {:rows => 1}
|
||||||
= f.input :name, :input_html => {:rows => 1}
|
= f.input :address, :input_html => {:rows => 1}
|
||||||
= f.input :address, :input_html => {:rows => 1}
|
= f.input :website
|
||||||
= f.input :website
|
= f.input :description, :input_html => { :rows => 10, :cols => 20 }
|
||||||
= f.input :description, :input_html => { :rows => 10, :cols => 20 }
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
<div class="nested-fields">
|
<div class="nested-fields">
|
||||||
<%= f.inputs do %>
|
<%= f.inputs do %>
|
||||||
<%= f.date_select :day %>
|
<%= f.date_select :day %>
|
||||||
<%= f.input :description, :input_html => {:rows => "2", :class => "span8"} %>
|
<%= f.input :description, :input_html => {:rows => "2", :class => "col-md-8"} %>
|
||||||
<%= remove_association_link :vday, f %>
|
<%= remove_association_link :vday, f %>
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
<div class="nested-fields">
|
<div class="nested-fields">
|
||||||
<%= f.inputs do %>
|
<%= f.inputs do %>
|
||||||
<%= f.input :title %>
|
<%= f.input :title %>
|
||||||
<%= f.input :description, :input_html => {:rows => "2", :class => "span8"}%>
|
<%= f.input :description, :input_html => {:rows => "2", :class => "col-md-8"}%>
|
||||||
<%= f.input :vdays, :collection => @conference.vdays.map {|x| [x.day, x.id]}, :label => "Position is required for the following days:"%>
|
<%= f.input :vdays, :collection => @conference.vdays.map {|x| [x.day, x.id]}, :label => "Position is required for the following days:"%>
|
||||||
<%= remove_association_link :vposition, f %>
|
<%= remove_association_link :vposition, f %>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,16 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-3
|
||||||
.span3
|
= render 'admin/conference/sidebar'
|
||||||
= render 'admin/conference/sidebar'
|
.col-md-9
|
||||||
.span9
|
= semantic_form_for(@conference, :url => admin_conference_volunteers_update_path(@conference.short_title)) do |f|
|
||||||
= semantic_form_for(@conference, :url => admin_conference_volunteers_update_path(@conference.short_title)) do |f|
|
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
||||||
= f.action :submit, :as => :button, :button_html => {:class => "btn btn-primary"}
|
%br
|
||||||
%br
|
%br
|
||||||
%br
|
= f.input :use_volunteers, :label => "Enable Volunteering"
|
||||||
= f.input :use_volunteers, :label => "Enable Volunteering"
|
.row
|
||||||
.row-fluid
|
.col-md-6
|
||||||
.span6
|
= f.input :use_vdays, :label => false
|
||||||
= f.input :use_vdays, :label => false
|
= dynamic_association :vdays, "Volunteer Days", f
|
||||||
= dynamic_association :vdays, "Volunteer Days", f
|
.col-md-6
|
||||||
.span6
|
= f.input :use_vpositions, :label => false
|
||||||
= f.input :use_vpositions, :label => false
|
= dynamic_association :vpositions, "Volunteer positions", f
|
||||||
= dynamic_association :vpositions, "Volunteer positions", f
|
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,15 @@
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
%h3
|
%h3
|
||||||
Registration for
|
Registration for
|
||||||
= @conference.title
|
= @conference.title
|
||||||
- if @person.proposal_count(@conference) > 0
|
- if @person.proposal_count(@conference) > 0
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
%i
|
%i
|
||||||
Please note: Registration is not automatically performed for speakers. If you're scheduled to speak at the conference, you still need to register!
|
Please note: Registration is not automatically performed for speakers. If you're scheduled to speak at the conference, you still need to register!
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
= f.inputs :name => "Your Details" do
|
= f.inputs :name => "Your Details" do
|
||||||
%br
|
%br
|
||||||
Your public name (required)
|
Your public name (required)
|
||||||
|
|
@ -75,4 +75,4 @@
|
||||||
onSelect: function(selected) {
|
onSelect: function(selected) {
|
||||||
$("#registration-arrival-datepicker").datepicker("option","maxDate", selected)
|
$("#registration-arrival-datepicker").datepicker("option","maxDate", selected)
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
= f.input :volunteer, :label => "Click here if you want to become a volunteer at #{@conference.short_title}", :input_html => {:maxlength => 15, :size => 40}
|
= f.input :volunteer, :label => "Click here if you want to become a volunteer at #{@conference.short_title}", :input_html => {:maxlength => 15, :size => 40}
|
||||||
= f.fields_for :person do |p|
|
= f.fields_for :person do |p|
|
||||||
= render :partial => 'devise/registrations/volunteerperson', :locals => {:p => p}
|
= render :partial => 'devise/registrations/volunteerperson', :locals => {:p => p}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
= semantic_form_for(@registration, :url => register_conference_path(@conference.short_title), :html => { :method => :put }) do |f|
|
= semantic_form_for(@registration, :url => register_conference_path(@conference.short_title), :html => { :method => :put }) do |f|
|
||||||
.tabbable
|
.tabbable
|
||||||
%ul.nav.nav-tabs
|
%ul.nav.nav-tabs
|
||||||
|
|
@ -19,4 +19,4 @@
|
||||||
= link_to "Unregister", register_conference_path(@conference.short_title),:method => :delete, :class => "btn btn-danger",
|
= link_to "Unregister", register_conference_path(@conference.short_title),:method => :delete, :class => "btn btn-danger",
|
||||||
:confirm => "Are you sure you want to unregister?"
|
:confirm => "Are you sure you want to unregister?"
|
||||||
- else
|
- else
|
||||||
= f.action :submit, :button_html => { :value => "Register", :class => "btn btn-primary" }
|
= f.action :submit, :button_html => { :value => "Register", :class => "btn btn-primary" }
|
||||||
|
|
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
<p>Welcome <%= @resource.email %>!</p>
|
|
||||||
|
|
||||||
<p>You can confirm your account email through the link below:</p>
|
|
||||||
|
|
||||||
<p><%= link_to 'Confirm my account', confirmation_url(@resource, :confirmation_token => @resource.confirmation_token) %></p>
|
|
||||||
|
|
@ -1,8 +0,0 @@
|
||||||
<p>Hello <%= @resource.email %>!</p>
|
|
||||||
|
|
||||||
<p>Someone has requested a link to change your password, and you can do this through the link below.</p>
|
|
||||||
|
|
||||||
<p><%= link_to 'Change my password', edit_password_url(@resource, :reset_password_token => @resource.reset_password_token) %></p>
|
|
||||||
|
|
||||||
<p>If you didn't request this, please ignore this email.</p>
|
|
||||||
<p>Your password won't change until you access the link above and create a new one.</p>
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
<p>Hello <%= @resource.email %>!</p>
|
|
||||||
|
|
||||||
<p>Your account has been locked due to an excessive amount of unsuccessful sign in attempts.</p>
|
|
||||||
|
|
||||||
<p>Click the link below to unlock your account:</p>
|
|
||||||
|
|
||||||
<p><%= link_to 'Unlock my account', unlock_url(@resource, :unlock_token => @resource.unlock_token) %></p>
|
|
||||||
|
|
@ -1,16 +0,0 @@
|
||||||
<h2>Change your password</h2>
|
|
||||||
|
|
||||||
<%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :put }) do |f| %>
|
|
||||||
<%= devise_error_messages! %>
|
|
||||||
<%= f.hidden_field :reset_password_token %>
|
|
||||||
|
|
||||||
<div><%= f.label :password, "New password" %><br />
|
|
||||||
<%= f.password_field :password %></div>
|
|
||||||
|
|
||||||
<div><%= f.label :password_confirmation, "Confirm new password" %><br />
|
|
||||||
<%= f.password_field :password_confirmation %></div>
|
|
||||||
|
|
||||||
<div><%= f.submit "Change my password" %></div>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<%= render "devise/shared/links" %>
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
<h2>Forgot your password?</h2>
|
|
||||||
|
|
||||||
<%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post }) do |f| %>
|
|
||||||
<%= devise_error_messages! %>
|
|
||||||
|
|
||||||
<div><%= f.label :email %><br />
|
|
||||||
<%= f.email_field :email %></div>
|
|
||||||
|
|
||||||
<div><%= f.submit "Send me reset password instructions" %></div>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<%= render "devise/shared/links" %>
|
|
||||||
|
|
@ -1,21 +0,0 @@
|
||||||
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f| %>
|
|
||||||
<div><%= f.label :email %><br />
|
|
||||||
<%= f.email_field :email %></div>
|
|
||||||
|
|
||||||
<div><%= f.label :password %> <i>(leave blank if you don't want to change it)</i><br />
|
|
||||||
<%= f.password_field :password, :autocomplete => "off" %></div>
|
|
||||||
|
|
||||||
<div><%= f.label :password_confirmation %><br />
|
|
||||||
<%= f.password_field :password_confirmation %></div>
|
|
||||||
|
|
||||||
<div><%= f.label :current_password %> <i>(we need your current password to confirm your changes)</i><br />
|
|
||||||
<%= f.password_field :current_password %></div>
|
|
||||||
|
|
||||||
<div><%= f.submit "Update" %></div>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<h3>Cancel my account</h3>
|
|
||||||
|
|
||||||
<p>Unhappy? <%= link_to "Cancel my account", registration_path(resource_name), :data => { :confirm => "Are you sure?" }, :method => :delete %>.</p>
|
|
||||||
|
|
||||||
<%= link_to "Back", :back %>
|
|
||||||
|
|
@ -1,20 +0,0 @@
|
||||||
<% if false %>
|
|
||||||
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f| %>
|
|
||||||
<%= f.fields_for :person do |p| %>
|
|
||||||
<h2><%= p.label :first_name %></h2>
|
|
||||||
<p><%= p.text_field :first_name %></p>
|
|
||||||
|
|
||||||
<h2><%= p.label :last_name %></h2>
|
|
||||||
<p><%= p.text_field :last_name %></p>
|
|
||||||
<% end %>
|
|
||||||
<div><%= f.submit "Update" %></div>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<%= semantic_form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f| %>
|
|
||||||
<%= f.fields_for :person do |p| %>
|
|
||||||
<%= f.inputs :first_name, :last_name, :for => :person %>
|
|
||||||
<% end %>
|
|
||||||
<div><%= f.submit "Update" %></div>
|
|
||||||
<% end %>
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
||||||
<%= devise_error_messages! %>
|
|
||||||
<%= semantic_form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f| %>
|
|
||||||
|
|
||||||
<%= f.inputs :name => "Profile" do %>
|
|
||||||
<%= f.fields_for :person do |p| %>
|
|
||||||
<%= f.inputs :first_name, :last_name, :for => :person %>
|
|
||||||
<% end %>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<%= f.inputs :name => "Account" do %>
|
|
||||||
<%= f.input :email %>
|
|
||||||
<%= f.input :password, :hint => "(Leave blank if you don't want to change it)", :input_html => {:autocomplete => "off"} %>
|
|
||||||
<%= f.input :password_confirmation, :input_html => {:autocomplete => "off"} %>
|
|
||||||
<%= f.input :current_password, :input_html => {:autocomplete => "off"}, :hint => "(we need your current password to confirm your changes)" %>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<div><%= f.submit "Update" %></div>
|
|
||||||
<% end %>
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
.container
|
.row
|
||||||
.row-fluid
|
.col-md-12
|
||||||
= semantic_form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f|
|
= semantic_form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :method => :put }) do |f|
|
||||||
= f.inputs :name => "Profile" do
|
= f.inputs :name => "Profile" do
|
||||||
= f.fields_for :person do |p|
|
= f.fields_for :person do |p|
|
||||||
|
|
@ -8,8 +8,6 @@
|
||||||
= p.input :public_name, :as => :string
|
= p.input :public_name, :as => :string
|
||||||
= p.input :irc_nickname, :label => "IRC nick:", :as => :string
|
= p.input :irc_nickname, :label => "IRC nick:", :as => :string
|
||||||
= p.input :company, :label => "Affiliation", :as => :string, :hint => "This could be a company, a user group, or nothing at all."
|
= p.input :company, :label => "Affiliation", :as => :string, :hint => "This could be a company, a user group, or nothing at all."
|
||||||
= image_tag current_user.person.avatar(:small)
|
|
||||||
= p.input :avatar, :label => "Picture", :hint => "Upload a new picture."
|
|
||||||
= p.input :biography, :input_html => {:rows => 5, "onkeyup" => "word_count(this, 'biography-count', 150)"}, :for => :person
|
= p.input :biography, :input_html => {:rows => 5, "onkeyup" => "word_count(this, 'biography-count', 150)"}, :for => :person
|
||||||
You have used
|
You have used
|
||||||
%span#biography-count #{current_user.person.biography_word_count}
|
%span#biography-count #{current_user.person.biography_word_count}
|
||||||
|
|
@ -17,7 +15,6 @@
|
||||||
%br
|
%br
|
||||||
%br
|
%br
|
||||||
= render :partial => 'devise/registrations/volunteerperson', :locals => {:p => p}
|
= render :partial => 'devise/registrations/volunteerperson', :locals => {:p => p}
|
||||||
|
|
||||||
= f.inputs :name => "Account" do
|
= f.inputs :name => "Account" do
|
||||||
= f.input :email, :required => false
|
= f.input :email, :required => false
|
||||||
= f.input :password, :hint => "(Leave blank if you don't want to change it)", :input_html => {:autocomplete => "off"}
|
= f.input :password, :hint => "(Leave blank if you don't want to change it)", :input_html => {:autocomplete => "off"}
|
||||||
|
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
||||||
<h2>Sign up</h2>
|
|
||||||
|
|
||||||
<%= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
|
|
||||||
<%= devise_error_messages! %>
|
|
||||||
|
|
||||||
<div><%= f.label :email %><br />
|
|
||||||
<%= f.email_field :email %></div>
|
|
||||||
|
|
||||||
<div><%= f.label :password %><br />
|
|
||||||
<%= f.password_field :password %></div>
|
|
||||||
|
|
||||||
<div><%= f.label :password_confirmation %><br />
|
|
||||||
<%= f.password_field :password_confirmation %></div>
|
|
||||||
|
|
||||||
<div><%= f.submit "Sign up" %></div>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<%= render "devise/shared/links" %>
|
|
||||||
|
|
@ -1,14 +1,15 @@
|
||||||
.container
|
.row
|
||||||
%h2.text-center
|
.page-header
|
||||||
Sign Up
|
%h1.text-center Sign Up
|
||||||
.row-fluid
|
.col-md-5.col-md-offset-1
|
||||||
.well.span3.offset2
|
.well
|
||||||
= semantic_form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f|
|
= semantic_form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f|
|
||||||
= f.input :email
|
= f.input :email
|
||||||
= f.input :password
|
= f.input :password
|
||||||
= f.input :password_confirmation
|
= f.input :password_confirmation
|
||||||
= f.action :submit, :as => :button, :label => "Sign Up", :button_html => {:class => "btn btn-primary"}
|
= f.action :submit, :as => :button, :label => "Sign Up", :button_html => {:class => "btn btn-primary"}
|
||||||
.well.span3.offset2
|
.col-md-3.col-md-offset-2
|
||||||
|
.well
|
||||||
%h4
|
%h4
|
||||||
Already have an account?
|
Already have an account?
|
||||||
= render "devise/shared/links"
|
= render "devise/shared/links"
|
||||||
|
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
||||||
/
|
|
||||||
<h2>Sign in</h2>
|
|
||||||
|
|
||||||
<%= form_for(resource, :as => resource_name, :url => session_path(resource_name)) do |f| %>
|
|
||||||
<div><%= f.label :email %><br />
|
|
||||||
<%= f.email_field :email %></div>
|
|
||||||
|
|
||||||
<div><%= f.label :password %><br />
|
|
||||||
<%= f.password_field :password %></div>
|
|
||||||
|
|
||||||
<% if devise_mapping.rememberable? -%>
|
|
||||||
<div><%= f.check_box :remember_me %> <%= f.label :remember_me %></div>
|
|
||||||
<% end -%>
|
|
||||||
|
|
||||||
<div><%= f.submit "Sign in" %></div>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<%= render "devise/shared/links" %>
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
.container
|
|
||||||
%h2.text-center
|
|
||||||
Sign In
|
|
||||||
.row-fluid
|
|
||||||
.well.span3.offset2
|
|
||||||
= semantic_form_for(resource, :as => resource_name, :url => session_path(resource_name)) do |f|
|
|
||||||
= f.input :email
|
|
||||||
= f.input :password
|
|
||||||
- if devise_mapping.rememberable?
|
|
||||||
= f.input :remember_me, :as=> :boolean, :label => false
|
|
||||||
= f.action :submit, :as => :button, :label => "Sign In", :button_html => {:class => "btn btn-primary"}
|
|
||||||
.well.span3.offset2
|
|
||||||
%h4
|
|
||||||
No account?
|
|
||||||
= render "devise/shared/links"
|
|
||||||
|
|
@ -1,22 +0,0 @@
|
||||||
- if controller_name != 'sessions'
|
|
||||||
= button_to "Sign In", new_session_path(resource_name), :method => :get, :class => "btn btn-primary", :style=> "margin-top: 5px"
|
|
||||||
|
|
||||||
- if devise_mapping.registerable? && controller_name != 'registrations'
|
|
||||||
= button_to "Sign Up", new_registration_path(resource_name), :method => :get, :class => "btn btn-primary", :style=> "margin-top: 5px"
|
|
||||||
|
|
||||||
- if devise_mapping.recoverable? && controller_name != 'passwords'
|
|
||||||
= link_to "Forgot your password?", new_password_path(resource_name)
|
|
||||||
%br
|
|
||||||
|
|
||||||
- if devise_mapping.confirmable? && controller_name != 'confirmations'
|
|
||||||
= link_to "Didn't receive confirmation instructions?", new_confirmation_path(resource_name)
|
|
||||||
%br
|
|
||||||
|
|
||||||
- if devise_mapping.lockable? && resource_class.unlock_strategy_enabled?(:email) && controller_name != 'unlocks'
|
|
||||||
= link_to "Didn't receive unlock instructions?", new_unlock_path(resource_name)
|
|
||||||
%br
|
|
||||||
|
|
||||||
- if devise_mapping.omniauthable?
|
|
||||||
- resource_class.omniauth_providers.each do |provider|
|
|
||||||
= link_to "Sign in with #{provider.to_s.titleize}", omniauth_authorize_path(resource_name, provider)
|
|
||||||
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
<h2>Resend unlock instructions</h2>
|
|
||||||
|
|
||||||
<%= form_for(resource, :as => resource_name, :url => unlock_path(resource_name), :html => { :method => :post }) do |f| %>
|
|
||||||
<%= devise_error_messages! %>
|
|
||||||
|
|
||||||
<div><%= f.label :email %><br />
|
|
||||||
<%= f.email_field :email %></div>
|
|
||||||
|
|
||||||
<div><%= f.submit "Resend unlock instructions" %></div>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<%= render "devise/shared/links" %>
|
|
||||||
|
|
@ -1,55 +0,0 @@
|
||||||
<div class="row">
|
|
||||||
<div class="span12">
|
|
||||||
<h2 class="text-center">Upcoming Conferences</h2>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<% @current.each do |conference| %>
|
|
||||||
<div class="row-fluid" style="margin-top: 30px;">
|
|
||||||
<div clas="span12">
|
|
||||||
<div class="well">
|
|
||||||
<div class="row">
|
|
||||||
<div class="span4 text-center">
|
|
||||||
<%= image_tag conference.logo(:original) %>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="span6">
|
|
||||||
<h3>
|
|
||||||
<%= conference.title %>
|
|
||||||
<br>
|
|
||||||
<span class="muted"><%= conference.date_range_string %></span>
|
|
||||||
</h3>
|
|
||||||
<% if conference.venue.name and conference.venue.website and conference.venue.address %>
|
|
||||||
<p>
|
|
||||||
<small>
|
|
||||||
<%= link_to conference.venue.name, conference.venue.website %>,
|
|
||||||
<%= link_to conference.venue.address, "http://maps.google.com/maps?q=#{conference.venue.address}" %>
|
|
||||||
</small>
|
|
||||||
<% end -%>
|
|
||||||
<% if conference.venue.description %>
|
|
||||||
<%= simple_format(conference.venue.description, class: 'lead') %>
|
|
||||||
<% end -%>
|
|
||||||
</div>
|
|
||||||
<div class="span2">
|
|
||||||
<ul class="nav nav-tabs nav-stacked">
|
|
||||||
<% if conference.registration_open? %>
|
|
||||||
<%- if conference.user_registered?(current_user) %>
|
|
||||||
<li><%= link_to "Modify Registration", register_conference_path(conference.short_title) %></li>
|
|
||||||
<%- else %>
|
|
||||||
<li><%= link_to "Register", register_conference_path(conference.short_title) %></li>
|
|
||||||
<% end %>
|
|
||||||
<% end %>
|
|
||||||
<li><%= link_to "Schedule", conference_schedule_path(conference.short_title) %></li>
|
|
||||||
<%- if !current_user.nil? && current_user.person.proposal_count(conference) > 0 %>
|
|
||||||
<li><%= link_to "View My Proposals", conference_proposal_index_path(conference.short_title) %></li>
|
|
||||||
<%- elsif conference.cfp_open? %>
|
|
||||||
<li><%= link_to "Submit Proposal", conference_proposal_index_path(conference.short_title) %></li>
|
|
||||||
<% end %>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
36
app/views/home/index.html.haml
Normal file
36
app/views/home/index.html.haml
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
.row
|
||||||
|
.col-md-12.page-header
|
||||||
|
%h2.text-center Upcoming Conferences
|
||||||
|
- @current.each do |conference|
|
||||||
|
.row
|
||||||
|
.col-md-12
|
||||||
|
.well
|
||||||
|
.row
|
||||||
|
.col-md-4.text-center
|
||||||
|
= image_tag(conference.logo(:original), class: 'img-responsive')
|
||||||
|
.col-md-6
|
||||||
|
%h3
|
||||||
|
= conference.title
|
||||||
|
%small
|
||||||
|
%b
|
||||||
|
= conference.date_range_string
|
||||||
|
- if conference.venue.name and conference.venue.website and conference.venue.address
|
||||||
|
%p
|
||||||
|
%small
|
||||||
|
= link_to conference.venue.name, conference.venue.website
|
||||||
|
,
|
||||||
|
\#{link_to conference.venue.address, "http://maps.google.com/maps?q=#{conference.venue.address}"}
|
||||||
|
- if conference.venue.description
|
||||||
|
= simple_format(conference.venue.description, class: 'lead')
|
||||||
|
.col-md-2
|
||||||
|
.btn-group-vertical
|
||||||
|
- if conference.registration_open?
|
||||||
|
- if conference.user_registered?(current_user)
|
||||||
|
= link_to "Modify Registration", register_conference_path(conference.short_title), :class =>"btn btn-default"
|
||||||
|
- else
|
||||||
|
= link_to "Register", register_conference_path(conference.short_title), :class =>"btn btn-success"
|
||||||
|
= link_to "Schedule", conference_schedule_path(conference.short_title), :class =>"btn btn-default"
|
||||||
|
- if !current_user.nil? && current_user.person.proposal_count(conference) > 0
|
||||||
|
= link_to "View My Proposals", conference_proposal_index_path(conference.short_title), :class =>"btn btn-default"
|
||||||
|
- elsif conference.cfp_open?
|
||||||
|
= link_to "Submit Proposal", conference_proposal_index_path(conference.short_title), :class =>"btn btn-default"
|
||||||
30
app/views/layouts/_admin_menu.html.haml
Normal file
30
app/views/layouts/_admin_menu.html.haml
Normal file
|
|
@ -0,0 +1,30 @@
|
||||||
|
%ul.nav.navbar-nav
|
||||||
|
%li{:class=> active_nav_li(admin_conference_path(@conference.short_title))}
|
||||||
|
= link_to(admin_conference_path(@conference.short_title)) do
|
||||||
|
%span.glyphicon.glyphicon-wrench
|
||||||
|
Settings
|
||||||
|
%li{:class=> active_nav_li(admin_conference_registrations_path(@conference.short_title))}
|
||||||
|
= link_to(admin_conference_registrations_path(@conference.short_title)) do
|
||||||
|
%span.glyphicon.glyphicon-user
|
||||||
|
Registrations
|
||||||
|
- if @conference.use_supporter_levels? and @conference.supporter_levels.length > 0
|
||||||
|
%li{:class=> active_nav_li(admin_conference_supporters_path(@conference.short_title))}
|
||||||
|
= link_to(admin_conference_supporters_path(@conference.short_title)) do
|
||||||
|
%span.glyphicon.glyphicon-star
|
||||||
|
Supporters
|
||||||
|
%li{:class=> active_nav_li(admin_conference_events_path(@conference.short_title))}
|
||||||
|
= link_to(admin_conference_events_path(@conference.short_title)) do
|
||||||
|
%span.glyphicon.glyphicon-comment
|
||||||
|
Events
|
||||||
|
%li{:class=> active_nav_li(admin_conference_stats_path(@conference.short_title))}
|
||||||
|
= link_to(admin_conference_stats_path(@conference.short_title)) do
|
||||||
|
%span.glyphicon.glyphicon-tasks
|
||||||
|
Statistics
|
||||||
|
%li{:class=> active_nav_li(admin_conference_volunteers_list_path(@conference.short_title))}
|
||||||
|
= link_to(admin_conference_volunteers_list_path(@conference.short_title)) do
|
||||||
|
%span.glyphicon.glyphicon-user
|
||||||
|
Volunteers
|
||||||
|
%li
|
||||||
|
= link_to(admin_conference_schedule_path(@conference.short_title), :target => "_blank") do
|
||||||
|
%span.glyphicon.glyphicon-calendar
|
||||||
|
Schedule
|
||||||
|
|
@ -1,83 +1,59 @@
|
||||||
%a.btn.btn-navbar{"data-target" => ".nav-collapse", "data-toggle" => "collapse", :id => "mobmenu" }
|
.navbar.navbar-default.navbar-fixed-top{:role=>"navigation"}
|
||||||
%span.icon-th
|
.container
|
||||||
= link_to "OSEM", root_path, :class => 'brand', :title => "Open Source Event Manager"
|
.navbar-header
|
||||||
- if @conference && !@conference.short_title.nil?
|
%button{"data-target"=>".navbar-collapse", "data-toggle"=>"collapse", :class=>"navbar-toggle", :type=>"button"}
|
||||||
%span.brand
|
%span.sr-only
|
||||||
= @conference.short_title
|
Toggle navigation
|
||||||
.nav-collapse.collapse
|
%span.icon-bar
|
||||||
/ The Admin Menu for Conferences /
|
%span.icon-bar
|
||||||
- if user_signed_in?
|
%span.icon-bar
|
||||||
- if has_role?(current_user, "admin") || has_role?(current_user, "organizer")
|
= link_to "OSEM", root_path, :class => 'navbar-brand', :title => "Open Source Event Manager"
|
||||||
- if controller.class.name.split("::").first=="Admin"
|
.collapse.navbar-collapse
|
||||||
- if @conference and !@conference.short_title.nil?
|
- if @conference && !@conference.short_title.nil?
|
||||||
%ul.nav
|
%p.navbar-text
|
||||||
%li.nav-header.hidden-desktop
|
= @conference.short_title
|
||||||
= @conference.short_title
|
- if user_signed_in?
|
||||||
%li{:class=> active_nav_li(admin_conference_path(@conference.short_title))}
|
- if has_role?(current_user, "admin") || has_role?(current_user, "organizer")
|
||||||
= link_to(admin_conference_path(@conference.short_title)) do
|
- if controller.class.name.split("::").first=="Admin"
|
||||||
%i.icon-wrench
|
- if @conference and not @conference.short_title.nil?
|
||||||
Settings
|
= render 'layouts/admin_menu'
|
||||||
%li{:class=> active_nav_li(admin_conference_registrations_path(@conference.short_title))}
|
%ul.nav.navbar-nav.navbar-right
|
||||||
= link_to(admin_conference_registrations_path(@conference.short_title)) do
|
%li.dropdown
|
||||||
%i.icon-user
|
%a.dropdown-toggle{"data-toggle" => "dropdown", :href => "#"}
|
||||||
Registrations
|
- if not current_user.person.public_name.empty?
|
||||||
- if @conference.use_supporter_levels? and @conference.supporter_levels.length > 0
|
#{current_user.person.public_name}
|
||||||
%li{:class=> active_nav_li(admin_conference_supporters_path(@conference.short_title))}
|
-else
|
||||||
= link_to(admin_conference_supporters_path(@conference.short_title)) do
|
#{current_user.email}
|
||||||
%i.icon-star
|
= image_tag(current_user.person.gravatar_url(:size => "18"), :title => "Yo #{current_user.person.public_name}!")
|
||||||
Supporters
|
%b.caret
|
||||||
%li{:class=> active_nav_li(admin_conference_events_path(@conference.short_title))}
|
%ul.dropdown-menu
|
||||||
= link_to(admin_conference_events_path(@conference.short_title)) do
|
= render 'layouts/user_menu'
|
||||||
%i.icon-comment
|
- else
|
||||||
Events
|
%ul.nav.navbar-nav.navbar-right
|
||||||
%li{:class=> active_nav_li(admin_conference_stats_path(@conference.short_title))}
|
- if current_page?(new_registration_path('user'))
|
||||||
= link_to(admin_conference_stats_path(@conference.short_title)) do
|
%li.active
|
||||||
%i.icon-tasks
|
= link_to(new_registration_path('user')) do
|
||||||
Statistics
|
%span.glyphicon.glyphicon-heart
|
||||||
%li{:class=> active_nav_li(admin_conference_volunteers_list_path(@conference.short_title))}
|
Sign Up
|
||||||
= link_to(admin_conference_volunteers_list_path(@conference.short_title)) do
|
- else
|
||||||
%i.icon-user
|
%li
|
||||||
Volunteers
|
= link_to(new_registration_path('user')) do
|
||||||
%li
|
%span.glyphicon.glyphicon-heart
|
||||||
= link_to(admin_conference_schedule_path(@conference.short_title), :target => "_blank") do
|
Sign Up
|
||||||
%i.icon-calendar
|
%li.dropdown.visible-desktop
|
||||||
Schedule
|
%a.dropdown-toggle{"data-toggle" => "dropdown", :href => "#"}
|
||||||
%ul.nav.hidden-desktop
|
%span.glyphicon.glyphicon-user
|
||||||
= render 'layouts/user_menu'
|
Sign In
|
||||||
%ul.nav.pull-right.visible-desktop
|
%span.caret
|
||||||
%li.dropdown
|
.dropdown-menu{:style => "padding: 17px;"}
|
||||||
%a.dropdown-toggle{"data-toggle" => "dropdown", :href => "#"}
|
= form_tag user_session_path do
|
||||||
#{current_user.person.public_name} (#{current_user.email})
|
= text_field_tag 'user[email]'
|
||||||
= image_tag(current_user.person.gravatar_url(:size => "18"), :title => "Yo #{current_user.person.public_name}!")
|
= password_field_tag 'user[password]'
|
||||||
%b.caret
|
%label.checkbox
|
||||||
%ul.dropdown-menu{:style => "padding: 15px;"}
|
= check_box_tag 'user[remember_me]'
|
||||||
= render 'layouts/user_menu'
|
Remember me
|
||||||
- else
|
%button.btn.btn-block Sign in
|
||||||
%ul.nav.pull-right
|
%br
|
||||||
- if current_page?(new_registration_path('user'))
|
= link_to "Forgot your password?", new_password_path('user')
|
||||||
%li.active
|
%li.hidden-lg
|
||||||
= link_to(new_registration_path('user')) do
|
= link_to('Sign In', new_user_session_path)
|
||||||
%i.icon-heart
|
|
||||||
Sign Up
|
|
||||||
- else
|
|
||||||
%li
|
|
||||||
= link_to(new_registration_path('user')) do
|
|
||||||
%i.icon-heart
|
|
||||||
Sign Up
|
|
||||||
%li.dropdown.visible-desktop
|
|
||||||
%a.dropdown-toggle{"data-toggle" => "dropdown", :href => "#"}
|
|
||||||
%i.icon-user.icon-2x
|
|
||||||
Sign In
|
|
||||||
%i.icon-angle-down
|
|
||||||
.dropdown-menu{:style => "padding: 17px;"}
|
|
||||||
= form_tag user_session_path do
|
|
||||||
= text_field_tag 'user[email]'
|
|
||||||
= password_field_tag 'user[password]'
|
|
||||||
%label.checkbox
|
|
||||||
= check_box_tag 'user[remember_me]'
|
|
||||||
Remember me
|
|
||||||
%button.btn.btn-block Sign in
|
|
||||||
%br
|
|
||||||
= link_to "Forgot your password?", new_password_path('user')
|
|
||||||
%li.hidden-desktop
|
|
||||||
= link_to('Sign In', new_user_session_path)
|
|
||||||
|
|
@ -1,5 +1,3 @@
|
||||||
%li.nav-header
|
|
||||||
= current_user.person.public_name if current_user.person
|
|
||||||
%li
|
%li
|
||||||
= link_to(edit_user_registration_path) do
|
= link_to(edit_user_registration_path) do
|
||||||
%i.icon-wrench
|
%i.icon-wrench
|
||||||
|
|
@ -15,7 +13,7 @@
|
||||||
Sign out
|
Sign out
|
||||||
-if has_role?(current_user, "admin") || has_role?(current_user, "organizer")
|
-if has_role?(current_user, "admin") || has_role?(current_user, "organizer")
|
||||||
%li.divider
|
%li.divider
|
||||||
%li.nav-header
|
%li.dropdown-header
|
||||||
Conferences
|
Conferences
|
||||||
- @conferences.each do |conference|
|
- @conferences.each do |conference|
|
||||||
%li
|
%li
|
||||||
|
|
@ -28,7 +26,7 @@
|
||||||
%i.icon-plus
|
%i.icon-plus
|
||||||
New Conference
|
New Conference
|
||||||
%li.divider
|
%li.divider
|
||||||
%li.nav-header
|
%li.dropdown-header
|
||||||
People
|
People
|
||||||
%li
|
%li
|
||||||
= link_to(admin_users_path) do
|
= link_to(admin_users_path) do
|
||||||
|
|
|
||||||
|
|
@ -17,31 +17,26 @@
|
||||||
});
|
});
|
||||||
= yield(:head)
|
= yield(:head)
|
||||||
%body
|
%body
|
||||||
#wrap
|
= render 'layouts/navigation'
|
||||||
.navbar.navbar-fixed-top
|
.container#messages
|
||||||
.navbar-inner
|
.row
|
||||||
.container-fluid
|
.col-md-12
|
||||||
= render 'layouts/navigation'
|
= render 'layouts/messages'
|
||||||
.container#messages
|
%noscript
|
||||||
.row
|
:css
|
||||||
.span12
|
#content {
|
||||||
= render 'layouts/messages'
|
display: none;
|
||||||
%noscript
|
}
|
||||||
:css
|
%h2
|
||||||
#content {
|
JavaScript is not enabled
|
||||||
display: none;
|
%p
|
||||||
}
|
OSEM requires JavaScript to be enabled to function. Please turn on JavaScript in your browser's settings and reload the page to continue.
|
||||||
%h2
|
.container#content
|
||||||
JavaScript is not enabled
|
= yield
|
||||||
%p
|
|
||||||
OSEM requires JavaScript to be enabled to function. Please turn on JavaScript in your browser's settings and reload the page to continue.
|
|
||||||
.container#content
|
|
||||||
= yield
|
|
||||||
#push
|
|
||||||
|
|
||||||
#footer
|
#footer
|
||||||
.container
|
.container
|
||||||
%p.muted.credit.text-center
|
%p.muted.text-center
|
||||||
OSEM is (C) 2013
|
OSEM is (C) 2013
|
||||||
= link_to "Matt Barringer", "http://incoherent.de"
|
= link_to "Matt Barringer", "http://incoherent.de"
|
||||||
and released under the GPL. You can get the source code from
|
and released under the GPL. You can get the source code from
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
.tabbable
|
.tabbable
|
||||||
%ul.nav.nav-tabs
|
%ul.nav.nav-tabs
|
||||||
%li.active
|
%li.active
|
||||||
|
|
|
||||||
|
|
@ -1,2 +1 @@
|
||||||
.container
|
= render 'form'
|
||||||
= render 'form'
|
|
||||||
|
|
@ -1,36 +1,34 @@
|
||||||
.container-fluid
|
.row
|
||||||
.row-fluid
|
.col-md-12.page-header
|
||||||
.span13
|
%h1
|
||||||
%h2.pull-left
|
= "My Proposals for #{@conference.title}"
|
||||||
= "My Proposals for #{@conference.title}"
|
- if @conference.cfp_open? || organizer_or_admin?
|
||||||
.pull-right{:style=>"margin-top:20px;"}
|
= link_to "New Proposal", new_conference_proposal_path(@conference.short_title), :class => "btn btn-primary pull-right"
|
||||||
- if @conference.cfp_open? || organizer_or_admin?
|
- if @person.proposal_count(@conference) > 0
|
||||||
= link_to "New Proposal", new_conference_proposal_path(@conference.short_title), :class => "btn btn-primary"
|
.row
|
||||||
- if @person.proposal_count(@conference) > 0
|
.col-md-12
|
||||||
.row-fluid
|
%table.table.table-bordered.table-striped
|
||||||
.span12
|
%thead
|
||||||
%table.table.table-bordered.table-striped
|
%th
|
||||||
%thead
|
%b Title
|
||||||
%th
|
%th
|
||||||
%b Title
|
%b Status
|
||||||
%th
|
%th
|
||||||
%b Status
|
- @events.each do |event|
|
||||||
%th
|
%tr
|
||||||
- @events.each do |event|
|
%td
|
||||||
%tr
|
= link_to event.title, conference_proposal_path(@conference.short_title, event.id)
|
||||||
%td
|
%td
|
||||||
= link_to event.title, conference_proposal_path(@conference.short_title, event.id)
|
= event.public_state
|
||||||
%td
|
- if event.state == 'confirmed' && event.require_registration == true
|
||||||
= event.public_state
|
(Pre-registered: #{pre_registered(event).count})
|
||||||
- if event.state == 'confirmed' && event.require_registration == true
|
- if event.confirmed? && !@conference.user_registered?(current_user)
|
||||||
(Pre-registered: #{pre_registered(event).count})
|
%br
|
||||||
- if event.confirmed? && !@conference.user_registered?(current_user)
|
= link_to "Register to attend", register_conference_path(@conference.short_title), :style => "font-size:10px;"
|
||||||
%br
|
%td
|
||||||
= link_to "Register to attend", register_conference_path(@conference.short_title), :style => "font-size:10px;"
|
.pull-right
|
||||||
%td
|
- if event.transition_possible? :confirm
|
||||||
.pull-right
|
= link_to "Confirm", conference_proposal_confirm_path(@conference.short_title, event, :send_mail=>false), :method => :put, :class => "btn btn-mini btn-success"
|
||||||
- if event.transition_possible? :confirm
|
= link_to "Edit", edit_conference_proposal_path(@conference.short_title, event.id), :class => "btn btn-mini btn-primary"
|
||||||
= link_to "Confirm", conference_proposal_confirm_path(@conference.short_title, event, :send_mail=>false), :method => :put, :class => "btn btn-mini btn-success"
|
= link_to "Withdraw", conference_proposal_path(@conference.short_title, event.id), :method => :delete,
|
||||||
= link_to "Edit", edit_conference_proposal_path(@conference.short_title, event.id), :class => "btn btn-mini btn-primary"
|
:confirm => "Are you sure you want to withdraw this proposal?", :class => "btn btn-mini btn-danger"
|
||||||
= link_to "Withdraw", conference_proposal_path(@conference.short_title, event.id), :method => :delete,
|
|
||||||
:confirm => "Are you sure you want to withdraw this proposal?", :class => "btn btn-mini btn-danger"
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
= simple_format(@conference.call_for_papers.description)
|
= simple_format(@conference.call_for_papers.description)
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
= render 'proposal_form'
|
= render 'proposal_form'
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,13 @@
|
||||||
.row
|
.row
|
||||||
.span12
|
.col-md-12.page-header
|
||||||
%h2
|
%h2
|
||||||
= @event.title
|
= @event.title
|
||||||
- if @event.subtitle
|
- if @event.subtitle
|
||||||
%br
|
%br
|
||||||
%span.muted
|
%small
|
||||||
= @event.subtitle
|
= @event.subtitle
|
||||||
.row-fluid
|
.row
|
||||||
.span3
|
.col-md-3
|
||||||
%p
|
%p
|
||||||
= simple_format(@event.abstract)
|
= simple_format(@event.abstract)
|
||||||
%dl
|
%dl
|
||||||
|
|
@ -22,31 +22,32 @@
|
||||||
- if @event.track_id
|
- if @event.track_id
|
||||||
%span.label{:style =>"background-color: #{@event.track.color};"}
|
%span.label{:style =>"background-color: #{@event.track.color};"}
|
||||||
= @event.track.name
|
= @event.track.name
|
||||||
.span9
|
.col-md-9
|
||||||
-unless @event.video_id
|
-unless @event.video_id
|
||||||
.row-fluid
|
.row
|
||||||
.span12
|
.col-md-12
|
||||||
%h5.text-error
|
%h5.text-error
|
||||||
No video of the event yet, sorry! Meanwhile...
|
No video of the event yet, sorry! Meanwhile...
|
||||||
.row-fluid
|
.row
|
||||||
.span12.flexvideo
|
.col-md-12
|
||||||
-if @event.video_id
|
.flexvideo
|
||||||
%iframe{:width=>"560", :height=>"315", :frameborder=>"0", :allowfullscreen=>"true", :src=>"http://www.youtube.com/embed/#{@event.video_id}?rel=0"}
|
-if @event.video_id
|
||||||
-else
|
%iframe{:width=>"560", :height=>"315", :frameborder=>"0", :allowfullscreen=>"true", :src=>"http://www.youtube.com/embed/#{@event.video_id}?rel=0"}
|
||||||
%iframe{:width=>"560", :height=>"315", :frameborder=>"0", :allowfullscreen=>"true", :src=>"http://www.youtube.com/embed/Eiv4e5ZxTmg?rel=0"}
|
-else
|
||||||
.row-fluid
|
%iframe{:width=>"560", :height=>"315", :frameborder=>"0", :allowfullscreen=>"true", :src=>"http://www.youtube.com/embed/Eiv4e5ZxTmg?rel=0"}
|
||||||
.span8
|
.row
|
||||||
|
.col-md-8
|
||||||
%h3
|
%h3
|
||||||
by
|
by
|
||||||
= @speaker.public_name
|
= @speaker.public_name
|
||||||
- if @speaker.company
|
- if @speaker.company?
|
||||||
%br
|
%br
|
||||||
%span.muted
|
%span.muted
|
||||||
from
|
from
|
||||||
= @speaker.company
|
= @speaker.company
|
||||||
-if @speaker.biography
|
-if @speaker.biography?
|
||||||
= simple_format(@speaker.biography)
|
= simple_format(@speaker.biography)
|
||||||
.span4
|
.col-md-4
|
||||||
= image_tag @speaker.gravatar_url(:size => 200), :class => "img-rounded pull-right", :style => "margin: 8px;"
|
= image_tag @speaker.gravatar_url(:size => 200), :class => "img-responsive img-rounded"
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue