/** * Shipping rates sorting callback * * @param \XLite\Model\Shipping\Rate $a First shipping rate * @param \XLite\Model\Shipping\Rate $b Second shipping rate * * @return integer */ protected function compareRates(\XLite\Model\Shipping\Rate $a, \XLite\Model\Shipping\Rate $b) { $aMethod = $a->getMethod(); $bMethod = $b->getMethod(); $aRate = $a->getTotalRate(); $bRate = $b->getTotalRate(); return 'auctionInc' === $aMethod->getProcessor() && 'auctionInc' === $bMethod->getProcessor() ? $aRate === $bRate ? 0 : ($aRate < $bRate ? -1 : 1) : parent::compareRates($a, $b); }