}
- this.connectPrereqCallback = {
-
- success: function(o) {
- scorm_tree_node = YAHOO.widget.TreeView.getTree('scorm_tree');
- if (o.responseText !== undefined) {
- if (scorm_tree_node && o.responseText) {
- var hnode = scorm_tree_node.getHighlightedNode();
- var hidx = null;
- if (hnode) {
- hidx = hnode.index + scorm_tree_node.getNodeCount();
- }
- // all gone
- var root_node = scorm_tree_node.getRoot();
- scorm_tree_node.removeNode(root_node.children[0]);
- }
- // make sure the temporary tree element is not there
- var el_old_tree = document.getElementById('scormtree123');
- if (el_old_tree) {
- el_old_tree.parentNode.removeChild(el_old_tree);
- }
- var el_new_tree = document.createElement('div');
- var pagecontent = document.getElementById("page-content");
- el_new_tree.setAttribute('id','scormtree123');
- el_new_tree.innerHTML = o.responseText;
- // make sure it doesnt show
- el_new_tree.style.display = 'none';
- pagecontent.appendChild(el_new_tree)
- // ignore the first level element as this is the title
- scorm_tree_node.buildTreeFromMarkup(el_new_tree.firstChild.firstChild);
- var el = document.getElementById('scormtree123');
- el.parentNode.removeChild(el);
- scorm_tree_node.expandAll();
- scorm_tree_node.render();
- if (hidx != null) {
- hnode = scorm_tree_node.getNodeByIndex(hidx);
- if (hnode) {
- hnode.highlight();
- scorm_layout_widget = YAHOO.widget.Layout.getLayoutById('scorm_layout');
- var left = scorm_layout_widget.getUnitByPosition('left');
- if (left.expanded) {
- hnode.focus();
- }
- }
- }
- }
- },
-
- failure: function(o) {
- // do some sort of error handling
- var sURL = "<?php echo $CFG->wwwroot; ?>" + "/mod/scorm/prereqs.php?a=<?php echo $scorm->id ?>&scoid=<?php echo $scoid ?>&attempt=<?php echo $attempt ?>&mode=<?php echo $mode ?>¤torg=<?php echo $currentorg ?>&sesskey=<?php echo sesskey(); ?>";
- //TODO: Enable this error handing correctly - avoiding issues when closing player MDL-23470
- //alert('Prerequisites update failed - must restart SCORM player');
- //window.location.href = sURL;
- }
-
- };
+<?php
+ // pull in the TOC callback
+ include_once($CFG->dirroot.'/mod/scorm/datamodels/callback.js.php');
+ ?>
function LMSFinish (param) {
--- /dev/null
+
+ this.connectPrereqCallback = {
+
+ success: function(o) {
+ scorm_tree_node = YAHOO.widget.TreeView.getTree('scorm_tree');
+ if (o.responseText !== undefined) {
+ if (scorm_tree_node && o.responseText) {
+ var hnode = scorm_tree_node.getHighlightedNode();
+ var hidx = null;
+ if (hnode) {
+ hidx = hnode.index + scorm_tree_node.getNodeCount();
+ }
+ // all gone
+ var root_node = scorm_tree_node.getRoot();
+ scorm_tree_node.removeNode(root_node.children[0]);
+ }
+ // make sure the temporary tree element is not there
+ var el_old_tree = document.getElementById('scormtree123');
+ if (el_old_tree) {
+ el_old_tree.parentNode.removeChild(el_old_tree);
+ }
+ var el_new_tree = document.createElement('div');
+ var pagecontent = document.getElementById("page-content");
+ el_new_tree.setAttribute('id','scormtree123');
+ el_new_tree.innerHTML = o.responseText;
+ // make sure it doesnt show
+ el_new_tree.style.display = 'none';
+ pagecontent.appendChild(el_new_tree)
+ // ignore the first level element as this is the title
+ scorm_tree_node.buildTreeFromMarkup(el_new_tree.firstChild.firstChild);
+ var el = document.getElementById('scormtree123');
+ el.parentNode.removeChild(el);
+ scorm_tree_node.expandAll();
+ scorm_tree_node.render();
+ if (hidx != null) {
+ hnode = scorm_tree_node.getNodeByIndex(hidx);
+ if (hnode) {
+ hnode.highlight();
+ scorm_layout_widget = YAHOO.widget.Layout.getLayoutById('scorm_layout');
+ var left = scorm_layout_widget.getUnitByPosition('left');
+ if (left.expanded) {
+ hnode.focus();
+ }
+ }
+ }
+ }
+ },
+
+ failure: function(o) {
+ // do some sort of error handling
+ var sURL = "<?php echo $CFG->wwwroot; ?>" + "/mod/scorm/prereqs.php?a=<?php echo $scorm->id ?>&scoid=<?php echo $scoid ?>&attempt=<?php echo $attempt ?>&mode=<?php echo $mode ?>¤torg=<?php echo $currentorg ?>&sesskey=<?php echo sesskey(); ?>";
+ //TODO: Enable this error handing correctly - avoiding issues when closing player MDL-23470
+ //alert('Prerequisites update failed - must restart SCORM player');
+ //window.location.href = sURL;
+ }
+
+ };
+
+
return "false";
}
-
- this.connectPrereqCallback = {
-
- success: function(o) {
- scorm_tree_node = YAHOO.widget.TreeView.getTree('scorm_tree');
- if (o.responseText !== undefined) {
- if (scorm_tree_node && o.responseText) {
- var hnode = scorm_tree_node.getHighlightedNode();
- var hidx = null;
- if (hnode) {
- hidx = hnode.index + scorm_tree_node.getNodeCount();
- }
- // all gone
- var root_node = scorm_tree_node.getRoot();
- scorm_tree_node.removeNode(root_node.children[0]);
- }
- // make sure the temporary tree element is not there
- var el_old_tree = document.getElementById('scormtree123');
- if (el_old_tree) {
- el_old_tree.parentNode.removeChild(el_old_tree);
- }
- var el_new_tree = document.createElement('div');
- var pagecontent = document.getElementById("page-content");
- el_new_tree.setAttribute('id','scormtree123');
- el_new_tree.innerHTML = o.responseText;
- // make sure it doesnt show
- el_new_tree.style.display = 'none';
- pagecontent.appendChild(el_new_tree)
- // ignore the first level element as this is the title
- scorm_tree_node.buildTreeFromMarkup(el_new_tree.firstChild.firstChild);
- var el = document.getElementById('scormtree123');
- el.parentNode.removeChild(el);
- scorm_tree_node.expandAll();
- scorm_tree_node.render();
- if (hidx != null) {
- hnode = scorm_tree_node.getNodeByIndex(hidx);
- if (hnode) {
- hnode.highlight();
- scorm_layout_widget = YAHOO.widget.Layout.getLayoutById('scorm_layout');
- var left = scorm_layout_widget.getUnitByPosition('left');
- if (left.expanded) {
- hnode.focus();
- }
- }
- }
- }
- },
-
- failure: function(o) {
- // do some sort of error handling
- var sURL = "<?php echo $CFG->wwwroot; ?>" + "/mod/scorm/prereqs.php?a=<?php echo $scorm->id ?>&scoid=<?php echo $scoid ?>&attempt=<?php echo $attempt ?>&mode=<?php echo $mode ?>¤torg=<?php echo $currentorg ?>&sesskey=<?php echo sesskey(); ?>";
- //TODO: Enable this error handing correctly - avoiding issues when closing player MDL-23470
- //alert('Prerequisites update failed - must restart SCORM player');
- //window.location.href = sURL;
- }
-
- };
-
+<?php
+ // pull in the TOC callback
+ include_once($CFG->dirroot.'/mod/scorm/datamodels/callback.js.php');
+ ?>
function LMSFinish (param) {
errorCode = "0";
return "false";
}
- this.connectPrereqCallback = {
- success: function(o) {
- scorm_tree_node = YAHOO.widget.TreeView.getTree('scorm_tree');
- if (o.responseText !== undefined) {
- if (scorm_tree_node && o.responseText) {
- var hnode = scorm_tree_node.getHighlightedNode();
- var hidx = null;
- if (hnode) {
- hidx = hnode.index + scorm_tree_node.getNodeCount();
- }
- // all gone
- var root_node = scorm_tree_node.getRoot();
- scorm_tree_node.removeNode(root_node.children[0]);
- }
- // make sure the temporary tree element is not there
- var el_old_tree = document.getElementById('scormtree123');
- if (el_old_tree) {
- el_old_tree.parentNode.removeChild(el_old_tree);
- }
- var el_new_tree = document.createElement('div');
- var pagecontent = document.getElementById("page-content");
- el_new_tree.setAttribute('id','scormtree123');
- el_new_tree.innerHTML = o.responseText;
- // make sure it doesnt show
- el_new_tree.style.display = 'none';
- pagecontent.appendChild(el_new_tree)
- // ignore the first level element as this is the title
- scorm_tree_node.buildTreeFromMarkup(el_new_tree.firstChild.firstChild);
- var el = document.getElementById('scormtree123');
- el.parentNode.removeChild(el);
- scorm_tree_node.expandAll();
- scorm_tree_node.render();
- if (hidx != null) {
- hnode = scorm_tree_node.getNodeByIndex(hidx);
- if (hnode) {
- hnode.highlight();
- scorm_layout_widget = YAHOO.widget.Layout.getLayoutById('scorm_layout');
- var left = scorm_layout_widget.getUnitByPosition('left');
- if (left.expanded) {
- hnode.focus();
- }
- }
- }
- }
- },
-
- failure: function(o) {
- // do some sort of error handling
- var sURL = "<?php echo $CFG->wwwroot; ?>" + "/mod/scorm/prereqs.php?a=<?php echo $scorm->id ?>&scoid=<?php echo $scoid ?>&attempt=<?php echo $attempt ?>&mode=<?php echo $mode ?>¤torg=<?php echo $currentorg ?>&sesskey=<?php echo sesskey(); ?>";
- //TODO: Enable this error handing correctly - avoiding issues when closing player MDL-23470
- //alert('Prerequisites update failed - must restart SCORM player');
- //window.location.href = sURL;
- }
-
- };
+<?php
+ // pull in the TOC callback
+ include_once($CFG->dirroot.'/mod/scorm/datamodels/callback.js.php');
+ ?>
function Terminate (param) {
var scorm_resize_layout = function(alsowidth) {
if (window_name) {
- //scorm_layout_widget.setStyle('width', '260px');
- //scorm_layout_widget.render();
return;
}
if (alsowidth) {
- //var layout = YAHOO.util.Dom.get('scorm_layout');
- //layout.style.width = '600px';
scorm_layout_widget.setStyle('width', '');
var newwidth = scorm_get_htmlelement_size('content', 'width');
if (newwidth > 600) {
- //layout.style.width = newwidth+'px';
scorm_layout_widget.setStyle('width', newwidth+'px');
}
}
};
var scorm_skipprev = function(node) {
- /*
- if (node == scorm_tree_node.getRoot().children[0]) {
- return null;
- }
- else {
- return scorm_tree_node.getRoot().children[0];
- }
- */
if (node.previousSibling) {
return node.previousSibling;
} else if (node.depth > 0) {
};
var scorm_skipnext = function(node) {
- /*
- var toc_children = scorm_tree_node.getRoot().children;
- if (node == toc_children[toc_children.length - 1]) {
- return null;
- }
- else {
- return toc_children[toc_children.length - 1];
- }
- */
if (node.nextSibling) {
return node.nextSibling;
} else if (node.depth > 0) {
YAHOO.widget.LayoutUnit.prototype.STR_COLLAPSE = M.str.moodle.hide;
YAHOO.widget.LayoutUnit.prototype.STR_EXPAND = M.str.moodle.show;
-/*
- scorm_layout_widget = new YAHOO.widget.Layout('scorm_layout', {
- minWidth: 600,
- minHeight: 400,
- units: [
- { position: 'left', body: 'scorm_toc', header: M.str.scorm.toc, width: 250, resize: true, gutter: '2px 5px 5px 2px', collapse: true, minWidth:150},
- { position: 'center', body: '<div id="scorm_content"></div>', gutter: '2px 5px 5px 2px', scroll: true}
- ]
- });
- */
scorm_layout_widget = new YAHOO.widget.Layout('scorm_layout', {
minWidth: 255,
minHeight: 400,
// navigation
if (scorm_hide_nav == false) {
- //scorm_nav_panel = new YAHOO.widget.Panel('scorm_navpanel', { visible:true, draggable:true, close:false,
- // context: ['page', 'bl', 'bl', ["windowScroll", "textResize", "windowResize"]], constraintoviewport:true} );
scorm_nav_panel = new YAHOO.widget.Panel('scorm_navpanel', { visible:true, draggable:true, close:false, xy: [250, 450],
autofillheight: "body"} );
scorm_nav_panel.setHeader(M.str.scorm.navigation);
<?php
+
+ // this page is called via AJAX to repopulte the TOC when LMSFinish() is called
+
require_once('../../config.php');
require_once($CFG->dirroot.'/mod/scorm/locallib.php');
$result = scorm_get_toc($USER,$scorm,'structurelist',$currentorg,$scoid,$mode,$attempt,true, false);
echo $result->toc;
}
- //echo "<ul><li>The Heading<ul>";
- //echo "<li><a title='/moodledev/blah1'>Blah 1</a></li>";
- //echo "<li><a title='/moodledev/blah2'>Blah 2</a></li>";
- //echo "</ul></li></ul>";
}