/**
 * Kundenspezifische Funktionen
 *
 * @category   JS-Functions
 * @package    HibContent
 * @author     Daniel Lembicz <lembicz@traveltainment.de>
 * @version    1.0
 */

var elemLogos = null;
var logos = [];
var logosOperators = [];
var timerOperator;
var markedElements = [];
var numLogos = 0;
var currentTipId = 0;
var currentIff = 0;

function fillOperators()
{
    if (document.getElementById('idHotelVaSlider_' + idContent)) {
        elemLogos = document.getElementById('idHotelVaSlider_' + idContent).childNodes;
    }
    
    if (elemLogos) {
        for (var i = 0; i < elemLogos.length; i++) {
            if (elemLogos[i].nodeName == 'DIV')
                logosOperators[i] = elemLogos[i];                
        }

        numLogos = elemLogos.length;       
    }
}

function in_array(needle, haystack, argStrict) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: in_array('van', ['Kevin', 'van', 'Zonneveld']);
    // *     returns 1: true
 
    var found = false, key, strict = !!argStrict;
 
    for (key in haystack) {
        if ((strict && haystack[key] === needle) || (!strict && haystack[key] == needle)) {
            found = true;
            break;
        }
    }
 
    return found;
}

function imgToLeft()
{
    var elemSlider = document.getElementById('idHotelVaSlider_' + idContent);
    var firstNode = elemSlider.firstChild;
    elemSlider.removeChild(firstNode);
    elemSlider.appendChild(firstNode);
}

function imgToRight()
{
    var elemSlider = document.getElementById('idHotelVaSlider_' + idContent);
    var lastNode = elemSlider.lastChild;
    var firstNode = elemSlider.firstChild;
    
    if (elemSlider.childNodes.length > 1) {
        elemSlider.removeChild(lastNode);
        elemSlider.insertBefore(lastNode, firstNode);        
    }
}

function highlightThumb(elem){
    if (elem) {
        elem.className = 'hotelThumbSingleOver';
    }
}

function resetThumb(elem) {
    if (elem && markedElements[idContent] && elem != markedElements[idContent][idContentPf])
        elem.className = 'hotelThumbSingle';
}

function markThumb(elem, isFirst, tmpIdContent, tmpIdContentPf) {
    if (tmpIdContent != undefined && tmpIdContent != '') {
        idContent = tmpIdContent;
        idContentPf = tmpIdContentPf;
    }
    
    if (markedElements[idContent]) {
        var oldElement = markedElements[idContent][idContentPf];
        highlightThumb(elem);
        markedElements[idContent][idContentPf] = elem;
        resetThumb(oldElement);
        
        var picLarge = document.getElementById('idPicLarge_' + idContent + idContentPf);
        picLarge.src = '/tools/image.php?b=264&h=170&pfad=' + elem.getAttribute('origSrc');  
        
        if (!isFirst) {
            ctrlImg[idContent] = document.getElementById('idCtrlImg_' + idContent);
            pathControlImage[idContent] = ctrlImg[idContent].getAttribute('defaultPath');
            setControlImage(picLarge);              
        }
    }
}

function markFirstElement(elem) { 
    if (elem && (!markedElements[idContent] || markedElements[idContent][idContentPf].getAttribute('cnt') > elem.getAttribute('cnt'))) {
        if (!markedElements[idContent]) {
            markedElements[idContent] = [];
        }
        markThumb(elem, true);
    }
}
    
function changePanoButton(elemImgId)
{
    var elemImgLeft = document.getElementById('imgPanoLeft');
    var elemImgRight = document.getElementById('imgPanoRight');
    
    switch (elemImgId)
    {
        case 'imgPanoLeft':
            pathLeft = imagePath + 'Hotelinfos/navbar/links_aktiv.gif';
            pathRight = imagePath + 'Hotelinfos/navbar/rechts.gif';
            break;
            
        case 'imgPanoStop':
            pathLeft = imagePath + 'Hotelinfos/navbar/links.gif';
            pathRight = imagePath + 'Hotelinfos/navbar/rechts.gif';
            break;

        case 'imgPanoRight':
            pathLeft = imagePath + 'Hotelinfos/navbar/links.gif';
            pathRight = imagePath + 'Hotelinfos/navbar/rechts_aktiv.gif';
            break;                       
    }
    
    elemImgLeft.src = pathLeft;
    elemImgRight.src = pathRight;
}

function initPanoButton()
    { changePanoButton('imgPanoRight'); }    

