1 if(!dojo._hasResource["openils.XUL"]) {
3 dojo.provide("openils.XUL");
4 dojo.declare('openils.XUL', null, {});
6 openils.XUL.isXUL = function() {
7 return Boolean(window.IAMXUL);
10 openils.XUL.buildId = function() {
11 return window.XUL_BUILD_ID || '';
14 openils.XUL.getStash = function() {
15 if(openils.XUL.isXUL()) {
17 if(openils.XUL.enableXPConnect()) {
18 var CacheClass = new Components.Constructor("@mozilla.org/openils_data_cache;1", "nsIOpenILS");
19 return new CacheClass().wrappedJSObject.OpenILS.prototype.data;
22 console.log("Error loading XUL stash: " + e);
30 * This can be used by privileged Firefox in addition to XUL.
31 * To use use in Firefox directly, set signed.applets.codebase_principal_support to true in about:config
33 openils.XUL.enableXPConnect = function() {
35 netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
38 console.error("Unable to enable UniversalXPConnect privileges. " +
39 "Try setting 'signed.applets.codebase_principal_support' to true in about:config");