Commerce Auction
Overview
This module lets you create auction/reverse auction websites using drupal commerce.
It uses eck to create a new entity for commerce auction bids.
The module consists of 4 sub-modules:
- commerce_auction: provides core auction and bidding system
- commerce_auction_field_helper: provides a field formatter for entityreference fields which shows the count of referenced entities and a read-only widget for commerce_price fields. You can use this formatter to show the bids count.
- commerce_auction_lineitem: creates a new commerce_line_item type, updates auctioned product price and adds the product to the auction winner's cart when the auction is finalized. The auctioned products are added to the cart as 'commerce_auction_lineitem' line_items.
- commerce_reverse_auction: provides reverse auction feature.
Features
- Allows creating auctions and reverse auctions using drupal commerce
- Automatic auction timeout extension
- Automatically adds auctioned product to the winner's shopping cart
- By default disables remove and edit quantity fields of auctioned products in shopping cart
- Global and per-auction bid limits (like uc_auction)
- Lists bids using views
Requirements and Dependencies
The module depends on eck, Entity Reference, Commerce Price field, Commerce Cart, Views, Date and jstimer modules.
Configuration
After enabling the module, go to 'admin/commerce/auction' and select auction display content types and configure auction time extensions (default value for time extension is to extend auction time for 30 minutes if there is a new bid in the final 15 minutes of the auction time). The module will add the required fields to auction display types automatically. The administration interface adds these fields to the selected content types (and removes them if you deselect an item from the list) :
- A commerce_price field which contains highest bid value (auction_highest_bid)
- An entityreference field with unlimited cardinality which holds all the bid entities attached to this auction (auction_bid_refs)
- A commerce_product_reference field (product_field)
- A datestamp field which is used to finalize the auction in the given time. (auction_timeout)
You should not give "(Add/Edit/Remove) Commerce Auction Bid Auction Bid Entities" permissions to your users, instead give them "Place bids on auctions" permission so that all the bids go through this module and are validated properly. The form on node/%node/bid does some validation on bid amount and auction timeout.
You should configure field display options yourself. You can use 'Reference count' formatter for auction_bid_refs to show bids count and show the formatted amount of auction_highest_bid.
Upgrade from 7.x-1.x to 7.x-2.x
After upgrading, edit "bids_list" view and remove the page display, so that it doesn't conflict with the menu item provided by the module - I did this to take control of bids list permission and prevent the "Bids" tab from being shown on every node (now it is shown only on auction/reverse auction display nodes).