/*################################################################################
    D E B U G
################################################################################*/

var debugModus = 0  ; // Debugmodus EIN = 1 || AUS = 0

function debug(txt)
{
    if(!debugModus || typeof(console) != "object") { return; }
    else { console.log(txt); }
}
debug("debugModus = true");


/*################################################################################
    $$$
################################################################################*/

// get Elements by Name

function $$$(obj)
{
    var obj = document.getElementsByName(obj);
    obj = (obj.length==1)?obj[0]:obj;
    return obj;
}


/*################################################################################
    F U N C T I O N S
################################################################################*/
/*
function stretchMainPage() {
    var windowHeight = window.getSize().y;
    var pageHeight = $('pageContainer').getSize().y;
    
    if(windowHeight > pageHeight) {
        $('pageContainer').setStyle('height', windowHeight);
    }
}
*/

function roomGalerie() {
    $$('.horizontalThumbs').each(function(thumb){
        var pfad = thumb.src.replace(/159/,995).replace(/102/,336);
        thumb.addEvent("mouseenter", function(){
            $('mainNavigation').setStyle("display", "none");
            $$('.subsection').setStyle("display", "none");
        }.wait(250));
        
        thumb.addEvent("click", function() {
            var headerImg = $$('.headerImages')[0];
			if($defined(headerImg) && "element" === $type(headerImg)) {
				headerImg.set("src", pfad);
			}
        });
        
        thumb.addEvent("mouseleave", function(){
            $('mainNavigation').setStyle("display", "block");
            $$('.subsection').setStyle("display", "block");
        }.wait(250));
    });
}


/*================================================================================
Booking Engine
================================================================================*/
function closeBE(){
	$('close').setStyle('display','none');		
}

function stopClosing(e) {
	e.stopPropagation();
}

function setBeIframe(orderId,price) {
	var container = $('beIframeContainer');
	var source		  = 'https://tracking.quisma.com/s.cfs?';
	
	container.empty();
	
	var request_params = $H({
		'qupid': 32202,
		'CID': 1,
		'OrderID': orderId,
		'TotalPrice': price,
		'CurrencySymbol': 'CHF'
	});
	
	request_params.each(function(value,key,hash){
		source += '&'+key+'='+value;
	});
	
	var frame = new Element('iframe',{
		src: source,
		width: 1,
		height: 1,
		frameborder: 0
	});
	
	frame.inject(container);
}

function removeBeIframe() {
	$('beIframeContainer').empty();
}

function showBookingEngine(path,parameters){
	var window_dimensions = window.getScrollSize();
	var be_background     = $('close');
	var be_content        = $('bookingEngineCont');
  var be_container	  = $('beContainer');
	var be_content_dim    = [965,720];
	
	be_background.style.height 	= window_dimensions.y+'px';
	be_content.style.width     	= be_content_dim[0]+'px';
	be_content.style.height    	= be_content_dim[1]+'px';
	be_content.style.left = ((window_dimensions.x-be_content_dim[0])/2)+'px'; 
	
	be_container.style.width     	= be_content_dim[0]+'px';
	be_container.style.height    	= be_content_dim[1]+'px';
	be_container.style.left = ((window_dimensions.x-be_content_dim[0])/2)+'px'; 
	
	window.scrollTo(0,0);
	
	var swfObj = new Swiff ('/reservation/Bookingengine.swf', {
	    id: 'bookingengine',
	    //width: '100%' , 
	    //height: '100%',
	    width: be_content.style.width,
	    height: be_content.style.height,
	    container: 'bookingEngineCont',
	   
	    vars: {
		 	url: path,
	        language: parameters.language,
		 	hotelId: parameters.hotel_id,
	        productId: parameters.product_id,
	        roomId: parameters.room_id,
	        packageCategoryId: parameters.package_category_id,
	        packageId: parameters.package_id,
	        individualOfferCategoryId: parameters.ioffer_category_id,
	        individualOfferId: parameters.ioffer_id
	    }
	});

	if($('bookingEngineCont').addEventListener){
		$('bookingEngineCont').addEventListener('click', stopClosing, false );	
	} else {
		$('bookingEngineCont').attachEvent('onclick', stopClosing);	
	}
	
	$('close').setStyle('display','block');
}

/*================================================================================
WINDOW EVENT LISTENERS
================================================================================*/
window.addEvent('load',function(){
	roomGalerie();
	
	if(true !== Browser.Engine.trident) {
		var styles = {
			corners: {
				radius: 10
			},
			shadow: {}
		};
		NETVISION.components.RoundedCornerImage.parse(".roundedCorners", styles);
	}
	//stretchMainPage();
});

window.addEvent("resize", function(){
   // stretchMainPage();
});

/*################################################################################
    D E B U G
################################################################################*/

var debugModus = 0  ; // Debugmodus EIN = 1 || AUS = 0

function debug(txt)
{
    if(!debugModus || typeof(console) != "object") { return; }
    else { console.log(txt); }
}
debug("debugModus = true");


/*################################################################################
    $$$

################################################################################*/

// get Elements by Name

function $$$(obj)
{
    var obj = document.getElementsByName(obj);
    obj = (obj.length==1)?obj[0]:obj;
    return obj;
}


/*################################################################################
    F U N C T I O N S
################################################################################*/

