• Create a web page Tags.aspx for viewing tags. Use a GridView control to provide access to the list of tags in the database. Put checkboxes beside each tag: if the user checks some of the tags, then all photographs with all of these tags are retrieved from the database. To simplify, you may assume radio buttons instead of checkboxes, so one tag at a time can be chosen for searching. Provide a text box and a button at the bottom of the page for adding a new tag, if that is what the user wants to do.
• Create a web page Photos.aspx for viewing all uploaded pictures, in chronological order. Display each photo title, the user who posted the photo, and its tags. Bonus marks for displaying a thumbnail picture of each photo.
• Add a web page Users.aspx for administrative viewing of user data. Use a GridView to display the top level of user information: user name, full name, the date when the user was added, and the date when the user was confirmed.
• Create a Web page Register.aspx for registering a new user. A user's registration is not confirmed until they have responded to an email that is sent to them. A user cannot upload photographs, or comment on others' photographs or comments, until their registration is confirmed. A registered user is a Poster.
• Create a Web page Login.aspx for logging into the system. Once a user is logged in, a cookie is set for that session. If a user tries to access any other Web page without logging in, they should be directed to the login page.
• Create a Web page Upload.aspx for uploading a new photograph. Allow the uploader to add a tag for the photograph being uploaded.
• Create a Web page Photo.aspx that shows a photograph, information on when it was uploaded and by whom, and the comments that users have posted on that photograph. Allow a user to add their own comment at the bottom of the Web page.
• Create a Web page Comment.aspx that shows a single comment that has been made on a photograph, as well as responses to that comment. Allow a user to add their own response at the bottom of the Web page.