/**@license boxplus strings for localization
 * @author  Levente Hunyadi
 * @version 1.3.4
 * @remarks Copyright (C) 2009-2010 Levente Hunyadi
 * @remarks Licensed under GNU/GPLv3, see http://www.gnu.org/licenses/gpl-3.0.html
 * @see     http://hunyadi.info.hu/projects/boxplus
 **/

if (typeof(__jQuery__) == 'undefined') {
	var __jQuery__ = jQuery;
}
(function ($) {
	var code = '';

	/** Language strings. */
	var localizations = {
		'en': {
			language: 'English',
			first: 'First',
			prev: 'Previous',
			next: 'Next',
			last: 'Last',
			start: 'Start slideshow',
			stop: 'Stop slideshow',
			close: 'Close',
			enlarge: 'Enlarge',
			shrink: 'Shrink',
			download: 'Download',
			metadata: 'Image metadata'
		},
		'de': {
			language: 'Deutsch',
			first: 'Erstes',
			prev: 'ZurÃ¼ck',
			next: 'Weiter',
			last: 'Letztes',
			start: 'Diashow starten',
			stop: 'Diashow anhalten',
			close: 'SchlieÃŸen',
			enlarge: 'VergrÃ¶ÃŸern',
			shrink: 'Verkleinern',
			download: 'Download',
			metadata: 'Bild Metadaten'
		},
		'es': {
			language: 'EspaÃ±ol',
			first: 'Primera',
			prev: 'Anterior',
			next: 'Siguiente',
			last: 'Ãšltima',
			start: '',
			stop: '',
			close: 'Cerrar',
			enlarge: 'Ampliar',
			shrink: 'Reducir',
			download: 'Descargar',
			metadata: 'Metadatos de la imagen'
		},
		'fr': {
			language: 'FranÃ§ais',
			first: 'PremiÃ¨re',
			prev: 'PrÃ©cÃ©dente',
			next: 'Suivante',
			last: 'DerniÃ¨re',
			start: 'DÃ©marrer diaporama',
			stop: 'ArrÃªter diaporama',
			close: 'Fermer',
			enlarge: 'Agrandir',
			shrink: 'RÃ©duire',
			download: 'TÃ©lÃ©charger',
			metadata: 'MÃ©tadonnÃ©es images'
		},
		'bg': {
			language: 'Ð±ÑŠÐ»Ð³Ð°Ñ€ÑÐºÐ¸ ÐµÐ·Ð¸Ðº',
			first: 'ÐŸÑŠÑ€Ð²Ð°',
			prev: 'ÐŸÑ€ÐµÐ´Ð¸ÑˆÐ½Ð°',
			next: 'Ð¡Ð»ÐµÐ´Ð²Ð°Ñ‰Ð°',
			last: 'ÐŸÐ¾ÑÐ»ÐµÐ´Ð½Ð°',
			start: 'Ð¡Ñ‚Ð°Ñ€Ñ‚ Ð½Ð° ÑÐ»Ð°Ð¹Ð´ÑˆÐ¾Ñƒ',
			stop: 'Ð¡Ð¿Ð¸Ñ€Ð°Ð½Ðµ Ð½Ð° ÑÐ»Ð°Ð¹Ð´ÑˆÐ¾Ñƒ',
			close: 'Ð—Ð°Ñ‚Ð²Ð¾Ñ€Ð¸',
			enlarge: 'Ð£Ð²ÐµÐ»Ð¸Ñ‡Ð¸',
			shrink: 'ÐÐ°Ð¼Ð°Ð»Ð¸',
			download: 'Ð˜Ð·Ñ‚ÐµÐ³Ð»ÑÐ½Ðµ',
			metadata: 'ÐœÐµÑ‚Ð°Ð´Ð°Ð½Ð½Ð¸ Ð½Ð° ÑÐ½Ð¸Ð¼ÐºÐ°Ñ‚Ð°'
		},
		'he': {
			language: '×¢Ö´×‘Ö°×¨Ö´×™×ª',
			first: '×¨××©×•×Ÿ',
			prev: '×§×•×“×â€Ž',
			next: '×”×‘×â€Ž',
			last: '××—×¨×•×Ÿâ€Ž',
			start: '×œ×”×ª×—×™×œ ×ž×¦×’×ª ×©×§×¤×™×',
			stop: '×œ×¡×™×™× ×ž×¦×’×ª ×©×§×¤×™×',
			close: '×§×¨×•×‘',
			enlarge: '×œ×”×’×“×™×œâ€Ž',
			shrink: '×œ×”×§×˜×™×Ÿ',
			download: '×œ×”×•×¨×™×“',
			metadata: '×ž×˜×-× ×ª×•× ×™×'
		},
		'hu': {
			language: 'Magyar',
			first: 'ElsÅ‘',
			prev: 'ElÅ‘zÅ‘',
			next: 'KÃ¶vetkezÅ‘',
			last: 'UtolsÃ³',
			start: 'DiavetÃ­tÃ©s indÃ­tÃ¡sa',
			stop: 'DiavetÃ­tÃ©s megÃ¡llÃ­tÃ¡sa',
			close: 'BezÃ¡r',
			enlarge: 'NagyÃ­tÃ¡s',
			shrink: 'KicsinyÃ­tÃ©s',
			download: 'LetÃ¶ltÃ©s',
			metadata: 'KÃ©p metadatai'
		},
		'nl': {
			language: 'Nederlands',
			first: 'Eerste',
			prev: 'Vorige',
			next: 'Volgende',
			last: 'Laatste',
			start: 'Start presentatie',
			stop: 'Stop presentatie',
			close: 'Sluiten',
			enlarge: 'Vergroten',
			shrink: 'Verkleinen',
			download: 'Download',
			metadata: 'Metadata van de afbeelding'
		},
		'pl': {
			language: 'Polski',
			first: 'Pierwszy',
			prev: 'Poprzedni',
			next: 'NastÄ™pny',
			last: 'Ostatni',
			start: 'Uruchom pokaz slajdÃ³w',
			stop: 'Zatrzymaj pokaz slajdÃ³w',
			close: 'Zamknij',
			enlarge: 'PowiÄ™ksz',
			shrink: 'Pomniejsz',
			download: 'Pobierz',
			metadata: 'Metadane obrazka'
		},
		'pt': {
			language: 'PortuguÃªs',
			first: 'Primeiro',
			prev: 'Anterior',
			next: 'PrÃ³ximo',
			last: 'Ãšltimo',
			start: 'Iniciar slideshow',
			stop: 'Parar slideshow',
			close: 'Fechar',
			enlarge: 'Ampliar',
			shrink: 'Reduzir',
			download: 'Download',
			metadata: 'Metadados de imagem'
		},
		'ru': {
			language: 'Ð ÑƒÑÑÐºÐ¸Ð¹ ÑÐ·Ñ‹Ðº',
			first: 'ÐŸÐµÑ€Ð²Ñ‹Ð¹',
			prev: 'ÐŸÑ€ÐµÐ´Ñ‹Ð´ÑƒÑ‰Ð¸Ð¹',
			next: 'Ð¡Ð»ÐµÐ´ÑƒÑŽÑ‰Ð¸Ð¹',
			last: 'ÐŸÐ¾ÑÐ»ÐµÐ´Ð½Ð¸Ð¹',
			start: 'Ð—Ð°Ð¿ÑƒÑÑ‚Ð¸Ñ‚ÑŒ ÑÐ»Ð°Ð¹Ð´-ÑˆÐ¾Ñƒ',
			stop: 'ÐžÑÑ‚Ð°Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ ÑÐ»Ð°Ð¹Ð´-ÑˆÐ¾Ñƒ',
			close: 'Ð—Ð°ÐºÑ€Ñ‹Ñ‚ÑŒ',
			enlarge: 'Ð£Ð²ÐµÐ»Ð¸Ñ‡Ð¸Ñ‚ÑŒ',
			shrink: 'Ð¡Ð¾ÐºÑ€Ð°Ñ‚Ð¸Ñ‚ÑŒ',
			download: 'Ð—Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ',
			metadata: 'ÐœÐµÑ‚Ð°Ð´Ð°Ð½Ð½Ñ‹Ðµ Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ð¹'
		},
		'sk': {
			language: 'SlovenÄina',
			first: 'PrvÃ¡',
			prev: 'Vzad',
			next: 'Vpred',
			last: 'PoslednÃ¡',
			start: 'SpustiÅ¥ prezentÃ¡ciu',
			stop: 'ZastaviÅ¥ prezentÃ¡ciu',
			close: 'ZavrieÅ¥',
			enlarge: 'RozÅ¡Ã­riÅ¥',
			shrink: 'ZÃºÅ¾iÅ¥',
			download: 'Stiahnutie',
			metadata: 'MetaÃºdaje obrÃ¡zkov'
		}
	};

	/**
	* Get language strings and/or set language and country for localization.
	* @param langcode A language code in the ISO format "en".
	* @param countrycode A country code in the ISO format "US".
	* @return Language strings as an object.
	*/
	$.boxplusLanguage = function (langcode, countrycode) {
		if (arguments.length > 0) {
			var isocode = countrycode ? langcode + '-' + countrycode : langcode;

			// get language strings for selected language
			code = localizations.hasOwnProperty(isocode) ? isocode : ( localizations.hasOwnProperty(langcode) ? langcode : '' );

			var localization = {};
			$.each(localizations['en'], function (key) {  // use English localization to get keys
				localization[key] = '';
			});
			if (code) {
				$.extend(localization, localizations[code]);
			}
			
			// apply language strings
			$.each(localization, function (key, value) {
				$('div.boxplus-' + key).attr('title', value);
				$('a.boxplus-' + key).html(value);
				$('span.boxplus-' + key).html(value);
			});
		}
		return code;
	};

	// automatically select language when DOM tree is ready loading
	$(function () {
		var pattern = /lang=([a-z]{2,})(?:-([A-Z]{2,}))?/;
		$('script[src*="boxplus"][src*=lang]').each(function () {
			var match = pattern.exec($(this).attr('src'));
			if (match) {
				$.boxplusLanguage(match[1], match[2]);
			}
		});
	});
})(__jQuery__);
