58 lines
1.6 KiB
JavaScript
58 lines
1.6 KiB
JavaScript
const bdd = require("./bdd.js").bdd;
|
|
const DEBUG = require("../utils/debug").DEBUG;
|
|
|
|
function isValidEmail(email) {
|
|
// todo
|
|
return true;
|
|
}
|
|
|
|
|
|
function getAddresseId(email, name) {
|
|
const localpart = email.split("@")[0];
|
|
const domain = email.split("@")[1];
|
|
return new Promise((resolve, reject) => {
|
|
if (!isValidEmail(email)) reject("Not a valid email");
|
|
const query = `INSERT INTO address (address_name, localpart, domain, email) VALUES ('${name}', '${localpart}', '${domain}', '${email}')
|
|
ON DUPLICATE KEY UPDATE email = '${email}', id = LAST_INSERT_ID(id)`;
|
|
bdd.query(query, (err, results, fields) => {
|
|
if (err) reject(err);
|
|
resolve(results.insertId);
|
|
});
|
|
});
|
|
}
|
|
|
|
function getMailboxId(email) {
|
|
return new Promise((resolve, reject) => {
|
|
resolve(0)
|
|
});
|
|
// todo
|
|
}
|
|
|
|
function getFieldId(field) {
|
|
return new Promise((resolve, reject) => {
|
|
const query = `INSERT INTO field_name (field_name) VALUES ('${field}') ON DUPLICATE KEY UPDATE field_id=LAST_INSERT_ID(field_id);
|
|
`;
|
|
bdd.query(query, (err, results, fields) => {
|
|
if (err) reject(err);
|
|
resolve(results.insertId);
|
|
});
|
|
});
|
|
}
|
|
|
|
function findRoomByOwner(ownerId) {
|
|
return new Promise((resolve, reject) => {
|
|
const query = `SELECT room_id FROM app_room WHERE owner_id = '${ownerId}'`;
|
|
bdd.query(query, (err, results, fields) => {
|
|
if (err) reject(err);
|
|
resolve(results);
|
|
});
|
|
});
|
|
}
|
|
|
|
module.exports = {
|
|
getAddresseId,
|
|
getMailboxId,
|
|
getFieldId,
|
|
findRoomByOwner,
|
|
};
|