MyBB Community Forums

Full Version: [Hiring] Auctions Plugin
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hello, I'm looking for somebody that can realize the plugin described below. Budget for this can be discussed.

The concept behind this plugin is allowing users to exchange their feedback/bids related to auctions made on a 3rd party website.
Every action performed using this plugin is backed by a credits system, meaning that users will pay to do certain things and get paid for other ones.

------------------------------

Plugin page (auctions.php )

The first time that users visit this page they should find:

- Welcome text with invitation to join the system, with or without a referral
- Referral field where user can type an username that referred him (not mandatory)
- Submit/Join button

After joining the system, users would be able to:
- Post Auctions
- Place Bids
- Accept/Deny bids

That was the intro, now let's get into the technical side.

STEP 1: Intro

Whenever an user joins the system he is granted (let's say) 10 credits immediately (all credits amounts are defined in ACP). If a referral is used, the person who joined gets an extra 5 credits, while the user that was indicated as referrer gets an extra 10 credits. These )credits concerning referral system) will be credited to both parties when the new user has at least 1 completed auction.

Auctions are created using a form. The only thing that has to be typed/pasted inside it is auction URL to the external auction site, then user must submit it via the "Submit/Create" button. URL should be anonymized in some way or replaced with a redirect. Once the auction is posted, owner is deducted -2 credits immediately.


STEP 2 Tables

The auctions.php page must contain 4 tables: "All Auctions", "My Auctions", "My Bids", "Credits History". Let's leave this last one for later. I'll now explain how the first 3 tables should look like.

Once the auction has been created, it has to appear inside the table containing ALL auctions. At this time, auction URL must not be viewable except to owner. What users would see are auction ID (auctions are sorted by ID), post time, Creator $mybbusername, bidder $mybbusername (if present) and an "Action" column containing a "Bid" button. This is on other users side.

Auction Owner would see his auction inside the table containing ALL auctions, but he would also find it inside "My Auctions" table. In both tables, inside the "Action" column, he would only see a "Delete" button at this time. If the auction is deleted then the 2 credits are reverted to owner.

STEP 3: The play begins

Let's go back to the ALL auctions table, it would look like the one below (plus the 2 additional columns: "Owner" and "Bidder" containing their mybb usernames)

[Image: O6cMbBK.png]

Whenever an user (not owner) hits the "Bid" button, he would be shown a popup asking: "What profile will you use to place your bid?" with a textbox and submit button below. This will be the username he has on the 3rd party auctions website.

When the username is sent (meaning a bid has been placed), auction status would turn from "Open" to "Pending". The auction is now viewable by Owner and Bidder only, as it should be removed from the "All auctions" table, even if it still remains inside their own tables: "My Auctions" for owner and "My Bids" for bidder.
These two tables are identical to the "All auctions" table (they can be obtained filtering auction owner name and bidder name matching $mybbusername) but they miss "Owner" column for creator, "Bidder" column for bidder and can be ordered by ID or status.

Last but not least. It's at this point that auction URL becomes viewable to the bidder. It would be perfect if, after submitting the username, bidder would be redirected to a page with a message like: "Thank you. Make sure to place your bid immediately. This is auction URL: XXX".
In any case, URL should be found inside the tables at this point.

STEP 4: Bid Confirmation

Auction Owner now sees his auction status in "Pending" and the action he can find inside the "Action" column is "Check". Clicking on the "Check" button, he would be shown a popup with a text like "$mybbusername placed a bid for $auctionURL behind the username: $3rdpartyusername. Does this match the current auction status?" and two buttons: "Yes" and "No".

If the "No" button is clicked, the auction goes back to "Open" and is re-added to the "Open auctions" table. We revert back to the point when a bid is needed.

If the "Yes" button is clicked, auction status turns to "Filled" and the process ends. The auction remains viewable by bidder and owner only, inside their tables. At this point, auction owner gets +0.5 credits while bidder gets +2 credits

Step 5: Final

Page must contain a "Credits History" table where own credits movements are shown. Table head should contain own credits balance too.

e.g.
"You joined the bidding system | +10"
"You created auction ID1 | -2"
"Your referral $mybbusername completed his first auction | +10"
"Your bid for auction ID2 has been confirmed by owner | +1.5"
"You confirmed a bid for auction ID1 | +0.5"
"You deleted your auction ID3 | +2"
"You completed your first auction as referral | +5"

Last thing. Due to the way I've thought the system, a given auction creator is free to deny any received bid and delete his own auctions, tricking bidders without allowing them to get any payout. That's why I'd like to introduce a "Delete" auction cut time: an owner can only delete 1 auction every 24h.

On the other side, an auction owner may also stop connecting to confirm his received bids. That's why, if auction received a bid more than 24h ago, but it hasn't been confirmed/denied, the bid should be automatically accepted by the system.