<?php
/**
 * 
 */
class Service_PostNl {
    private static $countryMap = array (
        'AT' => array(
            'zone' => '200',
            'name' => 'Austria',
            'code' => 'AT',
        ),

        'BE' => array(
            'zone' => '201',
            'name' => 'Belgium',
            'code' => 'BE',
        ),

        'CZ' => array(
            'zone' => '199',
            'name' => 'Czech Republic',
            'code' => 'CZ',
        ),

        'DK' => array(
            'zone' => '202',
            'name' => 'Denmark',
            'code' => 'DK',
        ),

        'EE' => array(
            'zone' => '190',
            'name' => 'Estonia',
            'code' => 'EE',
        ),

        'FI' => array(
            'zone' => '203',
            'name' => 'Finland',
            'code' => 'FI',
        ),

        'FR' => array(
            'zone' => '204',
            'name' => 'France',
            'code' => 'FR',
        ),

        'DE' => array(
            'zone' => '205',
            'name' => 'Germany',
            'code' => 'DE',
        ),

        'GR' => array(
            'zone' => '206',
            'name' => 'Greece',
            'code' => 'GR',
        ),

        'HU' => array(
            'zone' => '196',
            'name' => 'Hungary',
            'code' => 'HU',
        ),

        'IS' => array(
            'zone' => '207',
            'name' => 'Iceland',
            'code' => 'IS',
        ),

        'IE' => array(
            'zone' => '208',
            'name' => 'Ireland',
            'code' => 'IE',
        ),

        'IT' => array(
            'zone' => '209',
            'name' => 'Italy',
            'code' => 'IT',
        ),

        'LV' => array(
            'zone' => '191',
            'name' => 'Latvia',
            'code' => 'LV',
        ),

        'LT' => array(
            'zone' => '192',
            'name' => 'Lithuania',
            'code' => 'LT',
        ),

        'LU' => array(
            'zone' => '210',
            'name' => 'Luxembourg',
            'code' => 'LU',
        ),

        'NO' => array(
            'zone' => '211',
            'name' => 'Norway',
            'code' => 'NO',
        ),

        'PL' => array(
            'zone' => '197',
            'name' => 'Poland',
            'code' => 'PL',
        ),

        'PT' => array(
            'zone' => '212',
            'name' => 'Portugal',
            'code' => 'PT',
        ),

        'RO' => array(
            'zone' => '297',
            'name' => 'Romania',
            'code' => 'RO',
        ),

        'RU' => array(
            'zone' => '268',
            'name' => 'Russia',
            'code' => 'RU',
        ),

        'SK' => array(
            'zone' => '194',
            'name' => 'Slovakia',
            'code' => 'SK',
        ),

        'SI' => array(
            'zone' => '193',
            'name' => 'Slovenia',
            'code' => 'SI',
        ),

        'ES' => array(
            'zone' => '213',
            'name' => 'Spain',
            'code' => 'ES',
        ),

        'SE' => array(
            'zone' => '214',
            'name' => 'Sweden',
            'code' => 'SE',
        ),

        'CH' => array(
            'zone' => '215',
            'name' => 'Switzerland',
            'code' => 'CH',
        ),

        'GB' => array(
            'zone' => '216',
            'name' => 'United Kingdom',
            'code' => 'GB',
        ),

        'IL' => array(
            'zone' => '218',
            'name' => 'Israel',
            'code' => 'IL',
        ),

        'CA' => array(
            'zone' => '222',
            'name' => 'Canada',
            'code' => 'CA',
        ),

        'US' => array(
            'zone' => '223',
            'name' => 'USA',
            'code' => 'US',
        ),

        'BR' => array(
            'zone' => '227',
            'name' => 'Brazil',
            'code' => 'BR',
        ),

        'KW' => array(
            'zone' => '356',
            'name' => 'Kuwait',
            'code' => 'KW',
        ),

        'QA' => array(
            'zone' => '393',
            'name' => 'Qatar',
            'code' => 'QA',
        ),

        'SA' => array(
            'zone' => '371',
            'name' => 'Saudi Arabia',
            'code' => 'SA',
        ),

        'AE' => array(
            'zone' => '195',
            'name' => 'UAE',
            'code' => 'AE',
        ),

        'EG' => array(
            'zone' => '390',
            'name' => 'Egypt',
            'code' => 'EG',
        ),

        'ZA' => array(
            'zone' => '220',
            'name' => 'South Africa',
            'code' => 'ZA',
        ),

        'HK' => array(
            'zone' => '310',
            'name' => 'Hong Kong',
            'code' => 'HK',
        ),

        'IN' => array(
            'zone' => '233',
            'name' => 'India',
            'code' => 'IN',
        ),

        'JP' => array(
            'zone' => '231',
            'name' => 'Japan',
            'code' => 'JP',
        ),

        'SG' => array(
            'zone' => '374',
            'name' => 'Singapore',
            'code' => 'SG',
        ),

        'KR' => array(
            'zone' => '232',
            'name' => 'South Korea',
            'code' => 'KR',
        ),

        'AR' => array(
            'zone' => '226',
            'name' => 'Argentina',
            'code' => 'AR',
        ),

        'AU' => array(
            'zone' => '235',
            'name' => 'Australia',
            'code' => 'AU',
        ),

        'NZ' => array(
            'zone' => '236',
            'name' => 'New Zealand',
            'code' => 'NZ',
        ),
    );

    public static function getZone($countryCode) {
        $countryCode = trim($countryCode);

        if (isset(self::$countryMap[$countryCode])) {
            $map = self::$countryMap[$countryCode];

            return $map['zone'];
        }

        return '';
    }
}
