diff --git a/index.js b/index.js index c600667..a2194e1 100644 --- a/index.js +++ b/index.js @@ -1,4 +1,4 @@ -var engine = require("./src/modules/engine"); +var engine = require("./src/engine"); var app = {}; app.config = { templatePath: __dirname + "\\src\\templates", @@ -6,5 +6,6 @@ app.config = { }; app.render = engine.render; +app.CONST = engine.CONST; module.exports = app; diff --git a/src/modules/engine.js b/src/engine.js similarity index 59% rename from src/modules/engine.js rename to src/engine.js index 0de6a7b..a423dc5 100644 --- a/src/modules/engine.js +++ b/src/engine.js @@ -11,7 +11,22 @@ function replaceAll(str, find, replace) { return str.replace(new RegExp(escapeRegExp(find), "g"), replace); } +app.CONST = function(pagecode,constant,callback) +{ + if(pagecode[constant] !== undefined) + { + callback(pagecode,pagecode[constant]); + } + else + { + return 0; + } +} + + app.render = function (pagecode, templatecode) { + + result = ""; if (!pagecode == JSON) pagecode = JSON.parse(pagecode); @@ -21,6 +36,20 @@ app.render = function (pagecode, templatecode) { templatecode == fs.readFileSync(pagecode["_TEMPLATE_"] + ".html"); } + app.CONST(pagecode, "_STYLES_", (pagecode, value) => { + var rex = /
(.|\n|\t|\r)*?<\/head>/; + var header = templatecode.match(rex); + header = header[0].replace("", ""); + value.forEach((element) => { + header += `\n`; + }); + + header += "\n"; + // console.log(header); + templatecode = templatecode.replace(/(.|\n|\t|\r)*?<\/head>/, header); + }); + + for (var i in pagecode) { var value = undefined; diff --git a/test/test.js b/test/test.js index 90ed9b0..7439589 100644 --- a/test/test.js +++ b/test/test.js @@ -1,4 +1,5 @@ const JSTE = require("../"); +const engine = require("../src/engine"); var assert = require("assert"); var expect = require("chai").expect; var should = require("chai").should(); @@ -64,6 +65,11 @@ describe("test Varnames",function (){ var result = JSTE.render({ _var_: "EXAMPLE" }, "<[_var_]>"); result.should.equal("<[_var_]>"); }); + it("should impliment _STYLE_", function () { + var result = JSTE.render({ _STYLES_: ["EXAMPLE","EXAMPLE2"] }, "