/**
 *
 * @access public
 * @return void
 **/
var GB_ANIMATION = true;
var big_data = "";
var bild_array = "";

var thumb_data = "";
var thumb_array = "";

var aktuelles_bild = "";
var aktuelles_bild_id = 0;

$(document).ready(function()
{	
	//alle links in li´s anpassen
	var link = $('li>a').each
	(
		function ()
		{
			var elink = $(this).attr('href');
			$(this).parent().click
			(
				
			)
		}
	);
	
		$('.bg_special_hotels a').click
	(
		function ()
		{
			try {
			
				//window.open($(this).attr('href') + '?sf=1', $(this).attr('title'), 'toolbar=no,width=868,height=700,resizable=yes,top=40,scrollbars=yes');
				window.open($(this).attr('href') + '?sf=1', 'Hoteldetails', 'toolbar=no,width=868,height=700,resizable=yes,top=40,scrollbars=yes');
				return false;
			}
			catch (e)
			{
				//alert(e.message);
				return false;
			}
		}
	)

    $('#buchung_anfordern').click(function()
	{
		$('.buchungs_detail_content_line input, .buchungs_detail_content_line select').removeClass('error');
		
        $.ajax({
            url: '../classes/ajax_wrapper_frontend.php?wrapper=hotels&func=send_hotel_data',
            async: true,
			dataType: "json",
            type: 'post',
            data: $('#buchungs_detail_form').serialize(),
            success: function(data)
			{
				var error_display=false;
				
            	for (var data_line in data)
				{					
					$('#' + data[data_line]).addClass('error');
					error_display=true;					
				}	
				
				if (error_display==true)
				{
					$('#buchungs_detail_container_error').animate({
			            opacity: 1           
			        }, 1000, function()
					{
			        	    
			        });
					$('#buchungs_detail_container_error').css('display', 'block');
				}
				else
				{
					$('#buchungs_detail').animate({
			            opacity: 0,
			            width: '0'
			        }, 1000, function()
					{
			            $('#buchungs_detail').unbind('click');
						$('#buchungs_detail').css('display', 'none');
						
						
						$('#buchungs_detail_container_erfolg').animate({
					            opacity: 1           
					        }, 1000, function()
							{
					        	    
					        });
							$('#buchungs_detail_container_erfolg').css('display', 'block');
								
			        });
				}
            }
        });
    });
    
    $('.autoclear').autoclear();
    
	$('#buchungs_detail_container_erfolg_close').click(function(){
        $('#buchungs_detail_container_erfolg').animate({
            opacity: 0            
        }, 1000, function(){
          $('#buchungs_detail_container_erfolg').css('display', 'none');  
        });
        
        return false;
    }).mouseenter(function(){
        $(this).css('cursor', 'pointer');
    });
	
	$('#buchungs_detail_container_error_close').click(function(){
        $('#buchungs_detail_container_error').animate({
            opacity: 0            
        }, 1000, function(){
          $('#buchungs_detail_container_error').css('display', 'none');  
        });
        
        return false;
    }).mouseenter(function(){
        $(this).css('cursor', 'pointer');
    });
	
    $('#buchungs_detail_close').click(function(){
        $('#buchungs_detail').animate({
            opacity: 0,
            width: '0'
        }, 1000, function(){
            $('#buchungs_detail').unbind('click');
			$('#buchungs_detail').css('display', 'none');
        });
        		
        return false;
    })
    
    try {
        big_data = $('#big_array').attr('value');
        bild_array = big_data.split('|');
        
        thumb_data = $('#thumb_array').attr('value');
        thumb_array = thumb_data.split('|');
        
        aktuelles_bild = bild_array[0];
        aktuelles_bild_id = 0;
    } 
    catch (e) {
    
    }
    
    
    $('#buchung_container, #buchung_bottom').click(function(){
        
		$('#buchungs_detail').css('display', 'block');
		var dump = $('#buchungs_detail_container').offset();
		var scroll_top = dump.top - 10;		
		$('html,body').animate({scrollTop: scroll_top}, 1000);		
        $('#buchungs_detail').animate({
            opacity: 1,
            width: '651'
        }, 1000, function(){
			
            $('#buchungs_detail').css('cursor', 'default');
            $('#buchungs_detail').click(function(){
                return false;
            });
        });
		return false;
    }).mouseenter(function(){
        $(this).css('cursor', 'pointer');
    });
    
    try {
        //galerie click
        $('#galerie_back').click(function(){
            change_galerie_image('back');
            return false;
        }).mouseenter(function(){
            $(this).css('cursor', 'pointer');
        });
        
        $('#galerie_forward').click(function(){
            change_galerie_image('forward');
            return false;
        }).mouseenter(function(){
            $(this).css('cursor', 'pointer');
        });
    } 
    catch (e) {
    
    }
    
    try {
        var big_bild = bild_array[0];
        
        $('#hotelverwaltung_detail_galerie_thumbs ul li img').click(function(){
            for (var i = 0; i < thumb_array.length; i++) {
                if (thumb_array[i] == $(this).attr('src')) {
                    big_bild = bild_array[i];
                    aktuelles_bild_id = i;
                }
            }
            
            $('#hotelverwaltung_detail_galerie_big img').attr('src', big_bild);
            return false;
        }).mouseenter(function(){
            $(this).css('cursor', 'pointer');
        });
    } 
    catch (e) {
        alert(e);
    }
    
    try {
        $('.special_galerie_fullview').mouseenter(function(){
            //$('.special_galerie_fullview div').css('display', 'block');
        }).mouseleave(function(){
            //$('.special_galerie_fullview div').css('display', 'hidden');
        });
    } 
    catch (e) {
        alert(e);
    }
    
    try {
    
        $("a.greybox").click(function()
		{			
            var t = this.title || this.href;
            GB_show(t, this.href, 420, 420, 'greybox_resize');
            return false;
        });
    } 
    catch (e) {
        //alert(e);
    }
    
    
    try {
        var feld1 = $('#special_detail_spalte1').height();
        var feld2 = $('#special_detail_spalte2').height();
        
        
        var abbruch = false;
        
        var feld1_array = $('#special_detail_spalte1').html().split(' ');
        var feld2_array = $('#special_detail_spalte2').html().split(' ');
        
        var counter = 0;
        
        while ((feld1 > feld2) && (counter < 50)) {
            //alert(feld1 + ' ' + feld2);
            
            letztes_wort = feld1_array[feld1_array.length - 1];
            
            //alert(letztes_wort);
            
            feld1_array.pop();
            feld2_array.unshift(letztes_wort);
            
            $('#special_detail_spalte1').html(implode(' ', feld1_array));
            $('#special_detail_spalte2').html(implode(' ', feld2_array));
            
            feld1 = $('#special_detail_spalte1').height();
            feld2 = $('#special_detail_spalte2').height();
            
            counter++;
        }
        
        
        //alert(sort_array);
    } 
    catch (e) {
        //alert(e);
    }
    
    
    try {
        $().ready(function(){
            var va_kalender_events_array = va_kalender_events.split('||');
            
            var events = [];
            
            for (i = 0; i < va_kalender_events_array.length; i++) {
                if (va_kalender_events_array[i] != "") {
                    var dump = va_kalender_events_array[i].split('|');
                    
                    var new_entry = {
                        EventID: dump[0],
                        "Date": new Date(dump[1], dump[2], dump[3]),
                        "Title": dump[4],
                        URL: dump[5]
                    };
                    
                    events.push(new_entry);
                }
            }
            
            $.jMonthCalendar.Initialize({
                firstDayOfWeek: 1,
                headerHeight: 30,
                navLinks: {
                    enableToday: true,
                    enableNextYear: true,
                    enablePrevYear: true,
                    p: 'vorheriger Monat',
                    n: 'n&auml;chster Monat',
                    t: 'Heute',
                    showMore: 'Show More'
                }
            }, events);
            
            init_event_tooltip();
            
            //$.jMonthCalendar.AddEvents(events);
        });
    } 
    catch (e) {
        //alert(e);
    }
    
    try {
        for (var i = 1; i <= 6; i++) {
            if ($('#menu' + i)) {
            
                $('#menu' + i).mouseenter(function(){
                    display_subnavi('over', this.value);
                }).mouseleave(function(){
                    display_subnavi('out', this.value);
                });
            }
        }
    } 
    catch (e) {
        //alert(e);
    }
    
    try {
        //extrawurst fuer sehen und erleben (4)
        
        $('#subnavi4_highlights_um_bb').css('display', 'none');
        $('#subnavi4_highlights_umgebung').css('display', 'none');
        
        $('#subnavi4_a_highlights_in_bb').mouseenter(function(){
            change_active_sub_for_nav4(0, 'subnavi4_a_highlights_in_bb');
            return false;
        });
        $('#subnavi4_a_highlights_um_bb').mouseenter(function(){
            change_active_sub_for_nav4(1, 'subnavi4_a_highlights_um_bb');
            return false;
        });
        $('#subnavi4_a_highlights_umgebung').mouseenter(function(){
            change_active_sub_for_nav4(2, 'subnavi4_a_highlights_umgebung');
            return false;
        });
        
    } 
    catch (e) {
        alert(e);
    }
});

