On this page

Search

The certificate module creates customisable certificates that can be delivered electronically to Learners for completion of courses or activities. The certificate allows you to add images, text, and grade information.

(The video above is taken from the Grading, completion and certificates course in the Totara Academy).

All activities and resources are also available in the Totara Mobile app. Please note that activities and resources may work slightly differently in the Mobile app compared to on a desktop site. 

Add a certificate

  1. Click Turn editing on.
  2. Select Certificate from the Add an activity... dropdown menu.
  3. Enter a certificate name, this then appears on the course page for learners.
  4. Customise the available settings.
  5. Click Save and display (or Save and return to course).

Edit a certificate

  1. Click Turn editing on.
  2. Click Edit next to the certificate activity.
  3. Make the required changes.
  4. Click Save and display (or Save and return to course).

Certificate settings 

SettingDescriptionNotes

Send notifications

If enabled, then Trainers are notified when a Learner receives a certificate.-
Notify othersEnter the email addresses here of others who need to be notified when a Learner receives a certificate. Multiple addresses should be entered with a comma separating the addresses.-

Delivery

Choose how the Learner receives their certificate:

  • Open in browser: Opens the certificate in a new browser window
  • Force download: Opens the browser file download window 
  • Email certificate: Choosing this option sends the certificate to the Learner as an email attachment

Once a Learner receives the certificate they will see the date their certificate was issued and be able to review their certificate when they click on the Certificate link on the course page.

For Force download, Internet Explorer does not support the open option from the download window. The save option must be chosen first.

Save certificateThis option allows the system to store a copy of each Learner's certificate in the course moddata folder. A link to each Learner's saved certificate is displayed in the Trainer's View issued certificates report.-
Required minutes in courseEnter here the minimum amount of time, in minutes, that a Learner must be logged in to the course before they will be able to receive the certificate.

This time is calculated based on a user's actions logged in the standard log. When the standard log is disabled, legacy log will be used. If that is also disabled, this option will be disabled.

Please note that when the log is disabled and then re-enabled a user's actions during the time the log was off will not be recorded, and as result will not be counted towards time spent on course.

Print dateThis is the date that will be printed, if a print date is selected. If the course end date is selected, you must enable the date range and set the course end date in your course settings. If the course end date is not set, the date received will be printed. You can also choose to print the date an activity is graded. If a certificate is issued before that activity is graded, the date received will be printed.

Once a date is printed on a certificate, it cannot be changed unless you have customised your type/certificate.php file.

Date formatChoose a date format to print the date on the certificate.-
Print codeA unique 10-digit code of random letters and numbers can be printed on the certificate. This number can then be verified by comparing it to the code number displayed in the Trainer View Issued Certificates report.-
Print gradeYou can choose any available course grade items from the gradebook to print the user's grade received for that item on the certificate. The grade items are listed in the order in which they appear in the gradebook.

Once a user has received their certificate, their grade on the certificate will not change.

Grade format

There are three available formats if you choose to print a grade on the certificate:

  • Percentage Grade: Prints the grade as a percentage.
  • Points Grade: Prints the point value of the grade.
  • Letter Grade: Prints the percentage grade as a letter. The values for the letter grades can be customised in type/certificate.php.
-
Print outcomeYou can choose any course outcome to print the name of the outcome and the user's received outcome on the certificate e.g. 'Assignment outcome: Proficient'.-
Print credit hoursEnter here the number of credit hours to be printed on the certificate.-
Print teacher name(s)For printing the Trainer name on the certificate, set the role of the Trainer at the module level. Do this if, for example, you have more than one trainer for the course or you have more than one certificate in the course and you want to print different Trainer names on each certificate. Click to edit the certificate, then click on the 'Locally assigned roles' tab. Then assign the role of Trainer (Editing Trainer) to the certificate (they do not have to be a Trainer in the course, you can assign that role to anyone). Those names will be printed on the certificate for the Trainer.-
Custom text

If you want the certificate to print different names for the Trainer than those who are assigned the role of Trainer, do not select Print trainer or any signature image except for the line image. Enter the Trainer names in this text box as you would like them to appear. You can change this placement in your certificate/type/"type name"/certificate.php file. In that file, find the line of code similar to this at the very bottom of the page:

cert_printtext(150, 450, '', '', '', '', '');

The two numbers reflect the X placement (over from the left) and Y placement (down from the top) values for the text. You can change these if you like.

You can also use the text box to enter html. For example, you can add a link or an image.

The following html tags are available:

  • <br> and <p>
  • <b>, <i> and <u>
  • <img> (src and width (or height) are mandatory)
  • <a> (href is mandatory)
  • <font>: possible attributes are:
  • color: hex color code
  • face: arial, times, courier, helvetica, symbol

