Excluded sectionCode "TUT" from course list
Updated check if sandbox already exists to use sfu_api plugin call
Surrounded each CSV value with double quote

This should address the problem when course title contains a comma
Merge pull request #37 from ronvs/course-form-bugfixes

Course form bugfixes
Section name for tutorials was missing the Course Code.

Making section name consistent throughout to have Course Code in the section name (e.g. PHYS141 D100, PHYS141 D101).
Merge pull request #38 from ronvs/course-form-section-name

Section name for tutorials was missing the Course Code.
Fix missing Update Settings button (Profile)

An entire section in the profile view was commented out, which
inadvertently also disabled the Cancel and Update Settings buttons. This
fix re-enables those buttons.

Original commit: c7daca76f589bf6cdd925cbf92e066e7374763e0
Improve hiding of disabled features (Profile)

This prevents the password change fields from being outputted to the
browser as HTML comments.

Original commit: 4ee9fdcbcae3d17c1859b1b8eb55a4f5bddb874b
Merge pull request #39 from va7map/regressfix-profile

Fix missing Update Settings button in user profile settings page
handle assignments where user applied due_at is nil

Fixes an issue where if an assignment had an applied due date of `nil`,
User#upcoming_events would throw an exception when trying to sort a list
of events/assignments, because comparing nil against Time/TimeWithZone
objects made the sorting invalid ("Comparison of Array with Array
failed").

test plan:
  - Make a course with a student. the student shouldn't be in the
    default section for the course.
  - As a teacher, create two assignments.
  - For the first assignment, have a a section that does not have a due date
    (blank due date when editing the assignment form). Make sure the
    student is in this section that has no due date.
  - For the second assignment, create as many overrides as you like,
    ensuring that each override has a real due date.
  - View the dashboard. The right side bar should load without you
    getting any errors.
  - View the course home page (/courses/:course_id). It should load
    without any errors as well.

Change-Id: I0547ce16354ec1f735b5b16c1937853e245f790b
Reviewed-on: https://gerrit.instructure.com/18482
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Amber Taniuchi <amber@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
css and js fixes for the no-logged-in-user case
Merge pull request #40 from grahamb/fix-css

css and js fixes for the no-logged-in-user case
move sfu.js into the js folder
Merge remote-tracking branch 'origin/sfu-develop' into sfu-develop
CANVAS-171 create Canvas reports

provides a sfu_stats vendor plugin to provide stats for interested parties at /sfu/stats/

initial commit

force authentication

add restricted stats route, view and controller method

Signed-off-by: Graham Ballantyne <grahamb@sfu.ca>

rename foo template to restricted

Signed-off-by: Graham Ballantyne <grahamb@sfu.ca>

add list of courses

Rudimentary – hardcoded for term 1131. Baby steps.

Signed-off-by: Graham Ballantyne <grahamb@sfu.ca>

add body classes, css, js

make everything require login

get rid of time call

try to add a js bundle

spell coffeescripts correctly, you dolt

fix path to plugin

spaces matter, because it's fn' coffeescript :/

require jquery in the bundle

create a jquery_datatable bundle

remove jq_datatable from the coursetable bundle

add coursetable.js file

move courses table to a partial

include the jquery_datatable bundle

add jshint options because instructure's .jshintrc is monkeyballs dumb

fix indentation

export courseTable to the global context

move the jq_datatable and coursetable bundles to the courses partial

fix onload filter triggering

add more init options

add labels and check webct and credit-only boxes onload

add datatable images

add plugin css

fix js bundle

playing around with enrollment_counts

include js and css bundles in view

rejigger view table layout

add initial quick and dirty stylesheet

add a select box to the courses table view

clearfix all the things

change borders so that they're both on sfu_stats_main

add the sfustats stylesheet to assets.yml

add the sfustats css bundle to the view

change the DOM for the table on init

add handler for our own search/filter field

refine filter widget

add sfustats.scss file

remove datatables demo css

change table row colours

remove sorting styles

removed unused favico

desaturate table sort icons

fix indents and whitespace

turn filter into a modular widget

wigitize the css

add font files

add icon fonts to css

add icon to widget

change IDs to be consistent

change widget background color

pointerize the cursor for widget header

use sass variable for widget border radius

add widget header click handler

clearfix all the things

fix padding for collapsed widgets

Signed-off-by: Graham Ballantyne <grahamb@sfu.ca>

ugh jshint

Signed-off-by: Graham Ballantyne <grahamb@sfu.ca>

add jquery.cookie to the js bundle

Signed-off-by: Graham Ballantyne <grahamb@sfu.ca>

move widgets into their own partial

Signed-off-by: Graham Ballantyne <grahamb@sfu.ca>

fix routing for course route

add method to get current term

fix responders for json and html

add courses_for_term method

get active terms

get courses for current term in index method

move table to partial

use helper to build selects in filter widget

minor widget css fix, comments

add reloadAjax plugin to datatables

Just threw it in the main dataTable file because I didn't want to spend two days figuring out how to get requirejs to load it in the right order.

add progress spinner to table sDOM

use bProcessing

override sZeroRecords string

move table options to own object variable

load data via ajax on init

override fnServerData to use canvas' $.ajaxJSON

use tableOptions in init call

abstract out widget collapsed class

add term select handler

remove sfustats global

reformat html responder

customize json responder

DataTable expects data in a certain format - this customizes the JSON sent back so that it conforms.

remove jquery.cookie

comment-out graphs and quickstats headers for now

filter out deleted courses

remap workflow_state values

use new workflow_state values for filter checkboxes
Merge pull request #41 from grahamb/canvas-171-stats

CANVAS-171 create Canvas reports
fix workflow status filters to check starting from beginning of string
Merge pull request #42 from grahamb/canvas-171-stats

fix workflow status filters to check starting from beginning of string