function greybox_resize()
{
	try {
	
		$("#GB_frame").load(function(){
			var width = $("#GB_frame").contents().find("img").width();
			var height = $("#GB_frame").contents().find("img").height();
			
			//alert(width + ' ' + height);
			
			$('#GB_window').width(width + 20);
			$('#GB_window').height(height + 42);
		});
	}
	catch (e)
	{
		//alert(e);
	}
}

function change_galerie_image(direction){
    try {
        if (direction == 'back') {
            var neue_bild_id = aktuelles_bild_id - 1;
        }
        else 
            if (direction == 'forward') {
                var neue_bild_id = aktuelles_bild_id + 1;
            }
        
        if (neue_bild_id < 0) {
            neue_bild_id = bild_array.length - 2;
        }
        else 
            if (neue_bild_id > (bild_array.length - 2)) {
                neue_bild_id = 0;
            }
        
        if (bild_array[neue_bild_id]) {
            var neues_bild = bild_array[neue_bild_id];
        }
        
        aktuelles_bild_id = neue_bild_id;
        
        $('#hotelverwaltung_detail_galerie_big img').attr('src', neues_bild);
        return false;
    } 
    catch (e) {
        //alert(e);
    }
    
}

function change_active_sub_for_nav4(id, liid){
    $('.subnavi4_links_aktiv').removeClass('subnavi4_links_aktiv');
    
    if (id == 0) {
        $('#subnavi4_highlights_in_bb').css('display', 'block');
        $('#subnavi4_highlights_um_bb').css('display', 'none');
        $('#subnavi4_highlights_umgebung').css('display', 'none');
    }
    else 
        if (id == 1) {
            $('#subnavi4_highlights_in_bb').css('display', 'none');
            $('#subnavi4_highlights_um_bb').css('display', 'block');
            $('#subnavi4_highlights_umgebung').css('display', 'none');
        }
        else 
            if (id == 2) {
                $('#subnavi4_highlights_in_bb').css('display', 'none');
                $('#subnavi4_highlights_um_bb').css('display', 'none');
                $('#subnavi4_highlights_umgebung').css('display', 'block');
            }
    
    $('#' + liid).addClass('subnavi4_links_aktiv');
    
    return false;
}

