study_engine 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/Rakefile +42 -0
- data/app/assets/images/study_engine/spinner.gif +0 -0
- data/app/assets/images/study_engine/sprite/delete.png +0 -0
- data/app/assets/images/study_engine/sprite/download.png +0 -0
- data/app/assets/images/study_engine/sprite/edit.png +0 -0
- data/app/assets/images/study_engine/sprite/incomplete.png +0 -0
- data/app/assets/images/study_engine/sprite/metrc-sm.png +0 -0
- data/app/assets/images/study_engine/sprite/metrc.png +0 -0
- data/app/assets/images/study_engine/sprite/new.png +0 -0
- data/app/assets/javascripts/study_engine/admin_notes.js.coffee +12 -0
- data/app/assets/javascripts/study_engine/assessment_notifications.js.coffee +36 -0
- data/app/assets/javascripts/study_engine/assessment_timeout.js.coffee +24 -0
- data/app/assets/javascripts/study_engine/disable_buttons_after_click.js.coffee +6 -0
- data/app/assets/javascripts/study_engine/fire_click_event_immediately_on_mobile.js.coffee.erb +10 -0
- data/app/assets/javascripts/study_engine/response_validation.js.coffee +8 -0
- data/app/assets/javascripts/study_engine/restart_assessment_button.js.coffee +3 -0
- data/app/assets/javascripts/study_engine/study_engine.js.coffee +9 -0
- data/app/assets/javascripts/study_engine/study_id_picker.js.coffee +28 -0
- data/app/assets/stylesheets/study_engine.sass +1 -0
- data/app/assets/stylesheets/study_engine/_constant.sass +52 -0
- data/app/assets/stylesheets/study_engine/_mobile.sass +8 -0
- data/app/assets/stylesheets/study_engine/_tablet.sass +36 -0
- data/app/assets/stylesheets/study_engine/application.sass +101 -0
- data/app/assets/stylesheets/study_engine/base/_form.sass +131 -0
- data/app/assets/stylesheets/study_engine/base/_list.sass +38 -0
- data/app/assets/stylesheets/study_engine/base/_tables.sass +33 -0
- data/app/assets/stylesheets/study_engine/base/_text.sass +78 -0
- data/app/assets/stylesheets/study_engine/components/-fields/_login-fields.sass +14 -0
- data/app/assets/stylesheets/study_engine/components/-fields/_start-fields.sass +101 -0
- data/app/assets/stylesheets/study_engine/components/-nav/_global-nav.sass +19 -0
- data/app/assets/stylesheets/study_engine/components/-table/_results-table.sass +75 -0
- data/app/assets/stylesheets/study_engine/components/-table/_users-table.sass +11 -0
- data/app/assets/stylesheets/study_engine/components/_assessment-questions.sass +30 -0
- data/app/assets/stylesheets/study_engine/components/_form-buttons.sass +102 -0
- data/app/assets/stylesheets/study_engine/components/_helpt-text.sass +2 -0
- data/app/assets/stylesheets/study_engine/components/_method-icons.sass +15 -0
- data/app/assets/stylesheets/study_engine/components/_notes-modal.sass +65 -0
- data/app/assets/stylesheets/study_engine/components/_progress-bar.sass +25 -0
- data/app/assets/stylesheets/study_engine/components/_sortable-columns.sass +26 -0
- data/app/assets/stylesheets/study_engine/components/_table-actions.sass +8 -0
- data/app/assets/stylesheets/study_engine/components/_table-buttons.sass +17 -0
- data/app/assets/stylesheets/study_engine/components/_user-privileges.sass +3 -0
- data/app/assets/stylesheets/study_engine/mixins/_actions-table.sass +11 -0
- data/app/assets/stylesheets/study_engine/mixins/_buttons.sass +55 -0
- data/app/assets/stylesheets/study_engine/mixins/_checkbox-columns.sass +50 -0
- data/app/assets/stylesheets/study_engine/mixins/_custom-radios.sass +47 -0
- data/app/assets/stylesheets/study_engine/mixins/_icons.sass +38 -0
- data/app/assets/stylesheets/study_engine/mixins/_notification-text.sass +23 -0
- data/app/controllers/study_engine/admin/application_controller.rb +6 -0
- data/app/controllers/study_engine/admin/assessments_controller.rb +79 -0
- data/app/controllers/study_engine/admin/notes_controller.rb +17 -0
- data/app/controllers/study_engine/application_controller.rb +12 -0
- data/app/controllers/study_engine/assessments_controller.rb +94 -0
- data/app/helpers/study_engine/helpers.rb +15 -0
- data/app/helpers/study_engine/mailer_helpers.rb +11 -0
- data/app/mailers/study_engine/mailer.rb +25 -0
- data/app/models/study_engine/answer.rb +36 -0
- data/app/models/study_engine/assessment.rb +118 -0
- data/app/models/study_engine/begin_assessment_form.rb +110 -0
- data/app/models/study_engine/existing_assessments_form.rb +99 -0
- data/app/models/study_engine/form.rb +59 -0
- data/app/models/study_engine/report.rb +69 -0
- data/app/models/study_engine/result.rb +46 -0
- data/app/models/study_engine/screen_results.rb +54 -0
- data/app/models/study_engine/study_id.rb +47 -0
- data/app/models/study_engine/study_id/bank.rb +38 -0
- data/app/models/study_engine/study_id/sync.rb +52 -0
- data/app/models/study_engine/update_assessments_form.rb +53 -0
- data/app/views/study_engine/_progress_bar.html.slim +4 -0
- data/app/views/study_engine/admin/assessments/_assessment.html.slim +36 -0
- data/app/views/study_engine/admin/assessments/domain_results.csv.csvbuilder +17 -0
- data/app/views/study_engine/admin/assessments/edit.html.slim +68 -0
- data/app/views/study_engine/admin/assessments/index.html.slim +26 -0
- data/app/views/study_engine/admin/assessments/item_results.csv.csvbuilder +24 -0
- data/app/views/study_engine/admin/assessments/new.html.slim +46 -0
- data/app/views/study_engine/admin/assessments/screen_results.csv.csvbuilder +2 -0
- data/app/views/study_engine/assessments/complete.html.slim +25 -0
- data/app/views/study_engine/assessments/create.html.slim +46 -0
- data/app/views/study_engine/assessments/index.html.slim +43 -0
- data/app/views/study_engine/assessments/restart.html.slim +28 -0
- data/app/views/study_engine/assessments/show.html.slim +60 -0
- data/app/views/study_engine/mailer/assessment_recorded_notification.erb +8 -0
- data/app/views/study_engine/mailer/assessment_url_notification.erb +6 -0
- data/config/routes.rb +15 -0
- data/db/migrate/20160422185859_create_tables.rb +52 -0
- data/lib/study_engine.rb +5 -0
- data/lib/study_engine/config.rb +37 -0
- data/lib/study_engine/cucumber.rb +96 -0
- data/lib/study_engine/engine.rb +7 -0
- data/lib/study_engine/version.rb +3 -0
- data/lib/tasks/study_engine_tasks.rake +10 -0
- data/spec/ar_helper.rb +30 -0
- data/spec/models/study_engine/answer_spec.rb +28 -0
- data/spec/models/study_engine/assessment_spec.rb +250 -0
- data/spec/models/study_engine/begin_assessment_form_spec.rb +87 -0
- data/spec/models/study_engine/existing_assessments_form_spec.rb +171 -0
- data/spec/models/study_engine/report_spec.rb +48 -0
- data/spec/models/study_engine/result_spec.rb +102 -0
- data/spec/models/study_engine/screen_results_spec.rb +69 -0
- data/spec/models/study_engine/study_id/bank_spec.rb +72 -0
- data/spec/models/study_engine/study_id/sync_spec.rb +61 -0
- data/spec/models/study_engine/study_id_spec.rb +7 -0
- data/spec/models/study_engine/update_assessments_form_spec.rb +38 -0
- data/spec/rails_helper.rb +50 -0
- data/spec/schema.rb +65 -0
- data/spec/spec_helper.rb +72 -0
- data/spec/support/CATEngine3.exe +0 -0
- data/spec/support/forms/01. Physical Function Bank.xml +1213 -0
- data/spec/support/forms/02. Pain Interference Bank.xml +443 -0
- data/spec/support/forms/03. Anxiety Bank.xml +322 -0
- data/spec/support/forms/04. Depression Bank.xml +311 -0
- data/spec/support/forms/05. Ability to Participate Social bank Version 2.xml +353 -0
- data/spec/support/forms/06. Psychosocial Illness Impact Pos Bank.xml +900 -0
- data/spec/support/forms/07. Applied Cognition Gen Concerns Bank.xml +377 -0
- data/spec/support/forms/08. Satisfaction with Roles and Activities Bank Version 2.xml +443 -0
- data/spec/support/forms/09. Sleep Disturbance Bank.xml +300 -0
- data/spec/support/forms/10. Emotional Support Bank.xml +163 -0
- data/spec/support/forms/A - 07. Psychosocial Illness Impact Pos Bank.xml +471 -0
- data/spec/support/forms/A - 08. Pain interference Bank.xml +443 -0
- data/spec/support/forms/A - 09. Depression Bank.xml +311 -0
- data/spec/support/forms/B - 07. Physical Function Short Form.xml +123 -0
- data/spec/support/forms/B - 08. Physical Function Remainder A.xml +543 -0
- data/spec/support/forms/B - 09. Ability to Participate Social bank Version 2.xml +353 -0
- data/spec/support/forms/C - 07. Physical Function Short Form.xml +123 -0
- data/spec/support/forms/C - 08. Physical Function Remainder B.xml +553 -0
- data/spec/support/forms/C - 09. Anxiety Bank.xml +322 -0
- data/spec/support/parameters/01. Physical Function Bank.xml +682 -0
- data/spec/support/parameters/02. Pain Interference Bank.xml +256 -0
- data/spec/support/parameters/03. Anxiety Bank.xml +190 -0
- data/spec/support/parameters/04. Depression Bank.xml +184 -0
- data/spec/support/parameters/05. Ability to Participate Social bank Version 2.xml +226 -0
- data/spec/support/parameters/06. Psychosocial Illness Impact Pos Bank.xml +211 -0
- data/spec/support/parameters/07. Applied Cognition Gen Concerns Bank.xml +1 -0
- data/spec/support/parameters/08. Satisfaction with Roles and Activities Bank Version 2.xml +1 -0
- data/spec/support/parameters/09. Sleep Disturbance Bank.xml +1 -0
- data/spec/support/parameters/10. Emotional Support Bank.xml +1 -0
- metadata +394 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: a814703c6b22e5256caaa924bb26f41939597c88
|
4
|
+
data.tar.gz: b1cf95a28f953d46934393a4749c15b514154d92
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: ba765d737471789999ec261765a3a664e2d9e5326c5b57a8cddebff355348e7cb70d70d0b6bbaec9736d35bf9dd28eac87edeee5885faf84400fa4f22ba920a1
|
7
|
+
data.tar.gz: 8c13ccf968abdaea10ff61bee6c66c0e546ad82b49c94faa1db6cf67ddfe1ec482f08e0fb75de51e841ae911364429eedada33b62faa6b917260e4031cdba88a
|
data/Rakefile
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
begin
|
2
|
+
require 'bundler/setup'
|
3
|
+
rescue LoadError
|
4
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
5
|
+
end
|
6
|
+
|
7
|
+
require 'rdoc/task'
|
8
|
+
|
9
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
10
|
+
rdoc.rdoc_dir = 'rdoc'
|
11
|
+
rdoc.title = 'StudyEngine'
|
12
|
+
rdoc.options << '--line-numbers'
|
13
|
+
rdoc.rdoc_files.include('README.rdoc')
|
14
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
15
|
+
end
|
16
|
+
|
17
|
+
# APP_RAKEFILE = File.expand_path("../test/dummy/Rakefile", __FILE__)
|
18
|
+
# load 'rails/tasks/engine.rake'
|
19
|
+
|
20
|
+
|
21
|
+
load 'rails/tasks/statistics.rake'
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
Bundler::GemHelper.install_tasks
|
26
|
+
|
27
|
+
require 'rake/testtask'
|
28
|
+
|
29
|
+
Rake::TestTask.new(:test) do |t|
|
30
|
+
t.libs << 'lib'
|
31
|
+
t.libs << 'test'
|
32
|
+
t.pattern = 'test/**/*_test.rb'
|
33
|
+
t.verbose = false
|
34
|
+
end
|
35
|
+
|
36
|
+
|
37
|
+
task default: :test
|
38
|
+
|
39
|
+
task :compile_cat_engine do
|
40
|
+
require "./app/models/study_engine/cat_engine"
|
41
|
+
StudyEngine::CatEngine.compile
|
42
|
+
end
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,12 @@
|
|
1
|
+
$ ->
|
2
|
+
$(".note-wrapper form").submit (event) ->
|
3
|
+
event.preventDefault()
|
4
|
+
|
5
|
+
$note = $(this).find(".note")
|
6
|
+
$(this).find(".toggle-note").prop "checked", false
|
7
|
+
$note.addClass "-saving"
|
8
|
+
|
9
|
+
$.post this.action, $(this).serialize(), (data) =>
|
10
|
+
$note.removeClass "-saving"
|
11
|
+
$note.toggleClass "-saved", data == "true"
|
12
|
+
|
@@ -0,0 +1,36 @@
|
|
1
|
+
#= require jquery.pjax
|
2
|
+
|
3
|
+
class AssessmentNotification
|
4
|
+
constructor: ->
|
5
|
+
@enable()
|
6
|
+
|
7
|
+
enable: ->
|
8
|
+
$(document).on "submit", "form[data-pjax]", (event) ->
|
9
|
+
$.pjax.submit event, "[data-pjax-container]"
|
10
|
+
|
11
|
+
$(window).on "beforeunload", =>
|
12
|
+
@sendNotification()
|
13
|
+
|
14
|
+
$(window).on "unload", =>
|
15
|
+
@sendNotification()
|
16
|
+
|
17
|
+
$(document).on "pjax:popstate", (event) ->
|
18
|
+
event.preventDefault() if event.direction == "back"
|
19
|
+
|
20
|
+
disable: ->
|
21
|
+
$(document).off "submit", "form[data-pjax]"
|
22
|
+
|
23
|
+
$(window).off("beforeunload").off("unload")
|
24
|
+
|
25
|
+
sendNotification: ->
|
26
|
+
unless @_sentNotification
|
27
|
+
$.ajax window.location.href + "/notification", method: "POST", async: false
|
28
|
+
@_sentNotification = true
|
29
|
+
`void(0)`
|
30
|
+
|
31
|
+
_sentNotification: false
|
32
|
+
|
33
|
+
$ ->
|
34
|
+
if $("form[data-pjax]").length and $.support.pjax
|
35
|
+
window.assessmentNotification = new AssessmentNotification()
|
36
|
+
|
@@ -0,0 +1,24 @@
|
|
1
|
+
#= require jquery.pjax
|
2
|
+
|
3
|
+
class AssessmentTimer
|
4
|
+
constructor: (@timeoutInterval, @timeout) ->
|
5
|
+
@start()
|
6
|
+
|
7
|
+
start: ->
|
8
|
+
@timeoutId = window.setTimeout =>
|
9
|
+
@timeout()
|
10
|
+
, @timeoutInterval * 1000
|
11
|
+
|
12
|
+
restart: ->
|
13
|
+
window.clearTimeout @timeoutId
|
14
|
+
@start()
|
15
|
+
|
16
|
+
$ ->
|
17
|
+
if $("[data-timeout]").length and $.support.pjax
|
18
|
+
timeoutInterval = parseInt($("[data-timeout]").attr("data-timeout"))
|
19
|
+
window.assessmentTimer = new AssessmentTimer timeoutInterval, ->
|
20
|
+
window.location.href += "/timeout"
|
21
|
+
|
22
|
+
$(document).on "pjax:send", ->
|
23
|
+
window.assessmentTimer.restart()
|
24
|
+
|
@@ -0,0 +1,10 @@
|
|
1
|
+
#= require fastclick
|
2
|
+
|
3
|
+
$ -> setupFastClick()
|
4
|
+
$(document).on "pjax:end", -> setupFastClick()
|
5
|
+
|
6
|
+
setupFastClick = ->
|
7
|
+
return if <%= Rails.env.test? %>
|
8
|
+
$("label > *").css("pointer-events", "none") unless FastClick.notNeeded(document.body)
|
9
|
+
FastClick.attach document.body
|
10
|
+
|
@@ -0,0 +1,8 @@
|
|
1
|
+
$ ->
|
2
|
+
$(document).on "change", "#questions :radio", ->
|
3
|
+
questionCount = $("fieldset").length
|
4
|
+
answeredQuestionCount = $("fieldset").has(":radio:checked").length
|
5
|
+
if questionCount == answeredQuestionCount
|
6
|
+
$("#questions .skip").hide()
|
7
|
+
$("#questions .submit").css display: "inline-block"
|
8
|
+
|
@@ -0,0 +1,9 @@
|
|
1
|
+
#= require study_engine/response_validation
|
2
|
+
#= require study_engine/restart_assessment_button
|
3
|
+
#= require study_engine/disable_buttons_after_click
|
4
|
+
#= require study_engine/fire_click_event_immediately_on_mobile
|
5
|
+
#= require study_engine/assessment_notifications
|
6
|
+
#= require study_engine/assessment_timeout
|
7
|
+
#= require study_engine/study_id_picker
|
8
|
+
#= require study_engine/admin_notes
|
9
|
+
|
@@ -0,0 +1,28 @@
|
|
1
|
+
$ ->
|
2
|
+
$("[data-study-id-picker]").studyIDPicker()
|
3
|
+
|
4
|
+
$.fn.studyIDPicker = ->
|
5
|
+
$(this).each ->
|
6
|
+
new StudyIDPicker $(this), JSON.parse($(this).attr("data-study-id-picker"))
|
7
|
+
|
8
|
+
class StudyIDPicker
|
9
|
+
constructor: (@$el, @studyIDMap) ->
|
10
|
+
@$studies = @$el.find("select").eq(0)
|
11
|
+
@$sites = @$el.find("select").eq(1)
|
12
|
+
@$ids = @$el.find("select").eq(2)
|
13
|
+
|
14
|
+
@$studies.change => @change()
|
15
|
+
@$sites.change => @change()
|
16
|
+
|
17
|
+
change: ->
|
18
|
+
key = "" + @$studies.val() + @$sites.val()
|
19
|
+
ids = @idsForKey(key)
|
20
|
+
@$ids.html @optionsFromIds(ids)
|
21
|
+
|
22
|
+
idsForKey: (key) ->
|
23
|
+
@studyIDMap[key] || []
|
24
|
+
|
25
|
+
optionsFromIds: (ids) ->
|
26
|
+
options = ids.map (id) -> "<option value='#{id}'>#{id}</option>"
|
27
|
+
"<option>----</option>" + options.join("\n")
|
28
|
+
|
@@ -0,0 +1 @@
|
|
1
|
+
@import "study_engine/*"
|
@@ -0,0 +1,52 @@
|
|
1
|
+
// Fonts
|
2
|
+
|
3
|
+
@import font-awesome-sprockets
|
4
|
+
@import font-awesome
|
5
|
+
|
6
|
+
// Variables
|
7
|
+
|
8
|
+
$primaryColor: #1492d6
|
9
|
+
$secondaryColor: $primaryColor - #333
|
10
|
+
$tertiaryColor: #E2770F
|
11
|
+
|
12
|
+
$green: #398927
|
13
|
+
$red: #a7001f
|
14
|
+
$yellow: #e5c105
|
15
|
+
|
16
|
+
$default: "Helvetica Neue", Helvetica, Arial, sans-serif
|
17
|
+
$font: $default
|
18
|
+
|
19
|
+
// Spriting
|
20
|
+
|
21
|
+
@import "study_engine/sprite/*.png"
|
22
|
+
@include all-sprite-sprites
|
23
|
+
|
24
|
+
// Global Mixins
|
25
|
+
|
26
|
+
@mixin constant-width( $width )
|
27
|
+
width: $width
|
28
|
+
min-width: $width
|
29
|
+
max-width: $width
|
30
|
+
|
31
|
+
@mixin constant-height( $height )
|
32
|
+
height: $height
|
33
|
+
min-height: $height
|
34
|
+
max-height: $height
|
35
|
+
|
36
|
+
@mixin variable-height( $h1: 300px, $h2: 800px)
|
37
|
+
height: $h1
|
38
|
+
min-height: $h1
|
39
|
+
max-height: $h2
|
40
|
+
|
41
|
+
// Imports
|
42
|
+
|
43
|
+
@import "mixins/*"
|
44
|
+
@import "base/*"
|
45
|
+
|
46
|
+
@import "components/*"
|
47
|
+
//@import "components/-chart/*"
|
48
|
+
@import "components/-fields/*"
|
49
|
+
//@import "components/-form/*"
|
50
|
+
@import "components/-nav/*"
|
51
|
+
@import "components/-table/*"
|
52
|
+
|
@@ -0,0 +1,36 @@
|
|
1
|
+
.wrapper
|
2
|
+
width: 100%
|
3
|
+
header
|
4
|
+
height: 40px
|
5
|
+
line-height: 40px
|
6
|
+
|
7
|
+
.metrc-logo
|
8
|
+
width: 43px
|
9
|
+
height: 40px
|
10
|
+
background: transparent image-url("study_engine/sprite/metrc-sm.png")
|
11
|
+
.title-wrapper
|
12
|
+
padding-top: 5px
|
13
|
+
.title
|
14
|
+
font-size: 2.6em
|
15
|
+
margin-top: 2px
|
16
|
+
.tagline
|
17
|
+
display: none
|
18
|
+
|
19
|
+
.nav
|
20
|
+
a
|
21
|
+
line-height: 40px
|
22
|
+
section
|
23
|
+
padding: 20px 60px
|
24
|
+
fieldset
|
25
|
+
padding: 0px 20px
|
26
|
+
hr
|
27
|
+
margin: 15px 0
|
28
|
+
|
29
|
+
.paired-bank
|
30
|
+
.custom-label
|
31
|
+
min-width: 100%
|
32
|
+
|
33
|
+
.resume, .restart
|
34
|
+
font-size: 1.4em
|
35
|
+
& + .start
|
36
|
+
font-size: 1.4em
|
@@ -0,0 +1,101 @@
|
|
1
|
+
@charset "UTF-8"
|
2
|
+
@import "constant"
|
3
|
+
|
4
|
+
//
|
5
|
+
|
6
|
+
*
|
7
|
+
box-sizing: border-box
|
8
|
+
position: relative
|
9
|
+
margin: 0
|
10
|
+
padding: 0
|
11
|
+
|
12
|
+
html
|
13
|
+
height: 100%
|
14
|
+
|
15
|
+
body
|
16
|
+
background: #f4f4f4
|
17
|
+
position: relative
|
18
|
+
min-height: 100%
|
19
|
+
|
20
|
+
.wrapper
|
21
|
+
width: 1280px
|
22
|
+
margin: auto
|
23
|
+
|
24
|
+
header
|
25
|
+
background: #2a3036
|
26
|
+
background: linear-gradient( #2a3036, #1a1a1a )
|
27
|
+
box-shadow: #e1e1e3 0 0 3px 0
|
28
|
+
position: relative
|
29
|
+
height: 80px
|
30
|
+
line-height: 80px
|
31
|
+
|
32
|
+
.title-wrapper
|
33
|
+
float: left
|
34
|
+
padding: 20px 0 0 0
|
35
|
+
.metrc-logo
|
36
|
+
float: left
|
37
|
+
@extend .sprite-metrc
|
38
|
+
width: 83px
|
39
|
+
height: 80px
|
40
|
+
margin: 0 3px 0 55px
|
41
|
+
.title, .tagline
|
42
|
+
float: left
|
43
|
+
margin: 0
|
44
|
+
line-height: 1.0em
|
45
|
+
.title
|
46
|
+
color: #fcfcfc
|
47
|
+
.tagline
|
48
|
+
color: #ccc
|
49
|
+
clear: both
|
50
|
+
font-size: 1.4em
|
51
|
+
|
52
|
+
section
|
53
|
+
padding: 40px 60px
|
54
|
+
background: #fff
|
55
|
+
box-shadow: #e1e1e3 0 0 3px 0
|
56
|
+
border-bottom-radius: 3px
|
57
|
+
min-height: 440px
|
58
|
+
position: relative
|
59
|
+
|
60
|
+
// REMOVE FROM THIS STYLESHEET
|
61
|
+
|
62
|
+
.notification
|
63
|
+
position: absolute
|
64
|
+
top: 0
|
65
|
+
left: 0
|
66
|
+
right: 0
|
67
|
+
background: $primaryColor
|
68
|
+
background-image: linear-gradient( darken( $primaryColor, 6% ), $primaryColor )
|
69
|
+
color: #fff
|
70
|
+
font: bold 1.2em $default
|
71
|
+
line-height: 1.8em
|
72
|
+
width: 100%
|
73
|
+
text-align: center
|
74
|
+
z-index: 2
|
75
|
+
padding: 0 20px
|
76
|
+
&.alert
|
77
|
+
background: #D80707
|
78
|
+
background-image: linear-gradient( darken( #D80707, 6% ), #D80707 )
|
79
|
+
|
80
|
+
#questions
|
81
|
+
.submit
|
82
|
+
display: none
|
83
|
+
|
84
|
+
//
|
85
|
+
|
86
|
+
footer
|
87
|
+
padding: 25px 30px 0
|
88
|
+
p
|
89
|
+
text-align: right
|
90
|
+
font-size: 1.2em
|
91
|
+
color: #a7a9aa
|
92
|
+
|
93
|
+
//
|
94
|
+
|
95
|
+
@media screen and (max-device-width: 1024px), (max-width: 1024px)
|
96
|
+
@import "tablet"
|
97
|
+
|
98
|
+
@media screen and (max-device-width: 800px), (max-width: 800px)
|
99
|
+
@import "mobile"
|
100
|
+
|
101
|
+
|
@@ -0,0 +1,131 @@
|
|
1
|
+
// PLACEHOLDERS
|
2
|
+
|
3
|
+
%inline-label
|
4
|
+
display: inline-block
|
5
|
+
color: #404040
|
6
|
+
font: 200 1.0rem $default
|
7
|
+
vertical-align: top
|
8
|
+
font-size: 2.1em
|
9
|
+
|
10
|
+
.inline-label
|
11
|
+
@extend %inline-label
|
12
|
+
|
13
|
+
// GENERIC FORM CLASSES
|
14
|
+
|
15
|
+
.hidden
|
16
|
+
display: none
|
17
|
+
.not-visible
|
18
|
+
visibility: hidden
|
19
|
+
|
20
|
+
//
|
21
|
+
|
22
|
+
fieldset
|
23
|
+
border: none
|
24
|
+
|
25
|
+
legend
|
26
|
+
font: 700 1.4em $default
|
27
|
+
text-transform: uppercase
|
28
|
+
color: $primaryColor
|
29
|
+
margin-left: -20px
|
30
|
+
|
31
|
+
.field
|
32
|
+
width: 100%
|
33
|
+
float: left
|
34
|
+
clear: both
|
35
|
+
margin: 3px 0 30px
|
36
|
+
padding: 0 20px 0 0
|
37
|
+
|
38
|
+
%generic-input
|
39
|
+
width: 100%
|
40
|
+
line-height: 2.5em
|
41
|
+
font-size: 1.6em
|
42
|
+
padding: 0 0 0 10px
|
43
|
+
border-radius: 2px
|
44
|
+
background: #f9f9f9
|
45
|
+
box-shadow: darken( #f9f9f9, 10% ) 0 1px 6px 0 inset
|
46
|
+
border: 1px solid darken( #f9f9f9, 15% )
|
47
|
+
|
48
|
+
&:focus
|
49
|
+
outline-color: $primaryColor
|
50
|
+
&::-webkit-input-placeholder
|
51
|
+
color: transparent
|
52
|
+
&:-moz-placeholder
|
53
|
+
color: transparent
|
54
|
+
&::-moz-placeholder
|
55
|
+
color: transparent
|
56
|
+
&:-ms-input-placeholder
|
57
|
+
color: transparent
|
58
|
+
|
59
|
+
// BASIC FORM STYLING
|
60
|
+
|
61
|
+
label
|
62
|
+
color: #444
|
63
|
+
display: block
|
64
|
+
font: 700 1.6em $default
|
65
|
+
& + span, & + p
|
66
|
+
display: inline-block
|
67
|
+
margin: 0 0 0 6px
|
68
|
+
font-size: 1.4em
|
69
|
+
line-height: 1.2em
|
70
|
+
em
|
71
|
+
color: #666
|
72
|
+
|
73
|
+
input, select
|
74
|
+
font: 400 1.3em $default
|
75
|
+
& + label
|
76
|
+
@extend %inline-label
|
77
|
+
&.text, &.number, &.email, &.phone, &.date, &.password
|
78
|
+
@extend %generic-input
|
79
|
+
.checkbox, .radio
|
80
|
+
& + label, & + span
|
81
|
+
font-weight: 200
|
82
|
+
margin-right: 15px
|
83
|
+
margin-left: 10px
|
84
|
+
.file
|
85
|
+
display: inline-block
|
86
|
+
max-width: 50%
|
87
|
+
padding: 8px 0 0
|
88
|
+
font-size: 1.4em
|
89
|
+
vertical-align: top
|
90
|
+
.color
|
91
|
+
background: #2f2f2f
|
92
|
+
border: none
|
93
|
+
cursor: pointer
|
94
|
+
|
95
|
+
select
|
96
|
+
width: 100%
|
97
|
+
margin: 8px 0 0
|
98
|
+
|
99
|
+
textarea
|
100
|
+
font: 200 1.4em $default
|
101
|
+
line-height: 1.6em
|
102
|
+
padding: 6px
|
103
|
+
+constant-width( 100% )
|
104
|
+
+variable-height( 160px, 260px)
|
105
|
+
border: 1px solid darken( #f9f9f9, 15% )
|
106
|
+
border-radius: 2px
|
107
|
+
&:focus
|
108
|
+
outline-color: $primaryColor
|
109
|
+
&::-webkit-input-placeholder
|
110
|
+
color: transparent
|
111
|
+
&:-moz-placeholder
|
112
|
+
color: transparent
|
113
|
+
&::-moz-placeholder
|
114
|
+
color: transparent
|
115
|
+
&:-ms-input-placeholder
|
116
|
+
color: transparent
|
117
|
+
|
118
|
+
// Errors
|
119
|
+
|
120
|
+
.field_with_errors
|
121
|
+
display: inline
|
122
|
+
label
|
123
|
+
font-weight: 300
|
124
|
+
input
|
125
|
+
border-color: $yellow
|
126
|
+
box-shadow: $yellow 0 0 4px 0
|
127
|
+
background: lighten($yellow, 50%)
|
128
|
+
& + label
|
129
|
+
@extend %inline-label
|
130
|
+
margin: 0 15px 0 0
|
131
|
+
|