jQuery(document).ready(function(){
	//
	
	jQuery("#searchMoreOptions").click(function() {
		
		jQuery("#searchMoreOptionsArea").css("display", "inline");
		jQuery("#searchMoreOptions").css("display", "none");
	});	
	
	
	jQuery(".tx_ef_detailViewNav ul li:last").css("border-right", "0px");
	jQuery("a[rel^='prettyPhoto']").prettyPhoto();
});


function showMore(id){
    jQuery("." + id + " .more").css("display", "none");
    jQuery.each(jQuery("." + id + " .rowHidden"), function(){
        jQuery(this).css("display", "block");
        
    });
    
    
}


function hide(id){
    jQuery("." + id + " .more").css("display", "block");
    jQuery.each(jQuery("." + id + " .rowHidden"), function(){
        jQuery(this).css("display", "none");
    });
    
}


function getRegion(){
    var id = 1;
    var region = jQuery("#country").val();
    
    jQuery.ajax({
        url: "index.php",
        type: "POST",
        async: true,
        data: {
            eID: "detailViewHelper_eID",
            input: id,
            region: region
        },
        dataType: "html",
        success: function(response){
            jQuery(".detailSearchvalueRegion").html(response);
            jQuery(".detailSearch .region").css("display", "inline");
            getTyp('COUNTRY', region);
            getCategory('COUNTRY', region);
            
        },
        error: function(x, e){
            var err_text = "";
            if (x.status == 0) {
                err_text = 'Server Connection Error.';
            }
            else 
                if (x.status == 404) {
                    err_text = 'Requested URL not found.';
                }
                else 
                    if (x.status == 500) {
                        err_text = 'Internal Server Error.';
                    }
                    else 
                        if (e == 'parsererror') {
                            err_text = 'Error:\nParsing JSON Request failed.';
                        }
                        else 
                            if (e == 'timeout') {
                                err_text = 'Request Time out.';
                            }
                            else {
                                err_text = 'Unknow Error:\n' + x.responseText;
                            }
            
        }
    });
}


function getCities(){
    var id = 2;
    var region = jQuery("#region").val();
    
    jQuery.ajax({
        url: "index.php",
        type: "POST",
        async: true,
        data: {
            eID: "detailViewHelper_eID",
            input: id,
            region: region
        },
        dataType: "html",
        success: function(response){
            jQuery(".detailSearchvalueCity").html(response);
            jQuery(".detailSearch .city").css("display", "inline");
            getTyp('REGION', region);
            getCategory('REGION', region);
            
        },
        error: function(x, e){
            var err_text = "";
            if (x.status == 0) {
                err_text = 'Server Connection Error.';
            }
            else 
                if (x.status == 404) {
                    err_text = 'Requested URL not found.';
                }
                else 
                    if (x.status == 500) {
                        err_text = 'Internal Server Error.';
                    }
                    else 
                        if (e == 'parsererror') {
                            err_text = 'Error:\nParsing JSON Request failed.';
                        }
                        else 
                            if (e == 'timeout') {
                                err_text = 'Request Time out.';
                            }
                            else {
                                err_text = 'Unknow Error:\n' + x.responseText;
                            }
            
        }
    });
}

function getTyp(type, value){
    var id = 3;
    
    
    jQuery.ajax({
        url: "index.php",
        type: "POST",
        async: true,
        data: {
            eID: "detailViewHelper_eID",
            input: id,
            type: type,
            value: value
        },
        dataType: "html",
        success: function(response){
            jQuery(".detailSearchvalueTyp").html(response);
            jQuery(".detailSearch .typ").css("display", "inline");
            
            
        },
        error: function(x, e){
            var err_text = "";
            if (x.status == 0) {
                err_text = 'Server Connection Error.';
            }
            else 
                if (x.status == 404) {
                    err_text = 'Requested URL not found.';
                }
                else 
                    if (x.status == 500) {
                        err_text = 'Internal Server Error.';
                    }
                    else 
                        if (e == 'parsererror') {
                            err_text = 'Error:\nParsing JSON Request failed.';
                        }
                        else 
                            if (e == 'timeout') {
                                err_text = 'Request Time out.';
                            }
                            else {
                                err_text = 'Unknow Error:\n' + x.responseText;
                            }
            
        }
    });
}

function getCategory(type, value){
    var id = 4;
    var value1 = 0;
    var value2 = 0;
    var value3 = 0;
    if (type == 'COUNTRY') {
        value1 = value;
    }
    else 
        if (type == 'REGION') {
            value1 = jQuery("#country").val();
            value2 = value;
        }
    
    jQuery.ajax({
        url: "index.php",
        type: "POST",
        async: true,
        data: {
            eID: "detailViewHelper_eID",
            input: id,
            value1: value1,
            value2: value2,
            value3: value3
        },
        dataType: "html",
        success: function(response){
            jQuery(".detailSearchvalueCategory").html(response);
            jQuery(".detailSearch .category").css("display", "inline");
            
        },
        error: function(x, e){
            var err_text = "";
            if (x.status == 0) {
                err_text = 'Server Connection Error.';
            }
            else 
                if (x.status == 404) {
                    err_text = 'Requested URL not found.';
                }
                else 
                    if (x.status == 500) {
                        err_text = 'Internal Server Error.';
                    }
                    else 
                        if (e == 'parsererror') {
                            err_text = 'Error:\nParsing JSON Request failed.';
                        }
                        else 
                            if (e == 'timeout') {
                                err_text = 'Request Time out.';
                            }
                            else {
                                err_text = 'Unknow Error:\n' + x.responseText;
                            }
            
        }
    });
}


