/** * create new preferences * * */ public function __construct($props, $session = null) { if (is_string($props)) { $this->properties['Name'] = $props; } elseif (is_array($props)) { if (isset($props['Name'])) { $this->properties['Name'] = $props['Name']; } if (isset($props['PreferenceRole'])) { $this->properties['PreferenceRole'] = $props['PreferenceRole']; } if (isset($props['Preference'])) { if (isset($props['Preference'][0])) { $this->preferences = $props['Preference']; } else { $this->preferences = array($props['Preference']); } } if (isset($props['Preferences'])) { if (isset($props['Preferences'][0])) { $tmp = $props['Preferences']; } else { $tmp = array($props['Preferences']); } foreach ($tmp as $set) { $this->AddPreference(\Services\Ebay::loadModel('Preferences', $set, $session)); } } } }
/** * get the item, for which the feedback was given * * @return object \Services\Ebay\Model\Item */ public function getItem() { $args = array('Id' => $this->properties['ItemNumber']); $call = \Services\Ebay::loadAPICall('GetItem'); $call->setArgs($args); return $call->call($this->session); }
/** * make the API call * * @param object \Services\Ebay\Session * @return string */ public function call(\Services\Ebay\Session $session, $parseResult = true) { $return = parent::call($session); if (isset($result['TransactionArray'])) { $result = \Services\Ebay::loadModel('TransactionList', $return['TransactionArray'], $session); return $result; } return false; }
/** * make the API call * * @param object \Services\Ebay\Session * @return string */ public function call(\Services\Ebay\Session $session, $parseResult = true) { $xml = parent::call($session, false); $dom = DOMDocument::loadXML($xml); $result = array(); $productFinders = $dom->getElementsByTagName('ProductFinder'); foreach ($productFinders as $node) { $result[] = \Services\Ebay::loadModel('ProductFinder', $node, $session); } return $result; }
/** * create new feedback model * * @param array feedback */ public function __construct($transactions, $session = null) { if (isset($transactions['Transactions']['Transaction'])) { if (!isset($transactions['Transactions']['Transaction'][0])) { $transactions['Transactions']['Transaction'] = array($transactions['Transactions']['Transaction']); } foreach ($transactions['Transactions']['Transaction'] as $tmp) { array_push($this->transactions, \Services\Ebay::loadModel('Transaction', $tmp, $session)); } unset($transactions['Transactions']); } parent::__construct($transactions); }
/** * create new feedback model * * @param array feedback */ public function __construct($bids, $session = null) { $this->count = (int) $bids['Bids']['Count']; if (isset($bids['Bids']['Bid'])) { if (!isset($bids['Bids']['Bid'][0])) { $bids['Bids']['Bid'] = array($bids['Bids']['Bid']); } foreach ($bids['Bids']['Bid'] as $tmp) { array_push($this->bids, \Services\Ebay::loadModel('Bid', $tmp, $session)); } unset($bids['Bids']); } parent::__construct($bids); }
/** * create a new item list * * @param array properties * @param object \Services\Ebay\Session */ public function __construct($props, $session = null) { if (isset($props['ItemArray'])) { if (is_array($props['ItemArray'])) { if (!isset($props['ItemArray']['Item'][0])) { $props['ItemArray']['Item'] = array($props['ItemArray']['Item']); } foreach ($props['ItemArray']['Item'] as $item) { array_push($this->items, \Services\Ebay::loadModel('Item', $item, $session)); } } unset($props['ItemArray']); } parent::__construct($props, $session); }
/** * create new feedback model * * @param array feedback */ public function __construct($messages, $session = null) { $this->moreItems = $messages['HasMoreItems'] == 'false' ? false : true; $this->pages = (int) $messages['PaginationResult']['TotalNumberOfPages']; $this->entries = (int) $messages['PaginationResult']['TotalNumberOfEntries']; if (isset($messages['MemberMessage'])) { if (!isset($messages['MemberMessage'][0])) { $messages['MemberMessage'] = array($messages['MemberMessage']); } foreach ($messages['MemberMessage'] as $tmp) { array_push($this->messages, \Services\Ebay::loadModel('MemberMessage', $tmp, $session)); } unset($messages['MemberMessage']); } parent::__construct($messages); }
/** * create new model * * @param array * @param object */ public function __construct($props, $session = null) { if (isset($props['SearchResultItemArray']['SearchResultItem'])) { $items = $props['SearchResultItemArray']['SearchResultItem']; unset($props['SearchResultItemArray']['SearchResultItem']); if (isset($items[0])) { $items = $items; } else { $items = array($items); } foreach ($items as $tmp) { array_push($this->items, \Services\Ebay::loadModel('Item', $tmp['Item'], $session)); } } parent::__construct($props, $session); }
/** * make the API call * * @param object \Services\Ebay\Session * @return string */ public function call(\Services\Ebay\Session $session, $parseResult = true) { $bak = $this->args; $this->args['PaginationType'] = array(); foreach ($this->paramMap as $param) { if ($param == 'TransactionsPerPage' || $param == 'PageNumber') { if (!isset($this->args[$param])) { continue; } $this->args['PaginationType'][$param] = $this->args[$param]; unset($this->args[$param]); } } $return = parent::call($session); $result = \Services\Ebay::loadModel('TransactionList', $return, $session); $this->args = $bak; return $result; }
/** * example that adds a shipment * * $Id$ * * @package Services_Ebay * @subpackage Examples * @author Stephan Schmidt */ error_reporting(E_ALL); require_once '../vendor/autoload.php'; require_once 'config.php'; $session = \Services\Ebay::getSession($devId, $appId, $certId); $session->setToken($token); $ebay = new \Services\Ebay($session); $shipment = \Services\Ebay::loadModel('Shipment'); $shipment->InsuredValue = 400; $shipment->PayPalShipmentId = '12345678'; $shipment->PostageTotal = 3; $shipment->PrintedTime = date('Y-m-d H:i:s'); $shipment->ShippingServiceUsed = 3; $shipment->ShippingPackage = 0; $shipment->setPackageDimensions(10, 5, 8); $shipment->ShipmentTrackNumber = uniqid('shipment'); $shipment->SetFromAddress('Foobar', 'Clark Kent', 'Any Street 123', null, 'San Francisco', '94101', 'CA', 'USA'); $shipment->SetAddress(2, 'Foobar', 'Clark Kent', 'Any Street 456', null, 'San Francisco', '94101', 'CA', 'USA'); $shipment->AddTransaction(4501333179, 0); $shipment->InsuredValue = '450.00'; $shipment->ShippingCarrierUsed = 1; $shipment->WeightMajor = 2; $shipment->WeightMinor = 0;
<?php /** * example that shows how to load an API call * and use it without the wrapper. * * $Id$ * * @package Services_Ebay * @subpackage Examples * @author Stephan Schmidt */ error_reporting(E_ALL); require_once '../vendor/autoload.php'; require_once 'config.php'; $session = \Services\Ebay::getSession($devId, $appId, $certId); $session->setToken($token); $call = \Services\Ebay::loadAPICall('GetEbayOfficialTime'); $result = $call->call($session); echo $result;
<?php /** * example that fetches shipping rates * * $Id$ * * @package Services_Ebay * @subpackage Examples * @author Stephan Schmidt */ error_reporting(E_ALL); require_once '../vendor/autoload.php'; require_once 'config.php'; $session = \Services\Ebay::getSession($devId, $appId, $certId); $session->setToken($token); $ebay = new \Services\Ebay($session); $prefs = \Services\Ebay::loadModel('Preferences', 'CrossPromotion'); $prefs->AddPreference('Enabled', 1, 'Boolean'); $sorting = \Services\Ebay::loadModel('Preferences', 'Sorting'); $prefs->AddPreference($sorting); $crosssell_sortfiltering = \Services\Ebay::loadModel('Preferences', 'Crosssell_SortFiltering'); $crosssell_sortfiltering->AddPreference('BuyItNowSortFiltering', 1, 'Integer'); $crosssell_sortfiltering->AddPreference('FinalSortFiltering', 1, 'Integer'); $sorting->AddPreference($crosssell_sortfiltering); $result = $ebay->SetPreferences($prefs); if ($result === true) { echo 'Preferences set.'; }
/** * make the API call * * @param object \Services\Ebay\Session * @return string */ public function call(\Services\Ebay\Session $session, $parseResult = true) { $return = parent::call($session); return \Services\Ebay::loadModel('MyeBay', $return['BiddingWatching'], $session); }
/** * make the API call * * @param object \Services\Ebay\Session * @return string */ public function call(\Services\Ebay\Session $session, $parseResult = true) { $return = parent::call($session); $user = \Services\Ebay::loadModel('User', $return['User'], $session); return $user; }
<?php /** * example that shows how a call object is * able to show its list of parameters * * $Id$ * * @package Services_Ebay * @subpackage Examples * @author Stephan Schmidt */ error_reporting(E_ALL); require_once '../vendor/autoload.php'; require_once 'config.php'; $session = \Services\Ebay::getSession($devId, $appId, $certId); $session->setToken($token); $call = \Services\Ebay::loadAPICall('AddDispute'); echo '<pre>'; $call->describeCall(); echo '</pre>';
/** * make the API call * * @param object \Services\Ebay\Session * @return string */ public function call(\Services\Ebay\Session $session, $parseResult = true) { $return = parent::call($session); $feedback = \Services\Ebay::loadModel('Feedback', $return, $session); return $feedback; }
<?php /** * example that fetches an item * * $Id$ * * @package Services_Ebay * @subpackage Examples * @author Stephan Schmidt */ error_reporting(E_ALL); require_once '../vendor/autoload.php'; require_once 'config.php'; $session = \Services\Ebay::getSession($devId, $appId, $certId); $session->setToken($token); $ebay = new \Services\Ebay($session); $item = $ebay->GetItem(110002463992); echo 'User-Id of the seller: ' . $item->Seller->UserID . '<br />'; echo '<pre>'; print_r($item->toArray()); echo '</pre>'; $item_2 = \Services\Ebay::loadModel('Item', null, $session); $item_2->Id = 110002463987; $res2 = $item_2->Get();
* $Id$ * * @package Services_Ebay * @subpackage Examples * @author Stephan Schmidt */ error_reporting(E_ALL); require_once '../vendor/autoload.php'; require_once 'config.php'; $session = \Services\Ebay::getSession($devId, $appId, $certId); $session->setToken($token); // build a filesystem cache $userCache = \Services\Ebay::loadCache('Filesystem', array('path' => './cache')); // use a static expiry of 15 minutes $userCache->setExpiry('Static', 15); // use this cache for all user models \Services\Ebay\Model\User::setCache($userCache); // load a new user model $user = \Services\Ebay::loadModel('User', 'superman-74', $session); if ($user->isCached()) { echo 'data had been cached<br />'; echo '<pre>'; print_r($user->toArray()); echo '</pre>'; } else { echo 'fetching user data from eBay<br />'; $user->Get(); echo '<pre>'; print_r($user->toArray()); echo '</pre>'; }
<?php /** * example that fetches shipping rates * * $Id$ * * @package Services_Ebay * @subpackage Examples * @author Stephan Schmidt */ error_reporting(E_ALL); require_once '../vendor/autoload.php'; require_once 'config.php'; $session = \Services\Ebay::getSession($devId, $appId, $certId); $session->setToken($token); $ebay = new \Services\Ebay($session); $order = \Services\Ebay::loadModel('Order'); $order->CreatingUserRole = 'Buyer'; $order->PaymentMethods = 'None'; $order->Total = '60.0'; $order->ApplyShippingDiscount = 'true'; $order->InsuranceFee = '02.0'; $order->InsuranceOption = 'NotOffered'; $order->AddTransaction('4501333765', 0); $order->AddTransaction('4501336808', 0); $order->AddShippingServiceOption('12.12', 1, '40.0', '1.00', 1); $order->AddInternationalShippingServiceOption(2376, 1, '40.0', 1, 'US'); $order->AddSalesTax('1.03', '1', 'true'); $result = $ebay->AddOrder($order);
/** * make the API call * * @param object \Services\Ebay\Session * @return string */ public function call(\Services\Ebay\Session $session, $parseResult = true) { $return = parent::call($session); return \Services\Ebay::loadModel('ItemList', $return['BidItemArray'], $session); }
/** * create a new item list * * @param array properties * @param object \Services\Ebay\Session */ public function __construct($props, $session = null) { foreach ($props as $list => $data) { $this->lists[$list] = \Services\Ebay::loadModel('ItemList', $data, $session); } }
/** * make the API call * * @param object \Services\Ebay\Session * @return string */ public function call(\Services\Ebay\Session $session, $parseResult = true) { $return = parent::call($session); return \Services\Ebay::loadModel('Dispute', $return['Dispute'], $session); }
/** * Constructor * * @param array $props properties * @param \Services\Ebay\Session $session session * @param integer $DetailLevel detail-level */ public function __construct($props, $session = null, $DetailLevel = 0) { parent::__construct($props, $session, $DetailLevel); $this->user = \Services\Ebay::loadModel('User', $props['User'], $session); unset($this->properties['User']); }
* @author Stephan Schmidt */ error_reporting(E_ALL); require_once '../vendor/autoload.php'; require_once 'config.php'; /** * simple model class * * You may implement any additional methods you need * in your custom models. */ class myItem extends \Services\Ebay\Model\Item { /** * Dummy method * * This does not really do anything, but you can implement whatever you like * here... * */ public function StoreItem() { echo "Now you could store the item data in your local database..."; } } \Services\Ebay::useModelClass('Item', 'myItem'); $session = \Services\Ebay::getSession($devId, $appId, $certId); $session->setToken($token); $item = \Services\Ebay::loadModel('Item', '4501296414', $session); $item->Get(); $item->StoreItem();
/** * make the API call * * @param object \Services\Ebay\Session * @return string */ public function call(\Services\Ebay\Session $session, $parseResult = true) { $return = parent::call($session); $result = \Services\Ebay::loadModel('MemberMessageList', $return, $session); return $result; }
/** * make the API call * * @param object \Services\Ebay\Session * @return string */ public function call(\Services\Ebay\Session $session, $parseResult = true) { $return = parent::call($session); return \Services\Ebay::loadModel('SearchResult', $return, $session); }
<?php /** * example that fetches an item * * $Id$ * * @package Services_Ebay * @subpackage Examples * @author Stephan Schmidt */ error_reporting(E_ALL); require_once '../vendor/autoload.php'; require_once 'config.php'; $session = \Services\Ebay::getSession($devId, $appId, $certId); $session->setToken($token); $ebay = new \Services\Ebay($session); $item = \Services\Ebay::loadModel('Item'); $item->Category = 57882; $item->Title = 'Supergirls\'s cape'; $item->Description = 'Another test item'; $item->Location = 'At my home'; $item->MinimumBid = '1000.0'; $item->VisaMaster = 1; $result = $ebay->VerifyAddItem($item); echo '<pre>'; print_r($result); echo '</pre>';
<?php /** * example that fetches categories * * $Id$ * * @package Services_Ebay * @subpackage Examples * @author Stephan Schmidt */ error_reporting(E_ALL); require_once '../vendor/autoload.php'; require_once 'config.php'; $session = \Services\Ebay::getSession($devId, $appId, $certId); $session->setToken($token); $ebay = new \Services\Ebay($session); $items = $ebay->GetCategoryListings(57882); echo '<pre>'; print_r($items); echo '</pre>';
/** * get the user from eBay * * Use this to query by a previously set user id * * <code> * $user = \Services\Ebay::loadModel('User', 'superman-74', $session); * $user->Get(); * </code> * * @param string ItemId * @see Services_Ebay_Call_GetUser */ public function Get($ItemId = null) { $args = array('UserId' => $this->properties['UserId'], 'ItemId' => $ItemId); $call = \Services\Ebay::loadAPICall('GetUser'); $call->setArgs($args); $tmp = $call->call($this->session); $this->properties = $tmp->toArray(); $this->eBayProperties = $this->properties; unset($tmp); return true; }