// plik zawiera szablony do każdego z widoków HIB

hib.slideshowTemplate = function(){
    out = [];
    out.push('<ul class="tt_hibImageContent">');
    //out.push('<div id="divImg"></div>'); //<img id="hotelbild" alt="" src="" class="varHeight"/><img id="spare" alt="" src="" class="varHeight"/></div>'];
    out.push(hib.getImageWithFrame2('<div id="divImg"></div>'));
    out.push('<div id="subline">&nbsp;</div><div id="bildvon">&nbsp;</div>');
    out.push('<ul id="divNavi">');
    out.push('<li><img id="zurueck_2" onclick="if(this.slideObj)this.slideObj.showFirst();" alt="" src=""/></li>');
    out.push('<li><img id="zurueck_1" onclick="if(this.slideObj)this.slideObj.showPrev();" alt="" src=""/></li>');
    out.push('<li id="auto" title="uruchom automatyczną zmianę zdjęć" onclick="this.slideObj.auto()"></li>');
    out.push('<li id="resize" title="zmień rozmiar zdjęcia" onclick="this.slideObj.resize()"></li>');
    out.push('<li><img id="vor_1" alt="" onclick="if(this.slideObj)this.slideObj.showNext();" src=""/></li>');
    out.push('<li><img id="vor_2" alt="" onclick="if(this.slideObj)this.slideObj.showLast();" src=""/></li>');
    out.push('</ul>');
    out.push('</ul>');
    return out.join('\n');
}
	 