var map = null;
var geocoder = null;

function initializeGoogleMaps(){
    if (GBrowserIsCompatible()) {
        alert(document.getElementById("maps"));
        map = new GMap2(document.getElementById("map"));
        map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());
        
        
        
        map.setCenter(new GLatLng(37.4419, -122.1419), 13);
        geocoder = new GClientGeocoder();
    }
}


function showAddress(address, haendlername, haendlerplz, haendleraddress){

    if (geocoder) {
        geocoder.getLatLng('', function(point){
            if (!point) {
                alert(address + " not found");
            }
            else {
                map.setCenter(point, 13);
                var marker = new GMarker(point);
                map.addOverlay(marker);
                var htmlcontent = "<b>" + haendlername + "</b><br><br><p>" + haendlerplz + "&nbsp;" + haendleraddress + "</p>";
                marker.openInfoWindowHtml(htmlcontent);
            }
        });
    }
}

function loadListView(id){
	jQuery("#contents").html('<img src="fileadmin/template/images/ajax-loader.gif" style="float: left; margin-left: 20px; margin-top: 20px;" alt="lade..." />');
        jQuery.ajax({
            url: "index.php",
            type: "POST",
            async: true,
            data: {
                eID: "listView_eID",
                input: id,
                filtercall: "false"
            },
            dataType: "html",
            success: function(response){
            
                jQuery("#contents").html(response);
				
	                jQuery("#searchVal").autocomplete({
	                    source: "typo3conf/ext/endlichferien/suggestions.php",
	                    minLength: 2,
						select: function (event, ui) {
							//jQuery("#form1").submit();
							
						//	return false;
						},
                		close: function (event, ui) {
                			jQuery("#form1").submit();
                			return false;
                		}
	                });
	                
	                jQuery("#searchVal").click(function(){
	                    jQuery(this).select();
						
	                });
                sortFilter();
				
				jQuery("#reset_filter").click(function () {
					resetFilter();
				});		
				
					
            },
            error: function(x, e){
                var err_text = "";
                if (x.status == 0) {
                    err_text = 'Server Connection Error.';
                }
                else 
                    if (x.status == 404) {
                        err_text = 'Requested URL not found.';
                    }
                    else 
                        if (x.status == 500) {
                            err_text = 'Internal Server Error.';
                        }
                        else 
                            if (e == 'parsererror') {
                                err_text = 'Error:\nParsing JSON Request failed.';
                            }
                            else 
                                if (e == 'timeout') {
                                    err_text = 'Request Time out.';
                                }
                                else {
                                    err_text = 'Unknow Error:\n' + x.responseText;
                                }
                
            }
        });
    }



function filterChange(id){
	
    var height = jQuery(document).height();
    jQuery(".listViewSearchLayer").css("height", height);
    jQuery(".listViewSearchLayer").css("display", "inline");
    jQuery.ajax({
        url: "index.php",
        type: "POST",
        async: true,
        data: {
            eID: "listView_eID",
            filter: id,
            input: 0,
            filtercall: "true",
            filtertyp: "1"
        },
        dataType: "html",
        success: function(response){
            jQuery(".filter").html(response);
            jQuery.ajax({
                url: "index.php",
                type: "POST",
                async: true,
                data: {
                    eID: "listView_eID",
                    filter: id,
                    input: 0,
                    filtercall: "true",
                    filtertyp: "2"
                },
                dataType: "html",
                success: function(response){
                    jQuery(".results").html(response);
                    jQuery(".listViewSearchLayer").css("display", "none");
                    sortFilter();
					lastFilter =jQuery("#filter_show").val();
					showMore(lastFilter);
                },
                error: function(x, e){
                    var err_text = "";
                    if (x.status == 0) {
                        err_text = 'Server Connection Error.';
                    }
                    else 
                        if (x.status == 404) {
                            err_text = 'Requested URL not found.';
                        }
                        else 
                            if (x.status == 500) {
                                err_text = 'Internal Server Error.';
                            }
                            else 
                                if (e == 'parsererror') {
                                    err_text = 'Error:\nParsing JSON Request failed.';
                                }
                                else 
                                    if (e == 'timeout') {
                                        err_text = 'Request Time out.';
                                    }
                                    else {
                                        err_text = 'Unknow Error:\n' + x.responseText;
                                    }
                }
            });
        },
        error: function(x, e){
            var err_text = "";
            if (x.status == 0) {
                err_text = 'Server Connection Error.';
            }
            else 
                if (x.status == 404) {
                    err_text = 'Requested URL not found.';
                }
                else 
                    if (x.status == 500) {
                        err_text = 'Internal Server Error.';
                    }
                    else 
                        if (e == 'parsererror') {
                            err_text = 'Error:\nParsing JSON Request failed.';
                        }
                        else 
                            if (e == 'timeout') {
                                err_text = 'Request Time out.';
                            }
                            else {
                                err_text = 'Unknow Error:\n' + x.responseText;
                            }
        }
    });
    
    
    
}


function resetFilter() {
	filterChange(-1);
}



