Example #1
0
 }).then(function(data) {
     if (!data.access_token) {
         callback(true);
     }
     var access_token = data.access_token,
         user_id = data.user_id;
     vk.setToken(access_token);
     vk.callMethod('users.get', {
         fields: 'photo_max'
     }).then(function(usersArray) {
         var userInfo = usersArray[0];
         if (!userInfo) {
             callback(true);
         }
         userInfo.id = user_id;
         insertOnDuplicateUpdateUser(userInfo, { access_token: access_token }, function(err, user) {
             if (err) {
                 callback(true);
             }
             getAndSaveFriends(user, function(err, user) {
                 if (err) {
                     callback(true);
                 }
                 debug.log('[Friends saved]', user);
                 generateAndSaveInternalToken(user, function(err, newToken) {
                     if (err) {
                         callback(true);
                     }
                     callback(false, newToken);
                 });
             });
         });
     }).catch(onError);
 }).catch(onError);
Example #2
0
function getAndSaveFriends(user, callback) {
    vk.callMethod('friends.get', {
        order: 'hints',
        v: '5.34'
    }).then(function(res) {
        var friends = res.items;
        for (var el in friends) {
            friends[el] = 'vk_' + friends[el];
        }
        user.friends = friends;
        user.save(function(err) {
            if (!err) {
                debug.log('Friends has been received!');
                callback(false, user);
            } else {
                debug.log('An error occurred in save user friends', err);
            }
        });
    }).catch(function(err) {
        callback(true);
    });
}