new.js に get と set のコードがあります。
APIClass.prototype.LMSGetValue = function (element) {
var value = GetValueJson(element, '1.2', 'LMSGetValue');
return value;
}
APIClass.prototype.LMSSetValue = function (element, value) {
SetValueJson(element, value, '1.2', 'LMSSetValue');
return "true";
}
API_1484_11_Class.prototype.GetValue = function (element) {
var value = GetValueJson(element, '2004 3rd Edition', 'GetValue');
return value;
}
API_1484_11_Class.prototype.SetValue = function (element, value) {
SetValueJson(element, value, '2004 3rd Edition', 'SetValue');
return "true";
}
function SetValueJson(key1, value1, scormVersion, methodCalled) {
if (key1 = "cmi.suspend_data") {
value1 = "none";
}
var obj = {
key: key1,
value: value1
}
setValuesArray.push(obj);
for (var i = setValuesArray.length - 1; i >= 0; i--) {
var array = setValuesArray[i];
if (array.key === key1) {
alert("returning value for key= " + setValuesArray[i].key + " with value as: " + setValuesArray[i].value);
return setValuesArray[i].value;
}
}
//return value1;
}
function GetValueJson(key, scormVersion, methodCalled) {
if (scormVersion == '1.2' && methodCalled == 'LMSGetValue')
{
alert("key that must be set for 1.2: " + key);
}
if (scormVersion == '2004 3rd Edition' && methodCalled == 'GetValue') {
alert("key that must be set 2004: " + key);
}
if (key = "cmi.completion_status") {
value = "not completed";
}
if (key = "cmi.location") {
value = "";
}
if (key = "cmi.suspend_data") {
value = "";
}
return value;
}
値 (SetValueJson) を設定したいときに、GetValueJson で取得した値とは異なる場合に、永続データを保存できなかったことを示すポップアップが表示されます。どうすればこの問題を回避できますか? 一部のモジュールは 1.2 を使用し、他のモジュールは 2004 を使用します
ありがとう