Homework 2
CS320, Spring 2013


Due: Thursday, April 25

Please deploy your application on CS3, and upload all source files to CSNS. The source files should include all the source code, documentation (optional), and an HTML file hw2.html which contains a hyperlink to your application on the CS3 server. Note that file uploading will be disabled automatically after 11:59PM of the due date, so please turn in your work on time.


[MiniGOG] 

In this assignment you are going to continue to work on the application MiniGOG. All features described in Homework 1 must work properly; otherwise you will not receive any credit.

1. (60pt) Game Review

Allow users to review games. Specifically:

On the Games page, display the average rating of each game. For example:

Browse Games:
Game Rating Price
Syndicate
4.5 $5.99
Dreamfall: The Longest Journey
4.2 $14.99
Baldur's Gate 2 Complete 5.0 $9.99
Add A Game

The reviews of a game are displayed on the Game page. For example:

Baldur's Gate 2 Complete

Will you resist the evil within you and forge a legend of heroic proportions? Or will you embrace your monstrous inner nature and carve a swath of destruction across the Realms? Your story begins anew in the exotic southern kingdom of Amn, amidst the opulence of the sinister capital city of Athkatla. Journey through the fierce, unforgiving wilderness of Amn in your quest for artifacts of awesome power and treasure of unfathomable wealth... Even challenge dragons, if you dare. Such is the life of a legend.

Genre(s): Adventure, RPG
Price: $9.99

Edit | Review | All Games

Reviews

starstarstarstarstar  The Big One
Posted by cysun at 2013-03-01 10:31PM

More or less the pinnacle of mainstream RPG, this game packs everything your average gamer loves.

starstarstarstarstar  Excellence!
Posted by cs320stu31 at 2012-12-10 08:05PM

I don't know what deal GoG made with Atari, but it is putting serious pressure on my free time! Baldur's Gate II is the gold standard to which other RPGs hold themselves up to. 

Note that a review includes a 1-5 rating, a title, and some text. The application also needs to keep track of the author and the time of each review. The rating of a review is displayed using the number of stars, and the time of a review should be displayed in the format shown in the example above.

A user may click on the Review link to enter a review of the game. For example:

Rating: 1 5
Title:
Review:

Note that each user may only review a game once.

2. (40pt) Security.

Implement security so that all users can view the games, but only authenticated users (i.e. users who have already logged in) can add, edit, and review games. In particular, your implementation must meet the following requirements: