var default_amount = 1;
var default_percent_value = 0; 


$(document).ready(function() {
    
    function check_amount(amount){
        return /^\d+[\,\.]?\d*$/.test(amount)
               ? parseFloat(amount.replace(/\,/, '.'))
               : default_amount;
    }
    
    function check_percent(percent){
        return /^\d+[\,\.]?\d*$/.test(percent)
               ? parseFloat(percent.replace(/\,/, '.'))
               : default_percent_value;
    }
    
    function convert(){
            var currency_from_rate = 1;
            var currency_to_rate = 1;
            var currency_to_amount = 1;
            var currency_from_amount = 1;
            var source_currency = $('#source_currency').val();

            var percent_value = check_percent($('#percent').val());
            $('#percent').val(percent_value);
            
            var user_amount = check_amount($('#currency_from_amount').val());    
            $('#currency_from_amount').val(user_amount);
            
            var currency_from = $('#currency_from option:selected').val();
            var currency_to = $('#currency_to option:selected').val();
            
            if(currency_from != source_currency){
                currency_from_rate = $('#' + currency_from).find('td:eq(4)').text();
                currency_from_rate = parseFloat(currency_from_rate.replace(/\s*/g,''));
                currency_from_amount = parseFloat($('#' + currency_from).find('td:eq(2)').text());
            }
            
            if(currency_to != source_currency){
                currency_to_rate = $('#' + currency_to).find('td:eq(4)').text();
                currency_to_rate = parseFloat(currency_to_rate.replace(/\s*/g,''));
                currency_to_amount = parseFloat($('#' + currency_to).find('td:eq(2)').text());
            }
            
            var rate_from = currency_from_rate / currency_from_amount;
            var rate_to = currency_to_rate / currency_to_amount;
            
            var rate = (rate_from * user_amount)/rate_to;
            
            if (percent_value > 0) {
                var percent_sign = $('#sign option:selected').val();
                var pv = rate * percent_value / 100;
                rate = ('-' != percent_sign) ? rate + pv  : rate - pv;
            }
            
            return (percent_value==0) 
                ? user_amount + ' ' + currency_from + ' = ' + rate.toFixed(4) + ' ' + currency_to
                : user_amount + ' ' + currency_from + ' ' + percent_sign + ' ' + percent_value + '% = ' + rate.toFixed(4) + ' ' + currency_to;
    }


    
        $('#btn-calculate').click(function() {
            
            $('#result').html('<b>' + convert() + '</b>');
            $('#result').css('border', '1px solid #479386');
            $('#result').css('padding', '2px 3px');
        });
    
    $('#btn-calculate').trigger('click');
});




