예제 #1
0
 private static function _getShippingDetailsForProduct($product, $ebay_profile)
 {
     $national_ship = array();
     $international_ship = array();
     //Get National Informations : service, costs, additional costs, priority
     $service_priority = 1;
     foreach (EbayShipping::getNationalShippings($ebay_profile->id, $product->id) as $carrier) {
         $national_ship[$carrier['ebay_carrier']] = array('servicePriority' => $service_priority, 'serviceAdditionalCosts' => $carrier['extra_fee'], 'serviceCosts' => EbaySynchronizer::_getShippingPriceForProduct($product, $carrier['id_zone'], $carrier['ps_carrier']));
         $service_priority++;
     }
     //Get International Informations
     $service_priority = 1;
     foreach (EbayShipping::getInternationalShippings($ebay_profile->id, $product->id) as $carrier) {
         $international_ship[$carrier['ebay_carrier']] = array('servicePriority' => $service_priority, 'serviceAdditionalCosts' => $carrier['extra_fee'], 'serviceCosts' => EbaySynchronizer::_getShippingPriceForProduct($product, $carrier['id_zone'], $carrier['ps_carrier']), 'locationsToShip' => EbayShippingInternationalZone::getIdEbayZonesByIdEbayShipping($ebay_profile->id, $carrier['id_ebay_shipping']));
         $service_priority++;
     }
     return array('excludedZone' => EbayShippingZoneExcluded::getExcluded($ebay_profile->id), 'nationalShip' => $national_ship, 'internationalShip' => $international_ship);
 }
 public static function cacheEbayExcludedLocation($id_ebay_profile)
 {
     $ebay_excluded_zones = EbayShippingZoneExcluded::getAll($id_ebay_profile);
     $all = array();
     $excluded = array();
     $regions = array();
     foreach ($ebay_excluded_zones as $key => $zone) {
         if (!in_array($zone['region'], $regions)) {
             $regions[] = $zone['region'];
         }
         $all[$zone['region']]['country'][] = array('location' => $zone['location'], 'description' => $zone['description'], 'excluded' => $zone['excluded']);
     }
     foreach ($ebay_excluded_zones as $key => $zone) {
         if (in_array($zone['location'], $regions)) {
             $all[$zone['location']]['description'] = $zone['description'];
         }
     }
     unset($all['Worldwide']);
     foreach ($all as $key => $value) {
         if (!isset($value['description'])) {
             $all[$key]['description'] = $key;
         }
     }
     //get real excluded location
     foreach (EbayShippingZoneExcluded::getExcluded($id_ebay_profile) as $zone) {
         $excluded[] = $zone['location'];
     }
     return array('all' => $all, 'excluded' => $excluded);
 }