Add a set of views for managing reviewable pages.
Review Request #4229 — Created June 11, 2013 and submitted — Latest diff uploaded
Add a set of views for managing reviewable pages. This introduces three new views for managing the reviewable pages. ReviewablePageView is the main/base class for reviewable pages. It constructs all the important objects, listens for updates on the review request from the server, and handles certain page actions. ReviewRequestPageView extends that, and owns the ReviewBoxListView and the diff fragment loading. DiffViewerPageView is for the diff viewer page. It's very small right now, but will grow. These are instantiated on the appropriate pages. The bulk of the initialization comes from a .js template file, which handles all the main parameters to the page views. The pages can provide additional parameters as well. With this, I was able to get rid of a bunch more globals, which is always good. Also, reviews.js is now gone! Tada!
Tested that each page loaded its contents correctly. Tested update notification bubbles. Tested that reviewing code and images works. Tested the review box expand/collapse functionality. Tested clicking "Reply" in the comment dialog for an existing comment opened the review request page and opened a comment box for the correct comment. Unit tests pass.