hib.showRegInfo = function ( nodeName ){
    var infoNode = nodeName.substr(6);
    var out = ['<div id="" class="tt_floatRight" style="">'];
    out.push('<div class="" style="">');
    out.push(hib.getImageWithFrame(this.currentDataNode[nodeName].thumbnail.name));
    out.push('</div>');
    out.push('<div class="" style="">');
    out.push('<div class="tt_hibTitle" style="">' + this.currentDataNode.navigation['menuItem'+infoNode] + '</div>');
    out.push('<div class="tt_hibSubTitle" style="">' + this.currentDataNode[nodeName].region + ' (' + this.currentDataNode[nodeName].country + ')</div>');
    out.push('<div class="tt_hibLeadin" style="">' + this.currentDataNode[nodeName].teaser + '</div>');
    out.push('<div class="tt_hibDescription" style="">' + this.currentDataNode[nodeName].description.replace( this.currentDataNode[nodeName].teaser, '' ) + '</div>');
    out.push('</div>');
    //out.push('<img src="' + this.currentDataNode[nodeName].thumbnail.name + '" alt="" class="varHeight"/>');
    //out.push('<h1>' + this.currentDataNode.navigation['menuItem'+infoNode] + '</h1>');
    //out.push('<h2>' + this.currentDataNode[nodeName].region + ' (' + this.currentDataNode[nodeName].country + ')</h2>');
    //out.push('<p class="teaser">' + this.currentDataNode[nodeName].teaser + '</p>');
    //out.push('<p class="desc">' + this.currentDataNode[nodeName].description.replace( this.currentDataNode[nodeName].teaser, '' ) + '</p>');
    out.push('</div>');

    //$(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('reginfo');
    $(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('tt_floatRight tt_hibRightContent');
}
    
hib.showRegFacts = function(){    
    var nodePart = this.currentDataNode.regionFactsAndFigures;
		  
    with (nodePart){
        var out = ['<img src="'+flag.name+'" alt="" class="tt_floatRight" style="" />'];
        out.push('<div class="tt_hibTitle tt_floatLeft" style="">Dane i fakty</div>');
        out.push('<div class="tt_clearLeft"></div>');
        out.push('<div class="tt_hibSubTitle tt_floatLeft" style="">'+region+' ('+country+')</div>');
        out.push('<div class="tt_clear"></div>');
        out.push('<div class="tt_hibInsideTextTitle">Najlepszy czas podróży</div><div class="tt_hibDescription">'+bestTimeToTravel+'</div>');
        out.push('<div class="tt_hibInsideTextTitle">Regulacje dotyczące wjazdu</div><div class="tt_hibDescription">'+entryRequirements+'</div>');
        out.push('<div class="tt_hibInsideTextTitle">Regulacje dotyczące szczepień</div><div class="tt_hibDescription">'+vaccinationRequirements+'</div>');
        out.push('<div class="tt_hibInsideTextTitle">Zalecenia szczepień:</div><div class="tt_hibDescription">'+vaccinationRecommendation+'</div>');
        out.push('<div class="tt_hibInsideTextTitle">Położenie geograficzne:</div><div class="tt_hibDescription">'+geographicalPosition+'</div>');
        out.push('<div class="tt_hibInsideTextTitle">Język urzędowy:</div><div class="tt_hibDescription">'+officialLanguage+'</div>');
        out.push('<div class="tt_hibInsideTextTitle">Stolica regionu:</div><div class="tt_hibDescription">'+capital+'</div>');
        out.push('<div class="tt_hibInsideTextTitle">Waluta:</div><div class="tt_hibDescription">'+currency+'</div>');
        out.push('<div class="tt_hibInsideTextTitle">Numer kierunkowy kraju:</div><div class="tt_hibDescription">'+countryCode+'</div>');
        out.push('<div class="tt_hibInsideTextTitle">Przesunięcie czasu:</div><div class="tt_hibDescription">'+timeShift+'</div>');
        out.push('<div class="tt_hibInsideTextTitle">Zasilanie/napięcie:</div><div class="tt_hibDescription">'+powerSupplyAndVoltage+'</div>');
        /*
            out.push('<h2>'+region+' ('+country+')</h2>');
            out.push('<img src="'+flag.name+'" alt="" class="varHeight"/>');
            out.push('<h3>Najlepszy czas podróży</h3><p>'+bestTimeToTravel+'</p>');
            out.push('<h3>Regulacje dotyczące wjazdu</h3><p>'+entryRequirements+'</p>');
            out.push('<h3>Regulacje dotyczące szczepień</h3><p>'+vaccinationRequirements+'</p>');
            out.push('<h3>Zalecenia szczepień:</h3><p>'+vaccinationRecommendation+'</p>');
            out.push('<h3>Położenie geograficzne:</h3><p>'+geographicalPosition+'</p>');
            out.push('<h3>Język urzędowy:</h3><p>'+officialLanguage+'</p>');
            out.push('<h3>Stolica regionu:</h3><p>'+capital+'</p>');
            out.push('<h3>Waluta:</h3><p>'+currency+'</p>');
            out.push('<h3>Numer kierunkowy kraju:</h3><p>'+countryCode+'</p>');
            out.push('<h3>Przesunięcie czasu:</h3><p>'+timeShift+'</p>');
            out.push('<h3>Zasilanie/napięcie:</h3><p>'+powerSupplyAndVoltage+'</p>');
				*/
        }
    with (nodePart.embassy) {
        out.push('<div class="tt_hibInsideTextTitle">Adres ambasady:</div><div class="tt_hibDescription">' + name + '<br />' + address + '<br />' + village + '<br />' + web + '<br />' + email + '<br />' + phone + '<br />' + fax + '</div>');
        }
    //$(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('reginfofacts');
    $(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('tt_floatRight tt_hibRightContent');
}
    
hib.showRegSlide = function() {
    out = this.slideshowTemplate( );
    //$(this.config.contentElement, this.mainElement ).html(out).removeClass().addClass('regslide');
    $(this.config.contentElement, this.mainElement ).html(out).removeClass().addClass('tt_floatRight tt_hibRightContent tt_hibSlideContent');
    this.slide = new slideshow( this.currentDataNode.regionSlideShow.slideShowImages, this.pfadImages, this.mainElement );
    this.slide.init();
}
	 
hib.showWeather = function() {
    var cNode = this.currentDataNode;
    var cNode2 = cNode.weatherForecastsOneDay[0];

    var dayPrognose=[];
    for (var a=0;a<5;a++){
        var dateNode = cNode.weatherForecastsOneDay[a].date;
        var dateObject = new Date(dateNode.substr(0,4)+'/'+dateNode.substr(5,2)+'/'+dateNode.substr(8,2));
        dayPrognose.push({
            day: this.makeDate(dateObject.getTime()),
            img: cNode.weatherForecastsOneDay[a].iconWeatherSituation.name,
            tempDay: cNode.weatherForecastsOneDay[a].temperatureAirDay,
            tempNight: cNode.weatherForecastsOneDay[a].temperatureAirNight
            });
    }
        
    var out = ['<div class="tt_hibTitle" style="">Prognoza pogody</div>'];
    out.push('<div class="tt_hibSubTitle" style="">'+cNode.area+' ('+cNode.country+')</div>');
    out.push('<div class="tt_hibForecastTitle" style="">Aktualna progrnoza pogody na '+dayPrognose[0].day+'</div>');
    out.push('<div class="">');
    out.push('<div class="tt_hibWeatherDetails">&nbsp;</div>');
    out.push('<div class="tt_hibWeatherDetails">');
    out.push('<div class="tt_hibWeatherDetailsTitle">Sytuacja pogodowa</div>');
    out.push('<img src="' + pfad_images + '/hib/'+dayPrognose[0].img+'" alt="" class="tt_paddingTop3"/><br/>' + cNode2.iconWeatherSituation.subline);
    out.push('</div><div class="tt_hibWeatherDetails"">');
    out.push('<div class="tt_hibWeatherDetailsTitle">Temperatura</div>');
    //out.push('<img src="/images/content/wetter/temperatur.gif" alt="" class="temperatures"/>');
    out.push('<img src="' + pfad_images + '/hib/temperatur.gif" alt="" class="temperatures"/>');
    out.push('<table style="margin: auto;"><tr><td align="left">dzień</td><td align="right">'+dayPrognose[0].tempDay+'°C</td></tr><tr><td align="left">noc</td><td align="right">'+dayPrognose[0].tempNight+'°C</td></tr><tr><td align="left">woda</td><td align="right">'+cNode2.temperatureWater+'°C</td></tr></table>');
    out.push('</div><div class="tt_hibWeatherDetails"">');
    out.push('<div class="tt_hibWeatherDetailsTitle">Prawdopod. deszczu</div>');
    out.push('<img src="' + pfad_images + '/hib/'+cNode2.iconRain.name.substr(cNode2.iconRain.name.lastIndexOf('/'))+'" alt="" class="varHeight"/><div>' + cNode2.chanceForRain+'%</div>');
    out.push('</div><div class="tt_hibWeatherDetails"">');
    out.push('<div class="tt_hibWeatherDetailsTitle">Kierunek wiatru i jego prędkość</div>');
    out.push('<img src="' + pfad_images + '/hib/'+cNode2.iconWindDirectionAndSpeed.name.substr(cNode2.iconWindDirectionAndSpeed.name.lastIndexOf('/'))+'" alt="" class="varHeight" /><div>'+cNode2.windSpeedMinKmph+' - '+cNode2.windSpeedMaxKmph+' km/h</div>');
    out.push('</div>');
    out.push('</div>');
    out.push('<div class="tt_clear" style=""></div>');
    out.push('<div class="tt_hibForecastTitle" style="">Prognoza pogody na najbliższe dni</div>');
    out.push('<div class="dayprognose">');
    out.push('<div class="tt_hibWeatherDetails"><div class="day tt_hibWeatherDetails"><div style="height: 61px;"></div><div class="tt_paddingTop3"><div class="tt_hibWeatherDetailsValue" style="border-bottom: 1px solid #6F7479;">Dzień</div><div class="tt_hibWeatherDetailsValue">Noc</div></div></div></div>');        
    for (var n=1; n<5 ;n++ ){/*dayPrognose[n].day.replace(/,/,'')*/
        out.push('<div class="day tt_hibWeatherDetails"><div>'+(dayPrognose[n].day).substr(0, (dayPrognose[n].day).indexOf(' ') - 1)+'</div><div class="tt_paddingTop3"><img src="' + pfad_images + '/hib/'+dayPrognose[n].img+'" alt="" class="varHeight"/>');
        out.push('<div class="tt_hibWeatherDetailsValue" style="border-bottom: 1px solid #6F7479;">'+dayPrognose[n].tempDay+'°C</div><div class="tt_hibWeatherDetailsValue">'+dayPrognose[n].tempNight+'°C</div></div></div>');
    }        
    out.push('</div>');
        
    //$(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('weather');
    $(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('tt_floatRight tt_hibRightContent tt_hibWeatherContent');
}

hib.climmaRows = [	{
    name:'Maks. temperatura',
    img:'/images/content/wetter/klimatabelle/temp_plus.gif',
    dataName:'max'
},
{
    name:'Min. temperatura',
    img:'/images/content/wetter/klimatabelle/temp_min.gif',
    dataName:'min'
},
{
    name:'Temperatura wody',
    img:'/images/content/wetter/klimatabelle/wassertemp.gif',
    dataName:'water'
},
{
    name:'Godziny słoneczne',
    img:'/images/content/wetter/klimatabelle/sonnenstunden.gif',
    dataName:'sunhours'
},
{
    name:'Dni deszczowe',
    img:'/images/content/wetter/klimatabelle/regentage.gif',
    dataName:'raindays'
},
{
    name:'Wilgotność wzgl.',
    img:'/images/content/wetter/klimatabelle/luftfeuchte.gif',
    dataName:'humidity'
},
],

hib.showClimma = function() {
    var cNode = this.currentDataNode;
    var monthsArray = ['sty','lut','mar','kwi','maj','cze','lip','sie','wrz','paź','lis','gru'];
        
    var monthData=[];
    with (cNode){
        for(var a=0;a<12;a++){
            monthData.push({
                max : climaMaxTemperature[a],
                min : climaMinTemperature[a],
                water : (climaSeaTemperature[a]<-100)?'-':climaSeaTemperature[a],
                sunhours : climaHoursOfSunshine[a],
                raindays : climaDaysOfRain[a],
                humidity : climaRelativeHumidity[a],
                name : monthsArray[a]
                });
        }
        }
		
    var out = ['<div class="tt_hibTitle" style="">Tabela klimatyczna</div>'];
    out.push('<div class="tt_hibSubTitle" style="">'+cNode.area+' ('+cNode.country+')</div>');
    out.push('<table class="tt_climaTable" cellspacing="1"><tr><th class="col1"></th>');
    for (var n=0; n<12 ;n++ ){
        out.push('<th>'+monthData[n].name+'</th>');
    }
    out.push('</tr><tr>');
    for (var row=0; row<6; row++ ){
        out.push('<td class="col1"><img src="'+this.climmaRows[row].img+'" alt="" style="vertical-align: bottom; margin-right: 5px;" />'+this.climmaRows[row].name+'</td>');
        for (var col=0; col<12 ; col++ ){
            out.push('<td>'+monthData[col][this.climmaRows[row].dataName]+'</td>');
        }
        out.push('</tr>');
    }
    out.push('</table>');
    //$(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('climma');
    $(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('tt_floatRight tt_hibRightContent');
}


hib.makeDate = function( ts ){
    var weekFullDaysArray = ['Niedziela','Poniedziałek','Wtorek','Środa','Czwartek','Piątek','Sobota'];
    var d = new Date( ts );
    var day = d.getDate();
    var month = d.getMonth()+1;
    if(day<10) day = '0' + day; 
    if(month<10) month = '0'+month; 
    return weekFullDaysArray[ d.getDay() ]+', ' + day + '.' + month + '.' + d.getFullYear();
}
    
hib.showHotelDescription = function(){
    var cNode = this.currentDataNode;
    var out = []


    // opis hotelu istnieje
    if (cNode.description && cNode.description.length!=0) {

        out.push('<div class="tt_hibTitle" style="">Hotel</div>');
        out.push('<div class="tt_hibSubTitle tt_floatLeft" style="font-weight: bold;">'+cNode.hotelnameIFF+'</div>');
        out.push('<div class="tt_floatLeft" style="padding-top: 3px; padding-left: 5px;">' + this.makeStars(cNode.category) + '</div>');
        out.push('<div class="tt_clear"></div>');
        out.push('<div class="tt_hibSubTitle tt_floatLeft" style="">'+cNode.region + ((!!cNode.country)?(' (' + cNode.country + ')'):'') + '</div>');
        out.push('<div class="tt_clear"></div>');
        out.push(this.makeOperatorsList());
        out.push( '<div class="tt_imageview">' + this.slideshowTemplate() + '</div>' );
        out.push( '<span class="hdesc"></span>' );
			
        //$(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('hotdesc');
        $(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('tt_floatRight tt_hibRightContent');
			
        $('.hdesc').html(cNode.description); // treść opisu należy wkleić później ze względu na IE który wywala się przy niedomknietych tagach, które moga być w opisie
			
        // w przypadku gdy nie ma żadnego obrazka dorzucamy miniaturkę
        if (this.currentDataNode.images.length==0){
				
            this.currentDataNode.images=[{
                direction:"horizontal", 
                subline:"", 
                name:"http://images.traveltainment.de/images/content/booking_thumbs_gr/" + IFF5000(cNode.idsForMoreContent.iffCode) +"/THB_999_H" + cNode.idsForMoreContent.iffCode + ".jpg"
                }];
				
        }
			
        this.slide = new slideshow( this.currentDataNode.images, this.pfadImages, this.mainElement );
        //		this.slide.context = this.slide;
        //this.slide.cfgAllowAuto = false;
        this.slide.cfgAllowResize = false;
        this.slide.currentResize = 0;
        this.slide.init();
			
    } else {
			
        //$(this.config.contentElement, this.mainElement ).html(this.config.noDescriptionText).removeClass().addClass('nohoteldesc');			
        $(this.config.contentElement, this.mainElement ).html(this.config.noDescriptionText).removeClass().addClass('tt_floatRight tt_hibRightContent');
			
    }
		
    function IFF5000(iff){
        return ('0000' + parseInt(iff/5000)*5000 ).slice(-5);
    }
}
    
hib.makeStars = function( cat ){
    var strStars="";
    while(cat>0){
        strStars+='<img src="'+((cat>0.5)?this.config.starImage:this.config.starHalfImage)+'" alt="">';
        cat--;
    }
    return strStars;
}
    
hib.selectHotDescVA = function(el){
    hib.currentVA = el.src.split('/').slice(-1).toString().slice(0,-4);
    hib.getDataForContent();
}
    
hib.makeOperatorsList = function(){

    var out = [];
    with (this.currentDataNode){

        // zabezpieczenie przed błędem w przypadku braku danych o TO
        if ( !allTourOperatorsInHotel || allTourOperatorsInHotel.length==0) return '';			

        if (allTourOperatorsInHotel.length>1){
            out.push('<div class="tt_valogos"><p>Ten hotel jest dostępny w ofercie następujących organizatorów:</p>');
            out.push('<div class="tt_operatorsListCiontainer">');
            for (var n in allTourOperatorsInHotel) {
                var actual = (tourOperator.tourOperatorShort == allTourOperatorsInHotel[n].tourOperatorShort )?'class="sel"':'';
                if (n!='len') out.push('<img src="'+allTourOperatorsInHotel[n].logo.name+'" '+actual+' class="varHeight" alt="'+allTourOperatorsInHotel[n].tourOperatorLong+'" onclick="hib.selectHotDescVA(this)" title="'+allTourOperatorsInHotel[n].tourOperatorLong+'"/>');
                var to = allTourOperatorsInHotel[n].tourOperatorShort; 
                if (to=='NEC' || to=='TUI') out.push('<span>DE</span>');
            }
            out.push('</div>');
            out.push('<p>Aby zobaczyć opis hotelu konkretnego organizatora proszę kliknąć na wybrane logo. </p></div>');
        }
        out.push('<p class="currentVA' + ((allTourOperatorsInHotel.length==1)?' onlyonedesc':'')+ '">Opis pochodzi z katalogu '+ tourOperator.tourOperatorLong+ '<img src="'+tourOperator.logo.name+'" alt="" class="varHeight" style="vertical-align: middle;" /></p>');				
        }
    return out.join('\n');
}
    
hib.showMoreFotos = function( iNode ){
    out = this.slideshowTemplate( );
    //$(this.config.contentElement, this.mainElement ).html(out).removeClass().addClass('hotpic');
    $(this.config.contentElement, this.mainElement ).html(out).removeClass().addClass('tt_floatRight tt_hibRightContent');
    this.slide = new slideshow( iNode , this.pfadImages, this.mainElement  );
    this.slide.init();
}
    
hib.showHotelMap = function(){
    var cNode = this.currentDataNode;
    out = ['<div class="tt_hibTitle" style="">Mapa</div>'];
    out.push('<div class="tt_hibSubTitle" style="">'+cNode.country+', '+cNode.area+', '+cNode.village+'</div>');
    //out.push('<div class="hmap"><img src="'+cNode.image.name.replace('/vs/','/vs/PL/')+'" alt="" id="hmap"/>');
    out.push('<div class="hmap"><img src="'+cNode.image.name+'" alt="" id="hmap"/>');
    out.push('<img id="hpoint" src="'+this.pfadImages+'/hotel_ani.gif" alt="" /></div>');
    //$(this.config.contentElement, this.mainElement ).html(out.join('')).removeClass().addClass('hotmap');
    $(this.config.contentElement, this.mainElement ).html(out.join('')).removeClass().addClass('tt_floatRight tt_hibRightContent');
    $('#hmap').load(this.placeHotelMap);
}
    
hib.placeHotelMap = function(){
    var movex = ($(this.parentNode).width()-$(this).width())/2;
    $(this).css('left',movex+'px').fadeIn('slow');
    $('#hpoint').css( {
        left:hib.currentDataNode.mapPositionX-9+movex+'px',
        top:hib.currentDataNode.mapPositionY-9+'px'
        }).fadeIn('slow');
}
    
hib.showPanoramas = function(){
    //$(this.config.contentElement, this.mainElement ).html( this.panoramaTemplate() ).removeClass().addClass('hotpan');
    $(this.config.contentElement, this.mainElement ).html( this.panoramaTemplate() ).removeClass().addClass('tt_floatRight tt_hibRightContent');
    this.panorama = new panorama( this.currentDataNode.panoramas );
}
    
hib.panoramaTemplate = function(){
    //var out=['<div id="winpan"></div>'];
		
    var out=[hib.getImageWithFrame2('<div id="winpan"></div>')];
		
    out.push('<div class="pan_navi"><img src="'+this.pfadImages+'hib/plus.gif" alt="plus" onclick="hib.panorama.panview.zoomPlus( 1.1 )" />');
    out.push('<img src="'+this.pfadImages+'hib/zero.gif" alt="rozmiar normalny" onclick="hib.panorama.panview.zoomFactor( 1 )" />');
    out.push('<img src="'+this.pfadImages+'hib/minus.gif" alt="minus" onclick="hib.panorama.panview.zoomMinus( 1.1 )" />');
    out.push('<img src="'+this.pfadImages+'hib/stop.gif" alt="stop" onclick="hib.panorama.panview.stopMoving()" />');
    out.push('<img src="'+this.pfadImages+'hib/anim_right.gif" alt="w lewo" onclick="hib.panorama.panview.startRotate(\'left\')" />');
    out.push('<img src="'+this.pfadImages+'hib/anim_left.gif" alt="w prawo" onclick="hib.panorama.panview.startRotate(\'right\')" />');
    out.push('</div><div id="panselect"></div>');
    return out.join('');
}
    
hib.showHotelOpinions = function(){
    op.init(this.currentIFF, $(this.config.contentElement, this.mainElement ) );
    //$(this.config.contentElement, this.mainElement ).removeClass().addClass('hopinios');
    $(this.config.contentElement, this.mainElement ).removeClass().addClass('tt_floatRight tt_hibRightContent');
}
    
hib.showGallery = function(){
    var bigPictures = [];
    var out = [''];
		
    for (var n in this.currentDataNode.images){
        out.push('<div class="round"><img src="' + this.currentDataNode.images[n].nameSizeLow + '" alt="' + this.currentDataNode.images[n].subline + '" /><p>' + this.currentDataNode.images[n].subline + '</p></div>');
        bigPictures.push(this.currentDataNode.images[n].nameSizeHigh);
    }
		
    var hd_images = this.findResult('WSfileTTWSHotel/getDescriptionForHotel',{
        iffCode:this.currentIFF
    });
    if (hd_images && hd_images.images) {
        for (var n in hd_images.images){
            out.push('<div><img src="' + hd_images.images[n].name + '" alt=""/><p></p></div>');
            bigPictures.push( hd_images.images[n].name );
        }
    }
		
    $(this.config.contentElement, this.mainElement ).html( out.join('') ).removeClass().addClass('gallery');
		
    var x=0
    $('img', this.config.contentElement).each(function(){
        $(this)
        .data('image',bigPictures[x++])
        .click(
            function(){
            //alert(  $(this).data('image') );
            }
            ).mouseover(
            function( event ){
                $(hib.config.contentElement).parent()
                .append('<div id="cloudImg" ><div class="rShadow"><div class="imgContainer"><img src="'+$(this).data('image')+'"/></div></div><div class="bShadow"></div><div class="rbShadow"></div></div>') ;
                $('.imgContainer img').load( fixWidthForIE7 );
                fixWidthForIE7();
                setCloudPosition( event );
            }
            ).mouseout(
            function(){
                $('#cloudImg')
                .remove();
            }
            ).mousemove(
            function( event ){
                setCloudPosition( event );
            }
            )
    });
		
    function setCloudPosition( e ){
        $('#cloudImg')
        .css( {
            left: e.pageX-100+'px', 
            top: e.pageY+36+'px'
        })			
    }
		
    function fixWidthForIE7(){
			
        // wyjdź gdy przeglądarka inna niż IE7
        if ( navigator.appVersion.search('MSIE 7.0')==-1 && navigator.appVersion.search('MSIE 8.0')==-1 ) return;
			
        // specjalnie dla ie7
        // trzeba na "twardo" ustalić szerokość DIVA, bo 100% nie działa
        var w = $('.imgContainer img').width();
        if (w!=0) $('.bShadow', $(hib.config.contentElement).parent()).width( $('.imgContainer').parent().parent().width() );
			
    }
		
    $('img:first, img:last',this.config.contentElement).addClass('varHeight');
		
}
	
hib.showAreaInfo = function( selectedPOItype ){
    var cNode = this.currentDataNode
    var out = [];
    out.push('<div class="poilist"><table id="poilist" cellspacing="0" cellpadding="0"></table><div id="poipager"></div></div>');
    out.push('<div class="poipanorama" style=""><h1></h1>'+this.panoramaTemplate()+'<ul class="menu" style="padding-left: 15px;"><li onclick="hib.areashow.switchToList()">powrót</li><li onclick="hib.areashow.switchToImages()">zdjęcia</li></ul></div>');
    out.push('<div class="poiimages" style=""><h1></h1>'+this.slideshowTemplate()+'<ul class="menu" style="padding-left: 15px;"><li onclick="hib.areashow.switchToList()">powrót</li><li onclick="hib.areashow.switchToPanorama()">panoramy</li></ul><p class="desc"></p></div>');
    out.push('<div class="tt_clear"></div>');
		
    //$(this.config.contentElement, this.mainElement ).html( out.join('') ).removeClass().addClass('hotarea');
    $(this.config.contentElement, this.mainElement ).html( out.join('') ).removeClass().addClass('tt_floatRight tt_hibRightContent');
		
    if (!this.areashow) {
        this.areashow = new areainfo( cNode, selectedPOItype, this.config );
    } else {
        this.areashow.currentPoiType = selectedPOItype;
        this.areashow.currentSubpage = 0;
        this.areashow.menu = null;
    }
		
    this.areashow.drawPOIsList();
}
	
hib.showGoogleMap = function(){
    var cNode = this.currentDataNode;
		
    if (cNode.latitude && cNode.longitude){
        var out = ['<div id="gmap" style="width: 750px; height: 450px; background: url(http://geofinder.web4you.com.pl/template/loader.gif); background-repeat: no-repeat; background-position: center;"></div>'];
        $(this.config.contentElement, this.mainElement ).html( out.join('') ).removeClass().addClass('gmap');
			
        load();			
    } else {
        $(this.config.contentElement, this.mainElement ).html( '<p class="nogmap"> Niestety nie możemy wyświetlić położenia tego hotelu</p>' ).removeClass().addClass('gmap');
    }
    function load() {
        if (GBrowserIsCompatible()) {
            var map = new GMap2( $('#gmap').get(0) );
            map.addControl(new GLargeMapControl());
            var MapTypes = map.getMapTypes();
            MapTypes[0].getName= function() {
                return "Mapa";
            }
            MapTypes[1].getName = function() {
                return "Satelita";
            }
            MapTypes[2].getName = function() {
                return "Hybryda";
            }
            map.addControl(new GMapTypeControl());
            map.setCenter(new GLatLng(cNode.latitude, cNode.longitude), 6);
            var marker = new GMarker(new GLatLng(cNode.latitude, cNode.longitude));
            map.addOverlay(marker);
        }
    }
},
        
hib.showSkiMainInfo = function(){
    var cdn = this.currentDataNode.generalInfo;
    var out = [
         '<div id="" class="tt_floatRight" style="">',
         '<div class="" style="">', (cdn.thumbnail.nameSizeMiddle)?hib.getImageWithFrame(cdn.thumbnail.nameSizeMiddle):'', '</div>',
         '<div class="" style="">',
              '<div class="tt_hibTitle" style="">Informacje o regionie narciarskim</div>',
              '<div class="tt_hibSubTitle" style="">' + cdn.region + ' (' + cdn.country + ')</div>',
              '<div class="tt_hibLeadin" style=""><b>' + cdn.subHeadLine + '</b></div>',
              '<div class="tt_hibLeadin" style="">' + cdn.teaser + '</div>',
         '</div>'];                  
    for( var n in hib.config.skiHeadLinesTranslation){
        var nodeName = hib.config.skiHeadLinesTranslation[n];
        if (cdn[n]) out.push( '<b>'+nodeName+'</b><p>'+cdn[n]+'</p>');
    }
    out.push('</div>');
    $(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('tt_floatRight tt_hibRightContent');
},
        
hib.showSkiGuideInfo = function(){
    var cdn = this.currentDataNode;
    var out = [
        '<div>',
            '<div class="tt_hibTitle" style="">Informacje o regionie narciarskim</div>',
            '<div class="tt_hibSubTitle" style="">' + cdn.region + ' (' + cdn.country + ')</div>',
            '<div class="tt_hibLeadin" style=""><b>Informacje podstawowe</b></div>',
        '</div>',
        '<table>',
            '<tr><th>Stoki narciarskie:</th><td>' + writeSkiRating(cdn.atAGlance.ratingSkiRuns) + '</td></tr>',
            '<tr><th>Trasy biegowe:</th><td>' + writeSkiRating(cdn.atAGlance.ratingCrossCountrySkiRuns) + '</td></tr>',
            '<tr><th>Après Ski - oferta:</th><td>' + writeSkiRating(cdn.atAGlance.ratingApresSki) + '</td></tr>',
            '<tr><th>Inne sporty zimowe:</th><td>' + writeSkiRating(cdn.atAGlance.ratingOtherWintersportsActivities) + '</td></tr>',
            '<tr><th>Przyjazdny dla rodzin:</th><td>' + writeSkiRating(cdn.atAGlance.ratingFamilyFriendly) + '</td></tr>',
            '<tr><th>Snowboard - oferta:</th><td>' + writeSkiRating(cdn.atAGlance.ratingSnowboardSpecials) + '</td></tr>',
            '<tr><th>Ski pass dla dorosłych:</th><td><b>' + cdn.atAGlance.skiPassAdult + '</td></tr>',
            '<tr><th>Ski Pass dla dzieci:</th><td><b>' + cdn.atAGlance.skiPassChild + '</td></tr>',
            '<tr><th>Sezon narciarski:</th><td><b>' + cdn.atAGlance.seasonDate + '</td></tr>',
        '</table>',
        '<p>' + cdn.atAGlance.skiSlope + '</p>'
    ];                  
    $(this.config.contentElement, this.mainElement ).html(out.join('\n')).removeClass().addClass('tt_floatRight tt_hibRightContent tt_hibSkiInfo');
    function writeSkiRating( value ){
        return '<div class="mark_backg"><div style="width: '+(value*10)+'px;" class="mark_foregr"></div></div> <b>' + value + '.0</b>';
    }
},

hib.showSkiSlideShow = function( ){
    var cdn = this.currentDataNode;
    var out = this.slideshowTemplate( );
    //$(this.config.contentElement, this.mainElement ).html(out).removeClass().addClass('hotpic');
    $(this.config.contentElement, this.mainElement ).html(out).removeClass().addClass('tt_floatRight tt_hibRightContent');
    this.slide = new slideshow( cdn.slideShow.images , this.pfadImages, this.mainElement  );
    this.slide.init();
}

hib.showSkiPanorama = function(){
    var out = [
        '<div style="width:' + hib.config.skiPanoramaDimensions.width+'px;height:'+hib.config.skiPanoramaDimensions.height+'px">',
        this.config.loadingAnimationHTML,
        '</div>'
    ];    
    $(hib.config.contentElement, hib.mainElement ).html(out.join('\n')).removeClass().addClass('tt_floatRight tt_hibRightContent tt_hibSkiInfo');
    
    setTimeout( function(){
    var out = [
		'<div id="theMovie"></div>',
		'<script type="text/javascript">',
		"swfobject.embedSWF('http://ttibe.traveltainment.pl/booking_pl/zoomify/ZoomifyDesignViewer.swf', 'theMovie', '"+hib.config.skiPanoramaDimensions.width+"', '"+hib.config.skiPanoramaDimensions.height+"', '9.0.0', 'expressInstall.swf', {zoomifyImagePath:'http://cluster1.loc1.ffm.synaix.de/images/content/skigebiete/pois/Fotos/high/"+hib.currentDataNode.panorama.panorama+"'}, {menu:false}, {});",
		"</script>"		
    ];
    $(hib.config.contentElement, hib.mainElement ).html(out.join('\n')).removeClass().addClass('tt_floatRight tt_hibRightContent tt_hibSkiInfo');
    }
    ,hib.config.animationTime);
},



hib.showAirportInfo = function(view){
		
    var out=[];

    if (this.currentDataNode.logo) out.push('<img src="'+this.currentDataNode.logo.name+'" alt="" class="logo varHeight"/><div class="tt_hibTitle">'+this.currentDataNode.airportName+'</div>');

    switch (view) {
        case 'arrive' :
            if (!this.currentDataNode.arrival) return;
            with (this.currentDataNode.arrival) {	
                if (byCar!='') out.push('<div class="tt_hibSubTitle" style="font-weight: bold;">'+headLineByCar+'</div><img src="' + mapArrival.name.replace(/anfahrt_flughafen/ ,'anfahrt_flughafen/pl') + '" alt="" class="varHeight" style="margin-top: 10px;" /><p>'+byCar+'</p>');
                if (byPublicTransport!='') out.push('<div class="tt_hibSubTitle">'+headLineByPublicTransport+'</div><p>'+byPublicTransport+'</p>');
                if (byTaxi!='') out.push('<div class="tt_hibSubTitle">'+headLineByTaxi+'</div><p>'+byTaxi+'</p>');
                if (byTrain!='') out.push('<div class="tt_hibSubTitle">'+headLineByTrain+'</div><p>'+byTrain+'</p>');
                }
                break;
			
        case 'park':
            if (!this.currentDataNode.parking) return;
            with (this.currentDataNode.parking) {	
                if (commonDescription!='') out.push('<div class="tt_hibSubTitle" style="font-weight: bold;">'+headLineCommonDescription+'</div><p>'+commonDescription+'</p>');
                if (longStay!='') out.push('<div class="tt_hibSubTitle">'+headLineLongStay+'</div><p>'+longStay+'</p>');
                if (longtimeStay!='') out.push('<div class="tt_hibSubTitle">'+headLineLongtimeStay+'</div><p>'+longtimeStay+'</p>');
                if (shortStay!='') out.push('<div class="tt_hibSubTitle">'+headLineShortStay+'</div><p>'+shortStay+'</p>');
                if (specialNeeds!='') out.push('<div class="tt_hibSubTitle">'+headLineSpecialNeeds+'</div><p>'+specialNeeds+'</p>');
                }
                break;
			
        case 'car':
            if (!this.currentDataNode.carRental) return;				
            with (this.currentDataNode.carRental) {				
                out.push('<div class="tt_hibSubTitle" style="font-weight: bold;">'+headLineCarRentalNearby+'</div><p>'+carRentalNearby+'</p>');
                }
                break;
			
        case 'night':
            if (!this.currentDataNode.hotel) return;				
            with (this.currentDataNode.hotel) {
                out.push('<div class="tt_hibSubTitle" style="font-weight: bold;">'+headLineHotelsNearby+'</div><p>'+hotelsNearby+'</p>');
                }
                break;
			
        case 'bag':
            if (!this.currentDataNode.luggage) return;				
            with (this.currentDataNode.luggage) {
                out.push('<div class="tt_hibSubTitle" style="font-weight: bold;">'+headLineLeftLuggageAndLockers+'</div><p>'+leftLuggageAndLockers+'</p>');
                }
                break;
			
        case 'contact':
            if (!this.currentDataNode.serviceAndContact) return;				
            with (this.currentDataNode.serviceAndContact) {
                if (banks!='') out.push('<div class="tt_hibSubTitle" style="font-weight: bold;">'+headLineBanks+'</div><p>'+banks+'</p>');
                if (cashDispensers!='') out.push('<div class="tt_hibSubTitle">'+headLineCashDispensers+'</div><p>'+cashDispensers+'</p>');
                if (chaplaincyOrPrayerRoom!='') out.push('<div class="tt_hibSubTitle">'+headLineChaplaincyOrPrayerRoom+'</div><p>'+chaplaincyOrPrayerRoom+'</p>');
                if (commonDescription!='') out.push('<div class="tt_hibSubTitle">'+headLineCommonDescription+'</div><p>'+commonDescription+'</p>');
                if (moreServiceFacilities!='') out.push('<div class="tt_hibSubTitle">'+headLineMoreServiceFacilities+'</div><p>'+moreServiceFacilities+'</p>');
                if (postalOffice!='') out.push('<div class="tt_hibSubTitle">'+headLinePostalOffice+'</div><p>'+postalOffice+'</p>');
                if (usefulTelephoneNumbers!='') out.push('<div class="tt_hibSubTitle">'+headLineUsefulTelephoneNumbers+'</div><p>'+usefulTelephoneNumbers+'</p>');
                }
                break;
    }
    //$(this.config.contentElement, this.mainElement ).html( out.join('') ).removeClass().addClass('airport');
    $(this.config.contentElement, this.mainElement ).html( out.join('') ).removeClass().addClass('tt_floatRight tt_hibRightContent');
		
}
	
hib.getImageWithFrame = function(image_path) {
    return '\
        <table border="0" cellpadding="0" cellspacing="0" style="font-size: 1px; line-height: 1px;">\
                <tbody>\
                        <tr>\
                                <td class="tt_PhotoBorderTopL" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                                <td class="tt_PhotoBorderTop" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                                <td class="tt_PhotoBorderTopR" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                        </tr>\
                        <tr>\
                                <td class="tt_PhotoBorderLeft" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                                <td height="180"><img src="' + image_path + '" alt="" height="180" /></td>\
                                <td class="tt_PhotoBorderRight" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                        </tr>\
                        <tr>\
                                <td class="tt_PhotoBorderBottomL" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                                <td class="tt_PhotoBorderBottom" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                                <td class="tt_PhotoBorderBottomR" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                        </tr>\
                </tbody>\
        </table>';
}
	
hib.getImageWithFrame2 = function(image_container) {
    return '\
        <table border="0" cellpadding="0" cellspacing="0" style="font-size: 1px; line-height: 1px;" align="center">\
                <tbody>\
                        <tr>\
                                <td class="tt_PhotoBorderTopL" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                                <td class="tt_PhotoBorderTop" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                                <td class="tt_PhotoBorderTopR" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                        </tr>\
                        <tr>\
                                <td class="tt_PhotoBorderLeft" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                                <td class="tt_PhotoBorderCenter">' + image_container + '</td>\
                                <td class="tt_PhotoBorderRight" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                        </tr>\
                        <tr>\
                                <td class="tt_PhotoBorderBottomL" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                                <td class="tt_PhotoBorderBottom" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                                <td class="tt_PhotoBorderBottomR" style=""><img src="/kunden_parameter/allewakacje/ibe_v2/images/spacer.gif" alt="" width="9" height="9" /></td>\
                        </tr>\
                </tbody>\
        </table>';
}

