Quantcast
Channel: Adobe Community : All Content - Adobe Captivate
Viewing all articles
Browse latest Browse all 30250

Problems with index.html coding / HTML5 output on AICC server after Captivate 7 upgrade

$
0
0

Good morning.  I really need some expert advice here.  I'm not a coding kind of person (yet), so I'm not sure what the problem is, but I need to get it resolved quickly.

 

I appreciate your help - thank you in advance!

 

 

Background:

My company finally allowed us to upgrade from Captivate 6 to Captivate 7. I was working on a project in 6, and I then converted it up to 7 with no problems.

 

Our dinosaur Peoplesoft AICC LMS servers don't handle a lot of things well, but I was able to publish HTML5 / AICC reporting in Captivate 6.  We cannot use SWF output here.

 

I selected the same options for Captivate 7 for publishing, but the page stops loading at the attached "loading" screen.

loading_error.png

I'm including the respective Captivate published index files below.

 

My uneducated guess is something around the content loader and/or the fact that it seems to be looking for SCORM, but the server is AICC.  Maybe there's some kind of global AICC setting I'm missing in the application?

 

Index.html files:

---CAPTIVATE 6 START--WORKS--

<!--/* Copyright © 2003-2007 Rustici Software, LLC  All Rights Reserved. www.scorm.com */-->
<HTML>
<HEAD>
  <meta name='viewport' content='initial-scale = 1, minimum-scale = 1, maximum-scale = 1'/>
  <meta http-equiv="x-ua-compatible" content="IE=9">
  <TITLE>Captivate E-Learning Course</TITLE>
  <script language="JavaScript1.2" src="scormdriver.js"></script>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
   
  <script language="JavaScript1.2">
  var g_bIsInternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
  var SD = window; // setup a reference to the SD
  // this is the flag for triggering the custom comms
  SD.AICC_USE_CUSTOM_COMMS = true;
  //ShowDebugWindow();
 
  var num_tries = 0;
  var total_tries = 10;
  var checker;
 
  function LoadContent(){
   // Do nothing - this function is required by the driver  
  }
 
 
  function OnLoad_Activities(){
   checker = setInterval(CheckForAICCComm,100);
  }
 
 
  function defineCustomAICCCommunication()
  {
 
   // override this function from the SCORM Driver to handle the custom comms
   //aghose: this one is in AICCComm
   window.CustomAICCCommunication = function(strAICCURL, strPostData, strRequestType, strCallBack) {
    
     WriteToDebug('in MakeHttpPostCall');
     WriteToDebug('Details of Call:');
     WriteToDebug("AICCURL:"+String(strAICCURL));
     WriteToDebug("Post Data:"+strPostData);
     WriteToDebug("RequestType:"+strRequestType);
     WriteToDebug("CallBack:"+strCallBack);
     WriteToDebug("---End Details of Call---");
    
     //Uncomment this line to run across domain for HTML5
     //document.getElementById('AICCPostRouter_HTML').contentWindow.makeHT TPPost(String(strAICCURL), strPostData, strRequestType, strCallBack);
    
     return;
    
    
    
     /*var CaptivateAICCMovie = document.getElementById('AICCPostRouter').contentWindow.Captivate;       
    
     CaptivateAICCMovie =  window.frames["AICCPostRouter"].document.getElementById('Captivate');
     WriteToDebug("CaptivateAICCMovie:"+CaptivateAICCMovie);
    
    
    
     //var x =  window.frames["AICCPostRouter"].document.getElementById('Captivate');
     //console.log("Trying to obtain movie using frames elements:"+x);
    
     if(typeof CaptivateAICCMovie == 'object'){
      CaptivateAICCMovie.makeHTTPPost(String(strAICCURL), strPostData, strRequestType, strCallBack);
     }*/
    }
  }
 
 
 
 
 
  //for adobe
  function InitializeCalls()
  {
  
   WriteToDebug("In InitializeCalls()");
  
   //this has to be here for the Router SWF- this is the first call it makes
   //now load the actual content SWF
   document.getElementById('scormdriver_content').contentWindow.EmbedSWF ();
 
  }

  function CheckForAICCComm(){
  
   num_tries += 1;
   WriteToDebug("CP: In CheckForAICCComm, trial num: " + num_tries);
  
   if(num_tries > total_tries){
    WriteToDebug("CP: In CheckForAICCComm exceeded total tries...aborting further calls to this function.");
    clearInterval(checker);
    return;
   }
  
   if(typeof(window.AICCComm.MakeGetParamRequest) == 'function'){
    WriteToDebug("CP: AICCComm has been initialized.");
    clearInterval(checker);
   
    /*if(window.AICCComm.blnAppearsToBeCrossDomain == true)
     document.getElementById('AICCPostRouter').contentWindow.EmbedSWF();
    else
     document.getElementById('scormdriver_content').contentWindow.EmbedSWF ();*/
   
    defineCustomAICCCommunication();
   
   
    scormdriver_content.LoadActivities();
   }
  }
 

  //create the callback that we're passing through
  window.ProcessLMSResult = function(requestType, responseStr)
  {
   WriteToDebug("In ProcessLMSResult with:"+requestType+","+responseStr);
   //catch the callback from the SWF and pass it along to the AICCComm frame
   window.AICCComm.ProcessLMSResult(requestType, responseStr);  
  };
 
  function UnloadActivities()
  {
   scormdriver_content.UnloadActivties();
  }
 
 
  </script>
