window.addEvent('domready', function() {
    initFilter();
    initFilter2();
});

var resetFilter = function()
{
    if(document.getElementById('name')) document.getElementById('name').value = '';
    if(document.getElementById('year')) document.getElementById('year').value = '';
    if(document.getElementById('realization')) document.getElementById('realization').value = '';
    if(document.getElementById('autor')) document.getElementById('autor').value = '';
    if(document.getElementById('type')) document.getElementById('type').value = '';

    if(document.getElementById('сompare')) document.getElementById('сompare').value = 0;
    if(document.getElementById('square')) document.getElementById('square').value = '';

    if(document.getElementById('сompare')) {
        filter2Action();
    } else {
        filterAction();
    }

    if(document.getElementById('filterForm')) document.getElementById('filterForm').submit();
}

var initFilter = function(){
    var cookieData = Get_Cookie('galleryFilter');
    if(cookieData == null) return;
    
    var tmpArray = cookieData.split(/"/g);
    
    
    var name = tmpArray[3];
    if(document.getElementById('name')) document.getElementById('name').value = name.replace(/&quot;/g, '"');

    var year = tmpArray[7];
    if(document.getElementById('year')) document.getElementById('year').value = year.replace(/&quot;/g, '"');

    var realization = tmpArray[11];
    if(document.getElementById('realization')) document.getElementById('realization').value = realization;

    var autor = tmpArray[15];
    if(document.getElementById('autor')) document.getElementById('autor').value = autor.replace(/&quot;/g, '"');

    var type = tmpArray[19];
    if(document.getElementById('type')) document.getElementById('type').value = type.replace(/&quot;/g, '"');
    
};

var filterAction = function()
{
    var name = '';
    if(document.getElementById('name')) name = document.getElementById('name').value;

    var year = '';
    if(document.getElementById('year')) year = document.getElementById('year').value;

    var realization = '';
    if(document.getElementById('realization')) realization = document.getElementById('realization').value;

    var autor = '';
    if(document.getElementById('autor')) autor = document.getElementById('autor').value;

    var type = '';
    if(document.getElementById('type')) type = document.getElementById('type').value;

    var jsonString = '{';
    jsonString += '"name":"' + name.replace(/"/g, '&quot;').replace(/'/g, '&quot;') + '",';
    jsonString += '"year":"' + year + '",';
    jsonString += '"realization":"' + realization.replace(/"/g, '&quot;').replace(/'/g, '&quot;') + '",';
    jsonString += '"autor":"' + autor.replace(/"/g, '&quot;').replace(/'/g, '&quot;') + '",';
    jsonString += '"type":"' + type.replace(/"/g, '&quot;').replace(/'/g, '&quot;') + '"';
    jsonString += '}';

    setCookie ('galleryFilter', jsonString, '' ,'/');
};

function setCookie(name, value, expires, path, domain, secure) {
        var curCookie = name + "=" + escape(value) +
                ((expires) ? "; expires=" + expires.toGMTString() : "") +
                ((path) ? "; path=" + path : "") +
                ((domain) ? "; domain=" + domain : "") +
                ((secure) ? "; secure" : "")
        if ((name + "=" + escape(value)).length <= 4000)
                document.cookie = curCookie
        else
                if (confirm("Cookie превышает 4KB и будет вырезан !"))
                        document.cookie = curCookie
}
function Get_Cookie( check_name ) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );


		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}

//filter for market

var initFilter2 = function(){
    var cookieData = Get_Cookie('marketFilter');
    if(cookieData == null) return;
    
    var tmpArray = cookieData.split(/"/g);

    
    var type = tmpArray[3];
    if(document.getElementById('type')) document.getElementById('type').value = type.replace(/&quot;/g, '"');

    var comp = tmpArray[7];
    if(document.getElementById('сompare')) document.getElementById('сompare').value = comp;

    var square = tmpArray[11];
    if(document.getElementById('square')) document.getElementById('square').value = square;

};

var filter2Action = function()
{
    var type = '';
    if(document.getElementById('type')) type = document.getElementById('type').value.replace(/&quot;/g, '"');

    var comp = '';
    if(document.getElementById('сompare')) comp = document.getElementById('сompare').value;

    var square = '';
    if(document.getElementById('square')) square = document.getElementById('square').value;

    var jsonString = '{';
    jsonString += '"type":"' + type.replace(/"/g, '&quot;').replace(/'/g, '&quot;') + '",';
    jsonString += '"comp":"' + comp + '",';
    jsonString += '"square":"' + square + '"';
    jsonString += '}';

    setCookie ('marketFilter', jsonString, '' ,'/');
};
