var EuroCalc = {
	rate: 15.6466,
	getEuro: function(euro) {
		var eekval = Math.round(euro * this.rate * 10) * 10;
		var eek = '' + eekval;
		var dec = eek.substr(0,eek.length-2);
		if(dec.length == 0) dec = '0';
		var eekstr =  dec + ',' + eek.substr(eek.length-2) + '&nbsp;EEK';
		return eekstr;
	}
	/*
	getEuro: function(eek) {
		var eurval = eek / this.rate;
		var eur = '' + Math.round(eurval * 100);
		var dec = eur.substr(0,eur.length-2);
		if(dec.length == 0) dec = '0';
		var eurstr =  dec + ',' + eur.substr(eur.length-2) + '&nbsp;&euro;';
		return eurstr;
	}
	*/

};
function EuroConvert(){
	this.options = {
		startTag: '<span class="europrice">',
		endTag: '</span>',
		place: 'after'
	};

	return this;
};
EuroConvert.prototype = {
	convert: function(query, options) {
		if(options !== null && typeof(options) == 'object') {
			jQuery.extend(this.options, options);
		}
		$(query).each(this.getFunction());

	},
	getFunction: function() {
		var config = this.options;
		var re = new RegExp('[0-9]+,[0-9]+','g');

		return	function(index){
			var prices = $(this).html().match(re);
			var euros = [];
			for(var i=0; i < prices.length; i++) {
				var pp = prices[i].replace(',','.');
				if(pp.length > 0) {
					var val = parseFloat(pp);
					if(!isNaN(val)) {
						euros.push(EuroCalc.getEuro(val));
					}
				}
			}
			var html = config.startTag + euros.join(' / ') + config.endTag;
			switch(config.place) {
				case 'after':
				default:
					$(this).after(html);
					break;
				case 'append':
					$(this).append(html);
					break;
				case 'prepend':
					$(this).prepend(html);
					break;
				case 'before':
					$(this).before(html);
					break;

			}
		};


	}
};


