Let's take a look at the design for this feature.
For us
to enable Moderation, we will take advantage of the same concepts that we used in Chapter 11 for Rating, Tagging, and Commenting. This feature will be implemented as another UserControl
that we can plug in wherever we need it. As it will tie into the SystemObjects table of objects, we are free to allow our users to moderate any database-oriented content—be it textual, image based, or just about anything else. As long as it has a record ID and a table associated to it, we can moderate it.
In addition to letting our users flag content for approval, we will need to create a page to manage what was flagged. We will implement a simple administration page that will show everything that is listed. For each listed item we can approve or deny the content. This page will also house our gagging capabilities, which we will discuss later.

This structure is identical to our other users of the SystemObjects table. It has a SystemObjectID...