* modern eslint allowances
* update topic teams to request team membership per local teamset
* update tests for topic_teams change
* cleanup
Co-authored-by: Ben Warzeski <benwarzeski@edX-C02CD0HCLVDM.cable.rcn.com>
* Edit team manage to check sizes at end of import
* Fix size validation to take new teams into account
* Remove redundant max size check
* Consolidate team membership counters
* Remove unused user_ids_by_teamset_id set
* Fix team removal to only occur after validation
* Update team full error message
* Prefetch users when looking up team counts
* Hide private team-sets from users not on a team
* Modify add team count to factor in team visibility
* Fix bug that broke search w/in private team-sets
* Update check for showing the 'create team?' prompt in topic teams to look in teamset
* fix tests and correct which collection we are checking
* eslint fixes
Co-authored-by: Ben Warzeski <benwarzeski@edX-C02CD0HCLVDM.cable.rcn.com>
* Add team assignments to frontend
* Limit team assignments to the given teamset
* Remove deprecated django render_to_response
* Move team assignments panel behind feature flag
modify delete team unit test for admin
test improvements
test improvements
test improvements
test improvements
add team unauthorized access test
add team unauthorized and forbidden access test
* remove old_format reference in teams config
* validate uploaded character values for team csv upload
Co-authored-by: Ben Warzeski <benwarzeski@edX-C02CD0HCLVDM.cable.rcn.com>
Improve accuracy of javascript-escape linter: Previously this would
match on FOOescape() and FOO.escape calls, but neither are the global
escape function we are worried about.
The regex probably isn't 100% accurate; there may be still false
positives (javascript allows a large range of characters in identifiers,
some of which may not be covered by [\w.$]). The main thing is to avoid
false negatives here though - this will definitely catch any use of
`escape()` or `window.escape()`.
Also remove javascript-interpolate lint - this was deemed unecessary.
StringUtils.interpolate is not in fact safe (it does no html escaping),
so the results of this lint are misleading.
* Converting variable to string before assignment in tests
Django 2 is stricter of string typing, so it will no longer do implicit conversions in some cases.
While the release notes only mention dropping bytestring support in some places, they seem to have also dropped implicit conversion to str for whole host of things.
* Enable pagiation to show all a learner's teams on the "My Teams" tab
* Selectively hide/show pagination on the "My Teams" tab
* Increase "My Teams" page size to 5