From b62932337c5b312a67572383b04a1d2839c55202 Mon Sep 17 00:00:00 2001 From: piers Date: Thu, 25 Sep 2008 23:59:32 +0000 Subject: [PATCH] MDL-7068 - SCORM 2004 compliance. Handle cmi.interactions hydration (scorm 1.2 to as well). fix regex - replace too greedy. --- mod/scorm/locallib.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mod/scorm/locallib.php b/mod/scorm/locallib.php index f261a84db1..f1a93408d9 100755 --- a/mod/scorm/locallib.php +++ b/mod/scorm/locallib.php @@ -771,10 +771,10 @@ function scorm_reconstitute_array_element($sversion, $userdata, $element_name, $ // generate JavaScript foreach($element_list as $element => $value){ if ($sversion == 'scorm_13') { - $element = preg_replace('/.*?\.(\d+)\./', ".N\$1.", $element); + $element = preg_replace('/\.(\d+)\./', ".N\$1.", $element); preg_match('/\.(N\d+)\./', $element, $matches); } else { - $element = preg_replace('/.*?\.(\d+)\./', "_\$1.", $element); + $element = preg_replace('/\.(\d+)\./', "_\$1.", $element); preg_match('/\_(\d+)\./', $element, $matches); } if (count($matches) > 0 && $current != $matches[1]) { @@ -798,10 +798,10 @@ function scorm_reconstitute_array_element($sversion, $userdata, $element_name, $ // now - flesh out the second level elements if there are any if ($sversion == 'scorm_13') { - $element = preg_replace('/.*?\.N\d+\..*?\.(\d+)\./', ".N\$1.", $element); + $element = preg_replace('/(.*?\.N\d+\..*?)\.(\d+)\./', "\$1.N\$2.", $element); preg_match('/.*?\.N\d+\.(.*?)\.(N\d+)\./', $element, $matches); } else { - $element = preg_replace('/.*?\_\d+\..*?\.(\d+)\./', "_\$1.", $element); + $element = preg_replace('/(.*?\_\d+\..*?)\.(\d+)\./', "\$1_\$2.", $element); preg_match('/.*?\_\d+\.(.*?)\_(\d+)\./', $element, $matches); } -- 2.39.5