$xmlstring = file_get_contents($manifestfile);
$objXML = new xml2Array();
$manifests = $objXML->parse($xmlstring);
- // print_r($manifests);
+ //print_r($manifests);
$scoes = new stdClass();
$scoes->version = '';
$scoes = scorm_get_manifest($manifests,$scoes);
foreach ($scoes->elements as $manifest => $organizations) {
foreach ($organizations as $organization => $items) {
foreach ($items as $identifier => $item) {
- $newitem = new stdClass();
+ // This new db mngt will support all SCORM future extensions
+ /*$newitem = new stdClass();
$newitem->scorm = $scormid;
$newitem->manifest = $manifest;
$newitem->organization = $organization;
$data->value = $item->$optionaldata;
$dataid = insert_record('scorm_scoes_data');
}
- }
+ } */
+ $item->scorm = $scormid;
+ $item->manifest = $manifest;
+ $item->organization = $organization;
+ if ($olditemid = scorm_array_search('identifier',$item->identifier,$olditems)) {
+ $item->id = $olditemid;
+ $id = update_record('scorm_scoes',$item);
+ unset($olditems[$olditemid]);
+ } else {
+ $id = insert_record('scorm_scoes',$item);
+ }
+
if (($launch == 0) && ((empty($scoes->defaultorg)) || ($scoes->defaultorg == $identifier))) {
$launch = $id;
}
if (!empty($olditems)) {
foreach($olditems as $olditem) {
delete_records('scorm_scoes','id',$olditem->id);
- delete_records('scorm_scoes_data','scoid',$olditem->id);
+ //delete_records('scorm_scoes_data','scoid',$olditem->id);
delete_records('scorm_scoes_track','scoid',$olditem->id);
}
}