Example html: Mr. James Salesman, Manager<br><br>Sales Department<br><br><font color="#0000CC"><b>Your Company<font face="Symbol">&Ograve;</font></b></font><img src="http://yourtotara.com/mod/certificate/pix/seals/Logo.png" width="100"><p><a href="http://www.site.com/ target="_blank">Click here</a></p>

Certificate type

This is where you determine the layout of the certificate. The certificate type folder includes four default certificates:

  • A4 embedded: Prints on A4 size paper with embedded fonts - this makes PDF files large
  • A4 non-embedded: Prints on A4 size paper using Helvetica and Times fonts - these need to be installed on the users computer to work
  • Letter embedded: Prints on letter size paper with embedded fonts - this makes PDF files large
  • Portrait letter: Prints on letter size paper using Helvetica and Times fonts - these need to be installed on the users computer to work

New types can be added to the certificate/type folder. The names of the folders, and any new language strings for the new type, must be added to the certificate/lang/en_utf8/certificate.php file.

Most languages print a certificate with no problems, even if they contain accents or umlauts. However, if your language uses characters, you need to choose a unicode type. These types use a different PDF library that embeds the entire font in the PDF. This will make the PDF files rather large; thus it is not recommended to use this type unless you must.

OrientationChoose either landscape or portrait.-
Border image

The border image option allows you to choose a border image from the certificate/pix/borders folder. Select the border image that you want around the certificate edges or select no border. The folder includes two different border images, each in four different colours.

Keep in mind that adding images to the certificate will increase the size of the PDF file. You can add your own border images to the certificate/pix/borders folder and they will also appear here, in the dropdown. The border images must be in the JPEG (.jpg) or PNG 8 (.png) format.
Border linesSince images can substantially increase the size of the PDF file, you may choose to print a border of lines instead of using a border image (be sure the Border image option is set to No). The border lines option will print a nice border of three lines of varying widths in the chosen colour.-
Watermark imageA watermark file can be placed in the background of the certificate. A watermark is a faded graphic. A watermark could be a logo, seal, crest, wording, or whatever you want to use as a graphic background.Keep in mind that adding images to the certificate increases the size of the PDF file. You can add your own images to the certificate/pix/watermarks folder and they appear here in the dropdown. The images must be in the JPEG (.jpg) or PNG 8 (.png) format.
Signature image

This option allows you to print a signature image from the certificate/pix/signatures folder. You can print a graphic representation of a signature, or print a line for a written signature. A sample signature image and a line image are included. You can change this placement in your certificate/type/"type name"/certificate.php file. In that file, find the line of code similar to this one toward the bottom:

print_signature($certificate->printsignature, $orientation, 110, 450, '', '');

The two numbers reflect the X placement (over from the left) and Y placement (down from the top) values for the image. You can change these if you would like.

Keep in mind that adding images to the certificate will increase the size of the PDF file. You can add your own images to the certificate/pix/signatures folder and they will also appear here in the dropdown. The images must be in the JPEG (.jpg) or PNG 8 (.png) format.
Seal or logo image

This option allows you to select a seal or logo to print on the certificate from the certificate/pix/seals folder. Four seal images and an example logo image are included. You can change this placement in your certificate/type/"type name"/certificate.php file. In that file, find the line of code similar to this one toward the bottom:

print_seal($certificate->printseal, $orientation, 590, 425, '', '');

The two numbers reflect the X placement (over from the left) and Y placement (down from the top) values for the image. You can change these if you would like.

Keep in mind that adding images to the certificate will increase the size of the PDF file. You can add your own images to the certificate/pix/seals folder and they will also appear here in the dropdown. The images must be in the JPEG (.jpg) or PNG 8 (.png) format.
Common module settings

See Common module settings to learn more.

-
Activity completion

See Activity completion to learn more.

-
Restrict access

See Restrict access to learn more.

-
Tags

See Tags to learn more. 

-

Viewing issued certificates

It is possible for the Trainer, manager, or Site Administrator to view a report of all issued certificates.

  1. Select the course.
  2. Click the Certificate activity.
  3. Click View issued certificates.

This shows the following fields:

  • Awarded To: The name of the person
  • Date Received: The date the certificate was issued
  • Grade: The grade the learner received
  • Code: If unique code option has been used

An example certificate with a background image.

Once a certificate has been issued to a user it is not able to be reissued or deleted.

Customising certificates

The certificate module creates PDF certificates for Learners of the course and is completely customisable. You can add borders, watermarks, seals, and even show grade information.

Upload images 

It is possible to upload border, watermark, seal, and signature images to be used in a certificate.

  1. Select Quick-access menu > Plugins > Activity modules > Certificate.
  2. Click Upload.
  3. Select the image file using the File picker and add the image to the area you want to store this.
  4. Select Save changes.

Selecting the certificate font

