canvas-lms/app/models
Jeremy Stanley d9c450e582 users tab: don't increment the count with duplicate enrollments
test plan:
 - have a user with a login enrolled in a course
 - in the users tab, try to add that user again, in the same role,
   using the user's login id
  - you should see an "already existed" message, and the count
    above the role should not change
 - the above should still work if this user is preceded by more
   than 16 other users in the enrollment list (that is, we should
   still recognize the user as already enrolled even if they're
   not loaded in the paginated list; please do a refresh before
   enrolling the test student to make sure the buffer students
   aren't loaded)

fixes #CNVS-2767
fixes #CNVS-2770

Change-Id: I2ee56b48ac7dc382cb352c4e99d02e86480aec95
Reviewed-on: https://gerrit.instructure.com/16720
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Bracken Mosbacker <bracken@instructure.com>
QA-Review: Adam Phillipps <adam@instructure.com>
2013-01-11 10:33:16 -07:00
..
discussion_topic use ids relative to the default shard for strands refs #6886 2012-04-02 09:47:09 -06:00
quiz_question Some quiz result display fixes and a scoring fix. Fixes #7894 2012-05-22 09:32:21 -06:00
abstract_course.rb make course terms sticky 2011-09-30 11:00:27 -06:00
access_token.rb drop the unencrypted token column on access_tokens 2012-11-28 14:19:22 -07:00
account.rb add a specific setting for self registration refs #2660 2013-01-11 10:19:39 -07:00
account_authorization_config.rb add a specific setting for self registration refs #2660 2013-01-11 10:19:39 -07:00
account_notification.rb fix account announcements across shards fixes #7396 2012-03-13 09:14:26 -06:00
account_report.rb adding account report api closes #9456 2012-07-13 15:34:48 -06:00
account_user.rb add support for applying role overrides to just self or just descendants 2013-01-08 11:01:13 -07:00
alert.rb a few more things to skip for deleted root accounts refs #6891 2012-08-21 13:49:23 -06:00
alert_criterion.rb alerts, closes #4317 2011-08-24 10:19:44 -06:00
announcement.rb allow group members to create announcments 2012-07-20 14:41:49 -06:00
appointment_group.rb respect course/account locale settings in notifications. 2012-10-08 13:17:10 -06:00
appointment_group_context.rb multiple contexts per appointment group 2012-04-30 15:30:03 -06:00
appointment_group_sub_context.rb multiple contexts per appointment group 2012-04-30 15:30:03 -06:00
assessment_question.rb overwrite quiz and assessment questions on re-import if checked 2012-11-16 10:44:04 -07:00
assessment_question_bank.rb use a shard-safe query for selecting question bank questions 2013-01-09 14:26:39 -07:00
assessment_question_bank_user.rb Initial commit. 2011-01-31 18:57:29 -07:00
assessment_request.rb respect course/account locale settings in notifications. 2012-10-08 13:17:10 -06:00
asset_user_access.rb refs #8395 expanded page views 2012-11-30 08:34:18 -07:00
assignment.rb bug: if override due date is before default due date on an assignment, it is not applied 2013-01-09 09:37:00 -07:00
assignment_group.rb update assignments api to handle frozen assignments 2013-01-04 17:01:05 -07:00
assignment_override.rb cache submission lateness 2012-12-26 15:37:18 -07:00
assignment_override_student.rb vdd backend for quizzes 2012-12-18 14:28:34 -07:00
attachment.rb don't send notifications to students for locked/hidden files 2013-01-02 15:47:53 -07:00
attachment_association.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
authorization_code.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
big_blue_button_conference.rb use global_id for the BBB voiceBridge number 2012-08-16 09:22:22 -06:00
bookmark_service.rb i18n Bookmark Service 2011-06-16 07:16:10 -06:00
calendar_event.rb add reserved scheduler appointments to calendar feed 2013-01-09 15:21:00 -07:00
cloned_item.rb make sure links in assessment questions are correctly translated, fixes #6012 2011-10-21 08:36:34 -06:00
collaboration.rb add new collaborator picker interface. fixes #CNVS-1160 2013-01-11 09:57:04 -07:00
collaborator.rb add groups to collaborators table, add api endpoint. 2013-01-04 20:18:04 -07:00
collection.rb allow setting collections to private 2012-07-30 09:10:31 -06:00
collection_item.rb items and followers counts for collections 2012-06-18 11:04:58 -06:00
collection_item_data.rb fix a few cross-shard collection item stuffs 2012-10-25 19:05:58 -06:00
collection_item_upvote.rb fix a few cross-shard collection item stuffs 2012-10-25 19:05:58 -06:00
communication_channel.rb Support 'C Spire' phone network for SMS. Fixes #1287 2013-01-07 12:31:27 -07:00
content_export.rb Make course syllabus optional when copying courses 2012-11-08 09:29:50 -07:00
content_migration.rb update outcome importer to incrementally access api 2012-11-22 22:20:43 -07:00
content_participation.rb submission unread counts 2012-10-09 09:41:27 -06:00
content_participation_count.rb fix content_participation_counts cross-shard 2012-10-31 15:37:27 -06:00
content_tag.rb improve outcome groups api with more helpful error message 2012-12-21 16:09:44 -07:00
context.rb consider mooc performance 2012-12-18 10:38:58 -07:00
context_external_tool.rb refactor lti xml processing for cleanliness 2012-11-16 14:22:47 -07:00
context_module.rb correctly replace modules and files on content migrations 2012-09-14 12:42:52 -06:00
context_module_item.rb allow using an item in modules more than once 2012-06-21 10:12:22 -06:00
context_module_progression.rb minor context module code cleanup 2012-09-06 14:16:42 -06:00
context_module_sub_header.rb optimize AdheresToPolicy 2011-07-14 13:25:28 -06:00
conversation.rb conversations transitionary commit 2013-01-04 14:45:42 -07:00
conversation_batch.rb send bulk private messages in background process, fixes #7277, #8548 2012-09-25 09:55:36 -06:00
conversation_message.rb move slow conversations preload to slave 2012-12-10 10:40:55 -07:00
conversation_message_participant.rb ensure context tags are shared by 2+ participants, fixes #7231 2012-02-13 13:29:45 -07:00
conversation_participant.rb hide conversation stream items where user is last author, fixes #11407 2012-11-11 21:56:23 -07:00
course.rb users tab: don't increment the count with duplicate enrollments 2013-01-11 10:33:16 -07:00
course_account_association.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
course_import.rb make course copy have lower priority 2012-01-24 15:45:26 -07:00
course_section.rb VDD: notifications; closes #10896 2012-11-14 09:04:07 -07:00
crocodoc_document.rb fix crocodoc edit permissions 2012-09-28 13:06:15 -06:00
delayed_message.rb spread weekly notifications over saturdays 2012-09-27 15:24:13 -06:00
delayed_notification.rb notifications: allow including extra data for messages 2012-04-18 17:08:13 -06:00
designer_enrollment.rb straighten out course designer permissions 2012-01-13 18:56:50 -07:00
developer_key.rb allow sub-domains to match the redirect_uri on the developer key 2012-08-17 16:48:34 -06:00
dim_dim_conference.rb wimba integration, fixes #2989 2011-02-25 14:35:14 -07:00
discussion_entry.rb Email replies to locked topics should be ignored. 2012-10-02 12:57:39 -06:00
discussion_entry_participant.rb discussion topics materialized view api, refs #7567 2012-03-22 12:49:49 -06:00
discussion_topic.rb consider mooc performance 2012-12-18 10:38:58 -07:00
discussion_topic_participant.rb read/unread state + counts for discussions; closes #7173 2012-02-24 13:34:54 -07:00
document_service.rb Initial commit. 2011-01-31 18:57:29 -07:00
enrollment.rb users tab: don't increment the count with duplicate enrollments 2013-01-11 10:33:16 -07:00
enrollment_dates_override.rb term start/term end, rather than whenever 2011-09-13 15:20:15 -06:00
enrollment_term.rb improve performance of terms page 2012-05-29 09:52:46 -06:00
eportfolio.rb account-level option to disable eportfolios, closes #5169 2011-08-24 17:38:06 -06:00
eportfolio_category.rb localize ePortfolios 2011-06-24 13:17:25 -06:00
eportfolio_entry.rb 1.9 - fix eportfolios 2012-05-17 23:10:51 -06:00
error_report.rb log the ErrorReport id after creating it 2013-01-03 13:35:04 -07:00
etherpad_collaboration.rb remove collaborations.yml dependency, refs #5796 2011-10-25 17:32:32 -06:00
external_feed.rb fix up announcement external feeds API 2012-08-30 12:39:17 -06:00
external_feed_entry.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
external_url.rb optimize AdheresToPolicy 2011-07-14 13:25:28 -06:00
favorite.rb added favorite courses option to main menu 2011-10-24 15:50:34 -06:00
folder.rb add data validation to new folder creation, fixes #10906 2012-10-02 15:54:37 -06:00
google_docs_collaboration.rb Initial commit. 2011-01-31 18:57:29 -07:00
gradebook_upload.rb prepare for foreign keys refs #6895 2012-05-10 09:46:05 -06:00
grading_standard.rb avoid interacting with deleted grading standards 2012-12-18 17:03:20 -07:00
group.rb show all users not assigned to group in unassigned 2013-01-09 15:47:33 -07:00
group_category.rb fix multiple data validation bugs, fixes #7020 2012-09-21 10:57:37 -06:00
group_membership.rb soft delete group memberships 2012-11-20 13:06:56 -07:00
inbox_item.rb added states so we can retire messages w/o deleting them yet 2011-08-16 21:15:26 -06:00
learning_outcome.rb clarify/fix outcome API permissions 2012-11-01 11:44:59 -06:00
learning_outcome_group.rb change course root outcome group title to course name. 2012-10-31 10:32:00 -06:00
learning_outcome_result.rb fixup failing specs and add temporary plugin shims 2012-08-22 09:53:19 -06:00
mailer.rb allow for configuration of outgoing email name 2011-07-21 13:33:16 -06:00
media_object.rb Revert HTML5 video playback and subtitles 2012-11-16 11:30:53 -07:00
message.rb Better signatures for message redirects 2012-12-13 12:12:58 -07:00
notification.rb pass message data to delayed messages. fixes #CNVS-1286 2012-12-11 16:59:49 -07:00
notification_policy.rb exclude retired CCs in NotificationPolicy.for(User) 2012-09-18 16:18:31 -06:00
oauth_request.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
observer_enrollment.rb fix page error if observed is not an active student 2012-03-09 10:46:56 -07:00
open_object.rb Initial commit. 2011-01-31 18:57:29 -07:00
page_comment.rb localize PageComments 2011-06-17 08:28:33 -06:00
page_view.rb don't store the page view if it has no user 2013-01-08 08:25:30 -07:00
plugin_setting.rb proactively clear cache when changing plugin settings 2012-10-29 12:11:31 -06:00
pseudonym.rb self enrollment refactor to facilitate CN integration 2012-12-19 12:29:47 -07:00
pseudonym_session.rb require a password login for certain sensitive actions closes #6401 2012-08-02 10:22:48 -06:00
quiz.rb make [quiz|assignment].locked_for? vdd aware 2012-12-21 10:38:06 -07:00
quiz_group.rb correctly prepare quiz questions when copying course 2012-05-08 09:10:41 -06:00
quiz_question.rb overwrite quiz and assessment questions on re-import if checked 2012-11-16 10:44:04 -07:00
quiz_submission.rb consider mooc performance 2012-12-18 10:38:58 -07:00
quiz_submission_snapshot.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
report_snapshot.rb filter bogus snapshot data 2012-06-20 13:43:17 -06:00
role.rb Add new permissions management ui (role overrides) 2013-01-03 10:05:51 -07:00
role_override.rb make all teacher permissions configurable 2013-01-10 12:10:08 -07:00
rubric.rb maintain rubric-outcome associations in course copy 2012-12-07 17:15:04 -07:00
rubric_assessment.rb learning outcomes refactor 2012-08-22 09:51:39 -06:00
rubric_association.rb learning outcomes refactor 2012-08-22 09:51:39 -06:00
scribd_account.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
scribd_mime_type.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
session_persistence_token.rb make "stay logged in" use a one-time token 2011-11-22 10:15:13 -07:00
setting.rb don't error Setting.from_config on empty .yml file 2012-09-14 15:17:50 -06:00
sis_batch.rb crocodoc integration 2012-09-21 12:57:02 -06:00
stream_item.rb stop writing to discussion topics in stream items. 2013-01-10 14:10:28 -07:00
stream_item_instance.rb drop backwards compatible stream item columns 2012-12-18 10:25:41 -07:00
student_enrollment.rb Minor fixes to StudentEnrollment associations. 2012-05-04 16:46:43 -06:00
student_view_enrollment.rb student view; closes #6995 2012-04-03 14:11:07 -06:00
submission.rb respect assignment overrides in gradebook2 2013-01-08 13:29:03 -07:00
submission_comment.rb cross shard dashboards 2012-11-29 17:36:24 -07:00
submission_comment_participant.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
ta_enrollment.rb straighten out course designer permissions 2012-01-13 18:56:50 -07:00
tableless.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
teacher_enrollment.rb straighten out course designer permissions 2012-01-13 18:56:50 -07:00
thumbnail.rb thumbnails inherit their s3 bucket from their attachment 2012-05-22 15:43:13 -06:00
user.rb fix cross-sharding bug for primary enrollment courses 2013-01-10 14:30:55 -07:00
user_account_association.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
user_follow.rb fix a few cross-shard collection item stuffs 2012-10-25 19:05:58 -06:00
user_note.rb User notes from conversation messages; still needs UI 2011-07-31 16:09:03 -06:00
user_observer.rb user co-enrollment backend work, closes #8588 2012-05-23 12:21:00 -06:00
user_profile.rb include root_account in section_tabs cache key 2012-08-17 14:15:10 -06:00
user_profile_link.rb add data validation to user profile links 2012-09-24 15:38:26 -06:00
user_service.rb updated user_profile API endpoints 2012-07-25 16:26:38 -06:00
web_conference.rb only send conference invitations to active members fixes #5290 2012-04-26 14:19:50 -06:00
web_conference_participant.rb check all models for protecting attributes refs #3847 2011-05-25 17:38:50 -06:00
wiki.rb remove WikiNamespace fixes #9121 2012-07-30 09:15:04 -06:00
wiki_page.rb consider mooc performance 2012-12-18 10:38:58 -07:00
wiki_page_comment.rb optimize AdheresToPolicy 2011-07-14 13:25:28 -06:00
wimba_conference.rb expose sortable name to user, fixes #5317 2011-10-31 12:22:08 -06:00
zip_file_import.rb use ids relative to the default shard for strands refs #6886 2012-04-02 09:47:09 -06:00