By scoping the finds to the user, we can avoid a lot of grants_right
lookups and the associated db queries. This is especially helpful for
users who belong to a lot of groups or courses.
Change-Id: I31e22ecddf9456734d6c1297d776a8353e43a526
Reviewed-on: https://gerrit.instructure.com/2486
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Zach Wily <zach@instructure.com>
the link really was kind of hard to find
fixes#3227
Change-Id: Ia6ee04e944336f60cd2061ec9a44194c46511e31
Reviewed-on: https://gerrit.instructure.com/2476
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Mark Suman <marks@instructure.com>
before we were recording these values but not doing
anything about it. This commit starts scheduling
delayed_jobs to activate/conclude enrollments
in the background when dates pass.
it does not conclude/publish courses/sections
automatically, though. if we want that to be
automated based on dates then I think we should
do that in a separate commit.
fixes#3356
Change-Id: Id94356fbc5b82196dd041fdb250607a7633cee9f
Reviewed-on: https://gerrit.instructure.com/2431
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
there's was a lot of unnecessary database calls going
on, should be a little faster now.
fixes#3939
Change-Id: I9a43e0d801bc632d16248ad92b7c9ff16d1673eb
Reviewed-on: https://gerrit.instructure.com/2484
Reviewed-by: Brian Palmer <brianp@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
This was leftover from the removal of OpenObject from the quizzes.
Change-Id: I586c55133eefdc76f9c77d58d1bae3f339628264
Reviewed-on: https://gerrit.instructure.com/2450
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Whitmer <brian@instructure.com>
added wimba web conferencing support, moved dimdim config into plugin
settings, fixed a few web conferencing ui issues
Change-Id: I6b36b0e594a9f296d14cd35bec02186478bcbd13
Reviewed-on: https://gerrit.instructure.com/2343
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
The format_message call takes care of escaping HTML entities.
Change-Id: Ifb6f890903ee00c8098ee8596d4b66d18a2b9054
Reviewed-on: https://gerrit.instructure.com/2418
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Zach Wily <zach@instructure.com>
* speed grader now requires hidden student names on anonymous surveys
* quiz moderation no longer presents student names
* anonymous surveys no longer provide a list of students who have not taken
the survey
closes#3793
Change-Id: I7d48766600522b36379e8ae6d2a72486d2ce3ed7
Reviewed-on: https://gerrit.instructure.com/2407
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Whitmer <brian@instructure.com>
It's unnecessary to html unescape the subject and body anymore, as they are
already unescaped.
Change-Id: I10b13805a42c677e1309983c77f1aa62e56e8578
Reviewed-on: https://gerrit.instructure.com/2413
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
Since plaintext fields are stored raw in the database, a lot of the previous
escaping/unescaping behavior in quizzes has changed.
Change-Id: I299fa7979a30b1efa8944c6df7150b82980c47c5
Reviewed-on: https://gerrit.instructure.com/2403
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>
These issues arose from a change in the way we are storing plaintext fields in
the database. Previously they were stored html escaped, and now they're not.
Fixed areas include:
* folder names in file manager
* new course sub-account dialog
* grading rules for assignment groups
* event titles in calendar
* content locks page
* outcomes inside rubrics
* course listing while writing feedback
* copying file between contexts in file mgr
* sis import screen logs
* file upload options in wiki sidebar
Change-Id: Iab8c8deb81fdfd9062570288218db4180204a497
Reviewed-on: https://gerrit.instructure.com/2406
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Zach Wily <zach@instructure.com>
This involved some refactoring, since we were using
ActionMailer::Base.smtp_settings[:domain] for generating "From"
addresses.
Change-Id: I6cac6d48971d396a56e07314e042b63a0081a4b6
Reviewed-on: https://gerrit.instructure.com/2398
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
missed a rescue in the case where there's not currently
a valid facebook session.
fixes#3867
Change-Id: Ia524dcd93be48e7a4e57866a414096437a0632d3
Reviewed-on: https://gerrit.instructure.com/2359
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
If any individual message delivery fails, we'll reschedule it as its own
individual job.
Change-Id: I51ae5941fd001c61e6c6b708185ff12585d0a49f
Reviewed-on: https://gerrit.instructure.com/2390
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
did this because it was a waste to send it to
every single page view.
plus I hated seeing it in the firebug and web
inspector
fixes: #3874
Change-Id: I3e25cb78cddf9f8f897c81014bb07ca77ccfc361
Reviewed-on: https://gerrit.instructure.com/2363
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
it was because image_tag("blank.png") would put
a alt tag of "blank" on the image, which the screenreader
would always read.
fixes zendesk 5589
Change-Id: Ifbd200e17d40d6a5f45208f1adb6b49835ce3c5d
Reviewed-on: https://gerrit.instructure.com/2365
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
round one in moving all the yml files to the plugins system instead
Change-Id: Id255c15d14d27bce232606ece6bd00eb7e094749
Reviewed-on: https://gerrit.instructure.com/2339
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
the notification settings were poorly formatted, which
was making the start and end times get saved
incorrectly.
Change-Id: I7aae061d823a18f44e00a1e52806df1a26ed3807
Reviewed-on: https://gerrit.instructure.com/2353
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Zach Wily <zach@instructure.com>
if a teacher locks a file and tries to go to the
file details page, it says "hasn't been unlocked
yet", when really it should let them download
since they're a teacher.
fixes#3578
Change-Id: I42ea29d2803b8fa96fd50afd0adfdcf614702760
Reviewed-on: https://gerrit.instructure.com/2342
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
if they can only see 1 section (possibly the default section),
they do not get the option to change it.
they can only change sections they are allowed to see
the setting is stored in $.store.userGet and is keyed
off of the course too so it will be remembered for a
given user/course/browser combo.
if the page loads and tries to show only a section,
but that section does not have anyone in it, or they
cant see anyone in it, it will alert() reload to show
all sections.
fixes#3653
Change-Id: Ie6de238ac8e1d5367ae8ab961aaa0fcc1ca66c1e
Reviewed-on: https://gerrit.instructure.com/2324
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Whitmer <brian@instructure.com>
now one of course_id/section_id is required for enrollments, but not both
Change-Id: I4ebd19ac05988bf3eeffcb846d8bc1fafce73b40
Reviewed-on: https://gerrit.instructure.com/2316
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
Reviewed-by: Brian Whitmer <brian@instructure.com>
there's still going to be up to a 3 minute delay on alerts
showing up on a user's dashboard, since we don't touch all
the users for an account when an alert changes, but if a
user closes the alert it should go away forever like it's
supposed to now.
Change-Id: I6461836ad126c4646a496734e84c89305f873f2d
Reviewed-on: https://gerrit.instructure.com/2344
Reviewed-by: Zach Wily <zach@instructure.com>
Tested-by: Hudson <hudson@instructure.com>
Used to fail after 10 empty ajax responses. Changed to
not count it as a bad request unless it's already had
at least one good request.
fixes#3838
Change-Id: I5d41f52ca302f779507e2e93a03ebac342b97e2b
Reviewed-on: https://gerrit.instructure.com/2311
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
On the outcomes page if you clicked "show details" for an
outcome, it would always say "0 artifacts" even if there
were artifacts. The problem is it wasn't actually looking
for artifacts, it was looking for something else. Also
fixed the pageless code on the outcome details page to
correctly do an infinite scroll.
fixes#3823
Change-Id: I6e0fd06ea70e5915ee5cdef23d4851ecd6a285fc
Reviewed-on: https://gerrit.instructure.com/2318
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Jon Jensen <jon@instructure.com>
On large quizzes there were problems both while
taking and editing the quiz because of all the DOM
elements. Part of the solution was using more event
delegation, and part was rendering smaller
partials when editing quizzes with lots of questions,
and then loading the full details of only the
questions that the user wants to edit/view.
fixes#3771fixes#3817
Change-Id: I73aabe79323c1879d7fc8985d1709751271730f2
Reviewed-on: https://gerrit.instructure.com/2290
Tested-by: Hudson <hudson@instructure.com>
Reviewed-by: Brian Palmer <brianp@instructure.com>