]> git.mjollnir.org Git - moodle.git/commitdiff
MDL-14620 - fix link to repository and tidy up using $CFG vars
authordanmarsden <danmarsden>
Thu, 21 Aug 2008 01:47:30 +0000 (01:47 +0000)
committerdanmarsden <danmarsden>
Thu, 21 Aug 2008 01:47:30 +0000 (01:47 +0000)
mod/scorm/lib.php
mod/scorm/loadSCO.php
mod/scorm/locallib.php
mod/scorm/mod_form.php

index f82f8357d243a561c410a61cdc22663c109a0ea0..eeebbf0416a5acf50bb6cfad74981a854f8c871b 100755 (executable)
@@ -85,9 +85,9 @@ function scorm_update_instance($scorm) {
             $scorm->launch = $packagedata->launch;
             $scorm->datadir = $packagedata->datadir;
             $scorm->parse = 1;
-            if (!scorm_external_link($scorm->reference)) {
+            if (!scorm_external_link($scorm->reference) && $scorm->reference[0] != '#') { //dont set md5hash if this is from a repo.
                 $scorm->md5hash = md5_file($CFG->dataroot.'/'.$scorm->course.'/'.$scorm->reference);
-            } else {
+            } elseif($scorm->reference[0] != '#') { //dont set md5hash if this is from a repo.
                 $scorm->dir = $CFG->dataroot.'/'.$scorm->course.'/moddata/scorm';
                 $scorm->md5hash = md5_file($scorm->dir.$scorm->datadir.'/'.basename($scorm->reference));
             }
index cc6da2b7430798d382372d2321af130172293ad4..06c875b12d880e3b564ad2778d72a6e58ad075f0 100755 (executable)
@@ -95,7 +95,6 @@
         $result = $launcher;
     } else if ($scorm->reference[0] == '#') {
         // Repository
-        require_once($repositoryconfigfile);
         $result = $CFG->repositorywebroot.substr($scorm->reference,1).'/'.$sco->launch;
     } else {
         if ((basename($scorm->reference) == 'imsmanifest.xml') && scorm_external_link($scorm->reference)) {
index 605a654cea12282e9a2930a6a5e9a05a27c89c8e..6fdc9d25fbb7c855b0501f214f53f92050831452 100755 (executable)
@@ -67,12 +67,6 @@ if (!isset($CFG->scorm_windowsettings)) {
     set_config('scorm_windowsettings','0');
 }
 
-//
-// Repository configurations
-//
-$repositoryconfigfile = $CFG->dirroot.'/mod/resource/type/ims/repository_config.php';
-$repositorybrowser = '/mod/resource/type/ims/finder.php';
-
 /// Local Library of functions for module scorm
 
 /**
@@ -662,11 +656,10 @@ function scorm_simple_play($scorm,$user) {
 }
 */
 function scorm_parse($scorm) {
-    global $CFG,$repositoryconfigfile;
+    global $CFG;
 
     if ($scorm->reference[0] == '#') {
-        require_once($repositoryconfigfile);
-        if ($CFG->repositoryactivate) {
+        if (isset($CFG->repositoryactivate) && $CFG->repositoryactivate) {
             $referencedir = $CFG->repository.substr($scorm->reference,1);
         }
     } else {
@@ -683,9 +676,6 @@ function scorm_parse($scorm) {
         $scorm->launch = scorm_parse_aicc($referencedir, $scorm->id);
     } else {
         require_once('datamodels/scormlib.php');
-        if ($scorm->reference[0] == '#') {
-            require_once($repositoryconfigfile);
-        }
         $scorm->launch = scorm_parse_scorm($referencedir,$scorm->id);
     }
     return $scorm->launch;
@@ -767,8 +757,7 @@ function scorm_validate($data) {
     }
 
     if ($reference[0] == '#') {
-        require_once($repositoryconfigfile); // TODO: undefined
-        if ($CFG->repositoryactivate) {
+        if (isset($CFG->repositoryactivate) && $CFG->repositoryactivate) {
             $reference = $CFG->repository.substr($reference,1).'/imsmanifest.xml';
         } else {
             $validation->errors['reference'] = get_string('badpackage','scorm');
@@ -859,8 +848,7 @@ function scorm_check_package($data) {
         if (empty($reference)) {
             $validation = null;
         } else if ($reference[0] == '#') {
-            require_once($repositoryconfigfile); // TODO: undefined
-            if ($CFG->repositoryactivate) {
+            if (isset($CFG->repositoryactivate) && $CFG->repositoryactivate) {
                 $referencefield = $reference.'/imsmanifest.xml';
                 $reference = $CFG->repository.substr($reference,1).'/imsmanifest.xml';
             } else {
@@ -890,8 +878,7 @@ function scorm_check_package($data) {
                 
                 if ($scorm = $DB->get_record('scorm', array('id'=>$scormid))) {
                     if ($scorm->reference[0] == '#') {
-                        require_once($repositoryconfigfile);
-                        if ($CFG->repositoryactivate) {
+                        if (isset($CFG->repositoryactivate) && $CFG->repositoryactivate) {
                             $oldreference = $CFG->repository.substr($scorm->reference,1).'/imsmanifest.xml';
                         } else {
                             $oldreference = $scorm->reference;
@@ -1021,4 +1008,4 @@ function scorm_get_count_users($scormid, $groupingid=null) {
     return ($DB->count_records_sql($sql, $params));
 }
 
-?>
+?>
\ No newline at end of file
index d20cb15009f6017794fbd220eff236740612cd4c..9801aedb17bee3abf82c6105d2748664f22d8936 100644 (file)
@@ -30,7 +30,7 @@ class mod_scorm_mod_form extends moodleform_mod {
         $mform->setHelpButton('summary', array('writing', 'questions', 'richtext'), false, 'editorhelpbutton');
 
 // Reference
-        $mform->addElement('choosecoursefile', 'reference', get_string('package','scorm'));
+        $mform->addElement('choosecoursefileorimsrepo', 'reference', get_string('package','scorm'));
         $mform->setType('reference', PARAM_RAW);  // We need to find a better PARAM
         $mform->addRule('reference', get_string('required'), 'required');
         $mform->setHelpButton('reference',array('package', get_string('package', 'scorm'), 'scorm'));
@@ -254,4 +254,4 @@ class mod_scorm_mod_form extends moodleform_mod {
     }
 
 }
-?>
+?>
\ No newline at end of file