|
|
|
|
@ -29,7 +29,7 @@ |
|
|
|
|
* @author Olivier Brouckaert, main author |
|
|
|
|
* @author Roan Embrechts, some refactoring |
|
|
|
|
* @author Julio Montoya Armas switchable fill in blank option added |
|
|
|
|
* @version $Id: exercise_result.php 15893 2008-08-04 05:37:18Z yannoo $ |
|
|
|
|
* @version $Id: exercise_result.php 15957 2008-08-08 08:23:59Z elixir_inter $ |
|
|
|
|
* |
|
|
|
|
* @todo split more code up in functions, move functions to library? |
|
|
|
|
*/ |
|
|
|
|
@ -153,7 +153,118 @@ $exerciseDescription=stripslashes($exerciseDescription); |
|
|
|
|
$nameTools=get_lang('Exercice'); |
|
|
|
|
|
|
|
|
|
$interbreadcrumb[]=array("url" => "exercice.php","name" => get_lang('Exercices')); |
|
|
|
|
|
|
|
|
|
$htmlHeadXtra[] = "<script type=\"text/javascript\" src=\"../plugin/hotspot/JavaScriptFlashGateway.js\"></script> |
|
|
|
|
<script src=\"../plugin/hotspot/hotspot.js\" type=\"text/javascript\"></script> |
|
|
|
|
<script language=\"JavaScript\" type=\"text/javascript\"> |
|
|
|
|
<!-- |
|
|
|
|
// ----------------------------------------------------------------------------- |
|
|
|
|
// Globals |
|
|
|
|
// Major version of Flash required |
|
|
|
|
var requiredMajorVersion = 7; |
|
|
|
|
// Minor version of Flash required |
|
|
|
|
var requiredMinorVersion = 0; |
|
|
|
|
// Minor version of Flash required |
|
|
|
|
var requiredRevision = 0; |
|
|
|
|
// the version of javascript supported |
|
|
|
|
var jsVersion = 1.0; |
|
|
|
|
// ----------------------------------------------------------------------------- |
|
|
|
|
// --> |
|
|
|
|
</script> |
|
|
|
|
<script language=\"VBScript\" type=\"text/vbscript\"> |
|
|
|
|
<!-- // Visual basic helper required to detect Flash Player ActiveX control version information |
|
|
|
|
Function VBGetSwfVer(i) |
|
|
|
|
on error resume next |
|
|
|
|
Dim swControl, swVersion |
|
|
|
|
swVersion = 0 |
|
|
|
|
|
|
|
|
|
set swControl = CreateObject(\"ShockwaveFlash.ShockwaveFlash.\" + CStr(i)) |
|
|
|
|
if (IsObject(swControl)) then |
|
|
|
|
swVersion = swControl.GetVariable(\"\$version\") |
|
|
|
|
end if |
|
|
|
|
VBGetSwfVer = swVersion |
|
|
|
|
End Function |
|
|
|
|
// --> |
|
|
|
|
</script> |
|
|
|
|
|
|
|
|
|
<script language=\"JavaScript1.1\" type=\"text/javascript\"> |
|
|
|
|
<!-- // Detect Client Browser type |
|
|
|
|
var isIE = (navigator.appVersion.indexOf(\"MSIE\") != -1) ? true : false; |
|
|
|
|
var isWin = (navigator.appVersion.toLowerCase().indexOf(\"win\") != -1) ? true : false; |
|
|
|
|
var isOpera = (navigator.userAgent.indexOf(\"Opera\") != -1) ? true : false; |
|
|
|
|
jsVersion = 1.1; |
|
|
|
|
// JavaScript helper required to detect Flash Player PlugIn version information |
|
|
|
|
function JSGetSwfVer(i){ |
|
|
|
|
// NS/Opera version >= 3 check for Flash plugin in plugin array |
|
|
|
|
if (navigator.plugins != null && navigator.plugins.length > 0) { |
|
|
|
|
if (navigator.plugins[\"Shockwave Flash 2.0\"] || navigator.plugins[\"Shockwave Flash\"]) { |
|
|
|
|
var swVer2 = navigator.plugins[\"Shockwave Flash 2.0\"] ? \" 2.0\" : \"\"; |
|
|
|
|
var flashDescription = navigator.plugins[\"Shockwave Flash\" + swVer2].description; |
|
|
|
|
descArray = flashDescription.split(\" \"); |
|
|
|
|
tempArrayMajor = descArray[2].split(\".\"); |
|
|
|
|
versionMajor = tempArrayMajor[0]; |
|
|
|
|
versionMinor = tempArrayMajor[1]; |
|
|
|
|
if ( descArray[3] != \"\" ) { |
|
|
|
|
tempArrayMinor = descArray[3].split(\"r\"); |
|
|
|
|
} else { |
|
|
|
|
tempArrayMinor = descArray[4].split(\"r\"); |
|
|
|
|
} |
|
|
|
|
versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0; |
|
|
|
|
flashVer = versionMajor + \".\" + versionMinor + \".\" + versionRevision; |
|
|
|
|
} else { |
|
|
|
|
flashVer = -1; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
// MSN/WebTV 2.6 supports Flash 4 |
|
|
|
|
else if (navigator.userAgent.toLowerCase().indexOf(\"webtv/2.6\") != -1) flashVer = 4; |
|
|
|
|
// WebTV 2.5 supports Flash 3 |
|
|
|
|
else if (navigator.userAgent.toLowerCase().indexOf(\"webtv/2.5\") != -1) flashVer = 3; |
|
|
|
|
// older WebTV supports Flash 2 |
|
|
|
|
else if (navigator.userAgent.toLowerCase().indexOf(\"webtv\") != -1) flashVer = 2; |
|
|
|
|
// Can't detect in all other cases |
|
|
|
|
else { |
|
|
|
|
|
|
|
|
|
flashVer = -1; |
|
|
|
|
} |
|
|
|
|
return flashVer; |
|
|
|
|
} |
|
|
|
|
// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available |
|
|
|
|
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision) |
|
|
|
|
{ |
|
|
|
|
reqVer = parseFloat(reqMajorVer + \".\" + reqRevision); |
|
|
|
|
// loop backwards through the versions until we find the newest version |
|
|
|
|
for (i=25;i>0;i--) { |
|
|
|
|
if (isIE && isWin && !isOpera) { |
|
|
|
|
versionStr = VBGetSwfVer(i); |
|
|
|
|
} else { |
|
|
|
|
versionStr = JSGetSwfVer(i); |
|
|
|
|
} |
|
|
|
|
if (versionStr == -1 ) { |
|
|
|
|
return false; |
|
|
|
|
} else if (versionStr != 0) { |
|
|
|
|
if(isIE && isWin && !isOpera) { |
|
|
|
|
tempArray = versionStr.split(\" \"); |
|
|
|
|
tempString = tempArray[1]; |
|
|
|
|
versionArray = tempString .split(\",\"); |
|
|
|
|
} else { |
|
|
|
|
versionArray = versionStr.split(\".\"); |
|
|
|
|
} |
|
|
|
|
versionMajor = versionArray[0]; |
|
|
|
|
versionMinor = versionArray[1]; |
|
|
|
|
versionRevision = versionArray[2]; |
|
|
|
|
|
|
|
|
|
versionString = versionMajor + \".\" + versionRevision; // 7.0r24 == 7.24 |
|
|
|
|
versionNum = parseFloat(versionString); |
|
|
|
|
// is the major.revision >= requested major.revision AND the minor version >= requested minor |
|
|
|
|
if ( (versionMajor > reqMajorVer) && (versionNum >= reqVer) ) { |
|
|
|
|
return true; |
|
|
|
|
} else { |
|
|
|
|
return ((versionNum >= reqVer && versionMinor >= reqMinorVer) ? true : false ); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
// --> |
|
|
|
|
</script>"; |
|
|
|
|
|
|
|
|
|
if ($origin != 'learnpath') |
|
|
|
|
{ |
|
|
|
|
|