if ( strFSCmd == "LMSInitialize" || strFSCmd=="Initialize") { // AEC: Custom tracking override - Begin strErr = 'true' // AEC: Custom tracking override - End CaptivateObj.SetVariable(strFSArg3, strErr); } else if ( strFSCmd == "LMSSetValue" || strFSCmd=="SetValue") { // AEC: Custom tracking override - Begin if(strFSArg1.indexOf("raw") > -1) { intLMSScoreRaw = strFSArg2; } else if (strFSArg1.indexOf("max") > -1) { intLMSScoreMax = strFSArg2; } else if (strFSArg1.indexOf("min") > -1) { intLMSScoreMin = strFSArg2; } else if (strFSArg1.indexOf("lesson_status") > -1) { strLMSStatus = strFSArg2; } else if (strFSArg1.indexOf("lesson_location") > -1) { strLMSLocation = strFSArg2; } else if (strFSArg1.indexOf("suspend_data") > -1) { strLMSSuspendData = strFSArg2; } else if (strFSArg1.indexOf("session_time") > -1) { strLMSTime = strFSArg2; } if (strFSArg1.indexOf('cmi.interactions') > -1) { if (strFSArg1.indexOf('id') > -1) { intTemp = lstInteractions.length; lstInteractions[intTemp] = ""; lstInteractions[intTemp] = "id = " + strFSArg2; } else { intTemp = lstInteractions.length - 1; strTemp = strFSArg1.substring(strFSArg1.lastIndexOf('.') + 1); lstInteractions[intTemp] += "; " + strTemp + " = " + strFSArg2; } } strErr = ""; // AEC: Custom tracking override - Begin CaptivateObj.SetVariable(strFSArg3, strErr); } else if ( strFSCmd == "LMSFinish" || strFSCmd=="Terminate") { // AEC: Custom tracking override - Begin g_bFinishDone = Finish(); // AEC: Custom tracking override - End strErr = g_bFinishDone; CaptivateObj.SetVariable(strFSArg3, g_bFinishDone); } else if ( strFSCmd == "LMSCommit" || strFSCmd=="Commit") { // AEC: Custom tracking override - Begin strErr = 'true'; // AEC: Custom tracking override - End CaptivateObj.SetVariable(strFSArg3, strErr); } else if ((strFSArg2) && (strFSArg2.length > 0)) { //if(strFSCmd=="LMSGetLastError") if(strFSCmd=="LMSGetLastError" || strFSCmd=="GetLastError") { // AEC: Custom tracking override - Begin strErr = 0; // AEC: Custom tracking override - End CaptivateObj.SetVariable(strFSArg3, strErr); } else { // AEC: Custom tracking override - Begin if(strFSArg1.indexOf('cmi.core._children') > -1) { strErr = 'student_id,student_name,lesson_location,credit,lesson_status,entry,score,total_time,lesson_mode,exit,session_time'; } else if (strFSArg1.indexOf('cmi.core.score._children') > -1) { strErr = 'raw,min,max'; } else if (strFSArg1.indexOf('cmi.interactions._children') > -1) { strErr = 'id,objectives,time,type,correct_responses,weighting,student_response,result,latency'; } else if (strFSArg1.indexOf('_count') > -1) { strErr = 0; } else if (strFSArg1.indexOf("suspend_data") > -1) { // Suspend Data is, currently, the only real meaningful data strErr = ""; } else { strErr = ""; } if(strFSArg1.indexOf('mastery') > -1) { intLMSScoreMastery = strErr; } // AEC: Custom tracking override - End CaptivateObj.SetVariable(strFSArg3, strErr); } } else if (strFSCmd.substring(0,3) == "LMSGet") { strErr = "-2: No Flash variable specified" }