Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This describes the status on the master branch, which may not reflect what is deployed on any particular sandbox or in production.

Note on rendered_body

The web front end's JavaScript code attempt to prevent Markdown from rendering anything that is inside a MathJax block (see customwmd.coffee). Additional complexity is added by its attempts to prevent MathJax from rendering anything inside a Markdown code block. Thus, when rendering the string "`foo $bar$ baz`", the backticks are treated as Markdown code delimiters and the dollar signs are not treated specially, while when rendering the string "$foo `bar` baz$", the dollar signs are treated as MathJax delimiters and the backticks are not treated specially. Because math formula rendering is out of scope for Q4 anyway, the current implementation of the rendered_body field (for both threads and comments) does not attempt to prevent MathJax blocks from being rendered by Markdown. Thus, the body "$foo *bar* baz$" will become a rendered_body value of "<p>$foo <em>bar</em> baz$</p>".

Additionally, there are differences between the JavaScript and Python implementations of Markdown. For example, the Python implementation correctly renders in-word emphasis (such as "un*friggin*believable", while the JavaScript implementation leaves the asterisks.

/api/discussion/v1/courses/{course_id}/

Partially complete

The following fields are missing from the response:

...

Complete

Note: Getting a list of cohort names and ids is p2

/api/discussion/v1/course_topics/{course_id}/

...

/api/discussion/v1/threads/

GET

Partially complete

The following query parameters are not respected:

  • following (in code review)
  • view (in progress)
  • order_by

The following fields are missing from the response:

  • has_endorsed (in progress)
  • read (in progress)
  • editable_fields (in code review)

POST

Partially complete

The following fields are not respected:

  • group_id
  • pinned
  • closed

The same fields as for GET above are missing from the response.Complete

POST

Complete

Note: Pinning and closing a thread are p2

/api/discussion/v1/threads/{thread_id}/

GET

Not startedComplete

Note: GET a single comment is p2

PATCH

Partially Complete

The following fields are not respected:

  • group_id
  • pinned
  • closed
  • abuse_flagged (in progress)

The same fields as for GET on the list endpoint above are missing from the response.Note: Pinning and closing a thread are p2

DELETE

Complete

/api/discussion/v1/comments/

GET

Partially Complete

The endorsed query parameter must be present if and only if the thread has the type "question".

The following fields are missing from the response:

...

POST

Partially Complete

The same fields as for GET above are missing from the response.

/api/discussion/v1/comments/{comment_id}/

GET

Not started

PATCH

Partially complete

The following fields are not respected:

  • abuse_flagged (in progress)

The same fields as for GET on the list endpoint above are missing from the response.Note: GET a single comment is p2

PATCH

Complete

DELETE

Complete