Hi All,
For those of you out there that use, or plan to use, Quiz module....
I'm trying to organize requirements for a new module that would work with quiz to provide certificates (PDF or otherwise) to signify the completion of a Quiz. These could be printed, emailed, etc. I have the current specs typed up in the following google doc:
http://docs.google.com/View?id=dvc73g9_6cpvkbpdb
And this has been discussed already some over on d.o in this thread:
http://drupal.org/node/501874
There appears to be a fair amount of interest in this functionality, so I wanted to open the floor for comments here as well, before firing off development on this. Let me know what you think... missing requirements? missing use cases? bad approaches? etc...
And... my apologies for the made up username here. My normal account isn't working... despite synch requests...
Comments
Seems like you have a lot
Seems like you have a lot covered already. We have done something a bit similar and we had a few requirements not on your list, so is some background info in case you are interested.
The certificates are not a content type, but live in a library that is edited through an admin screen for the module. You can add as many certificates as you need to the admin screen.
Tokens are supported for things like name, address, passing score, passing date, etc.
Each course node can have multiple HTML-based certificates available that map to an arbitrary user profile field for the user requesting the certificate. This mapping happens on the course node for each course. This is because in our industry, a doctor gets a different certificate than a nurse, etc. In this way every course can have as many unique certificates as needed, or just fall back to the default.
The certificate can only be generated if the user has passed the course, so there is a check against a course status field for that user in a table. The business logic for pass/fail does not live in the certificate functionality.
The user id is passed as an argument to the course node URL (something like nid/uid/certificate) and this returns HTML used to generate the certificate and is used to create the PDF. We use the DOMPDF engine.
Certificate views are limited to only the user logged in as that UID or a user with a role that is set to "view all certificates."
Once generated, the user-specific certificate is saved in the database so if the template is changed or deleted, the users' certificates are not changed or deleted. This is a requirement for our industry.
The certificate can support all the CSS/HTML that DOMPDF supports, so the look can be fairly rich. There is a pretty good list of supported properties on the DOMPDF site. We use a wysiwg editor and once saved, there is a preview function, both in HTML and PDF.
Next on our to-do list is an admin function to regenerate a user's certificate in the case that there is an error in the saved version. Also an admin screen to search for a view other users certificates (as opposed to using the URL to view.) We're waiting for client funding to complete those. ;-)
I would say that the mapping of certificate type to user type at the course level was a pretty key requirement for us, not sure if it would be for other people though.
Also because we don't handle the business rules for passing/failing at the certificate level, our system can be (and is) used with external systems, which adds a lot of flexibility. Uncoupling from the quiz module (but still supporting integration fully) would be nice. What if you had an unscored course or wanted to give a certificate for donating to a charity (both of which are cases we've come across). You could have an admin screen to map to a table name/field/value to allow the certificate to be generated or not.
I've posted a couple of screenshots.
DLC Solutions
EthosCE
Argh .. Mollom won't let me
Argh .. Mollom won't let me post the screenshots. You can see them here:
http://www.ethosce.com/sites/default/files/images/192.png
http://www.ethosce.com/sites/default/files/images/194.png
DLC Solutions
EthosCE
Stuck on Mapping
I have intstalled both Quiz and Certificate.
When I create a quiz and try and select a Certificate to issue on passing.
It dispays
"Please set up field mappings before using certificates."
When in Administer › Site configuration › Certificates > Mapping
I try to select a Profile field but all it displays is "no field"
What do I need to do to add this to the Quiz?
Thanks in advance
Regards
Simon
Thanks for the feedback
@doyleoliver Can you open an issue in the Certificate issue queue?
When you do, can you include info like whether you have profile fields set up, and whether you're using 6.x-1.0 or the latest 6.x-1.x-dev?
In general, you can use profile fields or basic (node type) mapping. You can also set up your own custom mapping.
Certificate module
I have a (sort of alpha quality) module for this awaiting approval for publishing on Drupal.org - http://drupal.org/node/501874#comment-3098802