title: Meteor: callback in client always returns undefined
body: <p>Probably a very basic mistake but I can't find it:</p>
  
  <p>Method in lib/collection.js:</p>
  
  <pre><code>Meteor.methods({
    'NewsEvents.insert': function (doc) {
      if (this.userId) {
        console.log(doc);
        return NewsEvents.insert(doc);
      }
    }, //...
  </code></pre>
  
  <p>Template in client folder:</p>
  
  <pre><code>Meteor.call('NewsEvents.insert', temp, function (err, result) {
          if(!err) {
            console.log("result: " + result);
          }
          else {
            console.log("err: " + err);
          }
    });
  </code></pre>
  
  <p>After inserting a document (works fine!), the console first prints the whole object (directy from the method),then in the next line: </p>
  
  <p><code>result: undefined</code></p>
  
  <p>Edit:
  I also tried this method, it's the same issue:</p>
  
  <pre><code>'NewsEvents.insert': function (doc) {
      if (this.userId) {
        var docObject = NewsEvents.insert(doc);
        console.log("docObject: "  + docObject);
        return docObject;
      }
    }
  </code></pre>
  
  <p>Even without the <code>if</code>, it doesn't work:</p>
  
  <pre><code>'NewsEvents.insert': function (doc) {
      var docObject = NewsEvents.insert(doc);
      console.log("docObject: "  + docObject);
      return docObject;
    }
  </code></pre>
  
  <p>The result is: </p>
  
  <p><code>docObject: ac2vZkPueChM5rsSB</code> and next line:
  <code>result: undefined</code></p>
  
  <p>Thanks a lot! </p>