Reverse direction of dependency loading. The libraries used last in the parameters are now loaded first, e.g. summary is now loaded before iv!
parent
a090468657
commit
42fbb6ab1f
|
@ -1307,7 +1307,7 @@ class H5PStorage {
|
||||||
// Find out which libraries are used by this package/content
|
// Find out which libraries are used by this package/content
|
||||||
$librariesInUse = array();
|
$librariesInUse = array();
|
||||||
$nextWeight = $this->h5pC->findLibraryDependencies($librariesInUse, $this->h5pC->mainJsonData);
|
$nextWeight = $this->h5pC->findLibraryDependencies($librariesInUse, $this->h5pC->mainJsonData);
|
||||||
|
|
||||||
// Save content
|
// Save content
|
||||||
if ($content === NULL) {
|
if ($content === NULL) {
|
||||||
$content = array();
|
$content = array();
|
||||||
|
@ -1841,7 +1841,7 @@ class H5PCore {
|
||||||
* @param array $library To find all dependencies for.
|
* @param array $library To find all dependencies for.
|
||||||
* @param int $nextWeight An integer determining the order of the libraries
|
* @param int $nextWeight An integer determining the order of the libraries
|
||||||
* when they are loaded
|
* when they are loaded
|
||||||
* @param bool $editor Used interally to force all preloaded sub dependencies
|
* @param bool $editor Used interally to force all preloaded sub dependencies
|
||||||
* of an editor dependecy to be editor dependencies.
|
* of an editor dependecy to be editor dependencies.
|
||||||
*/
|
*/
|
||||||
public function findLibraryDependencies(&$dependencies, $library, $nextWeight = 1, $editor = FALSE) {
|
public function findLibraryDependencies(&$dependencies, $library, $nextWeight = 1, $editor = FALSE) {
|
||||||
|
@ -2633,18 +2633,6 @@ class H5PContentValidator {
|
||||||
$library = $this->h5pC->loadLibrary($libspec['machineName'], $libspec['majorVersion'], $libspec['minorVersion']);
|
$library = $this->h5pC->loadLibrary($libspec['machineName'], $libspec['majorVersion'], $libspec['minorVersion']);
|
||||||
$library['semantics'] = $this->h5pC->loadLibrarySemantics($libspec['machineName'], $libspec['majorVersion'], $libspec['minorVersion']);
|
$library['semantics'] = $this->h5pC->loadLibrarySemantics($libspec['machineName'], $libspec['majorVersion'], $libspec['minorVersion']);
|
||||||
$this->libraries[$value->library] = $library;
|
$this->libraries[$value->library] = $library;
|
||||||
|
|
||||||
// Find all dependencies for this library
|
|
||||||
$depkey = 'preloaded-' . $libspec['machineName'];
|
|
||||||
if (!isset($this->dependencies[$depkey])) {
|
|
||||||
$this->dependencies[$depkey] = array(
|
|
||||||
'library' => $library,
|
|
||||||
'type' => 'preloaded'
|
|
||||||
);
|
|
||||||
|
|
||||||
$this->nextWeight = $this->h5pC->findLibraryDependencies($this->dependencies, $library, $this->nextWeight);
|
|
||||||
$this->dependencies[$depkey]['weight'] = $this->nextWeight++;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$library = $this->libraries[$value->library];
|
$library = $this->libraries[$value->library];
|
||||||
|
@ -2659,6 +2647,18 @@ class H5PContentValidator {
|
||||||
$validkeys = array_merge($validkeys, $semantics->extraAttributes);
|
$validkeys = array_merge($validkeys, $semantics->extraAttributes);
|
||||||
}
|
}
|
||||||
$this->filterParams($value, $validkeys);
|
$this->filterParams($value, $validkeys);
|
||||||
|
|
||||||
|
// Find all dependencies for this library
|
||||||
|
$depkey = 'preloaded-' . $library['machineName'];
|
||||||
|
if (!isset($this->dependencies[$depkey])) {
|
||||||
|
$this->dependencies[$depkey] = array(
|
||||||
|
'library' => $library,
|
||||||
|
'type' => 'preloaded'
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->nextWeight = $this->h5pC->findLibraryDependencies($this->dependencies, $library, $this->nextWeight);
|
||||||
|
$this->dependencies[$depkey]['weight'] = $this->nextWeight++;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue