added a method for setting resource path
[nodejsws.git] / lib / app.js
index 07718dc..7879fbc 100644 (file)
@@ -1,3 +1,4 @@
+global.njspurls = new Object();
 
 var http = require("http"),
     url = require("url"),
@@ -6,31 +7,85 @@ var http = require("http"),
     req = require("./wsrequest.js"),
     localPort = 8888,
     defaultLayout = "standard",
-    defaultMain = null;
+    defaultMain = null,
+    addCss = null,
+    layouts = require("./layouts.js"),
+    addJs = null;
 
+global.njspurls.njsAppName = "NJSPURLS Web App"; 
 
+exports.setAppName = function(name) {
+       global.njspurls.njsAppName = name;
+}
 
+exports.setPurlPath = function(setpath) {
+       // default purl path is set based on the module.parent if its relative
+       var basename = path.dirname(module.parent.filename);
+       var mainpath = path.resolve(basename, setpath);
+       console.log("setting purl path to ", mainpath);
+       global.njspurls.mainPath = mainpath;
+}
 
+exports.setResPath = function(setpath) {
+       // default purl path is set based on the module.parent if its relative
+       var basename = path.dirname(module.parent.filename);
+       var mainpath = path.resolve(basename, setpath);
+       console.log("setting res path to ", mainpath);
+       global.njspurls.mainResPath = mainpath;
+}
+
+exports.setFooterText = function(text) {
+       global.njspurls.footerText = text;
+}
 
 exports.setPort = function(port) {
        localPort = port;
 }
 
-exports.start = function() {
-       // initialise req
-       req.setDefaultLayout(defaultLayout);
-       req.setDefaultMain(defaultMain);
-       
+exports.addMenu = function(name, link) {
+       global.njspurls.addMenu(name, link);
+}
+
+global.njspurls.addMenu = layouts.addMenu;
+
+exports.addCss = function(cssname) {
+       if(addCss == null) {
+               addCss = new Array();
+               // turn it into an array;
+               addCss.push(cssname);
+       } else {
+               addCss.push(cssname);
+       }
        
-       http.createServer(req.wsRequest).listen(localPort);
+}
 
-       console.log("Server running on port: ", localPort);
+exports.addJS = function(js) {
+       if(addJs == null) {
+               addJs = new Array();
+               addJs.push(js);
+       } else {
+               addJs.push(js);
+       }
 }
 
 exports.setDefaultLayout = function(layout) {
        defaultLayout = layout;
 }
 
-exports.setDefaultMain = function(main) {
+exports.setDefaultMainPurl = function(main) {
        defaultMain = main;
-}
\ No newline at end of file
+}
+
+
+exports.start = function() {
+       // initialise req
+       //req.setDefaultLayout(defaultLayout);
+       //req.setDefaultMain(defaultMain);
+       //req.setExtraCss(addCss);
+       //req.setExtraJs(assJs);
+       
+       
+       http.createServer(req.wsRequest).listen(localPort);
+
+       console.log("Server running on port: ", localPort);
+}