61 lines
2.3 KiB
JavaScript
61 lines
2.3 KiB
JavaScript
const bdd = require("./bdd.js").bdd;
|
|
const DEBUG = require("../utils/debug").DEBUG;
|
|
|
|
function registerMessage(timestamp, rfc822size, messageId) {
|
|
// todo messageId
|
|
return new Promise((resolve, reject) => {
|
|
const query = `INSERT INTO messages (idate, rfc822size) VALUES (${timestamp}, '${rfc822size}')`;
|
|
bdd.query(query, (err, results, fields) => {
|
|
if (err) reject(err);
|
|
resolve(results.insertId);
|
|
});
|
|
});
|
|
}
|
|
|
|
function registerMailbox_message(mailboxId, uid, messageId, modseq, seen, deleted) {
|
|
const query = `INSERT IGNORE INTO mailbox_messages (mailbox, uid, message, modseq, seen, deleted) VALUES ('${mailboxId}', '${uid}', '${messageId}', '${modseq}', '${seen}', '${deleted}')`;
|
|
bdd.query(query, (err, results, fields) => {
|
|
if (err) DEBUG.log(err);
|
|
});
|
|
}
|
|
|
|
function registerBodypart(messageId, part, bodypartId, bytes, nbLines) {
|
|
const query = `INSERT IGNORE INTO part_numbers (message, part, bodypart, bytes, nbLines) VALUES ('${messageId}', '${part}', '${bodypartId}', '${bytes}', '${nbLines}')`;
|
|
bdd.query(query, (err, results, fields) => {
|
|
if (err) DEBUG.log(err);
|
|
});
|
|
}
|
|
|
|
|
|
function saveBodypart(bytes, hash, text, data) {
|
|
return new Promise((resolve, reject) => {
|
|
const query = `INSERT IGNORE INTO bodyparts (bytes, hash, text, data) VALUES ('${bytes}', '${hash}', '${text}', '${data}')`;
|
|
bdd.query(query, (err, results, fields) => {
|
|
if (err) reject(err);
|
|
resolve(results.insertId);
|
|
});
|
|
});
|
|
}
|
|
|
|
function saveHeader_fields(message, part, position, field, value) {
|
|
const query = `INSERT IGNORE INTO header_fields (message, part, position, field, value) VALUES ('${message}', '${part}', '${position}', '${field}', '${value}')`;
|
|
bdd.query(query, (err, results, fields) => {
|
|
if (err) throw err;
|
|
});
|
|
}
|
|
|
|
function saveAddress_fields(message, part, position, field, number, address) {
|
|
const query = `INSERT IGNORE INTO address_fields (message, part, position, field, number, address) VALUES ('${message}', '${part}', '${position}', '${field}', '${number}', '${address}')`;
|
|
bdd.query(query, (err, results, fields) => {
|
|
if (err) throw err;
|
|
});
|
|
}
|
|
|
|
module.exports = {
|
|
registerMessage,
|
|
registerMailbox_message,
|
|
saveHeader_fields,
|
|
saveAddress_fields,
|
|
registerBodypart,
|
|
saveBodypart
|
|
} |