
jQuery(function(){
    
    var openedCalculatorObj = null;
    
    var openCalculator = function(labelObj){
        labelObj.children().addClass('active');
        labelObj.addClass('active').next().slideDown("normal");
        openedCalculatorObj = labelObj;
    };
    
    var closeCalculator = function(labelObj){
        labelObj.children().removeClass('active');
        labelObj.removeClass('active').next().slideUp("normal");
    };
    
    var onClick = function(){
        var labelObj = jQuery(this);
        if (openedCalculatorObj !== null) {
            closeCalculator(openedCalculatorObj);
        }
        if (openedCalculatorObj === null || (openedCalculatorObj.get(0) != labelObj.get(0))) {
            openCalculator(labelObj);
        } else {
            openedCalculatorObj = null;
        }
        return false;
    };
    
    var onSubmit = function(){
        var btnObj = jQuery(this);
        var formObj = btnObj.parents("form");
        var params = formObj.children().values();
        jQuery.postJSON(calcAJAXurl, params, function(data){
            var txt = '';
            if (data.success === true) {
                txt = data.result;
            } else if (data.errors !== null) {
                if (jQuery.isArray(data.errors)) {
                    txt = data.errors.join('<br>');
                } else {
                    txt = data.errors;
                }
            }
            jQuery(".resultbox p", formObj).html(txt);
            jQuery(".resultbox", formObj).show();
        });
    };
    
    jQuery('.wcalc .calc').click(onClick).each(function(){
        // штука чтобы валюты калькулятора были одинаковыми
        var calcBody = jQuery(this).next();
        jQuery("select.cur", calcBody).change(function(){
            jQuery("select.cur", calcBody).val(this.value);
        });
    });
    jQuery('.wcalc .opened .but').click(onSubmit);
    
    jQuery('.wcalc .calc:first').click();
    
});