1. 16 Apr, 2015 1 commit
  2. 15 Apr, 2015 4 commits
  3. 14 Apr, 2015 2 commits
  4. 13 Apr, 2015 13 commits
  5. 12 Apr, 2015 1 commit
  6. 11 Apr, 2015 19 commits
    • Merge pull request #6636 from jazkarta/feature-pocs · 03c3bbb3
      MIT CCx (was Personal Online Courses)
      David Ormsbee committed
    • MIT: CCX. Code Quality Fixes · f9351ef8
      Remove duplicated course listings template code on the student dashboard.
      Carlos de la Guardia committed
    • MIT: CCX. Fixes for API changes that affect the binding of descriptors to student context. · 8ba74429
      fix for making sure all descriptor fields are always available for course descriptors despite module_class tricks
      
      add required fields to cache data for tests
      
      use a different strategy to mock up the get_children method
      cewing committed
    • MIT: CCX. Fixes for issues identified in code review · b315b4d7
      Switch to font awesome icons, to fix issue with toggling collapsible sections of the schedule in ccx coach dashboard
      
      Ensure access check takes place after descriptor is bound to the user, or field override checks will never happen
      Carlos de la Guardia committed
    • MIT: CCX. Code Quality fixes · 9ddee934
      add doc strings; fix pep8 warning
      address some minor issues brought up by the code review process
      Carlos de la Guardia committed
    • MIT: CCX. Fix issues identified in code review · b3da2a54
      Original Commit Messages:
      
      use edx's own get_parent method, rather than our own.
      
      add field to unique constraint to avoid MultipleObjectsReturned in case of multiple browser clicks on submit
      
      fix 0011 migration, inherit from TimeStampedField and add composite index (migration only)
      
      fix bug where adding an already registered user to a ccx would cause a crash due to an undefined variable
      
      add assertNumQueries tests to test modules where override field providers are used
      
      remove unnecessary teardown
      
      implement recommended style for checking empty list
      
      import utility methods rather than use duplicate code
      
      added comment explaining date conversion to string for json
      
      add logging for invalid users or emails when enrolling students
      
      add comment about xmodule user state
      
      avoid using get_or_create, which seems to be causing a race condition on schedule change save
      
      relocate badly placed edvent handlers to fix multiple submit problem
      Carlos de la Guardia committed
    • MIT: CCX. Use request thread local for access control decisions. · 34254246
      Use in tabs and other code to show or hide ccx coach tab depending on if the user has the coach role or not
      Carlos de la Guardia committed
    • MIT: CCX. Rename POC to CCX · 7f691e4a
      Final official name is Custom Courses for EdX (CCX), rename all code to remove previous name.
      
      Rename the FEATURE constant used to identify this feature
      
      Rename the middleware for the CCX change
      
      rename the constant used for storing the current poc id on the session.
      
      rename the _PocContext threading local
      
      rename the override provider in all places where it is referenced
      
      `PersonalOnlineCoursesOverrideProvider` -> `CustomCoursesForEdxOverrideProvider`
      
      generally rename symbols from overrides.py to replace `poc` with `ccx` where possible without changing model names or attributes
      
      rename more symbols from poc to ccx
      rename util functions from app utils module
      
      general symbol renaming poc -> ccx in views.py and related url changes
      
      Rename the coach role wherever it is used.
      
      reword poc_coach to ccx_coach
      
      UI rename
      
      replace POC with CCX globally
      
      template context variable renamed
      
      rename poc_ to ccx_ in urls and all related locations (views, js, scss etc)
      
      remove pocs migrations
      
      Final massive renaming, including models.  Re-built migration.
      
      cleaning up a few tailing references
      
      Fix reference typo in schedule template JS
      
      undo modifications made on the fly in test setup to ensure that our tests are properly isolated from the rest of the system tests.
      
      Fixes jazkarta/edx-platform#38
      
      Clean up some leftover strings and comments
      
      fixing more strings and comments in python files
      
      fix a naming error in the schedule tab that was causing problems in deleting courseware items.
      
      Fixes jazkarta/edx-platform#36
      
      updating tests and utility code to match changes in infrastructure from latest rebase
      cewing committed
    • MIT CCX: Prevent the discussion tab from displaying · fbaab967
      When the POC feature is enabled and there is an active poc displaying discussions leads to undefined behaviors.  Hide the tab to prevent usability problems.
      cewing committed
    • MIT: CCX. Fix test failures · 97748e56
      Django double-importing overwrites the TESTUSER object, invalidating identity comparisons.  Use a string instead to avoid the problem.
      
      The get_current_poc function operates using a threadlocal and so no longer requires the user as an argument
      Carlos de la Guardia committed
    • MIT: CCX. Implement display of CCXs in user-facing templates such as dashboard · 0b184881
      Show the display name for the POC in the menu for switching.
      
      Remove the MOOC: prefix from the MOOC title to avoid truncation issues.
      
      Incorporate the display name of the POC into the display of course org/number/name at the top of the page in the default theme.
      
      Provide warning on the grading policy page in system warning style.
      
      Provide a PocMembership model api that returns PocMemberships for a user.  Default to active memberships.
      
      Build generator that yields triplets of poc, membership and course for each poc membership a user has.
      
      This is an analog of the `get_course_enrollment_pairs` in common/djangoapps/students/views.py and is used in the student dashboard to provide pocs as options for a student to view.
      
      refactor to use model api instead of inline code.
      
      provide pocs as possible targets for a student to visit from their dashboard.
      
      Unset the current active poc when visiting the dashboard so as to avoid needing to switch active pocs when viewing a plain course.  This ensures we can leave template code for the display of courses unchanged.
      
      Update templates to show pocs in a course-like view on a student's dashboard.
      
      Revert a portion of the template change so that the poc title will still render properly when a poc is being viewed.
      cewing committed
    • MIT: CCX. Increase test coverage · 96ca1da0
      Improve testing of views and utils
      
      Test api methods added to models.
      cewing committed
    • MIT: CCX. Fix issues identified in code review · 6f1a2ed5
      Remove over-cautious assertion and allow calling errors to be calling errors
      
      fix problems in auto_enroll method
      
      ensure that the active poc is wiped out if the user has no poc membership
      cewing committed
    • MIT: CCX. Handle setting dates for blocks · 91aa7b06
      Add date widget for setting start and due dates for the course sections, plus simple server side validation for avoiding db corruption from bad dates
      
      Add immediate feedback for date validation errors
      Carlos de la Guardia committed
    • MIT: CCX. Implement auto-enroll for CCX students · d4a1e99a
      Based loosely on course enrollment model
      
      Ensure that registered users are 'active' when they are enrolled in a POC
      
      Respect the 'auto enroll' and 'email students' checkboxes in the UI
      
      Add an auto_enroll flag to the PocFutureMembership model so we can automatically enroll non-users when they have registered and activated their account.
      
      Build a future enrollment using the auto_enroll value from the request so we can ensure that non-existent users can be auto-enrolled
      
      Ensure that any user added by way of the one-at-a-time UI is automatically auto-enrolled
      
      Update tests with email sending to use the flag from the request
      
      Provide api on the PocMembership object to auto-enroll a newly active member in this poc.
      
      This method will delete the passed PocFutureMembership object and will automatically enroll the user in the POC named in that future membership as well as the MOOC from which it was created
      
      Conditionally activate poc memberships that are pending when a new registree first activates their account.
      cewing committed
    • MIT: CCX. Address performance issues. · 2b4da4d8
      Use client's session to set POC for test, now that we have the capability to do that.
      
      Use a middleware to set the current POC one time per request, and avoid having to look up the stack for the current request in 'get_current_poc'.
      
      Fetch all overrides for a block at one time.
      
      Speed up the lineage computation by doing some caching.
      
      Unused import.
      
      Get field overrides once per user per block.
      
      Streamline configuration.
      
      Fix poc config tuples
      Chris Rossi committed