Add password handling to server

This commit is contained in:
Jeremy Ruston 2012-09-02 21:00:24 +01:00
parent 2b578c5acc
commit e637b54f36
3 changed files with 40 additions and 4 deletions

1
bld.sh
View File

@ -8,6 +8,7 @@ echo "five.tiddlywiki.com" > ../../jermolene.github.com/CNAME
node ../core/boot.js \
--verbose \
--password password \
--savetiddler ReadMe ../readme.md text/html \
--savetiddler $:/core/templates/tiddlywiki5.template.html ../../jermolene.github.com/index.html text/plain [!is[shadow]]\
--savetiddler $:/core/templates/tiddlywiki5.template.html ../../jermolene.github.com/empty.html text/plain [!is[shadow]is[shadow]]\

View File

@ -57,11 +57,12 @@ $tw.crypto = new function() {
getPassword = function() {
if($tw.browser) {
password = prompt("Enter password to decrypt TiddlyWiki");
} else {
password = "password";
}
};
this.setPassword = function(newPassword) {
password = newPassword;
}
this.encrypt = function(text) {
return callSjcl($tw.crypto.sjcl.encrypt,text);
};
@ -72,8 +73,6 @@ $tw.crypto = new function() {
$tw.crypto.sjcl = $tw.browser ? sjcl : require("./sjcl.js");
console.log("sjcl is " + $tw.crypto.sjcl);
// Boot information
$tw.boot = {};

View File

@ -0,0 +1,36 @@
/*\
title: $:/core/modules/commands/password.js
type: application/javascript
module-type: command
Save password for crypto operations
\*/
(function(){
/*jslint node: true, browser: true */
/*global $tw: false */
"use strict";
exports.info = {
name: "password",
synchronous: true
};
var Command = function(params,commander,callback) {
this.params = params;
this.commander = commander;
this.callback = callback;
};
Command.prototype.execute = function() {
if(this.params.length < 1) {
return "Missing password";
}
$tw.crypto.setPassword(this.params[0]);
return null;
};
exports.Command = Command;
})();