Extension:Echo/Review


 * Selective events
 * API module (180 lines, mostly boilerplate)
 * Object model (500 lines)
 * NotificationController.php (190 lines)
 * CSS and JS, particularly ext.echo.overlay.js (~300 lines)
 * This global seems like it might be better put in the mw.config object somehow.
 * Seems like there are a lot of bits that could do with code-convention review, but noting the deployment window today, I'll hold off.
 * Would it be better to clone the  tag here? You might be able to remove a DOM query. Also, since you refer to that link many times in the course of the same function, you could declare a variable to store it, further avoiding unnecessary DOM queries.
 * It feels wrong to check for classes like this, maybe use $.hasClass? Also, while clever, the selector magic is a little hard to read.
 * Cheers! --MarkTraceur (talk) 19:16, 1 August 2012 (UTC)


 * SpecialNotifications.php (62 lines)
 * Notifier.php (38 lines)
 * Email formatting (30–40 lines of 168 lines)
 * Hooks.php (250 lines)

Total: ~1500 lines of code.