//var TabClicked = false; //Wegen Lightbox auskommentiert

window.addEvent('domready', function() {
    $$('a.withtooltip').each(function(element, index) {
        var content = element.get('title').split('::');
        element.store('tip:title', content[0]);
        element.store('tip:text', content[1]);
    });

    //create the tooltips
    var ToolTips = new Tips('.withtooltip', {
        className: 'withtooltip',
        fixed: true,
        hideDelay: 20,
        showDelay: 30,
        offsets: { 'x': -20, 'y': 25 }
    });

    activateFirstTab();
    addPlayers();
});

window.addEvent('load', function() {
    NormalizeTabDisplaysHeight();    
});

function AddSlider(Button, SlideContainer, DefaultStartingStatus) {
    var Slide = new Fx.Slide(SlideContainer);

    $(Button).addEvent('click', function(e) {
        e.stop();
        Slide.toggle();
    });

    Slide.addEvent('complete', function() {
        /*Anzeige der Zustände werden über Klassen geregelt*/
        $(Button).toggleClass('btn_closed');
        $(Button).toggleClass('btn_opened');        
        Cookie.write($(SlideContainer).getProperty('Id'), Slide.open);
    });

    statusCookie = Cookie.read($(SlideContainer).getProperty('Id'));

    if (statusCookie != null) { //restore status from cookies        
        if (statusCookie == 'true') { //Cookies are stored as strings
            Button.addClass('btn_opened');
        } else {
            Slide.hide();
            Button.addClass('btn_closed');
        }        
    } else { //use the parameters given by the call of the function
        if (DefaultStartingStatus) {
            Button.addClass('btn_opened');
        } else {        
            Slide.hide();
            Button.addClass('btn_closed');
        }
    }
    return Slide;    
}

function AddTab(TabsContainer, TabDisplays, Default) {
    //Auskommentiert, da Aufruf nicht funktioniert
    //$(Default).addClass("selected");        
    //$($(Default).getProperty('id').replace("tab_btn_", "tab_display_")).addClass('selected');

    $(TabsContainer).getElements('a').addEvent('click', function(e) {
        try {
            $(TabsContainer).getElement('.selected').removeClass('selected');
            $(TabDisplays).getElement('.selected').removeClass('selected');
        } catch (e) { }
        this.addClass('selected');
        $(this.getProperty('id').replace("tab_btn_", "tab_display_")).addClass('selected');
        /*
        if (TabClicked == false) {
            new Fx.Scroll($(document.body)).toBottom();
            TabClicked = true;
        }*/
        //NormalizeTabDisplaysHeight();
    });
}

function NormalizeTabDisplaysHeight() {
    //alert('hallo');
    var Displays = $('PreviewPage_Tab_Displays').getElements('div');
    var maxHight = 0;
    for (var i = 0; i < Displays.length; i++) {
        try {                
            if (Displays[i].getProperty('id').substring(0, 12) == 'tab_display_') {
                //Reset height                    
                Displays[i].setStyle('height', 'auto');
                Displays[i].setStyle('display', 'block');                    
                if (Displays[i].getSize().y > maxHight) {                        
                    maxHight = Displays[i].getSize().y;
                }
                Displays[i].setStyle('display', '');
            }
        }
        catch (e) { }
    }
    for (var i = 0; i < Displays.length; i++) {
        try {
            if (Displays[i].getProperty('id').substring(0, 12) == 'tab_display_') {
                Displays[i].setStyle('height', maxHight + 'px');
            }
        }
        catch (e) { }
    }
}

function hideCDInfoFromEngine(tableNo) {    
    var tables = $('PreviewPage_Tabs').getParent().getElements('table');    
    for (var i = 0; i < tables.length; i++) {        
        if ($(tables[i]).getProperty('width') == '700') {
            tables[i].setStyle('display', 'none');
            break;
        }
    } 
}

function resizePriceCalculatorIFrame(PriceCalcSlider) {
    
    if (PriceCalcSlider.open) {
        PriceCalcSlider.hide();
        PriceCalcSlider.show();
    } else {
        PriceCalcSlider.hide();
        PriceCalcSlider.show();
        PriceCalcSlider.hide();
    }
}

function OpenPriceCalc(Id) {
    window.open("pricecalc.asp?image=" + Id, "calcprice", "scrollbars=yes,resizable=yes,directories=no,toolbar=no,menubar=no,top=10,left=10");
}

function DirectDownload3(ImageId, Resolution) {
    window.open("download3.asp?image=" + ImageId + "&res=" + Resolution, "download3", "scrollbars=yes,resizable=yes,directories=no,toolbar=no,menubar=no,height=300,width=550,top=10,left=10");
}

function DownloadFootageLayout(ImageId, Res) {
    window.location = "yourimage.asp?image=" + ImageId + "&res=" + Res;
}

function AddAssetToCart(ImageId, res) {    
    window.open('pricecalc.asp?image=' + ImageId + '&rfaddtocart=' + res + '&rfformflag=true&DoNotClose=true', 'Warenkorb', "width=600,height=400,status=yes,scrollbars=yes,resizable=yes");
}

function centerIcons() {
    var imageWidth = $('PreviewPage_Preview').getElement('img').getSize().x;
    $('PreviewPage_ImgIcons').setStyle('width', imageWidth + 'px');
}

function activateFirstTab() {
    $('PreviewPage_TabContainer').getElement(':first-child').getElement(':first-child').getElement(':first-child').addClass('selected');
    if ($('PreviewPage_Tab_Displays').getElement(':first-child') != null) {
        $('PreviewPage_Tab_Displays').getElement(':first-child').addClass('selected');
    }
}

