
function init_rates(){
    ($('.rur_rate').text() != '')?rur = parseFloat($('.rur_rate').text()):rur = 0;
    ($('.usd_rate').text() != '')?usd = parseFloat($('.usd_rate').text()):usd = 0;
    ($('.eur_rate').text() != '')?eur = parseFloat($('.eur_rate').text()):eur = 0;
    if(rur != 0 || usd != 0 || eur != 0) add_rate_link('hrn');
    if(rur != 0) add_rate_link('rur');
    if(usd != 0) add_rate_link('usd');
    if(eur != 0) add_rate_link('eur');
}

function to_usd(link){
    var arr = $(link).attr('id').split('_');
    var old_act = $('#rate_block_'+arr[2]+' .rate_link_act');
    $(link).removeClass('rate_link');
    $(old_act).removeClass('rate_link_act');
    $(link).addClass('rate_link_act');
    $(old_act).addClass('rate_link');
    change_rate_price(arr[2], eval(arr[0]));
}

function to_rur(link){
    var arr = $(link).attr('id').split('_');
    var old_act = $('#rate_block_'+arr[2]+' .rate_link_act');
    $(link).removeClass('rate_link');
    $(old_act).removeClass('rate_link_act');
    $(link).addClass('rate_link_act');
    $(old_act).addClass('rate_link');
    change_rate_price(arr[2], eval(arr[0]));
}

function to_eur(link){
    var arr = $(link).attr('id').split('_');
    var old_act = $('#rate_block_'+arr[2]+' .rate_link_act');
    $(link).removeClass('rate_link');
    $(old_act).removeClass('rate_link_act');
    $(link).addClass('rate_link_act');
    $(old_act).addClass('rate_link');
    change_rate_price(arr[2], eval(arr[0]));
}

function to_hrn(link){
    var arr = $(link).attr('id').split('_');
    var old_act = $('#rate_block_'+arr[2]+' .rate_link_act');
    $(link).removeClass('rate_link');
    $(old_act).removeClass('rate_link_act');
    $(link).addClass('rate_link_act');
    $(old_act).addClass('rate_link');
    change_rate_price(arr[2], eval(arr[0]));
}

function add_rate_link(type){
    if($('.rates').length == 0){
        var count = $('.right_column table').length;
        var c = 0;
        $('.right_column table').each(function(){
            $(this).before('<div id="rate_block_'+c+'" class="rates"></div>');
            switch (type) {
                case 'rur':
                    $('#rate_block_'+c).html('<a id="'+type+'_rate_'+c+'" class="rate_link" href="#" onclick="to_'+type+'($(this)); return false;">Рубль</a>');
                    break;
                case 'usd':
                    $('#rate_block_'+c).html('<a id="'+type+'_rate_'+c+'" class="rate_link" href="#" onclick="to_'+type+'($(this)); return false;">Доллар</a>');
                    break;
                case 'eur':
                    $('#rate_block_'+c).html('<a id="'+type+'_rate_'+c+'" class="rate_link" href="#" onclick="to_'+type+'($(this)); return false;">Евро</a>');
                    break;
                case 'hrn':
                    $('#rate_block_'+c).html('<a id="'+type+'_rate_'+c+'" class="rate_link_act" href="#" onclick="to_'+type+'($(this)); return false;">Гривна</a>');
                    break;
            }
            
            parse_table($(this), c, count);
            c++;
        });
    }
    else{
        $('.rates').each(function(){
            var id = $(this).attr('id').split('rate_block_');
            switch(type){
                case 'rur':
                    $('#rate_block_'+id[1]+' a:last').after('<a id="'+type+'_rate_'+id[1]+'" class="rate_link" href="#" onclick="to_'+type+'($(this)); return false;">Рубль</a>');
                    break;
                case 'usd':
                    $('#rate_block_'+id[1]+' a:last').after('<a id="'+type+'_rate_'+id[1]+'" class="rate_link" href="#" onclick="to_'+type+'($(this)); return false;">Доллар</a>');
                    break;
                case 'eur':
                    $('#rate_block_'+id[1]+' a:last').after('<a id="'+type+'_rate_'+id[1]+'" class="rate_link" href="#" onclick="to_'+type+'($(this)); return false;">Евро</a>');
                    break;
                case 'hrn':
                    $('#rate_block_'+id[1]+' a:last').after('<a id="'+type+'_rate_'+id[1]+'" class="rate_link_act" href="#" onclick="to_'+type+'($(this)); return false;">Гривна</a>');
                    break;
            }
        });
    }
}

function parse_table(table, curr, count){
    var patt =/^\s*[\d]+[\d\.|<i>bstrong\s\/\d\.]+\s*$/;
    var s = 0;
    tables[curr] = new Array();
    $('td', $(table)).each(function(){
        if(patt.test($(this).text()) === true){
            tables[curr][s] =  parseFloat($(this).text());
            s++;
        }
    });
}

function change_rate_price(id, rate){
    var c = 0;
    var curr_price = new Number(0);
    var patt =/^\s*[\d]+[\d\.]+\s*$/;
    var patt2 = /^\s*[\d]+[<i>\s\/\d\.]+\s*$/;
    var patt3 = /^\s*[\d]+[<>bstrong\s\/\d\.]+\s*$/;
    var patt4 = /^\s*[\d]+[<i>bstrong\s\/\d\.]+\s*$/;
    $('#rate_block_'+id).next().children().children().children().each(function(){
        if(rate == eur || rate == usd)
            curr_price = (Math.round(parseFloat(tables[id][c])/rate*10)/10).toFixed(1);
        else if(rate == rur)
            curr_price = Math.round(parseFloat(tables[id][c])/rate/10)*10;
        else
            curr_price = Math.round(parseFloat(tables[id][c])/rate);
            
        if(patt.test($(this).html()) === true) {
            $(this).html( curr_price );
            c++;
        }
        else if(patt2.test($(this).html()) === true){
            $(this).html('<i> '+curr_price+'</i>');
            c++;
        }
        else if(patt3.test($(this).html()) === true){
            $(this).html('<strong> '+curr_price+'</strong>');
            c++;
        }
        else if(patt4.test($(this).html()) === true){
            $(this).html('<strong><i> '+curr_price+'</i></strong>');
            c++;
        }
    });
}


