// Initializing variables
var ListFromCur = $();
var ListToCur = $();
var IptAmount = $();
var IptCCCharge = $();
var DivAmountCur = $();
var DivResult = $();
var DivResultCur = $();

$(document).ready(function() {
    // Giving variables values
    ListFromCur = $("#fromCurrency");
    ListToCur = $("#toCurrency");
    IptAmount = $("#amount");
    IptCCCharge = $("#ccCharge");
    DivAmountCur = $("#fromCurrencyText");
    DivResult = $("#result");
    DivResultCur = $("#toCurrencyText");

    // Setting Event-listeners
    IptAmount.keyup(Calculate);
    IptCCCharge.keyup(Calculate);
    ListFromCur.change(Calculate);
    ListToCur.change(Calculate);

    // Making input-field numeric (Using the Numeric-pack for JQuery)
    IptAmount.numeric(",");
    IptCCCharge.numeric(",");

    // Settings default value
    if (IptAmount.val().length <= 0)
        IptAmount.val("100");

    if (IptCCCharge.val().length <= 0)
        IptCCCharge.val("0");

    // Converting the current amount-value to a result
    Calculate();

    // Setting the focus
    IptAmount.select().focus();
});

function Calculate() {
    DivAmountCur.text(ListFromCur.find(":selected").attr("text").substring(0, 3));
    DivResultCur.text(ListToCur.find(":selected").attr("text").substring(0, 3));
        
    if (IptAmount.val().length > 0) {
        var FromRate = parseFloat(ListFromCur.find(":selected").attr("value"));
        var ToRate = parseFloat(ListToCur.find(":selected").attr("value"));
        var Amount = parseFloat(IptAmount.val().replace(",", "."));
        var Charge = parseFloat(IptCCCharge.val().replace(",", "."));
        var TmpAmount = ((FromRate / ToRate) * Amount) * (1 + (Charge / 100));
        var TmpResult = Math.round(TmpAmount * 10000) / 10000;

        if (TmpResult.toString() == "NaN")
            DivResult.text("0");
        else
            DivResult.text(TmpResult.toString().replace(".", ","));
    }
    else
        DivResult.text("0");
}