function updateBubbles(value) {
    var hbwCats = new Array('Hotel', 'Lage', 'Strand', 'Zimmer', 'Essen & Trinken', 'Pool', 'Service', 'Sport & Freizeit', 'Familienfreundlich');
    var elemBubbles = document.getElementById('idRatingBubbles_' + idContent); 
    var GBW = value.split('||');

    for(t = 0; t < GBW.length; t++) {
        parts=GBW[t].split(";");
        window['str_glhotel'+t] ='<div class="bubbleTop">&nbsp;</div>';

        for(k=0;k<parts.length;k++) {

            tzu = parts[k].split("#");
            var der = tzu[1];
            
            if (der) {
                var mno = der.substring(2,3) == '' ? der.substring(0,1)+'.0' : der.substring(0,1)+'.'+der.substring(2,3);
            }
            
              if (k == 0) {
                hl = '<div class="bubbleHl">' + hbwCats[t] + '</div><div class="clear"></div>';
              } else {
                hl = '';
              }            
            
            if (mno == '0.0') 
                mno='&nbsp;';
                
            window['str_glhotel'+t] +='<div class="bubbleMiddle">' + hl + '<div class="dleft">'+tzu[0]+'</div><div class="dright"><img src="' + pfadHibImages + '/hotelbewertung/detailansicht/small_scale_'+(tzu[1]*10)+'.gif" border="0"> '+mno+'</div><div class="clear"><img src="/images/spacer.gif" height="0" width="0" border="0"></div></div>';                
        }
        
        window['str_glhotel'+t] +='<div class="bubbleBottom">&nbsp;</div>';
    }    
}

function setHrTab(elem, link)
{
    var tabs = document.getElementsByName('nameHrTab');
    for (var i = 0; i < tabs.length; i++) {
        tabs[i].src = tabs[i] != elem ? tabs[i].getAttribute('srcInActive') : tabs[i].getAttribute('srcActive');
    }
    
    sendRequest(link);
}

function sortRatings(elem, url)
{
    var val = elem.value;
    TTAjaxRequest(url + '&sort=' + val);
}

function highlightRow(elem, status)
{
    var children = elem.childNodes;
    
    for (var i = 0; i < children.length; i++) {
        if (children[i].nodeName == 'DIV') {
            children[i].style.backgroundColor = status == true ? '#CFE6FF' : '';
        }
    }       
}

function setMaxContentHeight(height) {
/*    var elemContent = document.getElementById('idContent_'  + idContent + idContentPf);
    elemContent.style.height = '';
    
    if (elemContent.offsetHeight >= 550) {
        elemContent.style.height = 550 + 'px';
    }
*/    
}


function showGiataTip(tipId, iff, kid) {
    if(document.getElementById('tt_giataTipOpacBox') == null || typeof(document.getElementById('tt_giataTipOpacBox')) == 'undefined') {
        var opacDiv = document.createElement("div");        
        var opacDiv_id = document.createAttribute("id");
        opacDiv_id.nodeValue = "tt_giataTipOpacBox";        
        opacDiv.setAttributeNode(opacDiv_id);        
        var opacDiv_class = document.createAttribute("class");
        opacDiv_class.nodeValue = "iepngfix2";        
        opacDiv.setAttributeNode(opacDiv_class);        
        document.body.appendChild(opacDiv);    
    }
    
    if(document.getElementById('tt_giataTipOpacBoxContent') == null || typeof(document.getElementById('tt_giataTipOpacBoxContent')) == 'undefined') {
        var opacDiv = document.createElement("div");        
        var opacDiv_id = document.createAttribute("id");
        opacDiv_id.nodeValue = "tt_giataTipOpacBoxContent";        
        opacDiv.setAttributeNode(opacDiv_id);        
        var opacDiv_class = document.createAttribute("class");
        opacDiv_class.nodeValue = "iepngfix2";        
        opacDiv.setAttributeNode(opacDiv_class);        
        document.body.appendChild(opacDiv);    
    }
    
    if (document.body && document.body.offsetHeight && document.body.offsetHeight > 0) {
        var iW = document.body.offsetWidth;
        var iH = document.body.offsetHeight;    
    } else if (document.body && document.body.clientHeight && document.body.clientHeight > 0) {
        var iW = document.body.clientWidth;
        var iH = document.body.clientHeight;    
    } else if (window.innerHeight && window.innerHeight > 0) {
        var iW = window.innerWidth;
        var iH = window.innerHeight;    
    }
    
    //--- pngfix für IE6 gesondert behandeln
    var styleSwitch = '';
    if (browser == "0" && navigator.userAgent.search(/MSIE 7.0/) == '-1' ? '2' : '') {
        styleSwitch = '2';
    }
    
    var strHTML = '<div class="tt_giataTipBox">';
    strHTML    += '    <div class="tt_giataTipClose" onclick="parent.document.getElementById(\'tt_giataTipOpacBox\').style.display = \'none\';parent.document.getElementById(\'tt_giataTipOpacBoxContent\').style.display = \'none\';parent.document.getElementById(\'tt_giataTipOpacBox\').style.padding = \'0\';"><img src="' + imgPfad + '/schliessen_pink.gif" width="10" height="10" alt="" style="padding: 0; margin: 0 5px 0 10px;" /> SCHLIESSEN</div>';
    strHTML    += '    <div class="tt_giataTipContainer' + styleSwitch + ' iepngfix">';
    strHTML    += '        <iframe src="' + url + '/booking/' + ordner_name + '/teaser/getGiataData.php?gid=' + tipId + '" width="732" height="632" frameborder="0" scrolling="no" allowtransparency style="border: 0; padding: 0; margin: 0;"></iframe>';
    strHTML    += '    </div>';
    strHTML    += '</div>';
    
    scrollTo(0, 0);
        
    document.getElementById('tt_giataTipOpacBox').style.width   = iW + 'px';
    document.getElementById('tt_giataTipOpacBox').style.height  = iH + 'px';
    // Box zentrieren
    document.getElementById('tt_giataTipOpacBoxContent').style.top     = (iH / 2 ) - (652 / 2) + 'px';
    document.getElementById('tt_giataTipOpacBoxContent').style.left    = (iW / 2) - (732 / 2) + 'px';
    document.getElementById('tt_giataTipOpacBoxContent').innerHTML     = strHTML;
    document.getElementById('tt_giataTipOpacBox').style.display = 'block';
    document.getElementById('tt_giataTipOpacBoxContent').style.display = 'block';
    
} 

