This commit brings in canvas_quiz_statistics, a client app that can be
embedded in Canvas.
Closes CNVS-14781, CNVS-14846, CNVS-14847, CNVS-14850
> What's done
- full build integration, meaning the app runs with ?optimized_js=1:
+ JavaScript "built" source gets piped into the r.js build pipeline
like any other Canvas JS source in public/javascripts/*
+ SCSS sources get picked up by the sass-compiler like Canvas style
sources and they get compiled from the grounds-up
+ I18n: phrases are extracted properly, with default values and
options, by our i18n rake tasks
- new rake task js:build_client_apps that builds client apps and
injects them as input to the rest of the JS build process
- support for using Canvas JS packages, like d3, jQuery, and Backbone
- support for using Canvas SASS variables & helpers
- super i18n support: use raw I18n.t() calls like you are in Canvas,
with development-time interpolation, as well as super new
Handlebars-like block-style translations in React, perfect for very
long phrases (mini-articles)
> Docs and References
The code was originally developed in its own github repository. While I
won't be pushing code to that repo anymore, the Wiki will still house
the docs until we find a better place.
- Repo: https://github.com/amireh/canvas_quiz_statistics
- Development guide: http://bit.ly/1sNOhER
- Integration guide: http://bit.ly/1m9kA9V
> TESTING
- login as a teacher
- go to /courses/:course_id/quizzes/:quiz_id/statistics_cqs
+ make sure you see something that looks like the Ember stats
+ click one of those little "?" help icons, you get a dialog:
- verify the contents within the dialog are actual English text,
not code gibberish
- there's also a link at the end of that dialog, click it and
verify it takes you to an Instructure help article
- build the assets: `bundle exec rake canvas:compile_assets` then:
+ add ?optimized_js=1 to the URL and reload the page:
- verify the app still works
Change-Id: Ic474650dfb06a1c22869ed9680dd04d1ca0f651d
Reviewed-on: https://gerrit.instructure.com/39105
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Hannah Bottalla <hannah@instructure.com>
Reviewed-by: Adam Ard <aard@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>