cache 'everyone' search result in new conversations

fixes CNVS-12865

test plan
- as a teacher in new conversations, compose a new message
- select 'all in course' from the people picker drop down
- ensure that 'all in course' can be selected
- ensure that the message can be sent and is delivered to all
 users in the course

Change-Id: I6f2e0ad30ca2a09e52b4b5b764f3c21ecc0628f0
Reviewed-on: https://gerrit.instructure.com/34291
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jon Willesen <jonw@instructure.com>
QA-Review: Steven Shepherd <sshepherd@instructure.com>
Product-Review: Joel Hough <joel@instructure.com>
refactor twitter to not be a mixin

fixes: CNVS-12118

test-plan:
*twitter integration should work

Change-Id: I44a9011eb451aaa8eb196264bb4b65d1635da083
Reviewed-on: https://gerrit.instructure.com/33065
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Reviewed-by: Liz Abinante <labinante@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
move twitter to gem

fixes: CNVS-12492

test-plan:
* Test that all things Twitter related still work

Change-Id: Ib656c5bfcb2dc8490a6fa6f214b0f6dce25ad181
Reviewed-on: https://gerrit.instructure.com/33193
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Reviewed-by: Liz Abinante <labinante@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
fixed code indentation

fixes: CNVS-12683

test plan:
- code formatting only, no qa needed

Change-Id: I9e52687c886c6ca3ff2e1f92ae3c9f0733375dd1
Reviewed-on: https://gerrit.instructure.com/33869
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
fix LOLCALIZE, closes CNVS-12847

test plan:
1. run canvas w/ LOLCALIZE, e.g. LOLCALIZE=1 script/server
2. behold the lulz
3. behold the lack of javascript errors

Change-Id: Ib46d5fc267cf743b4a9ac367d75be8a3b4b1702d
Reviewed-on: https://gerrit.instructure.com/34275
Reviewed-by: Dave Donahue <ddonahue@instructure.com>
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Marc LeGendre <marc@instructure.com>
QA-Review: Marc LeGendre <marc@instructure.com>
add basic polling api

refs CNVS-12469
closes CNVS-12471,CNVS-12472,CNVS-12473
This commit adds basic CRUD API operations for polling.

Test plan
- Check the create/show/update/deletion API endpoints for both polls
and poll_choices

- Check access controls (students shouldn't be allowed to
  create/delete/update polls or poll choices, nor see the 'is_correct'
  attribute on poll_choices)

Change-Id: I05504bac9cce30382311b3beb6df826e6a30b77f
Reviewed-on: https://gerrit.instructure.com/33956
Reviewed-by: Derek DeVries <ddevries@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Josh Simpson <jsimpson@instructure.com>
i18n for will_paginate helper

fixes CNVS-11947

the will_paginate actionview helper in will_paginate 3+ uses direct
calls to the I18n.translate method. they didn't match the current
signature (english default as second argument) for our customized
I18n.translate flow. so we adjust our version to allow the (key,
options) call signature as well as (key, default, options). the default
can be specified in the options with the :default key if it's not
hard-coded into the config/locales/en.yml file.

however, will_paginate is bad at actually passing the default to
I18n.translate anyways. fortunately, it provides an en.yml for its
translations, so we just need to make sure to not automatically
view-scope its translate calls.

test-plan:
 - running rails3, having more than one page's worth of error reports,
   load /error_reports; pagination should not show code or I18n errors

Change-Id: Ib98c566f0823e016f823dbec550260eff18abf98
Reviewed-on: https://gerrit.instructure.com/33707
Reviewed-by: Jon Jensen <jon@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
admin tools audit logging fragile specs

fixes: CNVS-12870

Adds timecop around the creation of the audit log records.  This will simulate
the data more accuratly and allow the sorting to be correct in the selenium
specs.

Test Plan: Automated tests should pass.

Change-Id: I160cf84570050b1dc713dac921dc44a2eeb40409
Reviewed-on: https://gerrit.instructure.com/34307
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Nick Cloward <ncloward@instructure.com>
add integration_id for section and course post to SIS APP

fixes SIS-237

TestPlan:
 - verify course has sections && Post Grades to SIS is enabled
 - verify course has integration_id
 - verify section has integration_id
 - go to Gradebook as Teacher in course
 - select All Sections in the SectionButton
 - Click Post Grades
 - ignore all errors
 - click post grades button
 - in javascript console, the url should contain:
   - if selected 'All Sections' - /grades/course/:integration_id
   - if one section selected - /grades/section/:integration_id

