<?php
/**
 * Returns the list of translated counties
 *
 * @since 3.0.0
 * @package WorkshopButler\View
 */

namespace WorkshopButler\View;

/**
 * Class Countries
 *
 * @since 3.0.0
 * @package WorkshopButler\View
 */
class Countries {

	/**
	 * Returns a sorted list of translated countries
	 *
	 * @return array
	 */
	public static function get() {
		$codes     = array(
			'AF',
			'AL',
			'DZ',
			'AS',
			'AD',
			'AO',
			'AI',
			'AQ',
			'AG',
			'AR',
			'AM',
			'AW',
			'AU',
			'AT',
			'AZ',
			'AX',
			'BS',
			'BH',
			'BD',
			'BB',
			'BY',
			'BZ',
			'BE',
			'BJ',
			'BM',
			'BT',
			'BA',
			'BW',
			'BN',
			'BO',
			'BQ',
			'BV',
			'BR',
			'BG',
			'BF',
			'BI',
			'CV',
			'CM',
			'CA',
			'CF',
			'TD',
			'CL',
			'CN',
			'CX',
			'CC',
			'CD',
			'CG',
			'CK',
			'CI',
			'CO',
			'CR',
			'HR',
			'CU',
			'CW',
			'CY',
			'CZ',
			'DK',
			'DJ',
			'DM',
			'DO',
			'EC',
			'EG',
			'SV',
			'ER',
			'GQ',
			'EE',
			'ET',
			'FK',
			'FO',
			'FJ',
			'FI',
			'FR',
			'GF',
			'PF',
			'GA',
			'GM',
			'KH',
			'KY',
			'GE',
			'DE',
			'GH',
			'GI',
			'KM',
			'GR',
			'GL',
			'GD',
			'GP',
			'GG',
			'GN',
			'GU',
			'GT',
			'GW',
			'GY',
			'HT',
			'HK',
			'HN',
			'HU',
			'IS',
			'IN',
			'ID',
			'IR',
			'IQ',
			'IE',
			'IL',
			'IM',
			'IT',
			'JM',
			'JP',
			'JE',
			'JO',
			'KZ',
			'KE',
			'KI',
			'KG',
			'KP',
			'KR',
			'KW',
			'LA',
			'LV',
			'LB',
			'LS',
			'LR',
			'LY',
			'LI',
			'LT',
			'LU',
			'MO',
			'MK',
			'MG',
			'MW',
			'MY',
			'MV',
			'ML',
			'MT',
			'MH',
			'MQ',
			'MR',
			'MU',
			'YT',
			'MX',
			'FM',
			'MD',
			'MC',
			'MN',
			'ME',
			'MS',
			'MA',
			'MZ',
			'MM',
			'NA',
			'NR',
			'NP',
			'NL',
			'NC',
			'NZ',
			'NI',
			'NE',
			'NG',
			'NU',
			'NF',
			'MP',
			'NO',
			'OM',
			'PK',
			'PW',
			'PS',
			'PA',
			'PG',
			'PY',
			'PE',
			'PH',
			'PN',
			'PL',
			'PT',
			'PR',
			'QA',
			'RE',
			'RO',
			'RU',
			'RW',
			'BL',
			'SH',
			'KN',
			'LC',
			'MF',
			'PM',
			'VC',
			'WS',
			'SM',
			'ST',
			'SA',
			'SN',
			'RS',
			'SC',
			'SL',
			'SG',
			'SX',
			'SK',
			'SI',
			'SB',
			'SO',
			'ZA',
			'SS',
			'ES',
			'LK',
			'SD',
			'SR',
			'SJ',
			'SZ',
			'SE',
			'CH',
			'SY',
			'TJ',
			'TW',
			'TZ',
			'TH',
			'TL',
			'TG',
			'TK',
			'TO',
			'TT',
			'TN',
			'TR',
			'TM',
			'TC',
			'TV',
			'UG',
			'UA',
			'AE',
			'GB',
			'US',
			'UY',
			'UZ',
			'VU',
			'VE',
			'VN',
			'VG',
			'VI',
			'WF',
			'EH',
			'YE',
			'ZM',
			'ZW',
		);
		$countries = array();
		foreach ( $codes as $code ) {
			$countries[ $code ] = __( 'country.' . $code, 'wsbintegration' );
		}
		asort( $countries );

		return $countries;
	}

	/**
	 * Returns a list of EU country codes
	 *
	 * @return array
	 */
	public static function getEUCodes() {
		return  array('BE','BG','CZ','DK','DE','EE','IE','EL','ES','FR','HR','IT','CY',
			'LV','LT','LU','HU','MT','NL','AT','PL','PT','RO','SI','SK','FI','SE');
	}
}
