1. 06 Nov, 2017 1 commit
  2. 28 Sep, 2017 1 commit
  3. 22 Sep, 2017 1 commit
  4. 12 Jun, 2017 1 commit
  5. 11 Apr, 2017 1 commit
  6. 30 Nov, 2016 2 commits
  7. 25 Oct, 2016 1 commit
  8. 13 Oct, 2016 1 commit
  9. 08 Sep, 2016 1 commit
    • Update correct persistent score · 31953c5e
      * First take at forcing a subsection's grade to update when a signal is
        sent that a problem's score has changed
      * Refactor signal handler connection.
      * Expand bokchoy tests to cover progress page
      * Add some grading unit tests
      
      TNL-5394
      TNL-5364
      Eric Fischer committed
  10. 23 Aug, 2016 1 commit
  11. 22 Jul, 2016 1 commit
  12. 04 Sep, 2015 1 commit
  13. 01 Sep, 2015 1 commit
  14. 27 Aug, 2015 1 commit
    • [LTI Provider] Grade passback for non-leaf blocks. · 9e6c4491
      This change allows graded assignments to be added to a campus LMS
      regardless of the granularity at which the problem sits. Previously
      a grade could only be returned if the usage ID for the problem itself
      was specified in the LTI launch.
      
      The code assumes that courses taking advantage of this functionality
      are arranged in a hiearchy (with sections being parents to verticals,
      and verticals being parents to problems). When a grading event occurs
      it traverses the parent hiearchy to identify any previous graded LTI
      launches for which the new scoring event should generate a grade
      update. It then calculates and sends scores to each of those outcome
      services.
      
      Since grade calculation is an expensive operation, the code optimizes
      the case where a problem has been added only once as a leaf unit. In
      that case it is able to behave as before, just taking the grade from
      the signal without having to calculate grades for the whole course.
      Phil McGachey committed
  15. 02 Jun, 2015 1 commit
    • [LTI Provider] Use LTI Outcome Service to pass back scores · 0fe41374
      This change allows the LTI provider to pass grades back to the campus LMS platform using the
      LTI outcome service. For full details of the outcome service, see:
          http://www.imsglobal.org/LTI/v1p1/ltiIMGv1p1.html
      
      In brief, the LTI 1.1 spec defines an outcome service that can be offered by an LTI consumer.
      The consumer determines whether a score should be returned (in Canvas, this means that the LTI
      tool is used in an assignment, and the launch was performed by a student). If so, it sends
      two additional parameters along with the LTI launch:
      
      lis_outcome_service_url: the endpoint for the outcome service on the consumer;
      lis_result_sourcedid: a unique identifier for the row in the gradebook (i.e. the tool/student/assignment combination).
      
      The LTI Provider launch view detects the presence of these optional fields, and creates database
      records for the specific Outcome Service and for the graded LTI launch. Later, when a score on
      edX changes (identified using the signal mechanism from previous LTI Provider pull requests),
      a Celery task is launched to pass the score back to the LTI consumer.
      Phil McGachey committed