Setting up custom certificates templates with Tutor

Where is this being done?

Edit:
Solved? I found one here: edx\tutor\env\apps\openedx\config
and have put in the feature flag above. But it doesn’t show any difference in the preview of the cerificate :frowning:

Sorry for my brief question.

I am new to open edx and this forum. So ‘Hello’ from my side and thanks for welcoming me.

Since days I have been coping with the certificate topic and it does not at all meet my expectations. So I am very lucky having found this step by step guide and hope, it will work out.

BTW: I am looking from a customizer’s point of view, not from a coder’s :wink:

Thanks for your assistance!

Hi @phulc
I don’t have any idea about the tutor, as I am working on open edx only

But if you can tell me the steps that you have already done then I can suggest to you, if you are missing anything.

1 Like

Is there another lms.env.json outside tutor? I did not find any …

@phulc

Have you checked the /edx/app/edxapp directory?

edxapp

I don’t have this directory.

Ok Anjali,
I have learned now that there is a tutor version of edx and I will continue posting in the appropriate forum. So please excuse my naïve approach and thanks a lot for your good will to help!
Best wishes, Falk

Hi guys,

I realized that the files in ‘/edx/tutor/data/openedx/staticfiles/templates/certificates’ do not seem to be used to compose a certificate. If have put some remarks in there but they do not show up.

So my questions are:

  1. which template files are being used as default?
  2. how can I make open edx make use these files?

Thanks
Falk

@phulc, the templates used to compose a certificate are in the lms/templates/certificates directory. If you want to customize them, you can override those files in your theme.

Another approach that doesn’t require overrides in the theme is to use the Certificate models exposed via the LMS Django admin interface.

You can use the Certificate template assets model to upload static assets that you want to use in your certificates and then define the certificate template in the Certificate templates model. Note that you can use the mako templating language to define the certificate template and also extend/reuse the existing base templates in your overridding template configuration.

Using this database-driven feature requires the CUSTOM_CERTIFICATE_TEMPLATES_ENABLED and ORGANIZATIONS_APP feature flags to be set to true and the courses in which you want to create custom certificate templates for, should be added to an organization.

Please let me know if you have any questions or doubts.

1 Like

Thanks Guruprasad,
the directoy ‘/edx/tutor/data/lms’ on my server does not contain any templates directory (yet). Shall I create one with a subdirectory ‘certificates’ and then copy the templates from github into it? Is this the plan?
Regarding the second option something elementary must be missing in my setup.
I have been working with the settings in the LMS during the last week without any success. So please let me tell you what I have. Hopefully you will notice what has gone wrong.

  • In ‘Certificate generation configurations’ I have one ‘CertificateGenerationConfiguration object’ that is enabled.

  • In ‘Certificate generation course settings’ I have one item with Course Key and self genetaion enabled.

  • In ‘Certificate html view configuration’ I have 10(!) entries 8 of which are anabled. I am not able to deactivate or delete any. So I do not know which one is used by the system.

  • In ‘Certificate template asset’ I have one item. A simple html template I wanted to test with (certificate_template_assets/2/SimplesTemplate.html). But seems not to be used.

  • In ‘Certificate template’ I have three templates with different constellations. At the moment a template with the course key and without a mode selected seems to work best.

  • In ‘Organizations Link Course’ I have specified the course ID linked to the organization

  • In ‘Organizations Organizations’ the organization is set up with names, logo.png and activated.

This has been done so far (without effect).

“Using this database-driven feature requires the CUSTOM_CERTIFICATE_TEMPLATES_ENABLED and ORGANIZATIONS_APP feature flags to be set to true and the courses in which you want to create custom certificate templates for, should be added to an organization.”
This I do not understand. Has this to be done in addition or does this describe an third approach? Where are these settings being inserted?

@phulc, I am not very familiar with how Tutor (which is not an officially supported installation method) works and organizes its files and folders. So I’ll have to check that out to be able to answer your question.

From what I have tried before, you will only need the Certificate template and `Certificate template assets’ out of all the ‘Certificate *’ models for customizing the certificate template. And that can be done only after enabling the 2 feature flags I have mentioned and applying them (restart LMS?). The steps that you have followed to create an organization and link the course with the created organization are correct. Also, a ‘Certificate Template’ model instance has to be created for each course mode separately.

Just to be clear: I do not propose or insist in doing something with tutor. I am not familiar with open edx at all; so the easiest and most straight forward approach that you know is fine for me!

Well.
I now have double checked that these flags are set in ‘/edx/tutor/env/apps/openedx/config/lms.env.json’ as you said. They are.

“FEATURES”: {
“MILESTONES_APP”: true,
“ENABLE_PREREQUISITE_COURSES”: true,
“CERTIFICATES_HTML_VIEW”: true,
“CUSTOM_CERTIFICATE_TEMPLATES_ENABLED”: true,
“PREVIEW_LMS_BASE”: “preview.elearning.medopolo.com”,
“ENABLE_COURSE_DISCOVERY”: true,
“ENABLE_COURSEWARE_SEARCH”: true,
“ENABLE_DASHBOARD_SEARCH”: true,
“ENABLE_COMBINED_LOGIN_REGISTRATION”: true,
“ENABLE_GRADE_DOWNLOADS”: true,
“ENABLE_MOBILE_REST_API”: true,
“ENABLE_OAUTH2_PROVIDER”: true,
“ORGANIZATIONS_APP”: true
},

The hint I had used was from Organization dedicated certificate template.
Perhaps my syntax is wrong?

Hello folks,

I got stuck now.
First task I was given last week was to customize the look of the certificates. I had understood that the given set is just meant to be an example but I haven’t found out yet, where to put ‘my’ set of templates and how to tell open edx to use it. I have tried to apply tutorials like this ‘https://edx.readthedocs.io/projects/edx-installing-configuring-and-running/en/latest/configuration/enable_certificates.html#certificates-in-additional-languages’ but there is always sth that does not match my installation (here the paths) or does not work out.

As an example I started to add logos for the enterprise in the LMS administration. Well, it was uploaded in the LMS administration (…/admin/organizations/organization/) and still is. That’s what was achieved. But the logo is not displayed anywhwere in edx.

To my surprise - you will know it and laugh about me - all logos I had replaced manually via ftp, are overwritten when the system is rebooted.

So my question is:
where do I have to put my logos for the whole platform and templates (at least for the certificates) to have them persistantly used?

Looking forward to your hints …

Thanks for your time
Falk

1 Like

@phulc, my answer to your other similar question has some context on what needs to be done for this. You can use the Certificate template assets model to upload static assets which can then be used in custom certificate templates.

@phulc I have merged your different threads on this topic to a single one. Can you keep all related posts in a single thread in the future?

Thank you very much.