diff --git a/embed.php b/embed.php
index 25b37f4..7e6250b 100644
--- a/embed.php
+++ b/embed.php
@@ -13,13 +13,8 @@
diff --git a/js/h5p-content-upgrade.js b/js/h5p-content-upgrade.js
index ff3756f..6828fdc 100644
--- a/js/h5p-content-upgrade.js
+++ b/js/h5p-content-upgrade.js
@@ -7,7 +7,7 @@ var H5PUpgrades = H5PUpgrades || {};
// Initialize
$(document).ready(function () {
// Get library info
- info = H5PIntegration.getLibraryInfo();
+ info = H5PAdminIntegration.libraryInfo;
// Get and reset container
$container = $('#h5p-admin-container').html('' + info.message + '
');
diff --git a/js/h5p-library-details.js b/js/h5p-library-details.js
index 8605b3d..9d22167 100644
--- a/js/h5p-library-details.js
+++ b/js/h5p-library-details.js
@@ -7,8 +7,8 @@ var H5PLibraryDetails= H5PLibraryDetails || {};
* Initializing
*/
H5PLibraryDetails.init = function () {
- H5PLibraryDetails.$adminContainer = H5PIntegration.getAdminContainer();
- H5PLibraryDetails.library = H5PIntegration.getLibraryInfo();
+ H5PLibraryDetails.$adminContainer = H5P.jQuery(H5PAdminIntegration.containerSelector);
+ H5PLibraryDetails.library = H5PAdminIntegration.libraryInfo;
// currentContent holds the current list if data (relevant for filtering)
H5PLibraryDetails.currentContent = H5PLibraryDetails.library.content;
diff --git a/js/h5p-library-list.js b/js/h5p-library-list.js
index 4382b28..5f419d6 100644
--- a/js/h5p-library-list.js
+++ b/js/h5p-library-list.js
@@ -7,15 +7,15 @@ var H5PLibraryList = H5PLibraryList || {};
* Initializing
*/
H5PLibraryList.init = function () {
- var $adminContainer = H5PIntegration.getAdminContainer();
+ var $adminContainer = H5P.jQuery(H5PAdminIntegration.containerSelector);
- var libraryList = H5PIntegration.getLibraryList();
+ var libraryList = H5PAdminIntegration.libraryList;
if (libraryList.notCached) {
$adminContainer.append(H5PUtils.getRebuildCache(libraryList.notCached));
}
// Create library list
- $adminContainer.append(H5PLibraryList.createLibraryList(H5PIntegration.getLibraryList()));
+ $adminContainer.append(H5PLibraryList.createLibraryList(H5PAdminIntegration.libraryList));
};
/**
@@ -24,7 +24,7 @@ var H5PLibraryList = H5PLibraryList || {};
* @param {object} libraries List of libraries and headers
*/
H5PLibraryList.createLibraryList = function (libraries) {
- var t = H5PIntegration.i18n.H5P;
+ var t = H5PAdminIntegration.l10n;
if(libraries.listData === undefined || libraries.listData.length === 0) {
return $('' + t.NA + '
');
}
@@ -123,7 +123,7 @@ var H5PLibraryList = H5PLibraryList || {};
}
}
};
-
+
// Initialize me:
$(document).ready(function () {
if (!H5PLibraryList.initialized) {
diff --git a/js/h5p-utils.js b/js/h5p-utils.js
index 00af7bc..d90ca58 100644
--- a/js/h5p-utils.js
+++ b/js/h5p-utils.js
@@ -7,7 +7,7 @@ var H5PUtils = H5PUtils || {};
* @param {array} headers List of headers
*/
H5PUtils.createTable = function (headers) {
- var $table = $('');
+ var $table = $('');
if(headers) {
var $thead = $('');
diff --git a/js/h5p-x-api-event.js b/js/h5p-x-api-event.js
index 5e1a025..e199c28 100644
--- a/js/h5p-x-api-event.js
+++ b/js/h5p-x-api-event.js
@@ -99,8 +99,8 @@ H5P.XAPIEvent.prototype.setObject = function(instance) {
*/
H5P.XAPIEvent.prototype.setActor = function() {
this.data.statement.actor = {
- 'name': H5P.user.name,
- 'mbox': 'mailto:' + H5P.user.mail,
+ 'name': H5PIntegration.user.name,
+ 'mbox': 'mailto:' + H5PIntegration.user.mail,
'objectType': 'Agent'
};
};
diff --git a/js/h5p.js b/js/h5p.js
index 932477e..d193881 100644
--- a/js/h5p.js
+++ b/js/h5p.js
@@ -48,7 +48,7 @@ H5P.init = function () {
var $element = H5P.jQuery(this);
var $container = H5P.jQuery('').appendTo($element);
var contentId = $element.data('content-id');
- var contentData = H5P.contentDatas['cid-' + contentId];
+ var contentData = H5PIntegration.contents['cid-' + contentId];
if (contentData === undefined) {
return H5P.error('No data for content id ' + contentId + '. Perhaps the library is gone?');
}
@@ -217,6 +217,47 @@ H5P.init = function () {
});
};
+/**
+ * Loop through assets for iframe content and create a set of tags for head.
+ *
+ * @private
+ * @param {number} contentId
+ * @returns {string} HTML
+ */
+H5P.getHeadTags = function (contentId) {
+ var basePath = window.location.protocol + '//' + window.location.host + H5PIntegration.basePath;
+
+ var createUrl = function (path) {
+ if (path.substring(0,7) !== 'http://' && path.substring(0,8) !== 'https://') {
+ // Not external, add base path.
+ path = basePath + path;
+ }
+ return path;
+ };
+
+ var createStyleTags = function (styles) {
+ var tags = '';
+ for (var i = 0; i < styles.length; i++) {
+ tags += '';
+ }
+ return tags;
+ };
+
+ var createScriptTags = function (scripts) {
+ var tags = '';
+ for (var i = 0; i < scripts.length; i++) {
+ tags += '';
+ }
+ return tags;
+ };
+
+ return createStyleTags(H5PIntegration.core.styles) +
+ createStyleTags(H5PIntegration.contents['cid-' + contentId].styles) +
+ createScriptTags(H5PIntegration.core.scripts) +
+ createScriptTags(H5PIntegration.contents['cid-' + contentId].scripts) +
+ '';
+};
+
H5P.communicator = (function () {
/**
* @class
@@ -449,7 +490,7 @@ H5P.getPath = function (path, contentId) {
}
if (contentId !== undefined) {
- prefix = H5P.url + '/content/' + contentId;
+ prefix = H5PIntegration.url + '/content/' + contentId;
}
else if (window.H5PEditor !== undefined) {
prefix = H5PEditor.filesPath;
@@ -571,15 +612,15 @@ H5P.t = function (key, vars, ns) {
ns = 'H5P';
}
- if (H5P.l10n[ns] === undefined) {
+ if (H5PIntegration.l10n[ns] === undefined) {
return '[Missing translation namespace "' + ns + '"]';
}
- if (H5P.l10n[ns][key] === undefined) {
+ if (H5PIntegration.l10n[ns][key] === undefined) {
return '[Missing translation "' + key + '" in "' + ns + '"]';
}
- var translation = H5P.l10n[ns][key];
+ var translation = H5PIntegration.l10n[ns][key];
if (vars !== undefined) {
// Replace placeholder with variables.
@@ -1156,7 +1197,7 @@ H5P.libraryFromString = function (library) {
* @returns {String} The full path to the library.
*/
H5P.getLibraryPath = function (library) {
- return H5P.url + '/libraries/' + library;
+ return H5PIntegration.url + '/libraries/' + library;
};
/**
@@ -1204,8 +1245,8 @@ H5P.trim = function (value) {
* @returns {Boolean}
*/
H5P.jsLoaded = function (path) {
- H5P.loadedJs = H5P.loadedJs || [];
- return H5P.jQuery.inArray(path, H5P.loadedJs) !== -1;
+ H5PIntegration.loadedJs = H5PIntegration.loadedJs || [];
+ return H5P.jQuery.inArray(path, H5PIntegration.loadedJs) !== -1;
};
/**
@@ -1215,8 +1256,8 @@ H5P.jsLoaded = function (path) {
* @returns {Boolean}
*/
H5P.cssLoaded = function (path) {
- H5P.loadedCss = H5P.loadedCss || [];
- return H5P.jQuery.inArray(path, H5P.loadedCss) !== -1;
+ H5PIntegration.loadedCss = H5PIntegration.loadedCss || [];
+ return H5P.jQuery.inArray(path, H5PIntegration.loadedCss) !== -1;
};
/**
@@ -1255,7 +1296,7 @@ H5P.shuffleArray = function (array) {
* @param {Number} time optional reported time usage
*/
H5P.setFinished = function (contentId, score, maxScore, time) {
- if (H5P.postUserStatistics === true) {
+ if (H5PIntegration.postUserStatistics === true) {
/**
* Return unix timestamp for the given JS Date.
*
@@ -1268,7 +1309,7 @@ H5P.setFinished = function (contentId, score, maxScore, time) {
// Post the results
// TODO: Should we use a variable with the complete path?
- H5P.jQuery.post(H5P.ajaxPath + 'setFinished', {
+ H5P.jQuery.post(H5PIntegration.ajaxPath + 'setFinished', {
contentId: contentId,
score: score,
maxScore: maxScore,