diff --git a/core/modules/commands/server.js b/core/modules/commands/server.js index 43765b21f..8e9a90c72 100644 --- a/core/modules/commands/server.js +++ b/core/modules/commands/server.js @@ -152,7 +152,7 @@ SimpleServer.prototype.listen = function(port,host) { }; var Command = function(params,commander,callback) { - var _this = this; + var self = this; this.params = params; this.commander = commander; this.callback = callback; @@ -163,7 +163,7 @@ var Command = function(params,commander,callback) { // Add route handlers $tw.modules.forEachModuleOfType("serverroute", function(title,routeDefinition) { // console.log("Loading server route " + title); - _this.server.addRoute(routeDefinition); + self.server.addRoute(routeDefinition); }); }; diff --git a/core/modules/serverroute/delete-tiddlers.js b/core/modules/serverroute/delete-tiddlers.js index 651c2c0e9..ffe03cdbc 100644 --- a/core/modules/serverroute/delete-tiddlers.js +++ b/core/modules/serverroute/delete-tiddlers.js @@ -7,17 +7,22 @@ DELETE /recipes/default/tiddlers/:title \*/ (function() { - module.exports = { - method: "DELETE", - path: /^\/bags\/default\/tiddlers\/(.+)$/, - handler: function(request,response,state) { - var title = decodeURIComponent(state.params[0]); - state.wiki.deleteTiddler(title); - response.writeHead(204, "OK", { - "Content-Type": "text/plain" - }); - response.end(); - } - }; +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +exports.method = "DELETE"; + +exports.path = /^\/bags\/default\/tiddlers\/(.+)$/; + +exports.handler = function(request,response,state) { + var title = decodeURIComponent(state.params[0]); + state.wiki.deleteTiddler(title); + response.writeHead(204, "OK", { + "Content-Type": "text/plain" + }); + response.end(); +}; + }()); diff --git a/core/modules/serverroute/get-favicon.js b/core/modules/serverroute/get-favicon.js index 05faf62a8..a0690a6bd 100644 --- a/core/modules/serverroute/get-favicon.js +++ b/core/modules/serverroute/get-favicon.js @@ -7,14 +7,19 @@ GET /favicon.ico \*/ (function() { - module.exports = { - method: "GET", - path: /^\/favicon.ico$/, - handler: function(request,response,state) { - response.writeHead(200, {"Content-Type": "image/x-icon"}); - var buffer = state.wiki.getTiddlerText("$:/favicon.ico",""); - response.end(buffer,"base64"); - } - }; +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +exports.method = "GET"; + +exports.path = /^\/favicon.ico$/; + +exports.handler = function(request,response,state) { + response.writeHead(200, {"Content-Type": "image/x-icon"}); + var buffer = state.wiki.getTiddlerText("$:/favicon.ico",""); + response.end(buffer,"base64"); +}; + }()); diff --git a/core/modules/serverroute/get-index.js b/core/modules/serverroute/get-index.js index b8f90ac0b..0f0f74e2d 100644 --- a/core/modules/serverroute/get-index.js +++ b/core/modules/serverroute/get-index.js @@ -7,14 +7,19 @@ GET / \*/ (function() { - module.exports = { - method: "GET", - path: /^\/$/, - handler: function(request,response,state) { - response.writeHead(200, {"Content-Type": state.server.get("serveType")}); - var text = state.wiki.renderTiddler(state.server.get("renderType"),state.server.get("rootTiddler")); - response.end(text,"utf8"); - } - }; +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +exports.method = "GET"; + +exports.path = /^\/$/; + +exports.handler = function(request,response,state) { + response.writeHead(200, {"Content-Type": state.server.get("serveType")}); + var text = state.wiki.renderTiddler(state.server.get("renderType"),state.server.get("rootTiddler")); + response.end(text,"utf8"); +}; + }()); diff --git a/core/modules/serverroute/get-status.js b/core/modules/serverroute/get-status.js index 8961a77a2..02adc59b9 100644 --- a/core/modules/serverroute/get-status.js +++ b/core/modules/serverroute/get-status.js @@ -7,20 +7,25 @@ GET /status \*/ (function() { - module.exports = { - method: "GET", - path: /^\/status$/, - handler: function(request,response,state) { - response.writeHead(200, {"Content-Type": "application/json"}); - var text = JSON.stringify({ - username: state.server.get("username"), - space: { - recipe: "default" - }, - tiddlywiki_version: $tw.version - }); - response.end(text,"utf8"); - } - }; +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +exports.method = "GET"; + +exports.path = /^\/status$/; + +exports.handler = function(request,response,state) { + response.writeHead(200, {"Content-Type": "application/json"}); + var text = JSON.stringify({ + username: state.server.get("username"), + space: { + recipe: "default" + }, + tiddlywiki_version: $tw.version + }); + response.end(text,"utf8"); +}; + }()); diff --git a/core/modules/serverroute/get-tiddler.js b/core/modules/serverroute/get-tiddler.js index 48160ece9..60221d9e1 100644 --- a/core/modules/serverroute/get-tiddler.js +++ b/core/modules/serverroute/get-tiddler.js @@ -7,35 +7,40 @@ GET /recipes/default/tiddlers/:title \*/ (function() { - module.exports = { - method: "GET", - path: /^\/recipes\/default\/tiddlers\/(.+)$/, - handler: function(request,response,state) { - var title = decodeURIComponent(state.params[0]), - tiddler = state.wiki.getTiddler(title), - tiddlerFields = {}, - knownFields = [ - "bag", "created", "creator", "modified", "modifier", "permissions", "recipe", "revision", "tags", "text", "title", "type", "uri" - ]; - if(tiddler) { - $tw.utils.each(tiddler.fields,function(field,name) { - var value = tiddler.getFieldString(name); - if(knownFields.indexOf(name) !== -1) { - tiddlerFields[name] = value; - } else { - tiddlerFields.fields = tiddlerFields.fields || {}; - tiddlerFields.fields[name] = value; - } - }); - tiddlerFields.revision = state.wiki.getChangeCount(title); - tiddlerFields.type = tiddlerFields.type || "text/vnd.tiddlywiki"; - response.writeHead(200, {"Content-Type": "application/json"}); - response.end(JSON.stringify(tiddlerFields),"utf8"); +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +exports.method = "GET"; + +exports.path = /^\/recipes\/default\/tiddlers\/(.+)$/; + +exports.handler = function(request,response,state) { + var title = decodeURIComponent(state.params[0]), + tiddler = state.wiki.getTiddler(title), + tiddlerFields = {}, + knownFields = [ + "bag", "created", "creator", "modified", "modifier", "permissions", "recipe", "revision", "tags", "text", "title", "type", "uri" + ]; + if(tiddler) { + $tw.utils.each(tiddler.fields,function(field,name) { + var value = tiddler.getFieldString(name); + if(knownFields.indexOf(name) !== -1) { + tiddlerFields[name] = value; } else { - response.writeHead(404); - response.end(); + tiddlerFields.fields = tiddlerFields.fields || {}; + tiddlerFields.fields[name] = value; } - } - }; + }); + tiddlerFields.revision = state.wiki.getChangeCount(title); + tiddlerFields.type = tiddlerFields.type || "text/vnd.tiddlywiki"; + response.writeHead(200, {"Content-Type": "application/json"}); + response.end(JSON.stringify(tiddlerFields),"utf8"); + } else { + response.writeHead(404); + response.end(); + } +}; + }()); diff --git a/core/modules/serverroute/get-tiddlers-json.js b/core/modules/serverroute/get-tiddlers-json.js index 72e281188..c823ae3bf 100644 --- a/core/modules/serverroute/get-tiddlers-json.js +++ b/core/modules/serverroute/get-tiddlers-json.js @@ -7,26 +7,31 @@ GET /recipes/default/tiddlers/tiddlers.json \*/ (function() { - module.exports = { - method: "GET", - path: /^\/recipes\/default\/tiddlers.json$/, - handler: function(request,response,state) { - response.writeHead(200, {"Content-Type": "application/json"}); - var tiddlers = []; - state.wiki.forEachTiddler({sortField: "title"},function(title,tiddler) { - var tiddlerFields = {}; - $tw.utils.each(tiddler.fields,function(field,name) { - if(name !== "text") { - tiddlerFields[name] = tiddler.getFieldString(name); - } - }); - tiddlerFields.revision = state.wiki.getChangeCount(title); - tiddlerFields.type = tiddlerFields.type || "text/vnd.tiddlywiki"; - tiddlers.push(tiddlerFields); - }); - var text = JSON.stringify(tiddlers); - response.end(text,"utf8"); - } - }; +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +exports.method = "GET"; + +exports.path = /^\/recipes\/default\/tiddlers.json$/; + +exports.handler = function(request,response,state) { + response.writeHead(200, {"Content-Type": "application/json"}); + var tiddlers = []; + state.wiki.forEachTiddler({sortField: "title"},function(title,tiddler) { + var tiddlerFields = {}; + $tw.utils.each(tiddler.fields,function(field,name) { + if(name !== "text") { + tiddlerFields[name] = tiddler.getFieldString(name); + } + }); + tiddlerFields.revision = state.wiki.getChangeCount(title); + tiddlerFields.type = tiddlerFields.type || "text/vnd.tiddlywiki"; + tiddlers.push(tiddlerFields); + }); + var text = JSON.stringify(tiddlers); + response.end(text,"utf8"); +}; + }()); diff --git a/core/modules/serverroute/put-tiddler.js b/core/modules/serverroute/put-tiddler.js index 38deacedd..72e9c2d56 100644 --- a/core/modules/serverroute/put-tiddler.js +++ b/core/modules/serverroute/put-tiddler.js @@ -7,31 +7,36 @@ PUT /recipes/default/tiddlers/:title \*/ (function() { - module.exports = { - method: "PUT", - path: /^\/recipes\/default\/tiddlers\/(.+)$/, - handler: function(request,response,state) { - var title = decodeURIComponent(state.params[0]), - fields = JSON.parse(state.data); - // Pull up any subfields in the `fields` object - if(fields.fields) { - $tw.utils.each(fields.fields,function(field,name) { - fields[name] = field; - }); - delete fields.fields; - } - // Remove any revision field - if(fields.revision) { - delete fields.revision; - } - state.wiki.addTiddler(new $tw.Tiddler(state.wiki.getCreationFields(),fields,{title: title},state.wiki.getModificationFields())); - var changeCount = state.wiki.getChangeCount(title).toString(); - response.writeHead(204, "OK",{ - Etag: "\"default/" + encodeURIComponent(title) + "/" + changeCount + ":\"", - "Content-Type": "text/plain" - }); - response.end(); - } - }; +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +exports.method = "PUT"; + +exports.path = /^\/recipes\/default\/tiddlers\/(.+)$/; + +exports.handler = function(request,response,state) { + var title = decodeURIComponent(state.params[0]), + fields = JSON.parse(state.data); + // Pull up any subfields in the `fields` object + if(fields.fields) { + $tw.utils.each(fields.fields,function(field,name) { + fields[name] = field; + }); + delete fields.fields; + } + // Remove any revision field + if(fields.revision) { + delete fields.revision; + } + state.wiki.addTiddler(new $tw.Tiddler(state.wiki.getCreationFields(),fields,{title: title},state.wiki.getModificationFields())); + var changeCount = state.wiki.getChangeCount(title).toString(); + response.writeHead(204, "OK",{ + Etag: "\"default/" + encodeURIComponent(title) + "/" + changeCount + ":\"", + "Content-Type": "text/plain" + }); + response.end(); +}; + }());