added a method for setting resource path
[nodejsws.git] / lib / app.js
1 global.njspurls = new Object();
2
3 var http = require("http"),
4     url = require("url"),
5     path = require("path"),
6     fs = require("fs"),
7     req = require("./wsrequest.js"),
8     localPort = 8888,
9     defaultLayout = "standard",
10     defaultMain = null,
11     addCss = null,
12     layouts = require("./layouts.js"),
13     addJs = null;
14
15 global.njspurls.njsAppName = "NJSPURLS Web App"; 
16
17 exports.setAppName = function(name) {
18         global.njspurls.njsAppName = name;
19 }
20
21 exports.setPurlPath = function(setpath) {
22         // default purl path is set based on the module.parent if its relative
23         var basename = path.dirname(module.parent.filename);
24         var mainpath = path.resolve(basename, setpath);
25         console.log("setting purl path to ", mainpath);
26         global.njspurls.mainPath = mainpath;
27 }
28
29 exports.setResPath = function(setpath) {
30         // default purl path is set based on the module.parent if its relative
31         var basename = path.dirname(module.parent.filename);
32         var mainpath = path.resolve(basename, setpath);
33         console.log("setting res path to ", mainpath);
34         global.njspurls.mainResPath = mainpath;
35 }
36
37 exports.setFooterText = function(text) {
38         global.njspurls.footerText = text;
39 }
40
41 exports.setPort = function(port) {
42         localPort = port;
43 }
44
45 exports.addMenu = function(name, link) {
46         global.njspurls.addMenu(name, link);
47 }
48
49 global.njspurls.addMenu = layouts.addMenu;
50
51 exports.addCss = function(cssname) {
52         if(addCss == null) {
53                 addCss = new Array();
54                 // turn it into an array;
55                 addCss.push(cssname);
56         } else {
57                 addCss.push(cssname);
58         }
59         
60 }
61
62 exports.addJS = function(js) {
63         if(addJs == null) {
64                 addJs = new Array();
65                 addJs.push(js);
66         } else {
67                 addJs.push(js);
68         }
69 }
70
71 exports.setDefaultLayout = function(layout) {
72         defaultLayout = layout;
73 }
74
75 exports.setDefaultMainPurl = function(main) {
76         defaultMain = main;
77 }
78
79
80 exports.start = function() {
81         // initialise req
82         //req.setDefaultLayout(defaultLayout);
83         //req.setDefaultMain(defaultMain);
84         //req.setExtraCss(addCss);
85         //req.setExtraJs(assJs);
86         
87         
88         http.createServer(req.wsRequest).listen(localPort);
89
90         console.log("Server running on port: ", localPort);
91 }