4 import pysqlite2.dbapi2 as dbapi
5 import SimpleXMLRPCServer.CGIXMLRPCRequestHandler as rpcHandler
10 rpc.register_function(quickIndex)
11 rpc.register_function(setRecord)
12 rpc.register_function(getRecord)
13 rpc.register_function(delRecord)
20 sql = dbapi.connect('noteDB.sqlite').cursor()
23 sql.execute('CREATE TABLE meta (key TEXT, value TEXT, UNIQUE (uuid));')
24 sql.execute('INSERT INTO meta (key, value) VALUES ("version", "1.6db");')
25 sql.execute('CREATE TABLE notes (uuid TEXT PRIMARY KEY, seq INTEGER, label TEXT, ' +
26 'content TEXT, revision DATETIME, UNIQE (uuid));')
37 Return sanitized string for use in SQL-Statements
41 if c == '"': ret += '""'
46 sql.execute('SELECT uuid, revision FROM notes')
50 sql.excute('DELETE FROM notes WHERE uuid = "' + escape(uuid) + '";')
52 def setRecord(uuid, seq, label, content, revision):
56 content = escape(content)
57 revision = escape(revision)
59 sql.execute('INSERT INTO notes (uuid, seq, label, content, revision) VALUES ' +
60 '"' + uuid + '", ' + seq + ', "' + label + '", "' + content +
61 '", datetime(\'' + revision + '\')')
63 sql.execute('UPDATE notes SET seq = ' + seq + ', label = "' + label + '", content = "' + content +
64 '", revision = "' + revision + '" WHERE uuid = datetime(\'' + revision + '\');')
68 sql.execute('SELECT uuid, seq, label, content, revision FROM notes WHERE uuid = "' + uuid + '";')