コード例 #1
0
 * Time: 17:43
 */
use Models\AuctionAwarderManager;
use Models\AuctionManager;
use Models\EmailManager;
use Models\UserManager;
require __DIR__ . '/../bootstrap.php';
$auctionManager = new AuctionManager();
$auctionAwarderManager = new AuctionAwarderManager();
$userManager = new UserManager();
$emailManager = new EmailManager();
$auctionIds = $auctionAwarderManager->getAuctionIdsToAward();
echo count($auctionIds) . " auctions to award\n";
foreach ($auctionIds as $auctionID) {
    echo "Awarding {$auctionID}...\n";
    $auctionDetail = $auctionManager->getAuctionDetail($auctionID);
    $seller = $userManager->getUser($auctionDetail->sellerID);
    // There have been bids
    echo "There have been " . $auctionDetail->numberOfBids . " bids\n";
    if ($auctionDetail->numberOfBids > 0) {
        $highestBidder = $userManager->getUser($auctionDetail->highestBidderID);
        $losingBuyers = $auctionAwarderManager->getLosingBuyers($auctionID, $auctionDetail->highestBidderID);
        foreach ($losingBuyers as $losingBuyer) {
            $emailManager->sendEmailUnsuccessfullBid($losingBuyer, $auctionDetail);
        }
        if ($auctionDetail->maxBid < $auctionDetail->reservePrice) {
            $emailManager->sendReserveNotMetSaleEmail($seller, $highestBidder, $auctionDetail);
            $emailManager->sendReserveNotMetBuyEmail($highestBidder, $seller, $auctionDetail);
        } else {
            $emailManager->sendSuccessfulSaleEmail($seller, $highestBidder, $auctionDetail);
            $emailManager->sendSuccessfulBidEmail($highestBidder, $seller, $auctionDetail);
コード例 #2
0
 /**
  * Increments the number of views by 1
  * @param $auctionID
  * @param $currentUser
  */
 public function incrementViews($auctionID, $currentUser)
 {
     // checks if the seller is looking at an item and if not increments views
     // http://stackoverflow.com/questions/2259155/increment-value-in-mysql-update-query
     $connection = ConnectionManager::getConnection();
     $auctionManager = new AuctionManager();
     $sellerId = $auctionManager->getAuctionDetail($auctionID)->sellerID;
     if ($sellerId != $currentUser) {
         if (!isset($_SESSION["hasVisited'{$auctionID}''"])) {
             $_SESSION["hasVisited'{$auctionID}''"] = "yes";
             $sql = "UPDATE auction SET views = views + 1 WHERE id = '" . $auctionID . "'";
             $connection->query($sql);
         }
     }
 }