
var usdToGbp =  1/1.5 ;
var gbpToUsd =  1.56 ;
var gbpToRur = 49.41 ;
var gbpToEur =  1.15 ;

var gbpLable = 'анг. фунт' ;
var usdLable = 'долл. США' ;
var rurLable = 'руб.' ;
var eurLable = 'евро' ;

var priceFormatCookie = 'cyp_inv_c' ;

function convertPrice( price, k ) {
	price = price.replace(/[\D]+/ig,"");
	if( price == '' ) return 0 ;
	var priceFloat = parseFloat(price);
	var newPriceTxt = priceFloat.toFixed(0) ;
	if( k==null ) k=1;
	var additionalZerros = '' ;
	var newPrice = priceFloat * k ;
	if( newPrice < 1000 ) {
		vnewPriceTxt = newPrice.toFixed(0) ;
		return newPriceTxt ;
	}
	while( newPrice >= 1000000 ) {
		newPrice = newPrice / 1000 ;
		additionalZerros = additionalZerros + '.000' ;
	}
	if( newPrice <= 10000 ) {
		newPrice2 = Math.round(newPrice);
		newPrice2 = newPrice2 / 1000 ;
	}
	if( newPrice <= 100000 && newPrice >= 10000 ) {
		newPrice2 = newPrice / 10 ;
		newPrice2 = Math.round(newPrice2);
		newPrice2 = newPrice2 / 100 ;
	}
	if( newPrice >= 100000 ) {
		newPrice2 = newPrice / 100 ;
		newPrice2 = Math.round(newPrice2);
		newPrice2 = newPrice2 / 10 ;
	} 
	newPriceTxt = newPrice2.toFixed(3) + additionalZerros + '' ;
	return newPriceTxt ;
}

function showUsd() {
	$.cookie(priceFormatCookie,'usd');
	$(".price-lable").html(usdLable);
	$(".price-gbp").each( function() {
			var gbpPrice = $(this).html();
			var userPrice = convertPrice( gbpPrice, gbpToUsd ) ;
			$(this).parent().find(".price-user").html(userPrice+' USD');
			
	});
	$(".change-price").remove();
	addHoverToPrices();
}

function showGbp() {
	$.cookie(priceFormatCookie,'gbp');
	$(".price-lable").html(gbpLable);
	$(".price-gbp").each( function() {
			var gbpPrice = $(this).html();
			var userPrice = convertPrice( gbpPrice, 1 ) ;
			$(this).parent().find(".price-user").html(userPrice+' GBP');
			
	});
	$(".change-price").remove();
	addHoverToPrices();
}

function showRur() {
	$.cookie(priceFormatCookie,'rur');
	$(".price-lable").html(rurLable);
	$(".price-gbp").each( function() {
			var gbpPrice = $(this).html();
			var userPrice = convertPrice( gbpPrice, gbpToRur ) ;
			$(this).parent().find(".price-user").html(userPrice+' RUR');
			
	});
	$(".change-price").remove();
	addHoverToPrices();
}

function showEur() {
	$.cookie(priceFormatCookie,'eur');
	$(".price-lable").html(eurLable);
	$(".price-gbp").each( function() {
			var gbpPrice = $(this).html();
			var userPrice = convertPrice( gbpPrice, gbpToEur ) ;
			$(this).parent().find(".price-user").html(userPrice+' EUR');
			
	});
	$(".change-price").remove();
	addHoverToPrices();
}

function addHoverToPrices() {
                $(".price-user").hover( 
                	function() { var jObject=$(this); addPopupPriceConverter(jObject); }, 
                	function() { $(this).find("div").remove(); } 
                );
}