function implode(glue, pieces){
    // Joins array elements placing glue string between items and return one string  
    // 
    // version: 911.718
    // discuss at: http://phpjs.org/functions/implode    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Waldo Malqui Silva
    // +   improved by: Itsacon (http://www.itsacon.net/)
    // +   bugfixed by: Brett Zamir (http://brett-zamir.me)
    // *     example 1: implode(' ', ['Kevin', 'van', 'Zonneveld']);    // *     returns 1: 'Kevin van Zonneveld'
    // *     example 2: implode(' ', {first:'Kevin', last: 'van Zonneveld'});
    // *     returns 2: 'Kevin van Zonneveld'
    var i = '', retVal = '', tGlue = '';
    if (arguments.length === 1) {
        pieces = glue;
        glue = '';
    }
    if (typeof(pieces) === 'object') {
        if (pieces instanceof Array) {
            return pieces.join(glue);
        }
        else {
            for (i in pieces) {
                retVal += tGlue + pieces[i];
                tGlue = glue;
            }
            return retVal;
        }
    }
    else {
        return pieces;
    }
}

function init_event_tooltip(){
    try {
        $('.Event a').mouseenter(function(){
            var dump = '<div class="veranstaltungen_ov_container_tooltip" id="tooltipid">' + $('#veranstaltungen_ov_' + $(this).attr('value')).html() + '</div>';
            $(this).append(dump);
        }).mouseleave(function(){
            $('#tooltipid').remove();
        });
    } 
    catch (e) {
        //alert(e);
    }
}

function display_subnavi(type, id){
    if (type == "over") {
        $('#subnavi' + id).stop(true, true).fadeIn('slow', function(){
        });
        
        for (var i = 1; i <= 6; i++) {
            if (i != id) {
                $('#subnavi' + i).css('display', 'none');
            }
        }
    }
    else {
        $('#subnavi' + id).stop(true, true).fadeOut('slow', function(){
        });
    }
}

