complete redesign: use nodejs on server instead of php - documentation to be updated

This commit is contained in:
Marc Wäckerlin
2016-01-10 23:17:30 +00:00
parent 1c3765955b
commit a56d3118de
1376 changed files with 183732 additions and 1253 deletions

View File

@@ -0,0 +1,7 @@
{
"host" : "localhost",
"user" : "root",
"port" : 8654,
"password" : "ert456",
"database" : "safechat"
}

11
nodejs/database/index.js Normal file
View File

@@ -0,0 +1,11 @@
module.exports = function() {
var mysql = require('mysql');
var fs = require('fs');
var config = require(__dirname+'/config.json');
config.multipleStatements = true;
var pool = mysql.createPool(config);
pool.query(fs.readFileSync(__dirname+'/schema.sql').toString());
return pool;
};

View File

@@ -0,0 +1,30 @@
CREATE TABLE IF NOT EXISTS `user` (
`name` varchar(50) NOT NULL UNIQUE COMMENT 'unique name of the user',
`pubkey` text NOT NULL COMMENT 'armored gnupg public key of the user',
PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='list of all registered users and their public keys';
create table if not exists `message` (
`id`
int not null auto_increment
comment "id of the message, it is used in the client to check if a message has already been downloaded or not",
`time`
timestamp default current_timestamp
comment "time when the message has been stored on the server",
`user`
varchar(50) not null
comment "name of the user that sent the message",
`msg`
longtext not null
comment "message content, must be armored gnupg encrypted format",
primary key (id),
foreign key (user)
references user(name)
on delete cascade
on update cascade
) character set utf8 engine=innodb
comment="table to hold all messages for later download by the receiver";
create table if not exists options (
name varchar(50) not null unique comment "option name",
value text not null comment "option value",
primary key (name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 comment="table for system settings";