eunomia-controller
Version:
40 lines (35 loc) • 1.22 kB
JavaScript
;
var fs = require("fs");
var ejs = require("ejs");
var system = require("./../../variables")("./eunomia.json");
var isMissing = function isMissing(data, message) {
return typeof data === 'undefined';
};
exports.generate = function (writeToPath) {
return require("./../../task/index")("crossdomain", function (resolve, reject) {
if (!fs.existsSync("./eunomia.json")) {
reject("eunomia.json required within the root of the project");
} else {
var eunomia = system;
if (!eunomia.generate.crossdomain.enabled) {
resolve();
return false;
}
if (isMissing(eunomia.generate.crossdomain)) {
reject("The `eunomia.json` requires a `crossdomain` json` field");
} else {
try {
var fullPath = __dirname + "/crossdomain.ejs";
var template = fs.readFileSync(fullPath, "utf8");
var render = ejs.compile(template, { filename: fullPath });
var output = render({});
fs.writeFileSync(writeToPath + "/crossdomain.xml", output, "utf8");
resolve();
} catch (e) {
console.log(e);
reject("Failed to create a crossdomain.txt");
}
}
}
});
};