canvas-lms/lib
Adrian Packel 29d09dd441 limit user ids to students visible to user
If a user is only allowed to view students in their own section,
omit student IDs for other sections instead of returning them, so
that they don't show up later on as blank rows in Gradebook.

Fixes GRADE-713

Test plan:
- Create multiple sections in a course
- Enroll at least 2 students in different section than the teacher
- Restrict a teacher to only see students in their section
- Enable New Gradebook for the course
- As the teacher, view the Gradebook
- You should see only rows for the students in the teacher's section.
- You should not see any blank rows if other sections are selected.
- Test that a teacher signed up for multiple sections can only see those
  sections.
- Test that inactive/concluded students appear if the appropriate
  checkboxes are set.

Change-Id: Ie4cf32b13933416fd8b3b386f366a36ad778584d
Reviewed-on: https://gerrit.instructure.com/137455
Tested-by: Jenkins
Reviewed-by: Spencer Olson <solson@instructure.com>
Reviewed-by: Jeremy Neander <jneander@instructure.com>
QA-Review: Spencer Olson <solson@instructure.com>
Product-Review: Keith T. Garner <kgarner@instructure.com>
2018-01-15 21:25:07 +00:00
..
active_support/cache work around ruby 2.5 bug 2018-01-02 21:32:36 +00:00
address_book Fix blank conversation_id param for conversations 2017-10-03 16:59:17 +00:00
api master courses: check for expired migrations in api 2018-01-12 16:38:00 +00:00
app_center da licença part 25 2017-04-27 21:51:40 +00:00
basic_lti Fix External Tool Submission Type subbmitted_at 2018-01-02 22:38:02 +00:00
canvadocs involve user in generating non-public links 2018-01-09 22:21:38 +00:00
canvas don't double-escape module names in lock explanations 2018-01-12 12:49:41 +00:00
cc translate contextless file links in course copies 2017-12-18 13:43:32 +00:00
data_fixup don't break on peer review fixup job if shard_id isn't defined 2018-01-09 20:57:17 +00:00
external_auth_observation da licença part 29 2017-04-27 21:59:53 +00:00
features remove submissions_folder feature flag 2017-09-20 19:33:03 +00:00
latex stringify request ids before signing for mathman 2017-05-16 20:42:39 +00:00
lti Revert previousCourseId variable substitution change 2017-12-21 17:37:05 +00:00
messageable_user use in_region_associated_shards in some more places 2017-09-05 15:56:49 +00:00
outcomes da licença part 32 2017-04-27 22:00:01 +00:00
reporting da licença part 33 2017-04-27 22:00:04 +00:00
scribd da licença part 34 2017-04-27 22:00:30 +00:00
services don't load mathjax on pages with equation editor img 2017-11-07 18:02:22 +00:00
sis add sis_pseudonym_id to enrollment object 2018-01-04 00:58:37 +00:00
stubs da licença part 34 2017-04-27 22:00:30 +00:00
support_helpers da licença part 34 2017-04-27 22:00:30 +00:00
tasks [webpack] build both dev/prod for ?optimized_js=0 2017-12-06 21:22:21 +00:00
turnitin Revert "handle nil content-disposition in tii" 2017-12-12 20:42:02 +00:00
user_content da licença part 36 2017-04-28 17:31:17 +00:00
utils da licença part 36 2017-04-28 17:31:17 +00:00
account_services.rb da licença part 25 2017-04-27 21:51:40 +00:00
action_controller_test_process.rb da licença part 25 2017-04-27 21:51:40 +00:00
address_book.rb da licença part 25 2017-04-27 21:51:40 +00:00
api.rb rails 5.1: all the rest of the specs 2017-07-31 19:48:51 +00:00
api_route_set.rb da licença part 25 2017-04-27 21:51:40 +00:00
asset_signature.rb da licença part 25 2017-04-27 21:51:40 +00:00
assignment_override_applicator.rb de-dup preloaded student ids for assignment overrides 2017-11-20 13:20:38 +00:00
assignment_util.rb da licença part 25 2017-04-27 21:51:40 +00:00
authentication_methods.rb move old method to where it properly belongs 2018-01-04 16:35:50 +00:00
basic_lti.rb da licença part 26 2017-04-27 21:52:25 +00:00
brand_config_helpers.rb da licença part 26 2017-04-27 21:52:25 +00:00
brand_config_regenerator.rb strand brand config regeneration jobs 2017-06-20 20:01:27 +00:00
brandable_css.rb Fix link & brand-primary color HC & ie11 2017-11-02 17:36:22 +00:00
browser.rb da licença part 26 2017-04-27 21:52:25 +00:00
canvadocs.rb Canvadocs hijack crocodoc sessions 2017-05-03 22:11:01 +00:00
canvas.rb put back extra checks for sharing cache with data redis 2017-09-14 21:22:08 +00:00
canvas_logger.rb da licença part 27 2017-04-27 21:53:31 +00:00
canvas_yaml.rb allow bootup in ruby 2.5 2018-01-02 20:23:55 +00:00
cc.rb da licença part 27 2017-04-27 21:53:31 +00:00
config_file.rb fix reloader for ConfigFile 2017-06-15 18:45:24 +00:00
content_licenses.rb call translated license names in a lambda 2017-08-14 13:03:04 +00:00
content_notices.rb da licença part 27 2017-04-27 21:53:31 +00:00
content_zipper.rb da licença part 27 2017-04-27 21:53:31 +00:00
conversation_batch_scrubber.rb scrub old conversation batches 2017-12-01 02:14:53 +00:00
copy_authorized_links.rb remove 'copy_authorized_content' as superfluous 2017-07-05 15:43:00 +00:00
course_link_validator.rb bypass the wiki model as much as possible for wiki_pages 2017-08-09 16:09:06 +00:00
custom_validations.rb da licença part 27 2017-04-27 21:53:31 +00:00
cuty_capt.rb don't process url's with CutyCapt that don't resolve 2017-11-06 18:08:23 +00:00
dates_overridable.rb Ignore inactive enrollments in overrides list for show page 2017-12-28 19:31:09 +00:00
delayed_message_scrubber.rb da licença part 28 2017-04-27 21:53:35 +00:00
delicious.rb da licença part 28 2017-04-27 21:53:35 +00:00
differentiable_assignment.rb a few more optimizations to CourseProgress#to_json 2017-08-10 17:26:40 +00:00
due_date_cacher.rb restore submissions and scores for restored enrollments 2017-11-08 21:28:51 +00:00
duplicating_objects.rb Add the ability to duplicate modules. 2017-11-03 15:52:43 +00:00
effective_due_dates.rb ensure graded assignments aren't gradable after removal from overrides 2017-08-28 15:56:43 +00:00
email_address_validator.rb da licença part 29 2017-04-27 21:59:53 +00:00
enrollments_from_user_list.rb ensure DueDateCacher kicks off after commit for consistency 2017-12-06 22:34:15 +00:00
eportfolio_page.rb da licença part 29 2017-04-27 21:59:53 +00:00
external_feed_aggregator.rb don't fail the external feed job on insecure url 2017-10-16 15:31:16 +00:00
external_statuses.rb da licença part 29 2017-04-27 21:59:53 +00:00
feature.rb Quizzes Next Feature Flag support 2018-01-11 22:39:42 +00:00
feature_flags.rb Quizzes Next Feature Flag support 2018-01-11 22:39:42 +00:00
file_in_context.rb don't fail when importing a package with invalid attachments 2017-08-30 21:21:34 +00:00
file_splitter.rb da licença part 29 2017-04-27 21:59:53 +00:00
google_docs_preview.rb involve user in generating non-public links 2018-01-09 22:21:38 +00:00
grade_calculator.rb dropped assignments calculation respects ignore_muted 2018-01-11 19:21:06 +00:00
gradebook_exporter.rb add sis_pseudonym_id to enrollment object 2018-01-04 00:58:37 +00:00
gradebook_grading_period_assignments.rb replace effective due dates with cached due dates 2017-07-24 15:27:05 +00:00
gradebook_importer.rb gradebook export and import localized CSV 2017-12-06 21:03:48 +00:00
gradebook_settings_helpers.rb da licença part 30 2017-04-27 21:59:55 +00:00
gradebook_user_ids.rb limit user ids to students visible to user 2018-01-15 21:25:07 +00:00
grading_period_helper.rb da licença part 30 2017-04-27 21:59:55 +00:00
has_content_tags.rb da licença part 30 2017-04-27 21:59:55 +00:00
host_url.rb drop Message#asset_context and DelayedNotification#asset_context 2017-08-22 17:47:51 +00:00
i18n_time_zone.rb add additional brazil time zones 2017-11-28 21:31:57 +00:00
imported_html_converter.rb da licença part 30 2017-04-27 21:59:55 +00:00
inst_fs.rb Revert "instfs login pixel, send cookies on instfs upload" 2018-01-11 21:08:43 +00:00
job_live_events_context.rb symbolize live events 2017-05-14 01:30:14 +00:00
late_policy_applicator.rb late and missing policies ignore concluded students 2017-12-20 20:04:18 +00:00
latex.rb da licença part 31 2017-04-27 21:59:58 +00:00
learning_outcome_context.rb rails 5.1: lib specs 2017-07-20 17:26:51 +00:00
locale_selection.rb da licença part 31 2017-04-27 21:59:58 +00:00
logging_filter.rb da licença part 31 2017-04-27 21:59:58 +00:00
login_hooks.rb da licença part 31 2017-04-27 21:59:58 +00:00
math_man.rb don't raise an error if consul is completely unconfigured 2017-09-12 22:34:51 +00:00
message_dispatcher.rb drop jobs max attempts default to 1 2017-10-14 17:57:03 +00:00
message_scrubber.rb da licença part 32 2017-04-27 22:00:01 +00:00
messageable_user.rb da licença part 32 2017-04-27 22:00:01 +00:00
missing_policy_applicator.rb late and missing policies ignore concluded students 2017-12-20 20:04:18 +00:00
model_cache.rb da licença part 32 2017-04-27 22:00:01 +00:00
multi_cache.rb configure multicache via consul 2017-09-12 22:49:16 +00:00
must_view_module_progressor.rb da licença part 32 2017-04-27 22:00:01 +00:00
mutable.rb da licença part 32 2017-04-27 22:00:01 +00:00
net_ldap_extensions.rb da licença part 32 2017-04-27 22:00:01 +00:00
notification_message_creator.rb drop Message#asset_context and DelayedNotification#asset_context 2017-08-22 17:47:51 +00:00
open_object.rb da licença part 32 2017-04-27 22:00:01 +00:00
outcome_attributes.rb da licença part 32 2017-04-27 22:00:01 +00:00
outcome_importer.rb da licença part 32 2017-04-27 22:00:01 +00:00
package_root.rb refactor package content management 2017-11-15 18:03:18 +00:00
permissions.rb da licença part 33 2017-04-27 22:00:04 +00:00
plannable.rb ensure planable bookmarks are set in utc time zone 2017-07-14 12:08:53 +00:00
progress_runner.rb da licença part 33 2017-04-27 22:00:04 +00:00
request_cache.rb da licença part 33 2017-04-27 22:00:04 +00:00
request_error.rb da licença part 33 2017-04-27 22:00:04 +00:00
rubric_context.rb da licença part 33 2017-04-27 22:00:04 +00:00
scope_filter.rb da licença part 34 2017-04-27 22:00:30 +00:00
search_term_helper.rb da licença part 34 2017-04-27 22:00:30 +00:00
send_to_stream.rb da licença part 34 2017-04-27 22:00:30 +00:00
sentry_proxy.rb da licença part 34 2017-04-27 22:00:30 +00:00
session_token.rb API for initiating a web session from an access token 2017-06-15 22:38:47 +00:00
simple_stats.rb da licença part 34 2017-04-27 22:00:30 +00:00
simple_tags.rb da licença part 34 2017-04-27 22:00:30 +00:00
sis.rb da licença part 34 2017-04-27 22:00:30 +00:00
sorts_assignments.rb da licença part 34 2017-04-27 22:00:30 +00:00
ssl_common.rb da licença part 34 2017-04-27 22:00:30 +00:00
stats.rb da licença part 34 2017-04-27 22:00:30 +00:00
sticky_sis_fields.rb da licença part 34 2017-04-27 22:00:30 +00:00
submission_list.rb fix gradebook_history to ignore placeholder submissions 2017-06-20 18:23:35 +00:00
submittable.rb drop rails 4.2 2017-06-27 15:29:51 +00:00
submittables_grading_period_protection.rb da licença part 34 2017-04-27 22:00:30 +00:00
summary_message_consolidator.rb speed up SummaryMessageConsolidator a bit 2017-07-26 22:54:29 +00:00
syslog_wrapper.rb da licença part 34 2017-04-27 22:00:30 +00:00
temp_cache.rb da licença part 35 2017-04-28 17:30:19 +00:00
text_helper.rb da licença part 35 2017-04-28 17:30:19 +00:00
time_zone_helper.rb da licença part 35 2017-04-28 17:30:19 +00:00
timed_cache.rb da licença part 35 2017-04-28 17:30:19 +00:00
turnitin.rb da licença part 35 2017-04-28 17:30:19 +00:00
turnitin_id.rb da licença part 35 2017-04-28 17:30:19 +00:00
unzip_attachment.rb ignore mac system folder when unzipping files 2017-11-30 14:18:40 +00:00
user_content.rb translate contextless file links in course copies 2017-12-18 13:43:32 +00:00
user_list.rb da licença part 36 2017-04-28 17:31:17 +00:00
user_list_v2.rb use opaque tokens rather than ids to mass-enroll users 2017-11-08 20:29:07 +00:00
user_merge.rb cleanup invalid quiz_submissions on user merge 2017-08-22 16:49:22 +00:00
user_search.rb fix improved user search query 2017-11-01 17:25:35 +00:00
vericite.rb VeriCite: get all scores for an assignment in bulk 2017-05-24 17:09:57 +00:00
visibility_plucking_helper.rb da licença part 36 2017-04-28 17:31:17 +00:00
zip_extractor.rb da licença part 36 2017-04-28 17:31:17 +00:00