Skip to content
Permalink
be5eddc1a0
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time

Game Reviews

Build a community website to review games (you can choose what type). All the game details and reviews must be stored in a database.


Testing

The system should include the data for at least 5 valid games and each game must contain at least 3 sensible reviews posted from from valid user accounts (see below).

You are required to create the following accounts to allow the system to be tested. All accounts should have the password p455w0rd:

  1. user1
  2. user2
  3. user3

Stage 1

The core functionality consists of three screens:

Part 1

The home screen should be viewable without the need to log in. It should display all the games that have been reviewed. For each there should be the following:

  1. The name of the game.
  2. The publisher.
  3. The year of release.
  4. A thumbnail of the game box cover.

Part 2

There should be a link on the home page to a page that allow logged-in users to add new games. This screen should ask for the following:

  1. The game title
  2. The publisher
  3. The year of release
  4. A full-sized image of the game box cover that has been uploaded from the user's computer.
  5. A detailed, multi-line, formatted description.

Part 3

If a user clicks on the thumbnail or game title on the home screen, whether they are logged in or not, they should be taken to the game review screen, this includes:

  1. Details of the game (see section 2)
  2. A list of the reviews given by the users with the most recent at the top and the oldest at the bottom. Each should include the name of the user, the date and the formatted text of their review.
  3. If they are logged in they should also see a multiline input box to allow them to post their review. If a user has already reviewed the game or they are not logged in, the input box should not be displayed.

Stage 2

The intermediate tasks require you to make changes to the functionality:

  1. The system should contain categories such as adventure and sport and each game should be placed in the most suitable one. There should be an admin user who can add and delete these.
  2. Each reviewed post should include the reviewer's first and last names as well as a profile picture (avatar) with a suitable default image used if this is not supplied. There will need to be a profile screen to allow users to update this information. Each user can only review each game once but they can edit their review.
  3. Users should be able to flag a review as being unsuitable or inappropriate. Once more then a specified number of users have flagged a review it should become hidden and the admin user should be sent an email with a link to the review and the choice of either deleting it or approving it.

Stage 3

  1. In addition, the site should be full-text searchable.
  2. Reviewers should be able to upload screenshots of the game they are reviewing.
  3. Users can comment on other reviews.

Extras

In some assignment briefs you are given marks for the appropriate use of media and using sensors built into the user's device.

Sensors

In some assignment briefs you are given marks for the appropriate use of sensors and sensor data. You should be implementing:

  1. When selecting a game box image, the user should be given the option of using the device camera (if available).
  2. Each review posted should be flagged with the location of the person posting (country and region only).
  3. For each game there should be a map showing the locations where the reviews have come from. Clicking a pin should show their name, avatar and the first part of the message. Selecting this should display the entire message.

Media

In the requirements listed above you need to provide the user with the ability to upload photos. For the extra media marks you will need to expand this by:

  1. Providing the user with the choice of uploading photos, video clips or audio clips.
  2. Giving users the option to directly capture images, audio and video clips using the built-in camera and/or microphone if available.

Data

There are lots of online RESTful APIs you can make use of when developing this system. You should consider:

  1. The IGDB Video Games Database
  2. LocationIQ