function centerIcons() {
    var imageWidth = $('PreviewPage_Preview').getElement('img').getSize().x;
    $('PreviewPage_ImgIcons').setStyle('width', imageWidth + 'px');
}

function centerBackToResultsBtn() {
    var imageWidth = $('PreviewPage_Preview').getElement('img').getSize().x;
    $('BackToResultsBtn').setStyle('width', imageWidth + 'px');
}

function showMainPlayer(MoviePath, PreviewPath, ContainerId ) {
    $f(ContainerId, { src: FlowPlayerSWFPath, wmode: 'transparent' }, {
        key: FlowPlayerLicenseKey,
        clip: {
            scaling: 'orig',
            autoBuffering: false,
            autoPlay: false
        },
        canvas: { backgroundColor: "#FFFFFF" },
        plugins: {
            controls: {
                bufferGradient: 'none',
                buttonColor: '#8d1c22',
                timeColor: '#ffffff',
                borderRadius: '0',
                durationColor: '#ffffff',
                progressColor: '#8d1c22',
                backgroundGradient: 'none',
                progressGradient: 'medium',
                backgroundColor: '#D9E3EC',
                sliderGradient: 'none',
                buttonOverColor: '#8d1c22',
                sliderColor: '#000000',
                bufferColor: '#8d6769',
                opacity: 1.0,
                play: true,
                volume: true,
                mute: true,
                time: true,
                stop: true,
                playlist: false,
                fullscreen: true
            }
        },
        playlist: [
                { url: PreviewPath, autoPlay: true },
                { url: MoviePath, autoPlay: false}
            ]
    });
}

function addPlayers(){
    $$('#PreviewPage_Tabs div.TabFootageContainer').each(function(el) {
        var AssetId = ExtractAssetIDFromElementByUrl(el);        
        var ThumbUrl = ExtractThumbUrl(el);        
        var ContainerID = $(el).getProperty('id');
        $(el).set('html', '');
        //alert(ContainerID);
        Player = showThumbPlayer(AssetId, ContainerID, FlowPlayerSWFPath, ThumbUrl);
        //alert(Player);
        //Player.stop();
        //addPlayer(el);
        //alert(FootageUrl);
    });
}

function ExtractThumbUrl(element) {
    var Url = $(element).getElement('a:first-child').getStyle('background-image');        
    Url = Url.replace('url\(', '');
    Url = Url.replace('\)', '');    
    return Url;
}

function ExtractAssetIDFromElementByUrl(element) {
    Url = $(element).getElement('a:first-child').getProperty('href')
    var Ausdruck = /(\d{6})/;
    Ausdruck.exec(Url);    
    return RegExp.$1;
}

function getFootageThumbPath(AssetId) {
    var temp = '/Footage/' + AssetId.substring(0, 2);
    temp += '/';
    temp += AssetId.substring(2, 4);
    temp += '/';    
    temp += AssetId + '_t.flv';
    return temp;
}

function showThumbPlayer(AssetId, ContainerId, FlowPlayerSWFPath, ImagePath) {
    var MoviePath = getFootageThumbPath(AssetId);
    
    //alert(MoviePath);
    //var ImagePath = MoviePath.replace('\.flv', '.jpg');
    //alert(ImagePath);
    var player = $f(ContainerId, { src: FlowPlayerSWFPath, wmode: 'transparent' }, {
        key: FlowPlayerLicenseKey,
        clip: {
            scaling: 'fit',
            autoBuffering: true,
            linkUrl: 'results.asp?image=' + AssetId
        },
        canvas: { backgroundColor: "#FFFFFF" },
        plugins: { controls: null },
        playlist: [
                { url: ImagePath , autoPlay: true },
                { url: MoviePath, autoPlay: false, autoBuffering: true, loop : true }
            ],
        onMouseOver: function() {
            this.play();
        },
        onMouseOut: function() {
            this.pause();
        }
    });
    return player;
}

function enableAllRFShoppingCartIcons() {
    $('PreviewPage_Prices_Slider').getElements('a.ShoppingCartEnabled').setStyles({ display: 'inline' });
    $('PreviewPage_Prices_Slider').getElements('img.ShoppingCartDisabled').setStyles({ display: 'none' });    
}

function disableRFFirstShoppingCartIcons() {
    ShoppingCartEnabledIcons = $('PreviewPage_Prices_Slider').getElements('a.ShoppingCartEnabled');
    ShoppingCartDisabledIcons = $('PreviewPage_Prices_Slider').getElements('img.ShoppingCartDisabled');

    for (var j = 0; j <= ShoppingCartEnabledIcons.length - 1; j++) {        
        ShoppingCartEnabledIcons[j].setStyles({ display: 'none' });
        ShoppingCartDisabledIcons[j].setStyles({ display: 'inline' });
    }

    ShoppingCartEnabledIcons[ShoppingCartEnabledIcons.length - 1].setStyles({ display: 'inline' });
    ShoppingCartDisabledIcons[ShoppingCartEnabledIcons.length - 1].setStyles({ display: 'none' });    
}

function disableShoppingCartIconsAtBeginn() {
    $('PreviewPage_Prices_Slider').getElements('a.ShoppingCartEnabled').setStyles({ display: 'none' });    
}

function setRFShoppingCartIcons() {
    if ($('radioRFConstraintYes').checked) {
        disableRFFirstShoppingCartIcons();
    }

    if ($('radioRFConstraintNo').checked) {
        enableAllRFShoppingCartIcons();
    }
}