</HEAD>
<frameset rows="100%,0%,0%,0%,0%" onload="OnLoad_Activities()" border="0" onbeforeunload="UnloadActivities()" onunload="UnloadActivities()">
  <frame id ="scormdriver_content" name="scormdriver_content" src="index_AICC.html">
  <frame name="AICCComm" src="AICCComm.html">
  <frame name="rusticisoftware_aicc_results" src="blank.html">
  <frame name="NothingFrame" src="blank.html">
  <!--Uncomment below line to run across domain for HTML5 -->
  <!--frame id="AICCPostRouter_HTML" name="AICCPostRouter_HTML" src="AICCPostRouter_HTML.html"-->
 
</frameset>
<noframes>
  Your browser must be able to view frames for this content to display.
</noframes>
</HTML>

 

-------------------------------

--CAPTIVATE 7 START--DOES NOT WORK--

 

<!--/* Copyright © 2003-2007 Rustici Software, LLC  All Rights Reserved. www.scorm.com */-->
<HTML>
<HEAD>
  <meta name='viewport' content='initial-scale = 1, minimum-scale = 1, maximum-scale = 1'/>
  <meta http-equiv="x-ua-compatible" content="IE=9">
  <TITLE>Microsoft Free e-learning signup demonstration</TITLE>
  <script language="JavaScript1.2" src="scormdriver.js"></script>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
   
  <script language="JavaScript1.2">
  var g_bIsInternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
  var SD = window; // setup a reference to the SD
  // this is the flag for triggering the custom comms
  SD.AICC_USE_CUSTOM_COMMS = true;
  //ShowDebugWindow();
 
  var num_tries = 0;
  var total_tries = 10;
  var checker;
 
  function LoadContent(){
   scormdriver_content.LoadContent();
  }
 
  function DoCPExit()
  {
   if(window != window.parent && window.parent && window.parent.hasOwnProperty("DoCPExit"))
   {
    window.parent.DoCPExit();
   }
   else
   {
    window.close();
   }
  }
 
 
  function OnLoad_Activities(){
   var lFrameset = document.getElementById("myFrameset");
   var newFrame = document.createElement("frame");
   newFrame.id = "scormdriver_content";
   newFrame.name = "scormdriver_content";  
   var lParamString = window.location.toString().split("?")[1];
   if(lParamString != undefined)
    lParamString = "?" + lParamString;
   else
    lParamString = "";
  
   newFrame.src="index_AICC.html" + lParamString;
  
   newFrame.onload = function(e)
   {   
    //console.log("Starting checker");
    checker = setInterval(CheckForAICCComm,100);
   };
  
   lFrameset.insertBefore(newFrame,lFrameset.firstChild);
  }
 
 
  function defineCustomAICCCommunication()
  {
 
   // override this function from the SCORM Driver to handle the custom comms
   //aghose: this one is in AICCComm
   window.CustomAICCCommunication = function(strAICCURL, strPostData, strRequestType, strCallBack) {
    
     WriteToDebug('in MakeHttpPostCall');
     WriteToDebug('Details of Call:');
     WriteToDebug("AICCURL:"+String(strAICCURL));
     WriteToDebug("Post Data:"+strPostData);
     WriteToDebug("RequestType:"+strRequestType);
     WriteToDebug("CallBack:"+strCallBack);
     WriteToDebug("---End Details of Call---");
    
     //Uncomment this line to run across domain for HTML5
     //document.getElementById('AICCPostRouter_HTML').contentWindow.makeHT TPPost(String(strAICCURL), strPostData, strRequestType, strCallBack);
    
     return;
    
    
    
     /*var CaptivateAICCMovie = document.getElementById('AICCPostRouter').contentWindow.Captivate;       
    
     CaptivateAICCMovie =  window.frames["AICCPostRouter"].document.getElementById('Captivate');
     WriteToDebug("CaptivateAICCMovie:"+CaptivateAICCMovie);
    
    
    
     //var x =  window.frames["AICCPostRouter"].document.getElementById('Captivate');
     //console.log("Trying to obtain movie using frames elements:"+x);
    
     if(typeof CaptivateAICCMovie == 'object'){
      CaptivateAICCMovie.makeHTTPPost(String(strAICCURL), strPostData, strRequestType, strCallBack);
     }*/
    }
  }
 
 
 
 
 
  //for adobe
  function InitializeCalls()
  {
  
   WriteToDebug("In InitializeCalls()");
  
   //this has to be here for the Router SWF- this is the first call it makes
   //now load the actual content SWF
   document.getElementById('scormdriver_content').contentWindow.EmbedSWF ();
 
  }

  function CheckForAICCComm(){
  
   num_tries += 1;
   WriteToDebug("CP: In CheckForAICCComm, trial num: " + num_tries);
  
   if(num_tries > total_tries){
    WriteToDebug("CP: In CheckForAICCComm exceeded total tries...aborting further calls to this function.");
    clearInterval(checker);
    return;
   }
  
   if(typeof(window.AICCComm.MakeGetParamRequest) == 'function'){
    WriteToDebug("CP: AICCComm has been initialized.");
    clearInterval(checker);
   
    /*if(window.AICCComm.blnAppearsToBeCrossDomain == true)
     document.getElementById('AICCPostRouter').contentWindow.EmbedSWF();
    else
     document.getElementById('scormdriver_content').contentWindow.EmbedSWF ();*/
   
    defineCustomAICCCommunication();
   
   
    scormdriver_content.LoadActivities();
   }
  }
 

  //create the callback that we're passing through
  window.ProcessLMSResult = function(requestType, responseStr)
  {
   WriteToDebug("In ProcessLMSResult with:"+requestType+","+responseStr);
   //catch the callback from the SWF and pass it along to the AICCComm frame
   window.AICCComm.ProcessLMSResult(requestType, responseStr);  
  };
 
  function UnloadActivities()
  {
   scormdriver_content.UnloadActivties();
  }
 
 
  </script>
</HEAD>
<frameset id="myFrameset" rows="100%,0%,0%,0%,0%" onload="OnLoad_Activities()" border="0" onbeforeunload="UnloadActivities()" onunload="UnloadActivities()">
  <!--frame id ="scormdriver_content" name="scormdriver_content" src="index_AICC.html"-->
  <frame name="AICCComm" src="AICCComm.html">
  <frame name="rusticisoftware_aicc_results" src="blank.html">
  <frame name="NothingFrame" src="blank.html">
  <!--Uncomment below line to run across domain for HTML5 -->
  <!--frame id="AICCPostRouter_HTML" name="AICCPostRouter_HTML" src="AICCPostRouter_HTML.html"-->
 
</frameset>
<noframes>
  Your browser must be able to view frames for this content to display.
</noframes>
</HTML>


Viewing all articles
Browse latest Browse all 30250

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>