﻿$(function() {

    var data = new Array();
    $('.popupDOMWindow').each(function(i, v) {
        var resolution = $.attr(v, 'title').split(',');
        var windowName = $.attr(v, 'href').slice(1);
        data[windowName] = { height: resolution[0], width: resolution[1] };
    });

    //удаление данных из titles
    $('.popupDOMWindow').each(function(i, v) {
        $(v).attr('title', '');
    });

    $('.popupDOMWindow').click(function() {
        var i = $(this).attr('href').slice(1);
        $.openDOMWindow({
            windowSourceID: '#' + i,
            height: data[i].height,
            width: data[i].width,
            modal: 1,
            overlayOpacity: '50',
            positionType: 'centered',
            windowPadding: 5,
            windowBGColor: '#fff',
            borderSize: '1',
            functionCallOnClose: function() {
                setTimeout(function() {
                    refreshCount();
                }, 300);
            }
        });
        return false;
    });
    saveAllParameters();
});

function clearCheckBoxes(fName) {
    $('#cb_' + fName + ' :checkbox').attr('checked', false);
}
function clearDimensions(fName) {
    $('#cb_' + fName + ' :text').attr('value', '');
    $('#layer_' + fName).text('');
}

function clearPriceRanges() {
    $('#prices').attr('value', '');
}

function clearParameters(fName) {
    $('#layer_' + fName).text('');
    clearCheckBoxes(fName);
}

function clearAllParameters() {
    clearParameters('types');
    clearParameters('styles');
    clearParameters('materials');
    clearParameters('decorations');
    clearParameters('manufacturers');
    clearParameters('series');
    clearDimensions('dimensions');
    clearPriceRanges();
    refreshCount();
}

function saveDimensions(fName) {

    var textList = $('#cb_' + fName + ' :text');
    var infoList = $('.info-dimensions');

    var str = '';

    for (var i = 0; i < infoList.length; i++) {
        var _from = textList[i * 2];
        var _to = textList[i * 2 + 1];

        if (_from.value != '' || _to.value != '') {
            str = str + infoList[i].innerHTML + ': ';
            if (textList[i * 2].value != '') {
                str = str + textList[i * 2].value;
            }
            str = str + ' - ';
            if (textList[i * 2 + 1].value != '') {
                str = str + textList[i * 2 + 1].value;
            }
            str = str + ' ';
        }
    }
    $('#layer_' + fName).text(str);
}

function saveAllParameters() {
    saveParameters('types');
    saveParameters('styles');
    saveParameters('materials');
    saveParameters('decorations');
    saveParameters('manufacturers');
    saveParameters('series');
    saveDimensions('dimensions');
    refreshCount();
}


function saveParameters(fName) {
    var divName = 'cb_' + fName.toString();
    var layerName = 'layer_' + fName.toString();
    var checkBoxList = $('#' + divName + ' :checkbox');
    var labelList = $('#' + divName).find('label');
    var str = '';
    for (var i = 0; i < checkBoxList.length; i++) {
        if (checkBoxList[i].checked) {
            str = str + ', ' + labelList[i].innerHTML;
        }
    }
    str = str.substr(2, str.length);
    $('#' + layerName).text(str);
}

function refreshCount() {
    $('#itemCountLabel').load(countItemsUrl, $('#extendedSearchForm').serialize());
}

function submitExtendedSearchForm() {
    disableInactiveFields();
    $('#extendedSearchForm').submit();
}

function disableInactiveFields() {
    var form = $('#extendedSearchForm');
    form.find(':text, select').each(function() {
        this.disabled = !this.value;
    });
}