function callbackMoreFlights(id, status) {
    var elemDay = document.getElementById('idHinreise_' + id);
    var elemDauer = document.getElementById('idDauer_' + id);
    
    if (elemDay && elemDauer) {
        if (status) {
            elemDay.style.fontWeight = 'bold';
            elemDauer.style.fontWeight = 'bold';
        } else {
            elemDay.style.fontWeight = 'normal';
            elemDauer.style.fontWeight = 'normal';        
        }        
    }
}

function showMoreFlightDefault(bookingId, contentId, prefix) {
    var elem = document.getElementById('idTerRowPrice_' + contentId);
    elem.style.display = 'block';
    elem.setAttribute('doNotHide', '1');
}

function openTipView(kid) {
    if (currentTipId) {
        showGiataTip(currentTipId, currentIff, kid);
    }
}

function disableRatingMenuItems(indexes) {
    var aIndexe = indexes.split('_');
    var aCheckIndexes = new Array('150230', '150240', '150250', '150260');
    var elemNavi = document.getElementById('idNavigation_' + idContent + idContentPf);
    var children;    
    var aHideIndexes = [];
    
    for (var i in aCheckIndexes) {
        if (!in_array(aCheckIndexes[i], aIndexe)) {
            aHideIndexes.push(aCheckIndexes[i]);
        }
    }
    
    if (elemNavi) {
        children = elemNavi.childNodes;
        
        for (var i in children) {
            if (children[i].id) {
                var tmp = children[i].id.split('_');
                if (in_array(tmp[2], aHideIndexes)) {
                    children[i].style.display = 'none';
                }
            }
        }
    }
}

function updateNaviBtn (idContent, naviIndex) {
    
    var i = document.getElementById('idBtn_' + idContent + '_' + naviIndex);
    
    var srcInact = i.getAttribute('srcinact');
    var srcAct = i.getAttribute('srcact');

    resetAllOtherNaviBtn (idContent, naviIndex);
    
    i.src = srcAct; 
    
    
    
}

function resetAllOtherNaviBtn (idContent, naviIndex) {
    
    var navIdArr = [100, 100100, 100200, 100300, 100400, 
                    150, 15010, 150200, 150300,
                    200, 200050, 200100, 200150, 200200, 200250, 200300, 200350, 200400, 200450, 200500, 200550, 200600, 200650,
                    300,
                    400, 400100, 400200, 400300, 400400, 400500, 400600, 400700,
                    500, 500100, 500200,
                    600, 600100, 600200, 600300,
                    700, 700100, 700200, 700300, 700400, 700500, 700600, 700700,
                    800, 800100, 800200, 800300, 800400,
                    850,
                    860                    
                    ];
    
    
    for (var i = 0; i < navIdArr.length; i++) {
        
        var elem = document.getElementById('idBtn_' + idContent + '_' + navIdArr[i]);
        
        if (typeof elem != 'undefined' && elem != null && naviIndex != navIdArr[i]) {
            elem.src = elem.getAttribute('srcinact');
        }
    }
    
}
