helena 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.coveralls.yml +2 -0
- data/.gitignore +15 -0
- data/.rubocop.yml +16 -0
- data/.travis.yml +6 -0
- data/Gemfile +31 -0
- data/Gemfile.lock +290 -0
- data/LICENSE +16 -0
- data/README.md +90 -0
- data/Rakefile +29 -0
- data/app/assets/images/helena/.keep +0 -0
- data/app/assets/images/helena/helena_mobile_view.jpg +0 -0
- data/app/assets/images/helena/icons/export.svg +29 -0
- data/app/assets/images/helena/swissmadesoftware.png +0 -0
- data/app/assets/javascripts/helena/application.js +4 -0
- data/app/assets/javascripts/helena/survey.js +2 -0
- data/app/assets/stylesheets/helena/admin/labels.css.sass +7 -0
- data/app/assets/stylesheets/helena/admin/layout.css.sass +6 -0
- data/app/assets/stylesheets/helena/admin/question_groups.css.sass +7 -0
- data/app/assets/stylesheets/helena/admin/questions.css.sass +9 -0
- data/app/assets/stylesheets/helena/admin/sessions.css.sass +5 -0
- data/app/assets/stylesheets/helena/admin/subquestions.css.sass +7 -0
- data/app/assets/stylesheets/helena/admin/versions.css.sass +9 -0
- data/app/assets/stylesheets/helena/application.css.sass +21 -0
- data/app/assets/stylesheets/helena/forms.css.sass +13 -0
- data/app/assets/stylesheets/helena/layout.css.sass +3 -0
- data/app/assets/stylesheets/helena/question_groups.css.sass +4 -0
- data/app/controllers/helena/admin/application_controller.rb +31 -0
- data/app/controllers/helena/admin/question_groups_controller.rb +78 -0
- data/app/controllers/helena/admin/questions/checkbox_groups_controller.rb +17 -0
- data/app/controllers/helena/admin/questions/checkbox_matrix_controller.rb +9 -0
- data/app/controllers/helena/admin/questions/long_texts_controller.rb +13 -0
- data/app/controllers/helena/admin/questions/radio_groups_controller.rb +17 -0
- data/app/controllers/helena/admin/questions/radio_matrix_controller.rb +9 -0
- data/app/controllers/helena/admin/questions/short_texts_controller.rb +13 -0
- data/app/controllers/helena/admin/questions/static_texts_controller.rb +13 -0
- data/app/controllers/helena/admin/questions_controller.rb +105 -0
- data/app/controllers/helena/admin/sessions_controller.rb +35 -0
- data/app/controllers/helena/admin/surveys_controller.rb +78 -0
- data/app/controllers/helena/admin/versions_controller.rb +71 -0
- data/app/controllers/helena/application_controller.rb +15 -0
- data/app/controllers/helena/concerns/questions/matrix_questions.rb +24 -0
- data/app/controllers/helena/sessions_controller.rb +93 -0
- data/app/controllers/helena/surveys_controller.rb +11 -0
- data/app/helpers/helena/application_helper.rb +4 -0
- data/app/models/helena/answer.rb +48 -0
- data/app/models/helena/boolean_answer.rb +5 -0
- data/app/models/helena/concerns/application_model.rb +19 -0
- data/app/models/helena/concerns/questions/requirable.rb +19 -0
- data/app/models/helena/concerns/questions/validates_one_label.rb +22 -0
- data/app/models/helena/integer_answer.rb +5 -0
- data/app/models/helena/label.rb +18 -0
- data/app/models/helena/question.rb +63 -0
- data/app/models/helena/question_group.rb +18 -0
- data/app/models/helena/questions/checkbox_group.rb +17 -0
- data/app/models/helena/questions/long_text.rb +9 -0
- data/app/models/helena/questions/radio_group.rb +12 -0
- data/app/models/helena/questions/radio_matrix.rb +24 -0
- data/app/models/helena/questions/short_text.rb +9 -0
- data/app/models/helena/questions/static_text.rb +7 -0
- data/app/models/helena/session.rb +76 -0
- data/app/models/helena/string_answer.rb +5 -0
- data/app/models/helena/sub_question.rb +27 -0
- data/app/models/helena/survey.rb +29 -0
- data/app/models/helena/survey_detail.rb +10 -0
- data/app/models/helena/version.rb +33 -0
- data/app/views/helena/admin/question_groups/_form.html.haml +3 -0
- data/app/views/helena/admin/question_groups/edit.html.haml +3 -0
- data/app/views/helena/admin/question_groups/index.html.haml +41 -0
- data/app/views/helena/admin/question_groups/new.html.haml +3 -0
- data/app/views/helena/admin/questions/_form.html.haml +15 -0
- data/app/views/helena/admin/questions/_labels.html.haml +24 -0
- data/app/views/helena/admin/questions/_sub_questions.html.haml +32 -0
- data/app/views/helena/admin/questions/edit.html.haml +3 -0
- data/app/views/helena/admin/questions/index.html.haml +49 -0
- data/app/views/helena/admin/questions/new.html.haml +3 -0
- data/app/views/helena/admin/sessions/index.html.haml +46 -0
- data/app/views/helena/admin/surveys/_form.html.haml +10 -0
- data/app/views/helena/admin/surveys/edit.html.haml +5 -0
- data/app/views/helena/admin/surveys/index.html.haml +35 -0
- data/app/views/helena/admin/surveys/new.html.haml +3 -0
- data/app/views/helena/admin/versions/_form.html.haml +5 -0
- data/app/views/helena/admin/versions/default_session_report.html.haml +17 -0
- data/app/views/helena/admin/versions/edit.html.haml +3 -0
- data/app/views/helena/admin/versions/index.html.haml +35 -0
- data/app/views/helena/admin/versions/new.html.haml +3 -0
- data/app/views/helena/questions/_checkbox_group.html.haml +17 -0
- data/app/views/helena/questions/_long_text.html.haml +8 -0
- data/app/views/helena/questions/_radio_group.html.haml +13 -0
- data/app/views/helena/questions/_radio_matrix.html.haml +27 -0
- data/app/views/helena/questions/_short_text.html.haml +8 -0
- data/app/views/helena/sessions/edit.html.haml +16 -0
- data/app/views/helena/sessions/end_message.html.haml +5 -0
- data/app/views/helena/surveys/_survey.html.haml +3 -0
- data/app/views/helena/surveys/index.html.haml +2 -0
- data/bin/rails +8 -0
- data/config/i18n-tasks.yml +3 -0
- data/config/initializers/simple_form.rb +162 -0
- data/config/initializers/simple_form_bootstrap.rb +132 -0
- data/config/locales/en.yml +20 -0
- data/config/locales/models/label/en.yml +14 -0
- data/config/locales/models/question/en.yml +47 -0
- data/config/locales/models/question_group/en.yml +11 -0
- data/config/locales/models/session/en.yml +10 -0
- data/config/locales/models/sub_question/en.yml +14 -0
- data/config/locales/models/survey/en.yml +6 -0
- data/config/locales/models/version/en.yml +12 -0
- data/config/locales/simple_form.en.yml +26 -0
- data/config/locales/views/admin/question_groups/en.yml +12 -0
- data/config/locales/views/admin/questions/en.yml +16 -0
- data/config/locales/views/admin/sessions/en.yml +11 -0
- data/config/locales/views/admin/surveys/en.yml +10 -0
- data/config/locales/views/admin/versions/en.yml +8 -0
- data/config/locales/views/sessions/en.yml +9 -0
- data/config/routes.rb +28 -0
- data/db/seeds.rb +182 -0
- data/gpl-3.0.txt +674 -0
- data/helena.gemspec +40 -0
- data/lib/helena/engine.rb +6 -0
- data/lib/helena/version.rb +3 -0
- data/lib/helena/version_publisher.rb +16 -0
- data/lib/helena.rb +10 -0
- data/lib/tasks/helena_tasks.rake +4 -0
- data/lib/templates/erb/scaffold/_form.html.erb +13 -0
- data/spec/controllers/helena/admin/question_group_controller_spec.rb +59 -0
- data/spec/controllers/helena/admin/questions_controller_spec.rb +60 -0
- data/spec/controllers/helena/admin/sessions_controller_spec.rb +84 -0
- data/spec/controllers/helena/admin/survey_controller_spec.rb +89 -0
- data/spec/controllers/helena/admin/versions_controller_spec.rb +19 -0
- data/spec/controllers/helena/application_controller_spec.rb +15 -0
- data/spec/controllers/helena/sessions_controller_spec.rb +24 -0
- data/spec/dummy/README.rdoc +28 -0
- data/spec/dummy/Rakefile +6 -0
- data/spec/dummy/app/assets/images/.keep +0 -0
- data/spec/dummy/app/assets/javascripts/application.js +13 -0
- data/spec/dummy/app/controllers/application_controller.rb +9 -0
- data/spec/dummy/app/controllers/concerns/.keep +0 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/mailers/.keep +0 -0
- data/spec/dummy/app/models/.keep +0 -0
- data/spec/dummy/app/models/concerns/.keep +0 -0
- data/spec/dummy/app/views/layouts/application.html.haml +24 -0
- data/spec/dummy/bin/bundle +3 -0
- data/spec/dummy/bin/rails +4 -0
- data/spec/dummy/bin/rake +4 -0
- data/spec/dummy/config/application.rb +27 -0
- data/spec/dummy/config/boot.rb +5 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +29 -0
- data/spec/dummy/config/environments/production.rb +80 -0
- data/spec/dummy/config/environments/test.rb +36 -0
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec/dummy/config/initializers/secret_token.rb +12 -0
- data/spec/dummy/config/initializers/session_store.rb +3 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/spec/dummy/config/locales/en.yml +23 -0
- data/spec/dummy/config/mongoid.yml +14 -0
- data/spec/dummy/config/routes.rb +4 -0
- data/spec/dummy/config.ru +4 -0
- data/spec/dummy/db/seeds.rb +1 -0
- data/spec/dummy/lib/assets/.keep +0 -0
- data/spec/dummy/log/.keep +0 -0
- data/spec/dummy/public/404.html +58 -0
- data/spec/dummy/public/422.html +58 -0
- data/spec/dummy/public/500.html +57 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/factories/helena/answers.rb +24 -0
- data/spec/factories/helena/labels.rb +7 -0
- data/spec/factories/helena/question_groups.rb +6 -0
- data/spec/factories/helena/questions.rb +14 -0
- data/spec/factories/helena/sessions.rb +9 -0
- data/spec/factories/helena/sub_questions.rb +7 -0
- data/spec/factories/helena/survey_details.rb +6 -0
- data/spec/factories/helena/surveys.rb +7 -0
- data/spec/factories/helena/versions.rb +11 -0
- data/spec/features/helena/admin/manage_question_group_spec.rb +101 -0
- data/spec/features/helena/admin/manage_question_spec.rb +105 -0
- data/spec/features/helena/admin/manage_session_spec.rb +40 -0
- data/spec/features/helena/admin/manage_survey_spec.rb +141 -0
- data/spec/features/helena/admin/manage_version_spec.rb +74 -0
- data/spec/features/helena/admin/question_types/manage_checkbox_group_question_spec.rb +55 -0
- data/spec/features/helena/admin/question_types/manage_long_text_question_spec.rb +21 -0
- data/spec/features/helena/admin/question_types/manage_radio_group_question_spec.rb +59 -0
- data/spec/features/helena/admin/question_types/manage_radio_matrix_question_spec.rb +80 -0
- data/spec/features/helena/admin/question_types/manage_short_text_question_spec.rb +19 -0
- data/spec/features/helena/admin/question_types/manage_static_text_question_spec.rb +17 -0
- data/spec/features/helena/manage_session_spec.rb +284 -0
- data/spec/features/helena/manage_survey_spec.rb +24 -0
- data/spec/lib/version_publisher_spec.rb +26 -0
- data/spec/models/helena/answer_spec.rb +53 -0
- data/spec/models/helena/label_spec.rb +13 -0
- data/spec/models/helena/question_group_spec.rb +11 -0
- data/spec/models/helena/question_spec.rb +21 -0
- data/spec/models/helena/questions/radio_group_spec.rb +32 -0
- data/spec/models/helena/questions/radio_matrix_spec.rb +32 -0
- data/spec/models/helena/questions/short_text_spec.rb +10 -0
- data/spec/models/helena/session_spec.rb +20 -0
- data/spec/models/helena/sub_question_spec.rb +28 -0
- data/spec/models/helena/survey_spec.rb +14 -0
- data/spec/models/helena/version_spec.rb +15 -0
- data/spec/spec_helper.rb +43 -0
- metadata +485 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: b437c38708db1df2a9450e6f5903a50d45ab176e
|
|
4
|
+
data.tar.gz: 7a585918bb337d3af73d2ec6cefe580880e2b994
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 307348d59085becee14ac75a03707bf3c6b00d3a52b39ca33c6fe4b593bc08a975af0a365fbe95b2c6cdd65db4f63e01561c96ae7f572b2d11e21de9b25fd7ca
|
|
7
|
+
data.tar.gz: 9528c955ea867ab92e369d8d80e480ec9ced8862cc6cde8b35b8f6dca47d64ebc242beb652cde0b8052f917740d14592446c77bf6b43150f17e80ce0c844a5e0
|
data/.coveralls.yml
ADDED
data/.gitignore
ADDED
data/.rubocop.yml
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
AllCops:
|
|
2
|
+
Include:
|
|
3
|
+
- '**/Rakefile'
|
|
4
|
+
- '**/config.ru'
|
|
5
|
+
Exclude:
|
|
6
|
+
- bin/**
|
|
7
|
+
- spec/dummy/db/schema.rb
|
|
8
|
+
- spec/dummy/config/initializers/secret_token.rb
|
|
9
|
+
- db/migrate/**
|
|
10
|
+
- db/seeds.rb
|
|
11
|
+
Documentation:
|
|
12
|
+
Enabled: false
|
|
13
|
+
LineLength:
|
|
14
|
+
Enabled: true
|
|
15
|
+
Max: 160
|
|
16
|
+
|
data/.travis.yml
ADDED
data/Gemfile
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
source "https://rubygems.org"
|
|
2
|
+
|
|
3
|
+
# Declare your gem's dependencies in helena.gemspec.
|
|
4
|
+
# Bundler will treat runtime dependencies like base dependencies, and
|
|
5
|
+
# development dependencies will be added by default to the :development group.
|
|
6
|
+
gemspec
|
|
7
|
+
|
|
8
|
+
# Declare any dependencies that are still in development here instead of in
|
|
9
|
+
# your gemspec. These might include edge Rails or gems from your path or
|
|
10
|
+
# Git. Remember to move these dependencies to your gemspec before releasing
|
|
11
|
+
# your gem to rubygems.org.
|
|
12
|
+
|
|
13
|
+
# To use debugger
|
|
14
|
+
group :development, :test do
|
|
15
|
+
gem 'pry'
|
|
16
|
+
gem 'pry-byebug'
|
|
17
|
+
gem 'ruby-progressbar'
|
|
18
|
+
gem 'mongoid-rspec', github: 'gurix/mongoid-rspec' # TODO: replace when https://github.com/mongoid-rspec/mongoid-rspec/pull/128 is merged
|
|
19
|
+
gem 'colorize'
|
|
20
|
+
gem 'quiet_assets'
|
|
21
|
+
gem 'better_errors'
|
|
22
|
+
gem 'launchy'
|
|
23
|
+
gem 'binding_of_caller'
|
|
24
|
+
gem 'selenium-webdriver'
|
|
25
|
+
gem 'i18n-tasks'
|
|
26
|
+
gem 'simple_form'
|
|
27
|
+
gem 'jquery-rails'
|
|
28
|
+
gem 'bootstrap-sass'
|
|
29
|
+
gem 'breadcrumbs_on_rails'
|
|
30
|
+
gem 'coveralls', require: false
|
|
31
|
+
end
|
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
GIT
|
|
2
|
+
remote: git://github.com/gurix/mongoid-rspec.git
|
|
3
|
+
revision: d73b0e544f500a18444190193f942687a54e8e87
|
|
4
|
+
specs:
|
|
5
|
+
mongoid-rspec (2.0.0)
|
|
6
|
+
mongoid (~> 4.0.0)
|
|
7
|
+
rake
|
|
8
|
+
rspec (>= 2.14)
|
|
9
|
+
|
|
10
|
+
PATH
|
|
11
|
+
remote: .
|
|
12
|
+
specs:
|
|
13
|
+
helena (0.3.3)
|
|
14
|
+
bootstrap-sass (~> 3.2)
|
|
15
|
+
breadcrumbs_on_rails (~> 2.3)
|
|
16
|
+
haml-rails (~> 0.5)
|
|
17
|
+
jquery-rails (~> 3.1)
|
|
18
|
+
mongoid (~> 4.0.0.rc2)
|
|
19
|
+
mongoid-simple-tags (~> 0.1)
|
|
20
|
+
mongoid_orderable (~> 4.1)
|
|
21
|
+
rails (~> 4.1)
|
|
22
|
+
rails-i18n (~> 4.0)
|
|
23
|
+
sass-rails (~> 4.0.3)
|
|
24
|
+
simple_form (~> 3.1.0.rc2)
|
|
25
|
+
|
|
26
|
+
GEM
|
|
27
|
+
remote: https://rubygems.org/
|
|
28
|
+
specs:
|
|
29
|
+
actionmailer (4.1.5)
|
|
30
|
+
actionpack (= 4.1.5)
|
|
31
|
+
actionview (= 4.1.5)
|
|
32
|
+
mail (~> 2.5.4)
|
|
33
|
+
actionpack (4.1.5)
|
|
34
|
+
actionview (= 4.1.5)
|
|
35
|
+
activesupport (= 4.1.5)
|
|
36
|
+
rack (~> 1.5.2)
|
|
37
|
+
rack-test (~> 0.6.2)
|
|
38
|
+
actionview (4.1.5)
|
|
39
|
+
activesupport (= 4.1.5)
|
|
40
|
+
builder (~> 3.1)
|
|
41
|
+
erubis (~> 2.7.0)
|
|
42
|
+
activemodel (4.1.5)
|
|
43
|
+
activesupport (= 4.1.5)
|
|
44
|
+
builder (~> 3.1)
|
|
45
|
+
activerecord (4.1.5)
|
|
46
|
+
activemodel (= 4.1.5)
|
|
47
|
+
activesupport (= 4.1.5)
|
|
48
|
+
arel (~> 5.0.0)
|
|
49
|
+
activesupport (4.1.5)
|
|
50
|
+
i18n (~> 0.6, >= 0.6.9)
|
|
51
|
+
json (~> 1.7, >= 1.7.7)
|
|
52
|
+
minitest (~> 5.1)
|
|
53
|
+
thread_safe (~> 0.1)
|
|
54
|
+
tzinfo (~> 1.1)
|
|
55
|
+
addressable (2.3.6)
|
|
56
|
+
arel (5.0.1.20140414130214)
|
|
57
|
+
better_errors (2.0.0)
|
|
58
|
+
coderay (>= 1.0.0)
|
|
59
|
+
erubis (>= 2.6.6)
|
|
60
|
+
rack (>= 0.9.0)
|
|
61
|
+
binding_of_caller (0.7.2)
|
|
62
|
+
debug_inspector (>= 0.0.1)
|
|
63
|
+
bootstrap-sass (3.2.0.1)
|
|
64
|
+
sass (~> 3.2)
|
|
65
|
+
breadcrumbs_on_rails (2.3.0)
|
|
66
|
+
bson (2.3.0)
|
|
67
|
+
builder (3.2.2)
|
|
68
|
+
byebug (3.4.0)
|
|
69
|
+
columnize (~> 0.8)
|
|
70
|
+
debugger-linecache (~> 1.2)
|
|
71
|
+
slop (~> 3.6)
|
|
72
|
+
capybara (2.4.1)
|
|
73
|
+
mime-types (>= 1.16)
|
|
74
|
+
nokogiri (>= 1.3.3)
|
|
75
|
+
rack (>= 1.0.0)
|
|
76
|
+
rack-test (>= 0.5.4)
|
|
77
|
+
xpath (~> 2.0)
|
|
78
|
+
childprocess (0.5.3)
|
|
79
|
+
ffi (~> 1.0, >= 1.0.11)
|
|
80
|
+
coderay (1.1.0)
|
|
81
|
+
colorize (0.7.3)
|
|
82
|
+
columnize (0.8.9)
|
|
83
|
+
connection_pool (2.0.0)
|
|
84
|
+
coveralls (0.7.1)
|
|
85
|
+
multi_json (~> 1.3)
|
|
86
|
+
rest-client
|
|
87
|
+
simplecov (>= 0.7)
|
|
88
|
+
term-ansicolor
|
|
89
|
+
thor
|
|
90
|
+
database_cleaner (1.3.0)
|
|
91
|
+
debug_inspector (0.0.2)
|
|
92
|
+
debugger-linecache (1.2.0)
|
|
93
|
+
diff-lcs (1.2.5)
|
|
94
|
+
docile (1.1.5)
|
|
95
|
+
easy_translate (0.5.0)
|
|
96
|
+
json
|
|
97
|
+
thread
|
|
98
|
+
thread_safe
|
|
99
|
+
erubis (2.7.0)
|
|
100
|
+
factory_girl (4.4.0)
|
|
101
|
+
activesupport (>= 3.0.0)
|
|
102
|
+
factory_girl_rails (4.4.1)
|
|
103
|
+
factory_girl (~> 4.4.0)
|
|
104
|
+
railties (>= 3.0.0)
|
|
105
|
+
ffaker (1.25.0)
|
|
106
|
+
ffi (1.9.3)
|
|
107
|
+
haml (4.0.5)
|
|
108
|
+
tilt
|
|
109
|
+
haml-rails (0.5.3)
|
|
110
|
+
actionpack (>= 4.0.1)
|
|
111
|
+
activesupport (>= 4.0.1)
|
|
112
|
+
haml (>= 3.1, < 5.0)
|
|
113
|
+
railties (>= 4.0.1)
|
|
114
|
+
highline (1.6.21)
|
|
115
|
+
hike (1.2.3)
|
|
116
|
+
i18n (0.6.11)
|
|
117
|
+
i18n-tasks (0.7.4)
|
|
118
|
+
activesupport
|
|
119
|
+
easy_translate (>= 0.5.0)
|
|
120
|
+
erubis
|
|
121
|
+
highline
|
|
122
|
+
i18n
|
|
123
|
+
slop (>= 3.5.0)
|
|
124
|
+
term-ansicolor
|
|
125
|
+
terminal-table
|
|
126
|
+
jquery-rails (3.1.2)
|
|
127
|
+
railties (>= 3.0, < 5.0)
|
|
128
|
+
thor (>= 0.14, < 2.0)
|
|
129
|
+
json (1.8.1)
|
|
130
|
+
launchy (2.4.2)
|
|
131
|
+
addressable (~> 2.3)
|
|
132
|
+
mail (2.5.4)
|
|
133
|
+
mime-types (~> 1.16)
|
|
134
|
+
treetop (~> 1.4.8)
|
|
135
|
+
method_source (0.8.2)
|
|
136
|
+
mime-types (1.25.1)
|
|
137
|
+
mini_portile (0.6.0)
|
|
138
|
+
minitest (5.4.1)
|
|
139
|
+
mongoid (4.0.0)
|
|
140
|
+
activemodel (~> 4.0)
|
|
141
|
+
moped (~> 2.0.0)
|
|
142
|
+
origin (~> 2.1)
|
|
143
|
+
tzinfo (>= 0.3.37)
|
|
144
|
+
mongoid-simple-tags (0.1.3)
|
|
145
|
+
json (~> 1.8)
|
|
146
|
+
mongoid (>= 3.0.3)
|
|
147
|
+
mongoid_orderable (4.1.0)
|
|
148
|
+
mongoid
|
|
149
|
+
moped (2.0.0)
|
|
150
|
+
bson (~> 2.2)
|
|
151
|
+
connection_pool (~> 2.0)
|
|
152
|
+
optionable (~> 0.2.0)
|
|
153
|
+
multi_json (1.10.1)
|
|
154
|
+
netrc (0.7.7)
|
|
155
|
+
nokogiri (1.6.3.1)
|
|
156
|
+
mini_portile (= 0.6.0)
|
|
157
|
+
optionable (0.2.0)
|
|
158
|
+
origin (2.1.1)
|
|
159
|
+
polyglot (0.3.5)
|
|
160
|
+
pry (0.10.1)
|
|
161
|
+
coderay (~> 1.1.0)
|
|
162
|
+
method_source (~> 0.8.1)
|
|
163
|
+
slop (~> 3.4)
|
|
164
|
+
pry-byebug (2.0.0)
|
|
165
|
+
byebug (~> 3.4)
|
|
166
|
+
pry (~> 0.10)
|
|
167
|
+
quiet_assets (1.0.3)
|
|
168
|
+
railties (>= 3.1, < 5.0)
|
|
169
|
+
rack (1.5.2)
|
|
170
|
+
rack-test (0.6.2)
|
|
171
|
+
rack (>= 1.0)
|
|
172
|
+
rails (4.1.5)
|
|
173
|
+
actionmailer (= 4.1.5)
|
|
174
|
+
actionpack (= 4.1.5)
|
|
175
|
+
actionview (= 4.1.5)
|
|
176
|
+
activemodel (= 4.1.5)
|
|
177
|
+
activerecord (= 4.1.5)
|
|
178
|
+
activesupport (= 4.1.5)
|
|
179
|
+
bundler (>= 1.3.0, < 2.0)
|
|
180
|
+
railties (= 4.1.5)
|
|
181
|
+
sprockets-rails (~> 2.0)
|
|
182
|
+
rails-i18n (4.0.2)
|
|
183
|
+
i18n (~> 0.6)
|
|
184
|
+
rails (>= 4.0)
|
|
185
|
+
railties (4.1.5)
|
|
186
|
+
actionpack (= 4.1.5)
|
|
187
|
+
activesupport (= 4.1.5)
|
|
188
|
+
rake (>= 0.8.7)
|
|
189
|
+
thor (>= 0.18.1, < 2.0)
|
|
190
|
+
rake (10.3.2)
|
|
191
|
+
rest-client (1.7.2)
|
|
192
|
+
mime-types (>= 1.16, < 3.0)
|
|
193
|
+
netrc (~> 0.7)
|
|
194
|
+
rspec (3.0.0)
|
|
195
|
+
rspec-core (~> 3.0.0)
|
|
196
|
+
rspec-expectations (~> 3.0.0)
|
|
197
|
+
rspec-mocks (~> 3.0.0)
|
|
198
|
+
rspec-collection_matchers (1.0.0)
|
|
199
|
+
rspec-expectations (>= 2.99.0.beta1)
|
|
200
|
+
rspec-core (3.0.4)
|
|
201
|
+
rspec-support (~> 3.0.0)
|
|
202
|
+
rspec-expectations (3.0.4)
|
|
203
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
204
|
+
rspec-support (~> 3.0.0)
|
|
205
|
+
rspec-mocks (3.0.4)
|
|
206
|
+
rspec-support (~> 3.0.0)
|
|
207
|
+
rspec-rails (3.0.2)
|
|
208
|
+
actionpack (>= 3.0)
|
|
209
|
+
activesupport (>= 3.0)
|
|
210
|
+
railties (>= 3.0)
|
|
211
|
+
rspec-core (~> 3.0.0)
|
|
212
|
+
rspec-expectations (~> 3.0.0)
|
|
213
|
+
rspec-mocks (~> 3.0.0)
|
|
214
|
+
rspec-support (~> 3.0.0)
|
|
215
|
+
rspec-support (3.0.4)
|
|
216
|
+
ruby-progressbar (1.5.1)
|
|
217
|
+
rubyzip (1.1.6)
|
|
218
|
+
sass (3.2.19)
|
|
219
|
+
sass-rails (4.0.3)
|
|
220
|
+
railties (>= 4.0.0, < 5.0)
|
|
221
|
+
sass (~> 3.2.0)
|
|
222
|
+
sprockets (~> 2.8, <= 2.11.0)
|
|
223
|
+
sprockets-rails (~> 2.0)
|
|
224
|
+
selenium-webdriver (2.42.0)
|
|
225
|
+
childprocess (>= 0.5.0)
|
|
226
|
+
multi_json (~> 1.0)
|
|
227
|
+
rubyzip (~> 1.0)
|
|
228
|
+
websocket (~> 1.0.4)
|
|
229
|
+
simple_form (3.1.0.rc2)
|
|
230
|
+
actionpack (~> 4.0)
|
|
231
|
+
activemodel (~> 4.0)
|
|
232
|
+
simplecov (0.9.0)
|
|
233
|
+
docile (~> 1.1.0)
|
|
234
|
+
multi_json
|
|
235
|
+
simplecov-html (~> 0.8.0)
|
|
236
|
+
simplecov-html (0.8.0)
|
|
237
|
+
slop (3.6.0)
|
|
238
|
+
sprockets (2.11.0)
|
|
239
|
+
hike (~> 1.2)
|
|
240
|
+
multi_json (~> 1.0)
|
|
241
|
+
rack (~> 1.0)
|
|
242
|
+
tilt (~> 1.1, != 1.3.0)
|
|
243
|
+
sprockets-rails (2.1.3)
|
|
244
|
+
actionpack (>= 3.0)
|
|
245
|
+
activesupport (>= 3.0)
|
|
246
|
+
sprockets (~> 2.8)
|
|
247
|
+
term-ansicolor (1.3.0)
|
|
248
|
+
tins (~> 1.0)
|
|
249
|
+
terminal-table (1.4.5)
|
|
250
|
+
thor (0.19.1)
|
|
251
|
+
thread (0.1.4)
|
|
252
|
+
thread_safe (0.3.4)
|
|
253
|
+
tilt (1.4.1)
|
|
254
|
+
tins (1.3.2)
|
|
255
|
+
treetop (1.4.15)
|
|
256
|
+
polyglot
|
|
257
|
+
polyglot (>= 0.3.1)
|
|
258
|
+
tzinfo (1.2.2)
|
|
259
|
+
thread_safe (~> 0.1)
|
|
260
|
+
websocket (1.0.7)
|
|
261
|
+
xpath (2.0.0)
|
|
262
|
+
nokogiri (~> 1.3)
|
|
263
|
+
|
|
264
|
+
PLATFORMS
|
|
265
|
+
ruby
|
|
266
|
+
|
|
267
|
+
DEPENDENCIES
|
|
268
|
+
better_errors
|
|
269
|
+
binding_of_caller
|
|
270
|
+
bootstrap-sass
|
|
271
|
+
breadcrumbs_on_rails
|
|
272
|
+
capybara (~> 2.3)
|
|
273
|
+
colorize
|
|
274
|
+
coveralls
|
|
275
|
+
database_cleaner (~> 1.3)
|
|
276
|
+
factory_girl_rails (~> 4.4)
|
|
277
|
+
ffaker (~> 1.23)
|
|
278
|
+
helena!
|
|
279
|
+
i18n-tasks
|
|
280
|
+
jquery-rails
|
|
281
|
+
launchy
|
|
282
|
+
mongoid-rspec!
|
|
283
|
+
pry
|
|
284
|
+
pry-byebug
|
|
285
|
+
quiet_assets
|
|
286
|
+
rspec-collection_matchers (~> 1)
|
|
287
|
+
rspec-rails (~> 3)
|
|
288
|
+
ruby-progressbar
|
|
289
|
+
selenium-webdriver
|
|
290
|
+
simple_form
|
data/LICENSE
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
Helena is an online survey/test framework designed for agile
|
|
2
|
+
survey/test development, longitudinal studies and instant feedback.
|
|
3
|
+
Copyright (C) 2014 Markus Graf <info@markusgraf.ch>
|
|
4
|
+
|
|
5
|
+
This program is free software: you can redistribute it and/or modify
|
|
6
|
+
it under the terms of the GNU General Public License as published by
|
|
7
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
8
|
+
(at your option) any later version.
|
|
9
|
+
|
|
10
|
+
This program is distributed in the hope that it will be useful,
|
|
11
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
GNU General Public License for more details.
|
|
14
|
+
|
|
15
|
+
You should have received a copy of the GNU General Public License
|
|
16
|
+
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
data/README.md
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
[](https://travis-ci.org/gurix/helena)
|
|
2
|
+
[](https://codeclimate.com/github/gurix/helena)
|
|
3
|
+
[](https://gemnasium.com/gurix/helena)
|
|
4
|
+
# Helena
|
|
5
|
+
Helena is an online survey/test framework designed for agile survey/test development, longitudinal studies and instant feedback.
|
|
6
|
+
|
|
7
|
+

|
|
8
|
+
|
|
9
|
+
Demo: http://helena-demo.herokuapp.com (https://github.com/gurix/helena-demo)
|
|
10
|
+
## Requirements
|
|
11
|
+
* Rails (4.1 or higher)
|
|
12
|
+
* Mongoid (4.0.0 or higher)
|
|
13
|
+
* MongoDB 2.4.10 (2.6 does not work atm because of an intolerance with mongoid https://github.com/mongoid/mongoid/issues/3611)
|
|
14
|
+
|
|
15
|
+
## Installation
|
|
16
|
+
Add this line to your application's Gemfile:
|
|
17
|
+
|
|
18
|
+
gem 'helena'
|
|
19
|
+
|
|
20
|
+
And then execute:
|
|
21
|
+
|
|
22
|
+
$ bundle install
|
|
23
|
+
|
|
24
|
+
## Usage
|
|
25
|
+
|
|
26
|
+
Add this line to your routes will and you will be good to go!
|
|
27
|
+
|
|
28
|
+
mount Helena::Engine => '/helena'
|
|
29
|
+
|
|
30
|
+
All helena controllers inherit from your `ApplicationController`. So define the `can_administer?` method in your `ApplicationController`. `can_administer?` determines whether current user can create/update survey questions.
|
|
31
|
+
|
|
32
|
+
Typical implementation would be:
|
|
33
|
+
|
|
34
|
+
```ruby
|
|
35
|
+
class ApplicationController < ActionController::Base
|
|
36
|
+
def current_user
|
|
37
|
+
@current_user ||= User.find(session[:user_id])
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def can_administer?
|
|
41
|
+
current_user.try(:admin?)
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## TODOS
|
|
47
|
+
* Support more question types, i.e Dates, Numeric inputs with validation, emails, ...
|
|
48
|
+
* Customize question type views for each survey
|
|
49
|
+
* Better admininterface with much better usability
|
|
50
|
+
|
|
51
|
+
## Dummy site for development
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
rake -f spec/dummy/Rakefile db:seed
|
|
55
|
+
cd spec/dummy
|
|
56
|
+
rails s
|
|
57
|
+
open http://localhost:3000/helena/admin/surveys
|
|
58
|
+
```
|
|
59
|
+
## Contributing
|
|
60
|
+
|
|
61
|
+
1. Fork it
|
|
62
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
|
63
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
|
64
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
|
65
|
+
5. Create new Pull Request
|
|
66
|
+
|
|
67
|
+
## Support
|
|
68
|
+
|
|
69
|
+
If you like helena and want to support the development, I would appreciate a donation:
|
|
70
|
+
|
|
71
|
+
[](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=info%40markusgraf%2ech&lc=CH&item_name=Helena¤cy_code=CHF&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted)
|
|
72
|
+
|
|
73
|
+
## License
|
|
74
|
+
|
|
75
|
+
Helena is an online survey/test framework designed for agile
|
|
76
|
+
survey/test development, longitudinal studies and instant feedback.
|
|
77
|
+
Copyright (C) 2014 Markus Graf <info@markusgraf.ch>
|
|
78
|
+
|
|
79
|
+
This program is free software: you can redistribute it and/or modify
|
|
80
|
+
it under the terms of the GNU General Public License as published by
|
|
81
|
+
the Free Software Foundation, either version 3 of the License, or
|
|
82
|
+
(at your option) any later version.
|
|
83
|
+
|
|
84
|
+
This program is distributed in the hope that it will be useful,
|
|
85
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
86
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
87
|
+
GNU General Public License for more details.
|
|
88
|
+
|
|
89
|
+
You should have received a copy of the GNU General Public License
|
|
90
|
+
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
data/Rakefile
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
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
|
+
require 'rails/mongoid'
|
|
9
|
+
|
|
10
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
|
11
|
+
rdoc.rdoc_dir = 'rdoc'
|
|
12
|
+
rdoc.title = 'Helena'
|
|
13
|
+
rdoc.options << '--line-numbers'
|
|
14
|
+
rdoc.rdoc_files.include('README.rdoc')
|
|
15
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
APP_RAKEFILE = File.expand_path('../spec/dummy/Rakefile', __FILE__)
|
|
19
|
+
load 'rails/tasks/engine.rake'
|
|
20
|
+
|
|
21
|
+
Bundler::GemHelper.install_tasks
|
|
22
|
+
|
|
23
|
+
require 'rspec/core'
|
|
24
|
+
require 'rspec/core/rake_task'
|
|
25
|
+
|
|
26
|
+
desc 'Run all specs in spec directory (excluding plugin specs)'
|
|
27
|
+
RSpec::Core::RakeTask.new(spec: 'app:db:test:prepare')
|
|
28
|
+
|
|
29
|
+
task default: :spec
|
|
File without changes
|
|
Binary file
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
<!-- The icon can be used freely in both personal and commercial projects with no attribution required, but always appreciated.
|
|
5
|
+
You may NOT sub-license, resell, rent, redistribute or otherwise transfer the icon without express written permission from iconmonstr.com -->
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
9
|
+
|
|
10
|
+
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
11
|
+
|
|
12
|
+
width="512px" height="512px" viewBox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve">
|
|
13
|
+
|
|
14
|
+
<path id="download-11-icon" d="M461.4,244.318c0,50.852-41.371,92.221-92.221,92.221h-36.847v-40h36.847
|
|
15
|
+
|
|
16
|
+
c28.795,0,52.221-23.426,52.221-52.221c0-35.412-23.816-53.746-49.18-53.844c-1.303-58.902-40.637-84.982-78.664-84.982
|
|
17
|
+
|
|
18
|
+
c-50.308,0-70.974,38.08-76.131,52.662c-20.51-29.582-76.177-7.248-64.641,32.348C118.25,184.24,90.6,210.24,90.6,244.318
|
|
19
|
+
|
|
20
|
+
c0,28.795,23.427,52.221,53.222,52.221h50.512v40h-50.512c-51.852,0-93.222-41.369-93.222-92.221
|
|
21
|
+
|
|
22
|
+
c0-41.408,27.561-77.127,66.153-88.463c10.854-36.998,49.784-58.686,86.933-48.779c22.24-26.299,54.773-41.584,89.871-41.584
|
|
23
|
+
|
|
24
|
+
c57.115,0,105.365,40.816,115.781,95.777C440.941,176.473,461.4,208.404,461.4,244.318z M336.918,372.8h-33.84v-76.261h-79.486
|
|
25
|
+
|
|
26
|
+
V372.8h-33.84l73.582,73.708L336.918,372.8z"/>
|
|
27
|
+
|
|
28
|
+
</svg>
|
|
29
|
+
|
|
Binary file
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This is a manifest file that'll be compiled into application.css, which will include all the files
|
|
3
|
+
* listed below.
|
|
4
|
+
*
|
|
5
|
+
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
|
|
6
|
+
* or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
|
|
7
|
+
*
|
|
8
|
+
* You're free to add application-wide styles to this file and they'll appear at the top of the
|
|
9
|
+
* compiled file, but it's generally better to create a new file per style scope.
|
|
10
|
+
*
|
|
11
|
+
*= require_self
|
|
12
|
+
*= require_tree .
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
/* Needed because of http://stackoverflow.com/a/24958307/437892 */
|
|
16
|
+
@import "bootstrap-sprockets"
|
|
17
|
+
|
|
18
|
+
@import "bootstrap"
|
|
19
|
+
|
|
20
|
+
.hide-text
|
|
21
|
+
visibility: hidden
|