Skip to content
Permalink
master
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

Auction

An auction site where users can upload details of items they no longer want and bid for things they want. All the items for sale need to be stored in a database.

Stage 1

The core functionality consists of three screens:

  1. The home page should display all the items that other users want to sell. Each should have:
    1. The name of the item
    2. A thumbnail image
    3. A status (for sale, under offer, sold)
    4. The name and phone number of the seller
  2. There should be a link on this page to the user's selling page which should list all the items the logged-in user has for sale. This should include:
    1. The name of the item
    2. A thumbnail image
    3. The status (see above) with the option for the user to change the status.
    4. The option to delete items.
  3. There should be a link or button on this page to add new items to the list. This page should ask for:
    1. The item name
    2. A photo
    3. A detailed, multi-line, formatted description.

Stage 2

  1. When a user views the product details screen they can see multiple photos of the item in the auction.
  2. There should be a Contact the Seller link or button. Clicking on this takes the user to a form where they can ask a question about the item for sale.
    1. All questions get displayed on the product details page.
    2. The seller should receive an email containing the question and a link to the product details page where all the questions are shown.
    3. Any unanswered questions should have a multiline answer box where the seller can leave a detailed answer to the question.
    4. All answers should be displayed next to the appropriate question.

Stage 3

The advanced tasks require you to make changes to the functionality by implementing an online auction process.

  1. There should be no contact details shared with other users, instead you need to implement a bidding system:
    1. All auction have the same duration
    2. On the details page there should be a Place Bid link or button that takes the user to a screen where they are asked for the maximum bid they want to make
    3. If this is the only bid, this is the current bid but if there are multiple bids the current bid is 10p higher than the amount bid by the second highest bidder
    4. The current bid should be displayed on both the home and product details page
  2. Users should not need to log in to see the list of items but unless they do they won't be able to make any bids
  3. A user should receive an email if:
    1. They are outbid, this should include a summary of the problem and a link to the product page.
    2. They win an auction, the email should include a summary and a link to the payment page (you can create a fake payments screen for this purpose)