Index: gc_core/js/helpers.js ================================================================== --- gc_core/js/helpers.js +++ gc_core/js/helpers.js @@ -49,12 +49,11 @@ // if not in workers, use sdk/data.load() instead try { let xRequest; if (typeof XMLHttpRequest !== "undefined") { xRequest = new XMLHttpRequest(); - } - else { + } else { // JS bullshit again… necessary for Thunderbird let { Cc, Ci } = require("chrome"); xRequest = Cc["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance(); xRequest.QueryInterface(Ci.nsIXMLHttpRequest); } Index: gc_lang/fr/modules-js/conj.js ================================================================== --- gc_lang/fr/modules-js/conj.js +++ gc_lang/fr/modules-js/conj.js @@ -4,12 +4,10 @@ "use strict"; ${map} -let helpers = null; // module not loaded in Firefox content script - const conj = { _lVtyp: null, _lTags: null, _dPatternConj: {}, _dVerb: {}, @@ -477,20 +475,26 @@ return (this.dConj.get(":PQ").get(":Q4")) ? this.dConj.get(":PQ").get(":Q4") : this.dConj.get(":PQ").get(":Q1"); } } -if (typeof(exports) !== 'undefined') { - // used within Grammalecte library - helpers = require("resource://grammalecte/helpers.js"); +// Initialization +if (typeof(browser) !== 'undefined') { + // WebExtension + conj.init(helpers.loadFile(browser.extension.getURL("grammalecte/fr/conj_data.json"))); +} else if (typeof(exports) !== 'undefined') { + // Add-on SDK and Thunderbird + let helpers = require("resource://grammalecte/helpers.js"); conj.init(helpers.loadFile("resource://grammalecte/fr/conj_data.json")); -} else { +} else if (typeof(self) !== 'undefined') { // used within Firefox content script (conjugation panel). // can’t load JSON from here, so we do it in ui.js and send it here. self.port.on("provideConjData", function (sJSONData) { conj.init(sJSONData); }); +} else { + console.log("Error: Impossible d’initialiser le module conj"); } if (typeof(exports) !== 'undefined') { exports._lVtyp = conj._lVtyp; Index: gc_lang/fr/webext/gce_worker.js ================================================================== --- gc_lang/fr/webext/gce_worker.js +++ gc_lang/fr/webext/gce_worker.js @@ -20,10 +20,12 @@ https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/export */ helpers.echo("START"); + +helpers.echo(conj.getConj("devenir", ":E", ":2s")); let oTokenizer = null; let oDict = null; let oLxg = null; Index: gc_lang/fr/webext/manifest.json ================================================================== --- gc_lang/fr/webext/manifest.json +++ gc_lang/fr/webext/manifest.json @@ -32,17 +32,19 @@ "background": { "scripts": [ "grammalecte/helpers.js", "grammalecte/text.js", "grammalecte/tokenizer.js", + "grammalecte/fr/conj.js", "gce_worker.js" ] }, "web_accessible_resources": [ - "beasts/frog.jpg", - "beasts/turtle.jpg", - "beasts/snake.jpg" + "grammalecte/fr/conj_data.json", + "grammalecte/fr/mfsp_data.json", + "grammalecte/fr/phonet_data.json", + "grammalecte/fr/tests_data.json" ], "permissions": [ "activeTab" ] }