Skip to main content
Avotas2761
Inspiring
July 22, 2016
Answered

Certificates

  • July 22, 2016
  • 3 replies
  • 877 views

Corporate guidelines and styles require all certificates, to be awarded on the completion of a quiz, be styled using the official standards. Does anyone know of a plug-in to make custom certificates? They need to be printable, and frankly I am running out of good ideas. So far I have tried:

  • Outputting a certificate on a blank Captive slide – Problem: Fields are not printable
  • Modifying the “Post Results” button to trigger a special PHP script to redirect the user to a standard HTML website – Problem: URL redirects are not supported, the Post Result dialog returns an ‘unknown error’
  • Linking the students to a URL on the slide and outputting the quiz results to a XML file – Problem: Students will leave the page before the “Post Results” dialog is completed, or two students will finish the quiz at the same time and overwrite the previous quiz result.
    This topic has been closed for replies.
    Correct answer Avotas2761

    Hello Viewers! I stumbled onto a few more people making requests along the same lines, none with answers, so I wanted to present a simple method to produce customized certificates, using either Flash or HTML5, without the added expense of a LMS.

    What you need:

    • PHP Enabled Webserver
    • SMTP Server (Private or Public: Google, etc)
    • PHPMailer
    • InternalServerReporting.php (Comes with Adobe Captivate)

    For Captivate:

    1. Enable reporting for the Quiz
    2. Select “Internal Server”
    3. Fill out the server address (https://www.example.com/dev/InternalServerReporting.php)
    4. Fill out the Company, Department, and Course
    5. Publish the project to the web server and test

    For the Server:

    1. Copy/Install ‘PHPMailer’ in the www directory

    To enable Email reporting

    1. Grab ‘A Simple Example’ from https://github.com/PHPMailer/PHPMailer
    2. Paste the code example at the bottom of InternalServerReporting.php
    3. Modify the code to point to your SMTP server, credentials, port, and include your new variables. For a quick proof of concept, use the following line: $mail->Body    = "Your Adobe Captivate Department is equal to: " . $DepartmentName . ".";

    Note: You will need to parse $Filedata to get quiz results, answers, custom variables, etc. There are many ways to parse in PHP, so I will skip over this step.

    So each time a user hits ‘Post Results’ and results are recorded, it will trigger InternalServerReporting.php which in turn will execute the code to send an email.

    My email response looks like this:

    Note: All variables in the below example are custom from parsing $Filedata.

    ($ClassName)

    ($StudentName)

    ($CompanyName) confirms that the above named participated in the training session and successfully passed the final exam.

    Date: ($Date)

    Score: ($Score)

    The training included the following topics: ($CourseMetaData)

    3 replies

    Avotas2761
    Avotas2761AuthorCorrect answer
    Inspiring
    August 2, 2016

    Hello Viewers! I stumbled onto a few more people making requests along the same lines, none with answers, so I wanted to present a simple method to produce customized certificates, using either Flash or HTML5, without the added expense of a LMS.

    What you need:

    • PHP Enabled Webserver
    • SMTP Server (Private or Public: Google, etc)
    • PHPMailer
    • InternalServerReporting.php (Comes with Adobe Captivate)

    For Captivate:

    1. Enable reporting for the Quiz
    2. Select “Internal Server”
    3. Fill out the server address (https://www.example.com/dev/InternalServerReporting.php)
    4. Fill out the Company, Department, and Course
    5. Publish the project to the web server and test

    For the Server:

    1. Copy/Install ‘PHPMailer’ in the www directory

    To enable Email reporting

    1. Grab ‘A Simple Example’ from https://github.com/PHPMailer/PHPMailer
    2. Paste the code example at the bottom of InternalServerReporting.php
    3. Modify the code to point to your SMTP server, credentials, port, and include your new variables. For a quick proof of concept, use the following line: $mail->Body    = "Your Adobe Captivate Department is equal to: " . $DepartmentName . ".";

    Note: You will need to parse $Filedata to get quiz results, answers, custom variables, etc. There are many ways to parse in PHP, so I will skip over this step.

    So each time a user hits ‘Post Results’ and results are recorded, it will trigger InternalServerReporting.php which in turn will execute the code to send an email.

    My email response looks like this:

    Note: All variables in the below example are custom from parsing $Filedata.

    ($ClassName)

    ($StudentName)

    ($CompanyName) confirms that the above named participated in the training session and successfully passed the final exam.

    Date: ($Date)

    Score: ($Score)

    The training included the following topics: ($CourseMetaData)

    Avotas2761
    Inspiring
    July 22, 2016

    It's Arial (22 point). The print issue is more related to Flash. Regretfully some of the futures I am using require the older SWF export.

    Lilybiri
    Legend
    July 22, 2016

    Arial should work fine. So it is not due to Captivate as you told.

    Avotas2761
    Inspiring
    July 22, 2016

    Printing the screen with Adobe Flash (swf) is a limitation of the technology; it's also a fairly poor workaround of a larger issue.

    The fault comes with Captivate for not including any method of printing, exporting, or otherwise including some -customizable- proof of completion of training. By locking down customization of interactions, and blocking attempts to export variables via scripts, this software solution becomes a vastly flawed product. I am extremely disappointed in Adobe.

    Lilybiri
    Legend
    July 22, 2016

    Just a question about your first scenario: how did you create the 'fields'?

    Avotas2761
    Inspiring
    July 22, 2016

    Hi!

    It's a custom variable .... so for example I ask the user to input their name, that writes to variable $$Name$$ which is displayed at a later date in a text caption. That all works correctly, however when you attempt to print (File -> Print, CTRL-P, etc) the result is blank or highly distorted.

    Lilybiri
    Legend
    July 22, 2016

    Which font did you use? Variables in a text container mean that this will be text generated on runtime. All static text is converted to images when published. When you use a font that is not available on the user's system this can lead to weird results. I try to put all variables in a separate text container and use a websafe font.