WIP: Library Sourced Content Block

Description

This WIP code is a proof of concept, showing an XBlock that lets you select some specific blocks from a Blockstore-based content library and then will copy them into a [modulestore-based] course.

Test instructions:

  • Check this branch out; from `make studio-shell` run `pip install -e common/lib/xmodule/`

  • Create some content in a blockstore-based content library. Note the IDs of a few blocks (e.g. `lb:edX:test:html:1`)

  • Go into a course in Studio. In its advanced settings, add `library_sourced` to the list of advanced block types.

  • TBD

TODO:

  • See TODOs in the code

  • Write tests

  • Nicer UI

Note that once we get courses implemented in Blockstore as well I expect we won't use this block at all, so I haven't designed it to be forwards compatible in that sense. I expect that in Blockstore-based courses, the course outline will be a first-class object which can specify things like "Unit 15 should consist of these three blocks linked in from content library X, Unit 16 should have 2-5 XBlocks as returned by the adaptive engine, etc."

Assignee

Unassigned

Reporter

Open Source Pull Request Bot

Labels

Contributor Name

Braden MacDonald

Repo

edx/edx-platform

Customer

Epic Link

None

OSCM Assignee

None

Platform Map Area (Levels 1 & 2)

None

Platform Map Area (Levels 3 & 4)

None

Blended Hour Utilization Percentage

None

Priority

Unset
Configure