Update the tooltip/title for outcomes and groups when new. Fixes #11514

Testing Notes:
==========
* Create a new Outcome. Change the name of it. Before saving,
  hover to verify the name is updated in the tooltip.
* Repeat for an Outcome Group.
* Applies to edits to existing outcomes as well.

Change-Id: Ia188646e9d8a4b9b7784fabc2c8bb11afc2613f6
Reviewed-on: https://gerrit.instructure.com/15009
Reviewed-by: Joel Hough <joel@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
fix User#sis_pseudonym_for cross-shard

test plan:
 * create a pseudonym with an SIS id for a user on an account in a
   different shard
 * GET /api/v1/users/:user_id/profile for that user against the
   account's domain (easiest to just use self)
 * sis_login_id should be populated

Change-Id: Idd95b949c4180abc366071a110636d348aa24806
Reviewed-on: https://gerrit.instructure.com/14875
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
show 0 instead of NaN in ie9 for outcome ratings

fixes #11516

test plan:
- in ie9, create or edit an outcome
- create or edit a criterion and empty the points field
- hit okay, you should see "0"
- hit save, you should still see "0"

Change-Id: I630b3903c5c08fd38aa171d5ff18116173b3d0c9
Reviewed-on: https://gerrit.instructure.com/14980
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Zach Pendleton <zachp@instructure.com>
display outcome insert links in firefox. fixes #11584

test plan:
  * edit an outcome in firefox and verify that the insert
    links appear above the criterion table as expected.

Change-Id: Ib2bf3abdb038e4a138ff8058faf3eaf949ad7bdb
Reviewed-on: https://gerrit.instructure.com/14904
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mark Ericksen <marke@instructure.com>
Reviewed-by: Marc LeGendre <marc@instructure.com>
Upgrade TinyMCE, refs: #10505

this should fix a lot of things.
two highlights:
ability to resize images in the editor in chrome
don't jump the page around when you create a new rich text editor

Change-Id: I92633a8b2304d10404f780fb29bf322a08cec5a2
Reviewed-on: https://gerrit.instructure.com/14390
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
add parent_account_id and a date helper

test plan
 * provisioning report should have canvas parent account id
 * all dates should be displayed in the account's time zone

Change-Id: I895b928e0cd217606b20d114b9f14681130167f7
Reviewed-on: https://gerrit.instructure.com/14917
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
add context to assignment cache key

this is important when it's a new assignment, because all new
assignments have the same cache key

test plan: visit on course assignments page to populate the cache, then
visit a different course assignments page and create a new assignment.
without refreshing, the assignment url and other data should be correct
for that course.

Change-Id: I457f2565d2855b9aed2950976ad4a3308e360707
Reviewed-on: https://gerrit.instructure.com/15029
Reviewed-by: Zach Pendleton <zachp@instructure.com>
Reviewed-by: Stanley Stuart <stanley+gerrit@instructure.com>
Tested-by: Brian Palmer <brianp@instructure.com>
remember checked contexts in calendar2. fixes #7428

calendar2 wasn't remembering user context selections and
was instead loading them all on page refresh. selections
are now saved in localStorage.

test plan:
  * navigate to calendar2, and uncheck a context in the
    right sidebar;
  * reload the calendar and verify that the unchecked
    context is still unchecked;
  * verify that the context selector continues to work as
    expected.

Change-Id: I19e8f1fa04841664fa0d49348c3bfcb708edfcd9
Reviewed-on: https://gerrit.instructure.com/14705
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mark Ericksen <marke@instructure.com>
Reviewed-by: Marc LeGendre <marc@instructure.com>
replace calendar2 assignment due time with "due" label.

fixes #9469

previously, assignments in calendar2 were prefixed with
their due time (e.g. 11:59pm). this commit replaces the
time label with the word "due" to match calendar1.

test plan:
  * create an assignment with a due date and time;
  * load calendar2 and view the assignment;
  * verify that the assignment name is prefixed by the
    word "due" instead of its due time.

Change-Id: I69ca39f76509c12e8b2502bc832e804d49e18bbb
Reviewed-on: https://gerrit.instructure.com/14741
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Joel Hough <joel@instructure.com>
Reviewed-by: Marc LeGendre <marc@instructure.com>
fix conversation filtering for 1.9.3

Array("") is [] in 1.8.7, and the code was depending on this. in 1.9.3
Array("") is [""], which would use "" as a filter, causing no
conversations to match.

Change-Id: Ic9cd398bcc905a4e7c721aca847ed826e5137774
Reviewed-on: https://gerrit.instructure.com/15005
Reviewed-by: Jon Jensen <jon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Ethan Vizitei <ethan@12spokes.com>
course settings have a number of accessibility issues

Fixes #10627

