Node.js + MongoDB: 'find' queries and callbacks not working

I've code for checking nick aviability. Records are added to database, but insert callback or find queries aren't working at all.

mdb.find= function (id,collection,multi,action, sorting){
    if(!multi){collection.findOne(id, function(err, item) {
        if (err) {
            error = err;
            console.error('FIND ERROR');
            return false;
        }
        if(item){
            console.log('FOUND');
            return item;    
        }
        else {
            console.log('EMPTY');
            return false;}
    });
}

(..)

if(!mdb.find({nick : data.nick},collection,false)){
console.log('nick aviable: '+data.nick);                    
collection.insert({nick: data.nick},{safe:true}, function(err, result) {
    if (err) {
        socket.emit('error',{msg: error});  
        console.error ('Oops!');
        throw err;
    }
    console.log(result.nick)
    console.log('SUCCESS!!!!')
    nick[socket.id] = result.nick;
    socket.emit('nick',{aviable: true});
});

/*________________________________________________________*/

collection.findOne({nick: data.nick}, function(err, item) {
    if (err) {
        error = err;
        console.error('ERROR!'+err);
//      return false;
    }
    if(item){
        console.log('SUCCESS!!!!')
        nick[socket.id] = item.nick;
        socket.emit('nick',{aviable: true });
    }
    else {
        socket.emit('error',{errmsg: 'nick not inserted'});
        console.error('empty');
    }
});

only console.log('nick aviable: '+data.nick); from those logs is performed

When I'm searching inserted nick manually (via mongo.exe), result is shown properly.

Am I missing something here?