For OLX, I can see the content being exported to the `tabs` directory, but I'm a bit concerned about where the links to those tabs will live. In general, having XBlocks that are detached from the course tree has caused us more pain than they've been worth, in the past, so I'd love to see an explicit reference to the tab usage key somewhere (maybe from the Course block?)
-Cale On Tue, Jun 28, 2016 at 11:11 AM, <[email protected]> wrote: > Cale, > > > - Usage_key - the same as normal blocks have. I don't think usage_key > includes block's parent, so it won't be affected by adding it to a tab vs > vertical. Is there any caveat I'm missing? > - OLX - if I do recall right XBlocks in Units are stored in > "vertical", one unit per file. For a tab it makes sense to reuse the same > approach; the only question is where to put that tab XML file. At a glance > it should be located in "tabs", as StaticTab stores it's contents there. > But it is derived from how HTML module works, so we don't have to replicate > it. I don't have final answer on this, but "tabs" folder seems like a > correct place. > - There might be three approaches: > - It doesn't - "student_view" is always rendered - this is slightly > simpler to implement and has more flexibility, but might be limited. > - Convention-based - we define a new "predefined" view (i.e. > "course_tab_view") to be used for course tab. This view might be > "abstract", or can just default to "student_view". > - Configuration based - export some decorator for XBlock to mark > "course_tab_view" explicitly. > > To me, it looks like convention-based approach with "student_view" > fallback is the most efficient one, so if there are no other considerations > I would try implementing it first (and structuring the rest of conversation > with that assumption in mind). > > Regards, > Eugeny > @Opencraft <http://opencraft.com> > > On Tuesday, June 28, 2016 at 5:10:45 PM UTC+3, Calen Pennington wrote: >> >> Eugeny, >> >> Another approach that we've talked about in the past around this same >> problem is that rather than having a specific tab type for housing an >> XBlock, we'd allow XBlocks to expose a course_view, which the XBlock could >> use to render any course-level content (perhaps configuration details, >> perhaps something like the Discussions tab, perhaps other uses). Those tabs >> could be rendered for any XBlock type that appeared in the course. >> >> Questions I have about your proposed implementation: >> >> - what will the XBlock usage_key would be? >> - where will the XBlock content (scope.content) would be stored in >> OLX? >> - How does an XBlock define a view that's specific to the tab? >> - For instance, I assume that the Discussion block would have a >> different display in the tab than it would inline. >> >> -Cale >> >> >> On Tue, Jun 28, 2016 at 9:41 AM, <[email protected]> wrote: >> >>> My current understanding is that XBlockTab will just provide a "place" >>> where you can put any XBlock or component, so that it would be displayed in >>> tab. >>> >>> Theoretically it would mean that any XBlock could be added there, and >>> that XBlock would work exactly the same in tab or in unit. Practically - I >>> don't know yet - there might be a need for an XBlock to implement some >>> interface to be able to work in tab, and in that case only certain XBlocks >>> will be available for tabs. But I would like to avoid that and have a truly >>> generic solution. >>> >>> In two words: the suggested XBlockTab lives in edx-platform and only >>> "hosts" XBlocks. >>> >>> Regards, >>> Eugeny >>> @Opencraft <http://opencraft.com> >>> >>> On Tuesday, June 28, 2016 at 4:30:00 PM UTC+3, Cristian Salamea wrote: >>>> >>>> >>>> >>>> On Tue, Jun 28, 2016 at 8:13 AM, Peter Pinch <[email protected]> wrote: >>>> >>>>> How would this affect course import and export? >>>>> >>>>> I believe unrecognized blocks are ignored on import, but that may be >>>>> harder to do with tabs, since they are specified in policy.json. >>>>> >>>> >>>> In fact question could be extended to: in future any xblock can add a >>>> tab ? >>>> >>>>> >>>>> I'd also want to make sure that there is some meaningful logging and >>>>> error messaging to the user when a course is imported and the proper >>>>> XBlockTab hasn't been installed. >>>>> >>>>> On Jun 28, 2016, at 9:06 AM, [email protected] wrote: >>>>> >>>>> Hello world! >>>>> >>>>> *Background*: OEP is a new (suggested) format for proposing changes >>>>> to Open edX platform. More details: >>>>> https://github.com/edx/open-edx-proposals/blob/master/oeps/oep-0001.rst >>>>> >>>>> *Idea: *Allow XBlocks to be displayed in a course tab (like Progress, >>>>> Discussion, etc.) >>>>> >>>>> *Motivation: * >>>>> >>>>> - In order to completely pull out discussions from edx-platform. >>>>> discussion XModule is (almost) converted to an XBlock >>>>> <https://github.com/edx/edx-platform/pull/12582>. The next step >>>>> would be to replace course discussion tab with discussion XBlock-based >>>>> solution. >>>>> - This might be useful for building instructor tools (example of a >>>>> tool that could benefit from this >>>>> >>>>> <https://github.com/open-craft/problem-builder/blob/master/problem_builder/instructor_tool.py>). >>>>> This is related to other thread on mailing list >>>>> <https://groups.google.com/forum/#!topic/edx-code/Zd2sKQaMhHI> - >>>>> kind of alternative implementation. >>>>> >>>>> *Tentative implementation details: * >>>>> >>>>> *tl;dr*: XBlockTab (working name) will be similar to existing >>>>> StaticTab (powers "Custom Page" feature) and use nested XBlocks concept to >>>>> allow using any XBlock (component?) in a Tab. >>>>> >>>>> Overall, it would work like that: >>>>> >>>>> - "Pages" page in Studio will have "Add XBlock Page" button added; >>>>> this button will cause XBlockTab to be added to a course >>>>> - In studio XBlockTab will expose UI for adding XBlocks and (most >>>>> likely) other components (problems, video, etc.), similar to one found >>>>> in >>>>> course Outline editor (Unit page). At a glance it looks like it could >>>>> be >>>>> exact same UI, but it is not 100% clear yet. >>>>> - Components added to an XBlockTab will be persisted to the >>>>> modulestore using the same mechanism to allow nested XBlocks. >>>>> - In LMS, XBlockTab will render its children (nested) components >>>>> sequentially - much like "Unit" (aka vertical module). >>>>> >>>>> >>>>> I'm about writing an OEP this week, so feedback and ideas are very >>>>> welcome. >>>>> >>>>> Regards, >>>>> Eugeny >>>>> @Opencraft <http://opencraft.com/> >>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "General Open edX discussion" group. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/edx-code/ad852782-b1e2-46ba-85bc-8d93db72048a%40googlegroups.com >>>>> <https://groups.google.com/d/msgid/edx-code/ad852782-b1e2-46ba-85bc-8d93db72048a%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>>> >>>>> -- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "General Open edX discussion" group. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/edx-code/CFAAC85C-CE8E-4A56-819C-F1610A0C730A%40gmail.com >>>>> <https://groups.google.com/d/msgid/edx-code/CFAAC85C-CE8E-4A56-819C-F1610A0C730A%40gmail.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>> >>>> >>>> >>>> -- >>>> >>>> >>>> [image: Cristian Salamea on about.me] >>>> >>>> Cristian Salamea >>>> about.me/ovnicraft >>>> <http://about.me/ovnicraft> >>>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "General Open edX discussion" group. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/edx-code/70e847c6-b42e-470f-8ea2-9ffba6d81e2f%40googlegroups.com >>> <https://groups.google.com/d/msgid/edx-code/70e847c6-b42e-470f-8ea2-9ffba6d81e2f%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >> >> -- > You received this message because you are subscribed to the Google Groups > "General Open edX discussion" group. > To view this discussion on the web visit > https://groups.google.com/d/msgid/edx-code/4dd69f54-5ead-45ea-bf29-3b7ffce6be64%40googlegroups.com > <https://groups.google.com/d/msgid/edx-code/4dd69f54-5ead-45ea-bf29-3b7ffce6be64%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "General Open edX discussion" group. To view this discussion on the web visit https://groups.google.com/d/msgid/edx-code/CABSDBxAysmdEpQ2heJXQPQ5rb1rbopbdP-eB9UkCfV7MQ7%2BRRw%40mail.gmail.com.
