Publish item to Tempshare with a custom certificate - cannot include image references

Aug 01, 2018

Hello all,

I currently have a course which includes a custom certificate. 

The generation of this certificate is triggered by pressing a "Print me" button, which triggers execution of the javascript below (I did not write this whole, I adapted it from somebody elses javascript custom certificate command).

I have put in bold in the javascript where I have references to images which are to be included in the certificate. So when I publish for CD, for example, I then copy the relevant images into by published story folder, so they are able to be "found" by the javascript.

I wish to share this training module to some  learners far afield using the tempshare service, and have them generate and print their own certificate. I publish the item for web, copy my image files into the resulting folder, and then zip up the whole thing directly - not using the Articulate option to "zip" that always pops up after you publish a file, put by right clicking the folder and selecting "Zip".

The problem is when I try to upload this zipped file to tempshare, I get an error saying "sorry, we were unable to publish this file." (see attached screenshot)

Does anybody have any suggestions for why this is occurring? Is there something different from the way Articulate zips their files rather than normal zipping software? When I zip the published content using Articulate it uploads no problem - but of course does not contain the images on the certificate.

Or does anybody have other ideas how I could share this training with somebody far afield, while ensuring that the pictures are also included on the certificate? Due to restrictions on our email, we can't email zipped or .exe files, and the persons I need to send this to aren't on our LMS system.

Perhaps there is a way I could include the images in the course content itself and have a javascript reference to these images? I'm not a javascript expert so I'm not sure if this is possible. 

 

var m_names = new Array("Jan", "Feb", "Mar",
"Apr", "May", "Jun", "Jul", "Aug", "Sep",
"Oct", "Nov", "Dec");


var currentTime = new Date();
var month = currentTime.getMonth();
var day = currentTime.getDate();


var year = currentTime.getFullYear();
var dateString=(day <= 9 ? '0' + day : day) + "/" + m_names[month] + "/" + year;
var player = GetPlayer();
player.SetVar("systemdate",dateString)

 

myWindow = window.open("","Print","width=700,height=500,scrollbars=0,resizable=0");

var player=GetPlayer();
var course=player.GetVar("CourseName");
var username1=player.GetVar("FirstName");
var username2=player.GetVar("SecondName");
var company=player.GetVar("CompanyName");
var date=player.GetVar("systemdate");
var score=player.GetVar("ScorePercent");

var contents ='<html></head><style type="text/css">';
contents+='h2 {font-family:"Museo Sans For Dell"; font-size:10px; color:#333333}';
contents+='h3 {font-family:"Museo Sans For Dell"; font-size:20px; color:#0085C3}';
contents+='h4 {font-family:"Museo Sans For Dell"; font-size:8px; vertical-align:bottom}';
contents+='</style><body>';
contents+='<table width="100%" border="0" cellspacing="0" cellpadding="0">';
contents+='<tr><td><center><img src="CertificateBanner.png"></center></td></tr></table>';
contents+='<table width="100%" border="0" cellspacing="0" cellpadding="2">';
contents+='<tr><td colspan="5"><center><h2>THIS CERTIFIES THAT</h2>';
contents+='<h3>'+username1+' '+username2+'</h3> <h2>OF</h2> <h3>'+company+'</h3>';
contents+='<h2>HAS SUCCESSFULLY COMPLETED</h2>';
contents+='<h3>'+course+'</h3>';
contents+='<h2>ON</h2>';
contents+='<h3>'+date+'</h3></center></td></tr></table>';

contents+='<table width="100%" border="0" cellspacing="0"><tr>';

contents+='<td width="20%" rowspan="2"><img src="confidential.png"></td></tr>';

contents+='</body></html>';

myWindow.document.write(contents);
myWindow.document.close();
myWindow.focus();
myWindow.print();

 

8 Replies
Leslie McKerchie

Hi Michelle,

Thanks for reaching out and sharing what you are seeing when publishing to Tempshare.

Tempshare is not intended as a hosting solution and will auto-delete your course in 10 days.

It could be one of two things with the publishing issue:

  1. File size is limited to 500 MB
  2. HTML5-only courses are not supported in Tempshare (you would need to include Flash output)

Do one of those sound like they could be the culprit?

Michelle M

Hi Leslie, thanks for your response.

Yes, I know the file disappears after 10 days, but it will work as a workaround for me for one or two trainees need to get this course done. :) Hence my I need the printed certificate, so when they come on site they can prove they've already done the course (it's a EHS course which is required before anybody comes on site.

Neither of those causes sounds like the cause, because the course uploads and works perfectly when I zip it without putting the image files in the folder before zipping. The file size is still much less than 500MB.

Ashley Terwilliger-Pollard

Hi Michelle,

I wonder if the extra image files in the zipped folder are throwing it off? Since it's not a part of the expected structure it could be causing an error if Tempshare can't parse out where those files are to go. 

I'd also try using the Articulate zip option, and if you need to add more files to the folder, you can do so in the File explorer prior to zipping. That would also help check that the correct structure and zipping process is taking place. 

Michelle M

Thanks for your response. Sorry for the delay in getting back - I was on leave.

 

I tried as you advised and got, well, halfway there. The file will now upload successfully to tempshare, however, the image files themselves don't get pulled into the certificate.

 

I'm suspecting perhaps tempshare might not be built to deal with commands like this - maybe it's not set up to "look" for files in the folder.

It has no problem pulling in the data needed from the articulate file itself - for example, I've set a variable "first name" in the module itself, which is correctly pulled into the certificate.

I wonder if there's any way to get Articulate to pull an image from the content of the story itself?

It's worth pointing out that if articulate had an easy way to customize certificates, we wouldn't have to get into all this javascript.....just my two cents.

Leslie McKerchie

Hi Michelle,

Do you have access to a website server that you may be able to use to fit this need?

As you mention, perhaps this is just out of the scope of what Tempshare can do.

I know I do a lot of web-published testing using Amazon S3.

A customizable certificate is a feature that I've seen mentioned a few times and I'll add this conversation to the report as we track those feature requests.

Michelle M

Putting a long overdue update on this.

As we all agreed, what I wanted was just outside the capabilities of what tempshare could do. To this end I ended up redesigning the cert to include only features which could be directly coded with HTML.

Thanks for your help as always Leslie and Ashley.