Forum Discussion
Storyline 3.18.28642.0 publishing breaks tincan tracking -- forbidden
I was told to get this new version because of these threads: https://community.articulate.com/discussions/articulate-storyline/firefox-is-it-compatible-or-not
Now when I publish for tincan, my tracking doesn't work. Going through fiddler I see that my tincan tracking statements are getting 403 forbidden errors, so my tracking methods are not getting called. Using published files from my older version - 3.15.26826.0 -- works fine. They return 204, my methods get called and all is good. What changed?
A couple of notes:
- The tincan.xml files produced by each version are identical
- I notice that when publishing in the new version, the dropdown says xAPI instead of tincan. Does this mean there are other differences?
Thanks
24 Replies
- Jürgen_Schoene_Community Member
are there error message in the browser console?
is the html and the iframe in the same domain? - FrankSiegelCommunity Member
The only console error I get is the one I mentioned before:
actionator::exeJavaScript - track_completion is not defined
It says it comes from bootstrapper.min.js:2:149179
Not sure what you mean by "is the html and the iframe in the same domain". I imagine they are -- I don't do anything fancy here -- just call a javascript module that works in every other browser.
- Jürgen_Schoene_Community Member
add some debug code "console.log(...)"
function injecttracking() {
console.log( "injecttracking" );
var head = this.contentDocument.getElementsByTagName("head")[0];
var scr = this.contentDocument.createElement('script');
scr.type = 'text/javascript';
scr.src = '/js/track.js';
head.appendChild(scr);
console.log( "head", head );
console.log( "scr", scr );
}add in the track.js before the first line and after the last line also a console.log("...") command
first try it with chrome, if it's ok then try it with firefox
make screenshots from the browser console with all log messages
- FrankSiegelCommunity Member
It's all very strange. When I use Chrome, it works fine. My initial injecttracking console statements show up at the beginning. When it's time to call track_completion, I see a quick ... and then the console messages disappear.
When I do this in firefox, I never see any debug statements. There are some errors, as shown in the attachment, but the module starts up and runs fine. It just doesn't put out debug statements, and it always gets the same error -- actionator::exeJavaScript - track_completion is not defined
- Jürgen_Schoene_Community Member
i need the COMPLETE console output with the "console.log" commands in chrome and the same version in firefox, then maybe i can see what happens
- FrankSiegelCommunity Member
When I run firefox, I never see the debug statements, which seems to indicate that injecttracking is not even being called. I never see track_completion being called -- just that error message -- actionator::exeJavaScript - track_completion is not defined. When I get to my NEXT screen to continue, it just hangs. However, if I come back in to our training, it looks like it actually worked -- it shows that the module was completed.
As for Chrome, I do see the injecttracking debug statements, and have attached those. However, when it gets to track_completion, it works, but the debug just shows 3 quick dots and goes away. I would also notice a console error on this line (the function after track_completion) --
$(function () {
// disable caching of GET requests in IE
$.ajaxSetup({ cache: false });
});where it said it didn't recognize $. However, when I took that out, the behavior didn't change for either browser.
I don't know why Firefox is different -- Edge and Chrome work fine.
- FrankSiegelCommunity Member
One other note -- I did see an Articulate article that says: Don't include
<script type="text/javascript">
in your codeOur injecttracking does have <script type="text/javascript"> and </script> around it, but taking that out just causes our source to show up in a window behind the training. This happens in all browsers and doesn't make any difference as far as behavior is concerned.
- Jürgen_Schoene_Community Member
if "$" is not recognized, jQuery is not loaded
since storyline 3.36.21213.0 jQuery is not integrated anymore
- Jürgen_Schoene_Community Member
why are you use "http" and not "https" for import your files?
https://developer.mozilla.org/en-US/docs/Web/Security/Mixed_content
Starting in Firefox 23, mixed active content is blocked by default
try change all "http" to "https"
- FrankSiegelCommunity Member
Where are you seeing http?
- Jürgen_Schoene_Community Member
Related Content
- 12 months ago