Moodle
  1. Moodle
  2. MDL-16185

Scorm API not always found when SCO is first launched

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 1.9.1, 1.9.2
    • Fix Version/s: 1.9.4
    • Component/s: SCORM
    • Labels:
      None
    • Affected Branches:
      MOODLE_19_STABLE
    • Fixed Branches:
      MOODLE_19_STABLE
    • Rank:
      31178

      Description

      When launching a SCORM course, it can not always find the API causing lost data and errors. Recommend putting a test for the API existing prior to launching the SCORM course.

        Issue Links

          Activity

          Hide
          Dan Marsden added a comment -

          Hi Ron,

          we haven't seen this behavior with the latest code - can you please provide more information on how to reproduce it? - what exact version of 1.9.2 have you tested this with? - also - can you please provide more information on the "errors" you receive - screenshots would also help.

          thanks,

          Dan

          Show
          Dan Marsden added a comment - Hi Ron, we haven't seen this behavior with the latest code - can you please provide more information on how to reproduce it? - what exact version of 1.9.2 have you tested this with? - also - can you please provide more information on the "errors" you receive - screenshots would also help. thanks, Dan
          Hide
          Ron Meske added a comment -

          Hi Dan,

          Last week we installed the weekly build 20080820 for 1.9.2 and still see this behavior.

          The only errors we see are from the SCORM applications we are attempting to run as they can not find the API.

          We are running on a hosted server. Not sure if it will be helpful or not, I attached the PHP Info so you have all the version information.

          in both 1.9.1 and in this latest build we found that upon entering a SCO the API could not be found. This occurs both when running in a new window and when embedded. In the case of a new window, if we close the SCO window then refresh the player page, when the SCO is launched again it can then find the API. For the embedded version we just refresh the page and the SCO will then find the API when starting.

          We assume that the new countdown timer when launching a SCO was inserted as a fix for this behavior. If you can provide where the value for the length of time to wait is, we can adjust it to see if that corrects the problem.

          Thanks,
          Ron

          Show
          Ron Meske added a comment - Hi Dan, Last week we installed the weekly build 20080820 for 1.9.2 and still see this behavior. The only errors we see are from the SCORM applications we are attempting to run as they can not find the API. We are running on a hosted server. Not sure if it will be helpful or not, I attached the PHP Info so you have all the version information. in both 1.9.1 and in this latest build we found that upon entering a SCO the API could not be found. This occurs both when running in a new window and when embedded. In the case of a new window, if we close the SCO window then refresh the player page, when the SCO is launched again it can then find the API. For the embedded version we just refresh the page and the SCO will then find the API when starting. We assume that the new countdown timer when launching a SCO was inserted as a fix for this behavior. If you can provide where the value for the length of time to wait is, we can adjust it to see if that corrects the problem. Thanks, Ron
          Hide
          Ron Meske added a comment -

          This is PHP Info for the server we are running Moodle on.

          Show
          Ron Meske added a comment - This is PHP Info for the server we are running Moodle on.
          Hide
          Dan Marsden added a comment -

          Hi Ron,

          the delay has always been there, but Piers has now added a timer so that users aren't just presented with a blank screen during the delay.

          you can increase the delay via line 9 of mod/scorm/loadsco.php currently:
          $delayseconds = 2;

          let us know how you go!

          thanks,

          Dan

          Show
          Dan Marsden added a comment - Hi Ron, the delay has always been there, but Piers has now added a timer so that users aren't just presented with a blank screen during the delay. you can increase the delay via line 9 of mod/scorm/loadsco.php currently: $delayseconds = 2; let us know how you go! thanks, Dan
          Hide
          Dan Marsden added a comment -

          ...also - what browsers are you experiencing this issue with?

          Show
          Dan Marsden added a comment - ...also - what browsers are you experiencing this issue with?
          Hide
          Ron Meske added a comment -

          Hi Dan,

          We have only tested with IE 6 on Windows XP thus far. Here is what we have noticed:
          1. No error messages from Moodle
          2. The player.php page that is loading the API does not complete prior to loading loadsco.php
          3. The SCO can not find the API
          4. Increasing the wait time does not help
          5. If we close the course and exit the activity, then attempt to enter the activity again the issue still occurs
          6. If we close the course and just reload the player.php page, when the SCO loads it finds the API and it can initialize it.

          Thanks,
          Ron

          Show
          Ron Meske added a comment - Hi Dan, We have only tested with IE 6 on Windows XP thus far. Here is what we have noticed: 1. No error messages from Moodle 2. The player.php page that is loading the API does not complete prior to loading loadsco.php 3. The SCO can not find the API 4. Increasing the wait time does not help 5. If we close the course and exit the activity, then attempt to enter the activity again the issue still occurs 6. If we close the course and just reload the player.php page, when the SCO loads it finds the API and it can initialize it. Thanks, Ron
          Hide
          Dan Marsden added a comment -

          Hi Ron,

          can you please provide a scorm object that would allow us to reproduce this?

          via e-mail is fine.

          thanks,

          Dan

          Show
          Dan Marsden added a comment - Hi Ron, can you please provide a scorm object that would allow us to reproduce this? via e-mail is fine. thanks, Dan
          Hide
          Ron Meske added a comment -

          Hi Dan,

          I am e-mailing you a diagnostic SCO and Fiddler session information.

          Thanks,
          Ron

          Show
          Ron Meske added a comment - Hi Dan, I am e-mailing you a diagnostic SCO and Fiddler session information. Thanks, Ron
          Hide
          Dan Marsden added a comment -

          Hi Ron,

          using the object you sent through, I cannot reproduce this issue with the latest 1.9stable. please try again using todays weekly build (should be out in an hour or so.)

          Show
          Dan Marsden added a comment - Hi Ron, using the object you sent through, I cannot reproduce this issue with the latest 1.9stable. please try again using todays weekly build (should be out in an hour or so.)
          Hide
          Ron Meske added a comment -

          Hi Dan,

          I upgraded to the latest weekly install and still see the same thing. Upon load of the player.php not all includes are being requested and loaded. Still need to do a refresh on player.php.

          Show
          Ron Meske added a comment - Hi Dan, I upgraded to the latest weekly install and still see the same thing. Upon load of the player.php not all includes are being requested and loaded. Still need to do a refresh on player.php.
          Hide
          Dan Marsden added a comment -

          hmm... well normally these Can't find API errors are related to JS errors.

          1st - can you please turn developer debug on, and run your scorm object - then paste the results of the logging window here. - We especially want to see if Anything is logged in the logging screen when/before you get the API error.

          Could you also turn JS debugging on in IE, and let us know if/what errors appear?

          Ideally it would be great if you could try and reproduce this in Firefox with something like Firebug and let us know what JS erros appear on the console.

          thanks,

          Dan

          Show
          Dan Marsden added a comment - hmm... well normally these Can't find API errors are related to JS errors. 1st - can you please turn developer debug on, and run your scorm object - then paste the results of the logging window here. - We especially want to see if Anything is logged in the logging screen when/before you get the API error. Could you also turn JS debugging on in IE, and let us know if/what errors appear? Ideally it would be great if you could try and reproduce this in Firefox with something like Firebug and let us know what JS erros appear on the console. thanks, Dan
          Hide
          Ron Meske added a comment -

          Hi Dan,

          I turned on developer debug and I always have JS debugging on in IE. I launched the SCO in IE and it still can not find the API. There are no JS errors and the Moodle logs did not show any errors.

          I then tried using FireFox and there are no problems with either 2 or 3. So this issue is only with IE as far as we can determine.

          Based on the http requests that are captured in Fiddler, it looks as if some of the request for file includes never occur on the first load.

          Show
          Ron Meske added a comment - Hi Dan, I turned on developer debug and I always have JS debugging on in IE. I launched the SCO in IE and it still can not find the API. There are no JS errors and the Moodle logs did not show any errors. I then tried using FireFox and there are no problems with either 2 or 3. So this issue is only with IE as far as we can determine. Based on the http requests that are captured in Fiddler, it looks as if some of the request for file includes never occur on the first load.
          Hide
          Jeremy Rogers added a comment -

          I can attest to this issue as I am experiencing it, too! Using 1.9+ (20080328). SCORM 1.2 packages, uploaded from within Moodle, with the .zip archive chosen. Same issue as above: Using IE6, it gives an error message "Unable to load SCO API". Reloading the page causes the SCORM package to be displayed normally.

          Show
          Jeremy Rogers added a comment - I can attest to this issue as I am experiencing it, too! Using 1.9+ (20080328). SCORM 1.2 packages, uploaded from within Moodle, with the .zip archive chosen. Same issue as above: Using IE6, it gives an error message "Unable to load SCO API". Reloading the page causes the SCORM package to be displayed normally.
          Hide
          Jeremy Rogers added a comment -

          A log of the error results printed after receiving "Error - unable to acquire LMS API, content may not play properly and results may not be recorded. Please contact technical support."

          Show
          Jeremy Rogers added a comment - A log of the error results printed after receiving "Error - unable to acquire LMS API, content may not play properly and results may not be recorded. Please contact technical support."
          Hide
          Dan Marsden added a comment - - edited

          Hi Jeremy, 20080328 is quite old in terms of the bugs fixed in SCORM since then, please upgrade to the latest version of 1.9Stable and you will probably find it works for you.

          thanks,

          Dan
          ...In fact I think we've fixed over 50 bugs in scorm since that date.

          Show
          Dan Marsden added a comment - - edited Hi Jeremy, 20080328 is quite old in terms of the bugs fixed in SCORM since then, please upgrade to the latest version of 1.9Stable and you will probably find it works for you. thanks, Dan ...In fact I think we've fixed over 50 bugs in scorm since that date.
          Hide
          Ron Meske added a comment -

          Hi Dan,

          We are still experiencing the issue with IE and the latest build. We have tested this on several computers and from multiple ISP connections. Using Firefox either version 2 or 3 on the same computer does not have the issue. It appears to be IE specific.

          Where you able to open the session information from Fiddler that showed the http requests/responses for when it fails versus when it works for IE? Is there anything else we can provide to help track down what is causing the issue?

          Thanks,
          Ron

          PS We are interested to see if Jeremy still has the same issue after upgrading.

          Show
          Ron Meske added a comment - Hi Dan, We are still experiencing the issue with IE and the latest build. We have tested this on several computers and from multiple ISP connections. Using Firefox either version 2 or 3 on the same computer does not have the issue. It appears to be IE specific. Where you able to open the session information from Fiddler that showed the http requests/responses for when it fails versus when it works for IE? Is there anything else we can provide to help track down what is causing the issue? Thanks, Ron PS We are interested to see if Jeremy still has the same issue after upgrading.
          Hide
          Dan Marsden added a comment -

          Hi Ron, neither Piers or I have had time this week to look at this further - you could try resetting all IE's settings to default to see if that makes any difference. - make sure you turn error reporting/JS debugging on after resetting defaults.

          Show
          Dan Marsden added a comment - Hi Ron, neither Piers or I have had time this week to look at this further - you could try resetting all IE's settings to default to see if that makes any difference. - make sure you turn error reporting/JS debugging on after resetting defaults.
          Hide
          Jeremy Rogers added a comment -

          Though I have an older version of Moodle, SCORM-related functionality has worked surprisingly well. I think ADL-compliant SCORM packages are the first line of defense against issues.

          I would love to upgrade; I've been under the impression that it's difficult if you are running a production server with essential custom code. If anyone knows how to upgrade while maintaining code and language modifications, please message me or point me to some links to read up on this.

          The fact that Ron is still having this issue with a more-recent version ofmoodle (and the SCORM module) makes me wonder if any of those 50+ fixes are connected to the LMS - API communication. Dan, which specific patches are related/connected to LMS API communication and might go toward solving this issue?

          This forum discussion might shed some light on the origins of this bug: http://moodle.org/mod/forum/discuss.php?d=69384 - Thomas says it happens to him when he updates an existing SCORM package with a SCORM package containing modifications. Ron, are you updating existing SCORM packages?

          This would make sense in my usage, as I didn't experience this problem until I started using Moodle's built-in update feature. Before that I would upload a file via FTP and then to update the SCORM module, I would choose a different SCORM .zip (to clear out moddata of any remnants), save changes, and choose the updated SCORM that I just uploaded, and save changes again. Essentially the SCORM would be like it was newly-installed following this procedure, and I didn't run into these issues. However, it would also wipe out the SCORM tracking data, which is why I started using Moodle's SCORM update feature.

          By the way, I tried Thomas' method of unzipping the SCORM and overwriting all the files for it in moddata and it didn't work for me. Might be worth a try for Ron, though

          I'm going to dive in here and see if I can't make some kind of ad-hoc patch. Dan, could you tell me the commands that SCORM uses to load the LMS API? Does the location of the API differ between browsers? Any other info you could provide about SOCRM loading the API from the LMS (moodle) would be greatly appreciated.

          Show
          Jeremy Rogers added a comment - Though I have an older version of Moodle, SCORM-related functionality has worked surprisingly well. I think ADL-compliant SCORM packages are the first line of defense against issues. I would love to upgrade; I've been under the impression that it's difficult if you are running a production server with essential custom code. If anyone knows how to upgrade while maintaining code and language modifications, please message me or point me to some links to read up on this. The fact that Ron is still having this issue with a more-recent version ofmoodle (and the SCORM module) makes me wonder if any of those 50+ fixes are connected to the LMS - API communication. Dan, which specific patches are related/connected to LMS API communication and might go toward solving this issue? This forum discussion might shed some light on the origins of this bug: http://moodle.org/mod/forum/discuss.php?d=69384 - Thomas says it happens to him when he updates an existing SCORM package with a SCORM package containing modifications. Ron, are you updating existing SCORM packages? This would make sense in my usage, as I didn't experience this problem until I started using Moodle's built-in update feature. Before that I would upload a file via FTP and then to update the SCORM module, I would choose a different SCORM .zip (to clear out moddata of any remnants), save changes, and choose the updated SCORM that I just uploaded, and save changes again. Essentially the SCORM would be like it was newly-installed following this procedure, and I didn't run into these issues. However, it would also wipe out the SCORM tracking data, which is why I started using Moodle's SCORM update feature. By the way, I tried Thomas' method of unzipping the SCORM and overwriting all the files for it in moddata and it didn't work for me. Might be worth a try for Ron, though I'm going to dive in here and see if I can't make some kind of ad-hoc patch. Dan, could you tell me the commands that SCORM uses to load the LMS API? Does the location of the API differ between browsers? Any other info you could provide about SOCRM loading the API from the LMS (moodle) would be greatly appreciated.
          Hide
          Jeremy Rogers added a comment -

          This is the JavaScript that is connected to the error log I uploaded previously. The script is searching through various locations to find the LMS API. It looks through parents and children of the document.

          Show
          Jeremy Rogers added a comment - This is the JavaScript that is connected to the error log I uploaded previously. The script is searching through various locations to find the LMS API. It looks through parents and children of the document.
          Hide
          Jeremy Rogers added a comment -

          AHA! Now we're getting somewhere. Here is an old discussion from the forum that captures the problem perfectly: http://moodle.org/mod/forum/discuss.php?d=44775 . It looks like this has been an issue for a while - it's intermittent for some people and nonexistent for others. Apparently the content is getting loaded before the API, which is why a reload works. Have any of the possible solutions in the thread been discussed and/or implemented?

          Show
          Jeremy Rogers added a comment - AHA! Now we're getting somewhere. Here is an old discussion from the forum that captures the problem perfectly: http://moodle.org/mod/forum/discuss.php?d=44775 . It looks like this has been an issue for a while - it's intermittent for some people and nonexistent for others. Apparently the content is getting loaded before the API, which is why a reload works. Have any of the possible solutions in the thread been discussed and/or implemented?
          Hide
          Ron Meske added a comment -

          Dan - We will setup a computer with a clean install of IE 6 without any Browser add-ons and no Internet Security software to see if that makes a difference.

          Jeremy - This problem exists for all SCORM courses at first installation and with updates. To determine if your issue is identical try installing Fiddler (http://www.fiddlertool.com/fiddler/). Navigate to the course and just before launching the SCO start Fiddler monitoring the connection. Then exit the SCO and reload the page. When we do this Fiddler shows several more files being requested and received upon reload as compared to the first launch.

          It appears that some files do not get requested prior to some segment of code gets executed that cancels the request. Depending on how the test with a clean install of IE 6, this may require a complete trace of the code as it loads to locate this issue. We just can't spare the resources right now to do this ourselves.

          Show
          Ron Meske added a comment - Dan - We will setup a computer with a clean install of IE 6 without any Browser add-ons and no Internet Security software to see if that makes a difference. Jeremy - This problem exists for all SCORM courses at first installation and with updates. To determine if your issue is identical try installing Fiddler ( http://www.fiddlertool.com/fiddler/ ). Navigate to the course and just before launching the SCO start Fiddler monitoring the connection. Then exit the SCO and reload the page. When we do this Fiddler shows several more files being requested and received upon reload as compared to the first launch. It appears that some files do not get requested prior to some segment of code gets executed that cancels the request. Depending on how the test with a clean install of IE 6, this may require a complete trace of the code as it loads to locate this issue. We just can't spare the resources right now to do this ourselves.
          Hide
          Dan Marsden added a comment -

          Hi Jeremy, a range of related issues that return this particular error have been fixed in the latest code. - most of the time when the API cannot be found it is because of a Javascript error. - a lot of fixes have gone in, so it's difficult to isolate which ones could solve your particular issue. - We have had trouble reproducing the specific issue Ron is experiencing, but haven't had time over the past couple of weeks to look into it further.

          the site Demo.moodle.org is using a later version of code - you could try testing out your scorm objects there - let us know if you manage to reproduce it there.

          thanks.

          Show
          Dan Marsden added a comment - Hi Jeremy, a range of related issues that return this particular error have been fixed in the latest code. - most of the time when the API cannot be found it is because of a Javascript error. - a lot of fixes have gone in, so it's difficult to isolate which ones could solve your particular issue. - We have had trouble reproducing the specific issue Ron is experiencing, but haven't had time over the past couple of weeks to look into it further. the site Demo.moodle.org is using a later version of code - you could try testing out your scorm objects there - let us know if you manage to reproduce it there. thanks.
          Hide
          Jeremy Rogers added a comment -

          Thank you for the alternative to immediately upgrading - I tried the demo site and was able to reproduce the issue. IE6 produces the error, but firefox doesn't. I am including my test scorm file.

          Show
          Jeremy Rogers added a comment - Thank you for the alternative to immediately upgrading - I tried the demo site and was able to reproduce the issue. IE6 produces the error, but firefox doesn't. I am including my test scorm file.
          Hide
          Jeremy Rogers added a comment -

          A small demonstration SCORM which reproduces the issue discussed.

          Show
          Jeremy Rogers added a comment - A small demonstration SCORM which reproduces the issue discussed.
          Hide
          Ron Meske added a comment -

          Sort of good news.

          While using Fiddler to try and get more detail of the raw data that was coming down we turned of encoding so everything would come down without compression. This seemed to correct the issue. We then examined the configuration of PHP and found that zlib.output_compression was set to be on. We turned that off and now IE 6 is working correctly and finding the SCO every time.

          We don't understand why the issue only occured with IE 6 and not IE 7 or any other browser we tried. The fresh install of IE 6 did work. Perhaps there is a Microsoft Update for IE 6 that broke it's ability to properly uncompress files and that is why the fresh install of IE 6 works.

          For now we will leave the zlib compression turned off.

          Show
          Ron Meske added a comment - Sort of good news. While using Fiddler to try and get more detail of the raw data that was coming down we turned of encoding so everything would come down without compression. This seemed to correct the issue. We then examined the configuration of PHP and found that zlib.output_compression was set to be on. We turned that off and now IE 6 is working correctly and finding the SCO every time. We don't understand why the issue only occured with IE 6 and not IE 7 or any other browser we tried. The fresh install of IE 6 did work. Perhaps there is a Microsoft Update for IE 6 that broke it's ability to properly uncompress files and that is why the fresh install of IE 6 works. For now we will leave the zlib compression turned off.
          Hide
          Dan Marsden added a comment -

          Hi Ron,

          thanks for posting the details. - Unfortunately as this is an IE/PHP related bug theres nothing we can do inside moodle to address this.

          I found this issue in the php tracker - looks like the php team aren't keen to address this in PHP either:
          http://bugs.php.net/bug.php?id=38026

          so looks like you'll just need to leave zlib compression off.

          thanks,

          Dan

          Show
          Dan Marsden added a comment - Hi Ron, thanks for posting the details. - Unfortunately as this is an IE/PHP related bug theres nothing we can do inside moodle to address this. I found this issue in the php tracker - looks like the php team aren't keen to address this in PHP either: http://bugs.php.net/bug.php?id=38026 so looks like you'll just need to leave zlib compression off. thanks, Dan
          Hide
          Dan Marsden added a comment -

          changed my mind on the status for now...... - we might be able to add a check to the environment page warning about this...maybe?

          Show
          Dan Marsden added a comment - changed my mind on the status for now...... - we might be able to add a check to the environment page warning about this...maybe?
          Hide
          Dan Marsden added a comment -

          adding Petr to this bug..... Petr - what do you think about putting a check in scorm to see if zlib.output_compression is turned on and if the client browser is IE6 then attempting to use something like ini_set() to turn it off?

          Show
          Dan Marsden added a comment - adding Petr to this bug..... Petr - what do you think about putting a check in scorm to see if zlib.output_compression is turned on and if the client browser is IE6 then attempting to use something like ini_set() to turn it off?
          Hide
          Kris Besley added a comment -

          Firebug displaying that api.php has not loaded (404 error).

          Show
          Kris Besley added a comment - Firebug displaying that api.php has not loaded (404 error).
          Hide
          Dan Marsden added a comment -

          Hi Kris,

          a range of other related issues have already been fixed in the past few months, please make sure you are using the latest 1.9weekly or 1.8weekly available from download.moodle.org

          Show
          Dan Marsden added a comment - Hi Kris, a range of other related issues have already been fixed in the past few months, please make sure you are using the latest 1.9weekly or 1.8weekly available from download.moodle.org
          Hide
          Tucson Tom added a comment -

          Count me in as one experiencing this problem. It happens with Firefox (Windows or Mac) and IE7. I experience this problem any time that I change my SCORM package on the Classroom Revolution site. The only "fix" is to delete and re-create the SCORM activity. Of course, this loses all user history.

          Show
          Tucson Tom added a comment - Count me in as one experiencing this problem. It happens with Firefox (Windows or Mac) and IE7. I experience this problem any time that I change my SCORM package on the Classroom Revolution site. The only "fix" is to delete and re-create the SCORM activity. Of course, this loses all user history.
          Hide
          Tucson Tom added a comment -

          Here's a quicktime movie showing the error on my site.

          Show
          Tucson Tom added a comment - Here's a quicktime movie showing the error on my site.
          Hide
          Tucson Tom added a comment -

          This movie shows the settings screen for the SCORM.

          Show
          Tucson Tom added a comment - This movie shows the settings screen for the SCORM.
          Hide
          Dan Marsden added a comment -

          Hi Tucson - what version of Moodle are you using? - if you're not using Moodle 1.9.3 or higher, please upgrade and re-test.

          thanks,

          Show
          Dan Marsden added a comment - Hi Tucson - what version of Moodle are you using? - if you're not using Moodle 1.9.3 or higher, please upgrade and re-test. thanks,
          Hide
          Tucson Tom added a comment -

          I'm running 1.9.2 (Build: 20080716.) Is this issue addressed in 1.9.3?

          Show
          Tucson Tom added a comment - I'm running 1.9.2 (Build: 20080716.) Is this issue addressed in 1.9.3?
          Hide
          Dan Marsden added a comment -

          have to admit, I feel a bit like a broken record.....

          a range of posts in the scorm forum, and even in this bug it states "a range of related issues that return this particular error have been fixed in the latest code" - I say something to that affect more than once in the comments above.

          the only outstanding issue that I'm aware of is realated to a bug with IE6 - not a bug with Moodle related to when Zlib compression is turned on. Which is what this particular bug is about.- see above for details.

          Moodle 1.9.3 has a massive range of fixes related to Scorm. Piers and I spent a lot of time on it. let me say it again. Please upgrade to 1.9.3

          Show
          Dan Marsden added a comment - have to admit, I feel a bit like a broken record..... a range of posts in the scorm forum, and even in this bug it states "a range of related issues that return this particular error have been fixed in the latest code" - I say something to that affect more than once in the comments above. the only outstanding issue that I'm aware of is realated to a bug with IE6 - not a bug with Moodle related to when Zlib compression is turned on. Which is what this particular bug is about.- see above for details. Moodle 1.9.3 has a massive range of fixes related to Scorm. Piers and I spent a lot of time on it. let me say it again. Please upgrade to 1.9.3
          Hide
          Tucson Tom added a comment -

          Upgraded to 1.9.3+ (Build: 20081022.) I still have the problem. No change.

          Show
          Tucson Tom added a comment - Upgraded to 1.9.3+ (Build: 20081022.) I still have the problem. No change.
          Hide
          Tucson Tom added a comment -

          By the way, the problem occurs with Firefox 3.0.3 (on Mac 10.5.5 and Windows XP SP3,) IE7 7.0.5730.13 (Windows XP SP3.) Also, it goes without saying, the work you and Piers put in on this is greatly appreciated.

          Show
          Tucson Tom added a comment - By the way, the problem occurs with Firefox 3.0.3 (on Mac 10.5.5 and Windows XP SP3,) IE7 7.0.5730.13 (Windows XP SP3.) Also, it goes without saying, the work you and Piers put in on this is greatly appreciated.
          Hide
          Ron Meske added a comment -

          Tom, if you refresh the browser, does it then load? If so, based on what I went through and finally tracked it down to zlib compression, you may want to examine your server configuration. Are you using any type of compression or encoding? Are you using a PHP Accelerator?

          Show
          Ron Meske added a comment - Tom, if you refresh the browser, does it then load? If so, based on what I went through and finally tracked it down to zlib compression, you may want to examine your server configuration. Are you using any type of compression or encoding? Are you using a PHP Accelerator?
          Hide
          Tucson Tom added a comment -

          I tried refreshing the browser, deleting the caches, etc., but the results are the same. I need to ask Classroom revolution tech support about the PHP accelerator. I'll let you know.

          Show
          Tucson Tom added a comment - I tried refreshing the browser, deleting the caches, etc., but the results are the same. I need to ask Classroom revolution tech support about the PHP accelerator. I'll let you know.
          Hide
          Dan Marsden added a comment -

          Id try using your scorm object on demo.moodle.org to see if it's an issue there. Most of these types of issues are related to a JS error - make sure your browsers have full debug on and look for any JS errors, and make sure you aren't blocking js etc

          Show
          Dan Marsden added a comment - Id try using your scorm object on demo.moodle.org to see if it's an issue there. Most of these types of issues are related to a JS error - make sure your browsers have full debug on and look for any JS errors, and make sure you aren't blocking js etc
          Hide
          Jeffery Watkins added a comment -

          Dan,

          Tom is on one of my servers and I do not have zlib compression on, nor am I running any accelerators.

          Jeff

          Show
          Jeffery Watkins added a comment - Dan, Tom is on one of my servers and I do not have zlib compression on, nor am I running any accelerators. Jeff
          Hide
          Dan Marsden added a comment -

          please test your scorm object on a different server - eg demo.moodle.org if you are able to reproduce it, then please provide a copy of a scorm object that allows us to reproduce it - preferably by adding it to the scorm repository.

          Show
          Dan Marsden added a comment - please test your scorm object on a different server - eg demo.moodle.org if you are able to reproduce it, then please provide a copy of a scorm object that allows us to reproduce it - preferably by adding it to the scorm repository.
          Hide
          Dan Marsden added a comment -

          after thinking on this some more and looking at the range of people reporting issues when attempting to use ini_set with zlib - I've decided to add a warning to the screen when a teacher creates a new SCORM object - currently the warning states "Warning: PHP Zlib compression has been enabled on this site, some users may experience issues loading SCORM objects in certain web browsers."

          I've added this to 2.0 and will look at putting it in 1.9 after the weekly review.

          I'll create a new item in the SCORM faqs for it as well.

          Show
          Dan Marsden added a comment - after thinking on this some more and looking at the range of people reporting issues when attempting to use ini_set with zlib - I've decided to add a warning to the screen when a teacher creates a new SCORM object - currently the warning states "Warning: PHP Zlib compression has been enabled on this site, some users may experience issues loading SCORM objects in certain web browsers." I've added this to 2.0 and will look at putting it in 1.9 after the weekly review. I'll create a new item in the SCORM faqs for it as well.
          Hide
          Dan Marsden added a comment -

          closing this as fixed - I've pushed changes through to 1.9stable and HEAD that provide a warning to teachers when they create a SCORM object when zlib is turned on, Any other issues with finding the API are likely to be different and should be in a different tracker issue.

          Show
          Dan Marsden added a comment - closing this as fixed - I've pushed changes through to 1.9stable and HEAD that provide a warning to teachers when they create a SCORM object when zlib is turned on, Any other issues with finding the API are likely to be different and should be in a different tracker issue.
          Hide
          Paul E added a comment -

          I am having the same issue with users on IE6 and zlib_compression set to Off. Further examination of response headers showed that mod_deflate was actually compressing output. Turning off compression at the server level may be another place to look (and moodle will not warn if the web server is compressing the data).

          I'm awaiting results from IE6 users to see if this has corrected the issue.

          Show
          Paul E added a comment - I am having the same issue with users on IE6 and zlib_compression set to Off. Further examination of response headers showed that mod_deflate was actually compressing output. Turning off compression at the server level may be another place to look (and moodle will not warn if the web server is compressing the data). I'm awaiting results from IE6 users to see if this has corrected the issue.
          Hide
          valerian added a comment -

          Same issue as Paul,
          To desactivate mod_deflate only for IE6 and api.php i've put this .htaccess in /mod/scorm/ directory

          <IfModule mod_deflate.c>
          <FilesMatch "api\.php">
          BrowserMatch "\bMSI[E] (6)" no-gzip
          </FilesMatch>
          </IfModule>

          Valérian

          Show
          valerian added a comment - Same issue as Paul, To desactivate mod_deflate only for IE6 and api.php i've put this .htaccess in /mod/scorm/ directory <IfModule mod_deflate.c> <FilesMatch "api\.php"> BrowserMatch "\bMSI [E] (6)" no-gzip </FilesMatch> </IfModule> Valérian
          Hide
          valerian added a comment -

          Of course you need to allow override in apache conf

          Show
          valerian added a comment - Of course you need to allow override in apache conf
          Hide
          Dan Marsden added a comment -

          thanks Valerian - useful information above for others with the issue, but I don't plan to include this change in core - we no longer support IE 6 as of Moodle 2.0!

          Show
          Dan Marsden added a comment - thanks Valerian - useful information above for others with the issue, but I don't plan to include this change in core - we no longer support IE 6 as of Moodle 2.0!
          Hide
          Michael McConnell added a comment -

          I got as far as zlib_compression set to Off in IE6 and still get the API error. (everything is okay in FireFox)

          Can you help me. How can I put the fix

          <IfModule mod_deflate.c>
          <FilesMatch "api\.php">
          BrowserMatch "\bMSI[E] (6)" no-gzip
          </FilesMatch>
          </IfModule>

          on a windows PC without an .htaccess file?

          Show
          Michael McConnell added a comment - I got as far as zlib_compression set to Off in IE6 and still get the API error. (everything is okay in FireFox) Can you help me. How can I put the fix <IfModule mod_deflate.c> <FilesMatch "api\.php"> BrowserMatch "\bMSI [E] (6)" no-gzip </FilesMatch> </IfModule> on a windows PC without an .htaccess file?
          Hide
          Dan Marsden added a comment -

          you can probably make the change in your sitewide php.ini - but you should really upgrade your web-browser - Moodle 2.0 and even google don't support IE 6 anymore.

          Show
          Dan Marsden added a comment - you can probably make the change in your sitewide php.ini - but you should really upgrade your web-browser - Moodle 2.0 and even google don't support IE 6 anymore.
          Hide
          Michael McConnell added a comment -

          Dan - Thanks

          Unfortunately, many of our public organisation is stuck with IE6 for a while - for a number of reasons.

          I'll try the php.ini route.

          However, I did notice that if I close the SCORM window and then refresh the player page it finds the API and the relaunched package plays and tracks properly. Is there a way to automatically refresh the player page?

          Show
          Michael McConnell added a comment - Dan - Thanks Unfortunately, many of our public organisation is stuck with IE6 for a while - for a number of reasons. I'll try the php.ini route. However, I did notice that if I close the SCORM window and then refresh the player page it finds the API and the relaunched package plays and tracks properly. Is there a way to automatically refresh the player page?
          Hide
          Dan Marsden added a comment -

          Hi Michael - automatically refreshing the page could cause other issues - you're best to disable zlib compression.

          Show
          Dan Marsden added a comment - Hi Michael - automatically refreshing the page could cause other issues - you're best to disable zlib compression.
          Hide
          manish kumar tamta added a comment -

          Hi all,
          I m getting the error "Unable to find API Adapter","Unable to locate the LMS's API Implementation" while accessing the scorm packages.

          I have two server machine in which same version of xampp1.7.1 and same version of moodle1.9.3+ is installed. 1st server machine is used in the local LAN while the other server machine has public ip accessible from anywhere.

          When I access scorm from 1st server machine it does'nt give any error but when I access the scorm from 2nd server machine it give java script alerts "Unable to find API adapter", "Unable to locate the LMS's API Implementation", "to deeply nested" etc..

          I don't know which server configuration setting is preventing JS communication..

          Show
          manish kumar tamta added a comment - Hi all, I m getting the error "Unable to find API Adapter","Unable to locate the LMS's API Implementation" while accessing the scorm packages. I have two server machine in which same version of xampp1.7.1 and same version of moodle1.9.3+ is installed. 1st server machine is used in the local LAN while the other server machine has public ip accessible from anywhere. When I access scorm from 1st server machine it does'nt give any error but when I access the scorm from 2nd server machine it give java script alerts "Unable to find API adapter", "Unable to locate the LMS's API Implementation", "to deeply nested" etc.. I don't know which server configuration setting is preventing JS communication..
          Hide
          Dan Marsden added a comment -

          Manish - 1.9.3 is no longer supported - there are a range of SCORM and security issues. Please upgrade your site to the latest 1.9Stable branch.

          Show
          Dan Marsden added a comment - Manish - 1.9.3 is no longer supported - there are a range of SCORM and security issues. Please upgrade your site to the latest 1.9Stable branch.
          Hide
          Connor Gottfried added a comment -

          We are using Moodle 1.9.9+ (Build: 20100929) and we are experiencing this exact problem. The first time the SCORM content is launched, the API returns null. If you exit the SCORM content and relaunch it finds the API successfully. It says here that this was corrected in 1.94. Can someone let me know what was done to correct this problem, or supply any further info to assist? Thanks in advance.

          Show
          Connor Gottfried added a comment - We are using Moodle 1.9.9+ (Build: 20100929) and we are experiencing this exact problem. The first time the SCORM content is launched, the API returns null. If you exit the SCORM content and relaunch it finds the API successfully. It says here that this was corrected in 1.94. Can someone let me know what was done to correct this problem, or supply any further info to assist? Thanks in advance.

            People

            • Votes:
              3 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: