// define global var as handle to API objectvar bvSCORM_API = null;var startDate;// bvSCORM_getAPI, which calls findAPI as neededfunction bvSCORM_getAPI(){  var myAPI = null;  var tries = 0, triesMax = 10;    while (tries < triesMax && myAPI == null){    window.status = 'Looking for API object ' + tries + '/' + triesMax;    myAPI = findAPI(window);    if (myAPI == null && typeof(window.parent) != 'undefined') myAPI = findAPI(window.parent)    if (myAPI == null && typeof(window.top) != 'undefined') myAPI = findAPI(window.top);    if (myAPI == null && typeof(window.opener) != 'undefined') if (window.opener != null && !window.opener.closed) myAPI = findAPI(window.opener);          if (myAPI == null && typeof(window.opener) != 'undefined'){	    if (myAPI == null && typeof(window.opener.top) != 'undefined'){		if (window.opener.top != null && !window.opener.top.closed){			myAPI = findAPI(window.opener.top);		}				if (myAPI == null && window.opener.top.opener != null && !window.opener.top.opener.closed){			myAPI = findAPI(window.opener.top.opener);									if (myAPI == null && window.opener.top.opener.top != null && !window.opener.top.opener.top.closed){				myAPI = findAPI(window.opener.top.opener.top);			}					}		    }    }    tries++;  }    if (myAPI == null){    window.status = 'API not found';    //alert('JavaScript Warning: API object not found in window or opener. (' + tries + ')');  }  else{    bvSCORM_API = myAPI;    window.status = 'API found';  }}// returns LMS API object (or null if not found)function findAPI(win){  // look in this window  if (typeof(win) != 'undefined' ? typeof(win.API) != 'undefined' : false){    if (win.API != null )  return win.API;  }  // look in this window's frameset kin (except opener)  if (win.frames.length > 0)  for (var i = 0 ; i < win.frames.length ; i++);{    if (typeof(win.frames[i]) != 'undefined' ? typeof(win.frames[i].API) != 'undefined' : false){       if (win.frames[i].API != null)  return win.frames[i].API;    }  }  return null;}function BVScorm_adlOnload(){//alert("Load")	  if (bvSCORM_API != null){      var res = bvSCORM_API.LMSInitialize("");    BVScorm_incomplete();    startTimer()    //return res;  }}function startTimer(){   startDate = new Date().getTime();}function computeTime(){   if ( startDate != 0 )   {      var currentDate = new Date().getTime();      var elapsedSeconds = Math.round( (currentDate - startDate) / 1000 );      var formattedTime = convertTotalSeconds( elapsedSeconds );   }   else   {      formattedTime = "00:00:00";   }      return (formattedTime);}function convertTotalSeconds(ts){      var strTime="";      var Hour = Math.floor(ts/3600);      var Min   = Math.floor((ts-Hour*3600)/60);      var Sec   = ts-Hour*3600 - Min*60;      if(Hour<10) strTime+="0";      strTime+= Hour + ":";      if(Min<10) strTime+="0";      strTime+= Min + ":";      if(Sec<10) strTime+="0";      strTime+= Sec;      return strTime;}function BVScorm_adlOnunload(){//alert("unload")  if (bvSCORM_API != null){     //alert("finishing");        var res = bvSCORM_API.LMSSetValue("cmi.core.session_time", computeTime());    BVScorm_commit()    var res = bvSCORM_API.LMSFinish("");    //return res;  }}function BVScorm_complete(){//alert("complete1");  if(bvSCORM_API != null){//alert("complete_final");            var res = bvSCORM_API.LMSSetValue("cmi.core.lesson_status", "completed");        //return res;  }}function BVScorm_incomplete(){ //alert("incomplete");           if(bvSCORM_API != null){	        if(bvSCORM_API.LMSGetValue("cmi.core.lesson_status") == "not attempted")          var res = bvSCORM_API.LMSSetValue("cmi.core.lesson_status", "incomplete");        //return res;    }}function BVScorm_commit(){	var res = bvSCORM_API.LMSCommit("");	}function BVScorm_score(score){  //alert(score)  if(bvSCORM_API != null ){    bvSCORM_API.LMSSetValue("cmi.core.score.raw", score);        //return res;  }}function BVScorm_getlocation(){  if(bvSCORM_API != null){    var res = bvSCORM_API.LMSGetValue("cmi.core.lesson_location");    return res;  }}function BVScorm_setlocation(lPageNum){//alert("Lesson_location="+lPageNum);  if(bvSCORM_API != null){    var res = bvSCORM_API.LMSSetValue("cmi.core.lesson_location", lPageNum);        //return res;  }}function BVScorm_setcoredata(args){	if(bvSCORM_API != null){		var res = bvSCORM_API.LMSSetValue("cmi.suspend_data", args);        //return res;	}}function BVScorm_getcoredata(){	if(bvSCORM_API != null){        var res = bvSCORM_API.LMSGetValue("cmi.suspend_data");        return res;	}}// get the APIbvSCORM_getAPI();function fGoToPageById(PageID){   document.main.setVariable("JumptoPageID", PageID);	  } 