Convert the review request page's view to a class-based view.
Review Request #9001 — Created June 6, 2017 and submitted — Latest diff uploaded
The review request page is complex, with a lot of information being calculated and used to compute ETags and render the pages. As we iterate on the capabilities of this page, the view just gets more and more complicated. This change rewrites the view as a class-based view, making use of a handy new mixin for review request pages (such as the diff viewer and file attachment review pages -- though none of those use this mixin yet). This view contains versions of the handy private functions used to look up review requests and diffs, check for access permissions, and perform common template context calculations. The new view breaks up some of the logic into helper methods. It's better organized and can be expanded later in a more clean way. Future changes will move more classes to the new mixin and to class-based views.
Tested that the review request page works. Tested actions, file
file attachments, reviews, status updates, replies, editing the
review request, and tracking visited state.