" . $libs[$i]; $lib_path = "h5p/libraries/" . $libs[$i] . "/" . 'library.json'; $lib_file = file_get_contents($lib_path); $lib_dec = json_decode($lib_file,true); $lib_path = "h5p/libraries/" . $libs[$i]; if(isset($lib_dec['preloadedJs'])){ foreach($lib_dec['preloadedJs'] as $js){ $dep_js[] = $lib_path . "/" . $js['path']; } } if(isset($lib_dec['preloadedCss'])){ foreach($lib_dec['preloadedCss'] as $css){ $dep_css[] = $lib_path . "/" . $css['path']; } } if(isset($lib_dec['preloadedDependencies'])){ foreach($lib_dec['preloadedDependencies'] as $dep){ $dep_dep[] = $dep; } } $i++; } $dep = array(); foreach($dep_dep as $i){ $dep[] = $i['machineName'] . "-" . $i['majorVersion'] . "." . $i['minorVersion']; } // var_dump($dep); //check to see if we missed a library $search = count(array_intersect($dep, $libs)) == count($dep); // var_dump($search); //true if we have all the libraries we need // var_dump($dep_js); //the js files we need // var_dump($dep_css);//the css files we need // var_dump($libs); //the dependency libraries ?> '; echo "\n"; } ?> '; } $dep_js = array_reverse(array_reverse($dep_js)); // "reseting" the array so NULL keys will be filled // var_dump($dep_js); $count = count($dep_js); $cmp = "h5p/libraries/" . $mainlibrary; $cmpcount = strlen($cmp) - 1; for($i = 0; $i < $count; $i++){ if (strncmp ($cmp , $dep_js[$i] , $cmpcount ) == 0){ $mainjs[] = $dep_js[$i]; unset($dep_js[$i]); } } $dep_js = array_reverse(array_reverse($dep_js)); //var_dump($joubeljs); //var_dump(array_reverse($dep_js)); $dep_js = array_reverse(array_reverse($dep_js)); // "reseting" the array so NULL keys will be filled //var_dump($dep_js); foreach($dep_js as $js){ //load the js files echo "\n"; echo ''; } foreach($mainjs as $js){ //load the js files echo "\n"; echo ''; } ?>