/** * Add Trade Item * * @param array $data */ public function addItem($data) { $tradeUserIns = new BuckysTradeUser(); if (!$tradeUserIns->hasCredits($data['userID'])) { return; } // no credits global $db; if (empty($data['userID']) || empty($data['title']) || empty($data['subtitle']) || empty($data['catID'])) { return; } $newID = $db->insertFromArray(TABLE_TRADE_ITEMS, $data); //Trade User has been created? $tradeUserIns->addUser($data['userID']); //Use one credits if ($newID) { $tradeUserIns->useCredit($data['userID']); } return $newID; }
/** * Edit trade item action by ajax */ function editTradeItem() { $userID = buckys_is_logged_in(); if (!$userID) { return; } $tradeItemIns = new BuckysTradeItem(); $inputValidFlag = true; $requiredFields = ['title', 'subtitle', 'description', 'category']; foreach ($requiredFields as $requiredField) { if ($_REQUEST[$requiredField] == '') { $inputValidFlag = false; } } $actionType = get_secure_string($_REQUEST['type']); $paramItemID = get_secure_integer($_REQUEST['itemID']); $data = []; $editableFlag = false; if ($actionType == 'relist') { $tradeItemData = $tradeItemIns->getItemById($paramItemID, true); if (!$tradeItemData) { echo json_encode(['success' => 0, 'msg' => 'You could not relist this item.']); exit; } //you can relist this item $data['createdDate'] = date('Y-m-d H:i:s'); $tradeUserIns = new BuckysTradeUser(); if (!$tradeUserIns->hasCredits($userID)) { echo json_encode(['success' => 0, 'msg' => 'You could not relist this item. You have no credits.']); exit; } if ($tradeItemData['userID'] == $userID) { $editableFlag = true; } else { $editableFlag = false; } } else { $tradeItemData = $tradeItemIns->getItemById($paramItemID, false); if ($tradeItemData && $tradeItemData['userID'] == $userID) { $editableFlag = true; } } if ($inputValidFlag) { if ($editableFlag) { $data['title'] = get_secure_string($_REQUEST['title']); $data['subtitle'] = get_secure_string($_REQUEST['subtitle']); $data['description'] = get_secure_string($_REQUEST['description']); $data['itemWanted'] = get_secure_string($_REQUEST['items_wanted']); $data['images'] = get_secure_string($_REQUEST['images']); $data['catID'] = get_secure_string($_REQUEST['category']); $data['locationID'] = get_secure_string($_REQUEST['location']); $data['listingDuration'] = get_secure_string($_REQUEST['listing_duration']); $data['expiryDate'] = $data['listingDuration'] == -1 ? '0000-00-00 00:00:00' : date('Y-m-d H:i:s', time() + 3600 * 24 * $data['listingDuration']); $data['images'] = moveTradeTmpImages($data['images']); if ($data['images'] === false) { echo json_encode(['success' => 0, 'msg' => 'Something goes wrong, please contact administrator.']); exit; } if ($actionType == 'relist') { $tradeUserIns->useCredit($userID); } $tradeItemIns->updateItem($paramItemID, $data); echo json_encode(['success' => 1, 'msg' => 'An item has been updated successfully.']); } else { echo json_encode(['success' => 0, 'msg' => "You don't have permission."]); } } else { //error echo json_encode(['success' => 0, 'msg' => 'Please input required field(s).']); } }