For certificates with embedded fonts you can choose the font to use for the site.

  1. Select Quick-access menu > Plugins > Activity modules > Certificate.
  2. Select the font to use for Serif and Sans-serif fonts. 
  3. Select Save changes.

Create a customised certificate format

It is possible to create your own custom certificate type. Your customised certificate appears on the list with the standard certificate types.

  1. Choose the certificate/type folder with the size/orientation you desire, copy and paste it in the certificate/type folder, and give the copied folder a new name. For example copy the /type/letter_landscape folder and rename it 'mycertificate'.
  2. Open the certificate/lang/en_utf8/certificate.php file and add the name of your new folder type. Following the above example, you would add: $string['typemycertificate'] = 'My New Certificate';

Now, when you add a certificate to a course, your new type should appear on the dropdown list as "My New Certificate".

You will need to include the correct string (as demonstrated above) otherwise you may receive an error message that will appear as though the code is broken. You should also note that if you upgrade the certificate module then files may disappear and you will need to set this up again.

Changing printed text

There are different lang strings in the certificate/lang/en_utf8/certificate.php file for each certificate type, so be sure to change the correct one for the type you are using. For example, if you want to customise the text for the landscape type, you can change these lines in the above mentioned lang file.

This is what the default looks like:

$string['titlelandscape'] = 'CERTIFICATE OF ACHIEVEMENT';

$string['introlandscape'] = 'This is to certify that';

$string['statementlandscape'] = 'has successfully completed the course';

Here is a customised example :

$string['statementlandscape'] = 'has successfully passed the final exam';

Adding a new line of text

Open the certificate/lang/en_utf8/certificate.php file and add your new lang string giving it a unique name, e.g.

$string['mynewtext'] = 'This is what I want to print on the certificate';

Open the file for your certificate type, e.g. certificate/type/mycertificate/certificate.php. At the bottom of the page below '// Add Text' is the code that prints--you guessed it--text on the certificate. Find the current line below which you would like your new text to be printed. For example, if you want your text to print below the course name, find the line:

cert_printtext(170, 330, 'C', 'Helvetica', '', 20, utf8_decode($classname));

Add a new line below that to print your new text using the name you gave your new lang string like this:

cert_printtext(170, 350, 'C', 'Helvetica', '', 20, utf8_decode(get_string('mynewtext', 'certificate')));

Make sure you add a string to the language file called mynewtext. The above line of code gets that string.

You can adjust the placement over from the left by increasing or decreasing the '170' number. You can adjust the placement down on the page by increasing or decreasing the '350' number. Changing 'C' to 'L' or 'R' will print on the left or right side. For different fonts, see the totara/lib/fpdf font folder for non-unicode types, and the totara/lib/tcpdf/fonts folder for unicode types, for available fonts.

For unicode certificates, using more than one font is not recommended since the entire font gets embedded in the certificate which increases the certificate file size. 

After the font name, you can add:

  • B for bold
  • I for italic
  • U for underline

Changing the '10' number will change the font size.

cert_printtext(170, 350, 'C', 'Times', , 10, utf8_decode($USER→idnumber));

You can add a hard coded line of text. For example, a signature title block line:

cert_printtext(150, 490, 'L', 'Times', , 10, utf8_decode('Keegan Jones, Director'));

Add your string to the PDF image

You can add your own custom string to the PDF print section. We wanted to add 'These continuing credits are from our organisation' below the title of the course. We used the landscape certificate type.

We added the string to the language file.

$string(ceusfromus) = 'These continuing credits are from our organisation';

In the type folder's certificate.php file, in the PDF area near the end of the file, we put the following line:

cert_printtext(170, 380, 'C', 'Helvetica', '', 16, utf8_decode (get_string('ceusfromus', 'certificate')));


Plugin settings

Certificates have different methods that can be used to submit and provide feedback. To change these select Quick-access menu > Plugins > Activity modules > Certificates.

SettingDescriptionNotes
Upload image

Clicking the upload link will take you to a new page where you can upload images for use in certificates for the following:

  • Border
  • Watermark
  • Seal
  • Signature

Remember to click Save changes once you have uploaded your desired images.

-
Sans-serif font family

Select the Sans-serif font family for certificates with embedded fonts.

-
Serif font family

Select the Serif font family for certificates with embedded fonts.

-

Scenarios and use cases

Adding a certificate for completion of a program

There isn't a way to do this directly but you can simulate this by creating a course with a certificate awarded on completion of the course or other criteria. Make this course the last course set in the program. This means that the certificate course will only be available when the other courses in the program have been completed.

Totara Academy

The Totara Academy has a whole course dedicated to using Grading, completion and certificates in Totara Learn. Here you can learn more on how to use these tools, see best practice, and give it a go yourself.

Provide feedback about this page using the link in the bottom right of this page. 

 Still have questions? 

Why not post them in the forums on the Totara Community?



  • No labels