Follow-up to #2378365: Convert Quiz to D7 Entity API

Problem/Motivation

If a Quiz is just an entity, there is really no good way to get to it unless you know the URL or there is some special view listing Quizzes. The current behavior of Quiz is to act as content, which I believe is a behavior we should preserve.

If a Quiz entity can be attached to content it makes it easier for admins to organize for the users to take a quiz, similar to the way it is set up in Quiz 4 and 5.

Proposed resolution

Create a quiz reference field and let it be attached to nodes.
Allow that field to reference a Quiz.

Look at how Commerce and Registration module do this, with "Entity local" tasks being put on the content.

Remaining tasks

User interface changes

API changes

Original report by @username

Comments

djdevin’s picture

Issue summary: View changes
thehong’s picture

We should support multi-values reference, so user can create super simple course node type, link quizzes to course.

djdevin’s picture

That'd be great, a more robust approach is https://www.drupal.org/project/course when you have to have very defined sets of requirements (or things other than Quiz). But for this we could just have a basic "complete" flag when you pass them all. Or, none at all, and just report on the status.

Registration handles this by using subtabs on each of their entity local tasks for each related entity. If there's multiple Quizzes in a relationship field we could just have them link to the entity URL, otherwise, integrate it into the content. I'm not 100% sure of the approach we want to take with multiples.