function addPopupPriceConverter(jObject) {
	var gbpPriceFull = jObject.parent().find(".price-gbp").html();
        var gbpPrice = convertPrice( gbpPriceFull, 1 ) ;
        var usdPrice = convertPrice( gbpPriceFull, gbpToUsd ) ;
        var rurPrice = convertPrice( gbpPriceFull, gbpToRur ) ;
        var eurPrice = convertPrice( gbpPriceFull, gbpToEur ) ;
        var selectHtml = '<div style="position:absolute;display:none;background-color:#ddd;color:#333;font-size:90%;font-weight:normal;padding:5px;">'+
                         '<span style="line-height:18px;font-size:11px;font-weight:bold;">Показывать в:</span><br>'+
                         '<span style="cursor:pointer;text-decoration:underline;line-height:18px;" onClick="showGbp()">Английских фунтах (GBP)</span> - '+gbpPrice+'<br>'+
                         '<span style="cursor:pointer;text-decoration:underline;line-height:18px;" onClick="showRur()">Рублях (RUR)</span> - '+rurPrice+'<br>'+
                         '<span style="cursor:pointer;text-decoration:underline;line-height:18px;" onClick="showUsd()">Долларах США (USD)</span> - '+usdPrice+'<br>'+
                         '<span style="cursor:pointer;text-decoration:underline;line-height:18px;" onClick="showEur()">Евро (EUR)</span> - '+eurPrice+
                         '</div>';
         jObject.prepend(selectHtml);
         jObject.find("div").slideDown("fast");
}

function clearCookie() {
        $.cookie(priceFormatCookie,null);
}


/**
 * Cookie plugin
 * Copyright (c) 2006 Klaus Hartl (stilbuero.de)
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 */
jQuery.cookie = function(name, value, options) {
    if (typeof value != 'undefined') { 
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toUTCString(); 
        }
        var path = options.path ? '; path=' + (options.path) : '';
        var domain = options.domain ? '; domain=' + (options.domain) : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
    } else {
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = jQuery.trim(cookies[i]);
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                    break;
                }
            }
        }
        return cookieValue;
    }
};

function convertPrices() {
	$("td").each( function() {
		var firstHtml = $(this).html();
		if( firstHtml.search(/^цена/i)>=0 ) {
			var newHtml = firstHtml.replace(/США/ig,'<span class="price-lable">'+gbpLable+'</span>');
			var newHtml = newHtml.replace(/(доллар|\(|\)|\$)/ig,"");
			$(this).html(newHtml);
			var secondTd = $(this).parent().find("td:eq(1)") ;
			var priceHtml = secondTd.html();
			var priceHtml2 = priceHtml.replace(/(\.|,)/ig,"");
			var priceHtml2 = priceHtml2.replace(/[\s]+/ig," ");
			var priceArr = priceHtml2.split(" ");
			for (x in priceArr) {
					if( priceArr[x].search(/\d/g) != -1 ) {
						priceArr[x] = priceArr[x].replace(/[\D]+/ig,"");
						var gbpPriceTxt = convertPrice( priceArr[x], usdToGbp ) ;
						var allPriceTxt = '<span class="price-gbp">'+gbpPriceTxt+' GBP</span>' ;
						priceArr[x] = allPriceTxt ;
					}
			}
			var priceHtmlNew = priceArr.join(" ") ;
			secondTd.html(priceHtmlNew);
		}
	});
	
	$("span.price-gbp").each( function() {
			var gbpPriceTxt = $(this).html();
			var newHtml = '<span class="price-gbp" style="display:none;">'+gbpPriceTxt+'</span>'+
				'<span class="price-user">'+gbpPriceTxt+'</span>' ;
			$(this).replaceWith(newHtml);
	});
	
	var userCurrency = $.cookie(priceFormatCookie);
	if(userCurrency) {
		addHoverToPrices();
	        if (userCurrency=='usd') showUsd();
	        if (userCurrency=='gbp') showGbp();
	        if (userCurrency=='rur') showRur();
	        if (userCurrency=='eur') showEur();
        } else {
                $("span.price-user").each( function() {
                                var currHtml = $(this).html();
                                var newHtml = '<span class="price-user">'+currHtml+'</span>'+' '+
                                '<span class="change-price"><span style="font-size:80%;color:#ddd;text-decoration:none;border-bottom:1px dashed #ddd;font-weight:normal;cursor:pointer;">Сменить&nbsp;валюту</span></span>' ;
                                $(this).replaceWith(newHtml);
                });
                $(".change-price").click( 
                	function() { var jObject=$(this); addPopupPriceConverter(jObject); }
                ).hover(
                	function(){$(this).find("div").show();}, function(){$(this).find("div").remove();}
                );
        }
	
	// Для удаления кнопки сброса куки, нужно закоментировать либо удалить нижеследующую строку
    //   $("body").append('<p><input type="button" value="clear cookie" onClick="clearCookie()" /></p>');
}

