var site_name = '';
var search_criterium = "city";
var search_crs = '';
var get_query = new Object();
if (location.href.indexOf('?') != -1) get_query = dojo.queryToObject(location.href.split('?')[1]);
dojo.addOnLoad(searchListener);

function searchListener()
{
    var searchListeners = new Array("search_street", "search_street_nr", "search_street_city", "search_city");
    if (site_name == 'Netherlands') {
        searchListeners[searchListeners.length] = "search_zip_number";
        searchListeners[searchListeners.length] = "search_zip_alfa";
    }
    else searchListeners[searchListeners.length] = "search_zip";
    dojo.forEach(searchListeners, function(field) {
        dojo.connect(dojo.byId(field), 'onkeyup', function (event) {
            if (get_query['action'] == 'ofm_select') document.ofm.NOT_clearMessage();
            if (event.target.id.substr(0, 7) == 'search_' && event.keyCode == dojo.keys.ENTER) searchCheck();
            if (event.target.id == 'search_zip_number' && dojo.byId('search_zip_number').value.length == 4) dojo.byId('search_zip_alfa').focus();
        });
    });
}

function searchSet(criterium)
{
    searchError("clear");
    search_criterium = criterium;
    dojo.query("div.search_field", "search_container").forEach(function(node) {
        if (node.id == "search_container_" + criterium) node.style.display = "block";
        else node.style.display = "none";
    });
}

function searchCheck()
{
    searchError("clear");
    var check = true;
    if (search_criterium == '') {
        check = false;
        searchError('search_error_no_criterium');
    }
    else {
        var searchObject = new Object();
        searchObject['TargetCRS'] = search_crs;
        searchObject['CountryName'] = country_name;
        switch (search_criterium) {
			
            case "street":
                if (dojo.byId("search_street").value == '') {
                    check = false;
                    searchError('search_error_empty');
                }
                else if (dojo.byId("search_street_city").value == '') {
                    check = false;
                    searchError('search_error_no_city');
                }
                else {
                    searchObject["StreetName"] = dojo.byId("search_street").value;
                    searchObject["AreaName"] = dojo.byId("search_street_city").value;
                    if (dojo.byId("search_street_nr").value != '') searchObject["HouseNumber"] = dojo.byId("search_street_nr").value;
                }
                break;
            case "city":
                if (dojo.byId("search_city").value == '') {
                    check = false;
                    searchError('search_error_empty');
                }
                else searchObject["AreaName"] = dojo.byId("search_city").value;
                break;
            case "zip":
                if (site_name == 'Netherlands') {
                    if (dojo.byId("search_zip_number").value == '' || dojo.byId("search_zip_alfa").value == '') {
                        check = false;
                        searchError('search_error_empty');
                    }
                    else searchObject["PostalCode"] = dojo.byId("search_zip_number").value + ' ' + dojo.byId("search_zip_alfa").value;
                }
                else {
                    if (dojo.byId("search_zip").value == '') {
                        check = false;
                        searchError('search_error_empty');
                    }
                    else searchObject["PostalCode"] = dojo.byId("search_zip").value;
                }
                break;
        }
    }
    if (check) {
       ofmSearch(searchObject);
	   /*
	   if (get_query['action'] != 'ofm_select') {
            var url = "?action=ofm_select&step=search&search_criterium=" + search_criterium + "&" + dojo.objectToQuery(searchObject);
            location.href = url;
        }
        else {
			
			ofmSearch(searchObject);
        }*/
    }
}

function searchError(status)
{
    //alert('error: '+status);
	dojo.query("p", "search_errors").forEach(function (node) {
       
	   if (node.id == status) node.style.display = "block";
        else node.style.display = "none";
    });
}

function popup(url)
{
    var scrWidth = (screen.availWidth) ? screen.availWidth : 1152;
    var scrHeight = (screen.availHeight) ? screen.availHeight : 820;
    var width = (arguments[1]) ? arguments[1] : 400;
    var height = (arguments[2]) ? arguments[2] : 400;
    var left = (scrWidth - width) / 2;
    var top = (scrHeight - height) / 2;
    var properties = "width=" + width + ",height=" + height + ",left=" + left + ",top=" + top;
    properties += ",toolbar=no,location=no,status=yes,menubar=no,scrollbars=yes,resizable=no";
    var popWindow = window.open(url, 'popup' , properties);
}