* Adds row headings to Course Details table
* Brings focus to enrollment type after clicking 'Add Users'
* Attaches label to Add Users textarea
* Attaches label to 'can edit course wiki pages by default' on Course Details
* Remove focus from 'Reset Course Content' button and instead place it on the dialog as a whole so the warning can be read after advancing down
* Improves accessibility in 'add course users' form
 + Clears out spaces from add users textarea
 + Adds example e-mail list format to below the textarea, not within it
 + Moves example e-mail list format into label
 + Set focus to confirm button after hitting 'Continue..'
 + Makes 'Since this course hasn't been published' tabbable
 + Makes parsed list of e-mail addresses tabbable

Change-Id: I38cca3ce652508e7420c71a2f606bde01080b08a
Reviewed-on: https://gerrit.instructure.com/14511
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Clare Hetherington <clare@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
VDD: overrides API

fixes #10831

test-plan:
  - list, fetch, create, update, delete overrides through the API
  - create overrides during assignment creation through the API
  - update overrides during assignment update through the API

Change-Id: Iab899f146ff4385b0abc6a842caca6803fa4e9f1
Reviewed-on: https://gerrit.instructure.com/14260
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
course filters in accounts api; fixes #11389

test plan:
 * See the API documentation for "List active courses in an account"
 * Exercise each of the parameters and verify the correct courses
   are returned

patch set 4: added new specs that test the scopes by themselves,
 and with other scopes layered on them; also, reorganized the
 api specs into separate tests

Change-Id: Ifef0018aad9fc03b44d7542a787ecefb3cf05c5e
Reviewed-on: https://gerrit.instructure.com/14924
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Sterling Cobb <sterling@instructure.com>
fix deleting a just created event in calendar2

Because we put a dimmed event on the calendar when we save a new
event, we have to deal with the fact that the id of that event
object changes and clear out fullcalendar's cached _id value.

fixes #11594

test plan:
 - create an event in calendar2
 - delete the event you just created
 - wait a bit and make sure the deleted event disappears

Change-Id: I248feef09d4d7564241543a7c00978f58b24603b
Reviewed-on: https://gerrit.instructure.com/14955
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mark Ericksen <marke@instructure.com>
Reviewed-by: Marc LeGendre <marc@instructure.com>
fix deleting an asssignment from calendar 2

fixes #9495

test plan:
 - create an assignment
 - delete the assignment from calendar 2
 - refresh the calendar to make sure the assignment was
 actually deleted

Change-Id: I9760ddeb1f1ff44d676687c5fff456681cbe8efb
Reviewed-on: https://gerrit.instructure.com/14956
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mark Ericksen <marke@instructure.com>
Reviewed-by: Marc LeGendre <marc@instructure.com>
hide dropped columns on existing records fixes #9365

Change-Id: I95f5fbfe2346815bc115cd3045a980b8c2873012
Reviewed-on: https://gerrit.instructure.com/14964
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
spec: more generically clear cassandra tables for specs

Change-Id: I0a3619a0b5147622322522aac9380665ff007aa4
Reviewed-on: https://gerrit.instructure.com/14995
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
fix delete outcome/group action. fixes #11503

as an account admin, deleting an imported outcome or outcome
group immediately after import (i.e. before refreshing the page)
would delete the outcome or group from the account and not just
from the course.

now, the delete button inside of a course is properly scoped
to a course.

test plan:
  * as an account admin on a course outcomes page, import both
    an account-level outcome and an account-level outcome group;
  * without refreshing the page, delete both of the newly imported
    items;
  * verify that both items delete from the course successfully;
  * from the account's outcomes page, verify that both items are
    not deleted.

Change-Id: I3d017155ff9739e97320d01496cf243a08f9d677
Reviewed-on: https://gerrit.instructure.com/14968
Reviewed-by: Joel Hough <joel@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Marc LeGendre <marc@instructure.com>
dump student links when deleting an adhoc override

test-plan:
  - create a student in a course
  - create an adhoc override for an assignment in that course with the
    student as part of the override's set
  - delete the override
  - attempt to create another adhoc override for the same assignment and
    student
  - should not fail validation

Change-Id: I708ef2a219e379d12b2ddbc30cb772d0403ad84d
Reviewed-on: https://gerrit.instructure.com/15044
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
1.9 support for css compiling

running rake canvas:compile_assets was failing
due to an error during css compilation from 
sass: ("\xE2" from ASCII-8BIT to UTF-8)

by removing the sass directory out of the project
and doing a binary split (passing half the 
directory back in, then half the remainder)
I was able to determine these 2 files were
the culprits.  Adding the charset directive
seems to allow them to compile without complaint.
Also removed the encoding comment as the 
directive seems to accomplish the goal in all
tested environments so far and the comment
itself doesn't work in some environments (mine
included).

Change-Id: I5dca48d01f9f012131f46f5259c6e8a2a473a854
Reviewed-on: https://gerrit.instructure.com/15046
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>