logic.js 1.16 KB
function toLower(v) {
    return v.toLowerCase();
 };

const mongoose = require('mongoose');
// const assert = require('assert');
mongoose.Promise = global.Promise;

const db = mongoose.connect('mongodb://localhost:27017/contactdb');

const contactSchema = mongoose.Schema({
    firstname: {
        type: String,
        set: toLower
    },
    lastname: {
        type: String,
        set: toLower
    },
    phone: {
        type: String,
        set: toLower
    },
    email: {
        type: String,
        set: toLower
    }
});
const Contact = mongoose.model('Contact', contactSchema);

const addContact = (contact) => {
    Contact.create(contact, (err) => {
        console.info('New contact added');
        db.disconnect();
    });
};

const getContact = (name) => {
    const search = new RegExp(name, 'i');
    Contact.find({ $or: [{ firstname: search }, { lastname: search }] })
        .exec((err, contact) => {
            console.info(contact);
            console.info(`ค้นเจอทั้งหมด ${contact.length} รายการ`);
            db.disconnect();
        });
};

// exports.toLower = lower;

module.exports = { addContact, getContact };