Skip to content

Commit 43dd05d

Browse files
committed
Merge pull request #307 from jgerigmeyer/master
Update Backbone.js plugin to handle event map syntax.
2 parents 76639bd + 697e848 commit 43dd05d

File tree

1 file changed

+18
-3
lines changed

1 file changed

+18
-3
lines changed

plugins/backbone.js

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,24 @@ if (!Backbone) {
1313

1414
function makeBackboneEventsOn(oldOn) {
1515
return function BackboneEventsOn(name, callback, context) {
16-
var _callback = callback._callback || callback;
17-
callback = Raven.wrap(callback);
18-
callback._callback = _callback;
16+
var wrapCallback = function (cb) {
17+
if (Object.prototype.toString.call(cb) === '[object Function]') {
18+
var _callback = cb._callback || cb;
19+
cb = Raven.wrap(cb);
20+
cb._callback = _callback;
21+
}
22+
return cb;
23+
};
24+
if (Object.prototype.toString.call(name) === '[object Object]') {
25+
// Handle event maps.
26+
for (var key in name) {
27+
if (name.hasOwnProperty(key)) {
28+
name[key] = wrapCallback(name[key]);
29+
}
30+
}
31+
} else {
32+
callback = wrapCallback(callback);
33+
}
1934
return oldOn.call(this, name, callback, context);
2035
};
2136
}

0 commit comments

Comments
 (0)