Change-Id: I9ffea143784ba8bd62889d8bd9e89b16ff8dc703
Reviewed-on: https://gerrit.instructure.com/33946
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Eric Adams <eadams@instructure.com>
Reviewed-by: Duane Johnson <duane@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
check db privs when deciding how to find_in_batches

previously we relied on the symbol stored in
Shackles.environment; if the environment was :slave
we would use a cursor, otherwise a temporary table.
The problem is there could be multiple slaves (or
connections in general for which the database user
doesn't have the rights to create a temporary table).

This commit has AR ask the database if we have permission
to create temp tables and make the decision based
on that information.

Change-Id: I94e4929874c42f200cf544b71f435be211bfe33b
Reviewed-on: https://gerrit.instructure.com/34263
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Anthus Williams <awilliams@instructure.com>
QA-Review: Anthus Williams <awilliams@instructure.com>
bump ruby-saml-mod version

fixes CNVS-12871

test plan:

* regression test on saml logins
* the saml login redirect should not contain newlines encoded in the
  base64 (%0A characters)

Change-Id: I28470ce165ec1f8a90cfb22983d49d017bb72b80
Reviewed-on: https://gerrit.instructure.com/34311
Reviewed-by: Rob Orton <rob@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
pull canvas specific code out of Facebook class

fixes: CNVS-12520

test plan:
- regression test facebook functionality

Change-Id: I0016edccd3186e7d55146bf216ec2b07a369c801
Reviewed-on: https://gerrit.instructure.com/33531
Reviewed-by: Joel Hough <joel@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
moved Facebook code into gem

fixes: CNVS-12120

test plan:
- regression test facebook functionality

Change-Id: I041e726ee12f9eca8fc27ccdd049422073d1af15
Reviewed-on: https://gerrit.instructure.com/33595
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
fixed indentation

fixes: CNVS-12681

test plan:
- code formatting only, no qa needed

Change-Id: Ia209fb7d8012aa56f0904a1c9c30b129c8643a74
Reviewed-on: https://gerrit.instructure.com/33868
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
don't hard code course start_at and conclude_at times

test plan:
* should be able to set time with course start and end dates

* if setting the end date to midnight (the default if a time
is not set), confirm that a warning icon appears, explaining that
the day before the one they've set will be the last available day

fixes #CNVS-11851

Change-Id: I4403d0b9d964e49f598e0ad6b46844add4903fce
Reviewed-on: https://gerrit.instructure.com/34046
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>
Product-Review: Hilary Scharton <hilary@instructure.com>
Merge pull request #443 from redconfetti/CLC-3511-gradebook-sections-export-canvas

Updated Gradebook to CSV export to include all section names
don't require execjs until needed inside the task

test plan: rake canvas:compile_assets should still succeed

Change-Id: Id90e7cdc9e9989bc975a09fb34c944a611074aa0
Reviewed-on: https://gerrit.instructure.com/34309
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mark Severson <markse@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
QA-Review: Brian Palmer <brianp@instructure.com>
quizzes ember show page: dropdown menu

implements some dropdown menu functionality on the quiz show page.

Test plan:
  In the quizzes dropdown menu on the show page:
  - Speedgrader link should take you to speedgrader
  - Lock/Unlock the quiz should work correctly
  - Delete should work correctly

closes CNVS-11792

Change-Id: Id71672f58111784fa1c321519f777e9ca605e46c
Reviewed-on: https://gerrit.instructure.com/30464
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Stanley Stuart <stanley@instructure.com>
spec: pending specs for flickr outage

Change-Id: I09b66398483bfaa838477b570ab0019ca8950a07
Reviewed-on: https://gerrit.instructure.com/34406
Reviewed-by: Kyle Rosenbaum <kyler@instructure.com>
Product-Review: Kyle Rosenbaum <kyler@instructure.com>
QA-Review: Kyle Rosenbaum <kyler@instructure.com>
Reviewed-by: Hannah Bottalla <hannah@instructure.com>
Product-Review: Hannah Bottalla <hannah@instructure.com>
QA-Review: Hannah Bottalla <hannah@instructure.com>
Tested-by: Hannah Bottalla <hannah@instructure.com>
fix migration of wiki urls with anchors

test plan:
* import the package referenced in the ticket
* the link on the wiki front page pointing to
 "Header 3 on Index page (directly)" should work

fixes #CNVS-12812

Change-Id: I2d532442d49fd62efe3a333c215a5349b1629bc7
Reviewed-on: https://gerrit.instructure.com/34192
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clare Strong <clare@instructure.com>