function stretchMainPage(event) {
	var windowHeight = ("load" === event) ? window.getScrollSize().y : window.getSize().y;
    var pageHeight	 = $('pageContainer').getSize().y;
    var header = null;

	if(null !== $('startHeaderPhwin')) {
		header = $('startHeaderPhwin');
	} else if(null !== $('startHeaderBloom')) {
		header = $('startHeaderBloom');
	} else if(null !== $('header')) {
		header = $('header');
	} else if(null !== $('headerPhwin')) {
		header = $('headerPhwin');
	} else if(null !== $('headerBloom')) {
		header = $('headerBloom');
	}
	
	var mainContainer = $('mainContainerPhwin') || $('mainContainerBloom');
	var footer = $('footer');
	
	if($('order_options')) {
		var contentHeight = header.getSize().y + mainContainer.getSize().y + ($('order_options').getSize().y - 40);
	} else {
		var contentHeight = header.getSize().y + mainContainer.getSize().y + 12;
	}
	
    if(windowHeight > pageHeight || windowHeight-footer.getSize().y-contentHeight > 0) {
		var effHeight = (windowHeight > contentHeight) ? windowHeight : contentHeight;
        $('pageContainer').setStyle('height', effHeight);
    } else {
		$('pageContainer').setStyle("height",contentHeight+footer.getSize().y);
	}
}


function roomGalerie() {
    $$('.horizontalThumbs').each(function(thumb){
        if($defined(thumb.src)) {
        	var pfad = thumb.src.replace(/159/,995).replace(/102/,336);
            thumb.addEvent("mouseenter", function(){
                $('mainNavigation').setStyle("display", "none");
                $$('.subsection').setStyle("display", "none");
            }.wait(250));
            
            thumb.addEvent("click", function() {
                var headerImg = $$('.headerImages')[0];
    			if($defined(headerImg) && "element" === $type(headerImg)) {
    				headerImg.set("src", pfad);
    			}
            });
            
            thumb.addEvent("mouseleave", function(){
                $('mainNavigation').setStyle("display", "block");
                $$('.subsection').setStyle("display", "block");
            }.wait(250));
        }
    });
}


/*================================================================================
Booking Engine
================================================================================*/
function closeBE(){
	$('close').setStyle('display','none');		
}

function stopClosing(e) {
	e.stopPropagation();
}

function setBeIframe(orderId,price) {
	var container = $('beIframeContainer');
	var source		  = 'https://tracking.quisma.com/s.cfs?';
	
	container.empty();
	
	var request_params = $H({
		'qupid': 32202,
		'CID': 1,
		'OrderID': orderId,
		'TotalPrice': price,
		'CurrencySymbol': 'CHF'
	});
	
	request_params.each(function(value,key,hash){
		source += '&'+key+'='+value;
	});
	
	var frame = new Element('iframe',{
		src: source,
		width: 1,
		height: 1,
		frameborder: 0
	});
	
	frame.inject(container);
}

function removeBeIframe() {
	$('beIframeContainer').empty();
}

function showBookingEngine(path,parameters){
	var window_dimensions = window.getScrollSize();
	var be_background     = $('close');
	var be_content        = $('bookingEngineCont');
  var be_container	  = $('beContainer');
	var be_content_dim    = [965,720];
	
	be_background.style.height 	= window_dimensions.y+'px';
	be_content.style.width     	= be_content_dim[0]+'px';
	be_content.style.height    	= be_content_dim[1]+'px';
	be_content.style.left = ((window_dimensions.x-be_content_dim[0])/2)+'px'; 
	
	be_container.style.width     	= be_content_dim[0]+'px';
	be_container.style.height    	= be_content_dim[1]+'px';
	be_container.style.left = ((window_dimensions.x-be_content_dim[0])/2)+'px'; 
	
	window.scrollTo(0,0);
	
	var swfObj = new Swiff ('/reservation/Bookingengine.swf', {
	    id: 'bookingengine',
	    //width: '100%' , 
	    //height: '100%',
	    width: be_content.style.width,
	    height: be_content.style.height,
	    container: 'bookingEngineCont',
	   
	    vars: {
		 	url: path,
	        language: parameters.language,
		 	hotelId: parameters.hotel_id,
	        productId: parameters.product_id,
	        roomId: parameters.room_id,
	        packageCategoryId: parameters.package_category_id,
	        packageId: parameters.package_id,
	        individualOfferCategoryId: parameters.ioffer_category_id,
	        individualOfferId: parameters.ioffer_id
	    }
	});

	if($('bookingEngineCont').addEventListener){
		$('bookingEngineCont').addEventListener('click', stopClosing, false );	
	} else {
		$('bookingEngineCont').attachEvent('onclick', stopClosing);	
	}
	
	$('close').setStyle('display','block');
}

/*================================================================================
WINDOW EVENT LISTENERS
================================================================================*/
window.addEvent('load',function(){
	roomGalerie();
	
	if(true !== Browser.Engine.trident) {
		var styles = {
			corners: {
				radius: 10
			},
			shadow: {}
		};
		NETVISION.components.RoundedCornerImage.parse(".roundedCorners", styles);
	}
	stretchMainPage("load");
});

window.addEvent("resize", function(){
    stretchMainPage("resize");
});


/*################################################################################
reCAPTCHA
################################################################################*/

var RecaptchaOptions = {
	theme : 'custom',
	lang : 'de'
};


/*################################################################################
CMS Alert
################################################################################*/

function cmsAlert(title, content, close, msgtype){
Alert({
	title: title,
	content: '<p>'+content+'</p><a class="Right" style="display:block"'
    				+' href="javascript:overlay.hide()">'
    				+close+'</a>',
    type: msgtype
});
}







