﻿

    function BindImageForRollBanner(TargetRollBannerIndex, NewIndex, Caller) {

        if(NewIndex == RollBannerIndex[TargetRollBannerIndex]) return;

        var DisplayData = RollBannerData[TargetRollBannerIndex][NewIndex].split("|");

        if(DisplayData.length != 3) return;


        RollBannerLinkUrl[TargetRollBannerIndex]  = DisplayData[1];
        RollBannerTarget[TargetRollBannerIndex]   = DisplayData[2];


        var InImageId         = "#" + IdSourceImageForRollBanner + TargetRollBannerIndex + "_" + NewIndex;
        var OutImageId        = "#" + IdSourceImageForRollBanner + TargetRollBannerIndex + "_" + RollBannerIndex[TargetRollBannerIndex];
        var FadeEffectUseFlag = (RollBannerFadeEffectUseFlag[TargetRollBannerIndex] && Caller.toUpperCase() != "SELECTOR")
                                ? true : false;

        if(RollBannerIndex[TargetRollBannerIndex] >= 0) {
            if(FadeEffectUseFlag)
                $(OutImageId).fadeOut('slow');
            else
                $(OutImageId).hide();
        }

        if(FadeEffectUseFlag)
            $(InImageId).fadeIn('slow');
        else
            $(InImageId).show();


        ToggleSelectorForRollBanner(TargetRollBannerIndex, NewIndex);

        RollBannerIndex[TargetRollBannerIndex] = NewIndex;

    }





    function ToggleSelectorForRollBanner(TargetRollBannerIndex, NewIndex) {

        var TargetId = IdSelecterForRollBanner;


        self.document.getElementById( (TargetId+TargetRollBannerIndex+"_"+NewIndex) ).src = SelectImagePathForRollBannerSelector;

        if(RollBannerIndex[TargetRollBannerIndex] > -1 && NewIndex != RollBannerIndex[TargetRollBannerIndex])
            self.document.getElementById( (TargetId+TargetRollBannerIndex+"_"+RollBannerIndex[TargetRollBannerIndex]) ).src = UnSelectImagePathForRollBannerSelector;

    }





    function BindSourceImageForRollBanner(TargetRollBannerIndex) {

        var ImagePath, DisplayData, TargetIdName;

        for(var Count = 0; Count < RollBannerCount[TargetRollBannerIndex]; Count++) {

            DisplayData = RollBannerData[TargetRollBannerIndex][Count].split("|");
            if(DisplayData.length != 3) return;

            ImagePath = BannerImagePath + DisplayData[0];

            $( ('#'+IdAreaForRollBanner+TargetRollBannerIndex) )
                .append(
                    $('<img/>', {
                        id     : (IdSourceImageForRollBanner+TargetRollBannerIndex+'_'+Count),
                        src    : ImagePath,
                        border : 0,
                        style  : 'position:absolute;overflow:hidden;z-index:1'
                    })
                    .hide()
                );

        }

    }





    function BindSelecterForRollBanner(TargetRollBannerIndex) {

        var TagImage  = "<img id=\"--1--\" src=\"/img/new/main/icn_gray.gif\" onmouseover=\"SelectForRollBanner(--2--, --3--)\" onmouseout=\"UnSelectForRollBanner(--2--, 0)\" /> ";
        var TagSource;

        var TargetId;

        for(var Count = 0, TagSource = ""; Count < RollBannerCount[TargetRollBannerIndex]; Count++) {
            TargetId   = IdSelecterForRollBanner + TargetRollBannerIndex + "_" + Count;
            TagSource += TagImage.replace(/--1--/g, TargetId).replace(/--2--/g, TargetRollBannerIndex).replace(/--3--/g, Count);

        }

        self.document.getElementById( (IdAreaForRollBannerSelector+TargetRollBannerIndex) ).innerHTML = TagSource;

    }





    function SelectForRollBanner(TargetRollBannerIndex, Index) {

        if(RollBannerCount[TargetRollBannerIndex] <= 0) return;

        if(Index > -1) {
            BindImageForRollBanner(TargetRollBannerIndex, Index, "SELECTOR");
            return;
        }

        StopForRollBanner[TargetRollBannerIndex] = true;
        window.clearTimeout(TimeIdForRollBanner[TargetRollBannerIndex]);

//        BindImageForRollBanner(TargetRollBannerIndex, Index, "SELECTOR");

    }





    function UnSelectForRollBanner(TargetRollBannerIndex, Index) {

        if(RollBannerCount[TargetRollBannerIndex] <= 0) return;

        if(Index > -1) return;

        StopForRollBanner[TargetRollBannerIndex] = false;
        TimeIdForRollBanner[TargetRollBannerIndex] = window.setTimeout( ("ChangeImageForRollBanner("+TargetRollBannerIndex+")"), RollBannerSpeed[TargetRollBannerIndex]);

    }




    function ChangeImageForRollBanner(TargetRollBannerIndex) {

        if(StopForRollBanner[TargetRollBannerIndex]) return;

        var NewIndex = RollBannerIndex[TargetRollBannerIndex]; 

        NewIndex++;

        if(NewIndex >= RollBannerCount[TargetRollBannerIndex])
            NewIndex = 0;


        BindImageForRollBanner(TargetRollBannerIndex, NewIndex, "");


        TimeIdForRollBanner[TargetRollBannerIndex] = window.setTimeout( ("ChangeImageForRollBanner("+TargetRollBannerIndex+")"), RollBannerSpeed[TargetRollBannerIndex]);

    }





    function LinkForRollBanner(TargetRollBannerIndex) {

        if(RollBannerCount[TargetRollBannerIndex] <= 0) return;

        if(RollBannerTarget[TargetRollBannerIndex].toUpperCase() == "_BLANK")
            window.open(RollBannerLinkUrl[TargetRollBannerIndex]);
        else
            self.location.href = RollBannerLinkUrl[TargetRollBannerIndex];

    }





    var RollBannerData;

    var RollBannerCount, RollBannerIndex;
    var StopForRollBanner;
    var TimeIdForRollBanner;

    var RollBannerLinkUrl, RollBannerTarget;


    function InitRollBannerData() {

        RollBannerData      = new Array(RollBannerNumber);
        RollBannerCount     = new Array(RollBannerNumber);
        RollBannerIndex     = new Array(RollBannerNumber);
        StopForRollBanner   = new Array(RollBannerNumber);
        TimeIdForRollBanner = new Array(RollBannerNumber);
        RollBannerLinkUrl   = new Array(RollBannerNumber);
        RollBannerTarget    = new Array(RollBannerNumber);


        var LoopCount;

        for(LoopCount = 0; LoopCount < RollBannerNumber; LoopCount++) {
            RollBannerData[LoopCount]       = null;
            RollBannerCount[LoopCount]      = 0;
            RollBannerIndex[LoopCount]      = -1;
            StopForRollBanner[LoopCount]    = false;
            TimeIdForRollBanner[LoopCount]  = null;
            RollBannerLinkUrl[LoopCount]    = null;
            RollBannerTarget[LoopCount]     = null;
        }


    }





    function StartRollBanner() {

        for(TargetRollBannerIndex = 0; TargetRollBannerIndex < RollBannerNumber; TargetRollBannerIndex++) {

            TimeIdForRollBanner[TargetRollBannerIndex] = window.setTimeout( ("ChangeImageForRollBanner("+TargetRollBannerIndex+")"), RollBannerSpeed[TargetRollBannerIndex]);

        }

    }





    function BindRollBanner() {

        InitRollBannerData();

        for(TargetRollBannerIndex = 0; TargetRollBannerIndex < RollBannerNumber; TargetRollBannerIndex++) {

            if(RollBanner[TargetRollBannerIndex] == "") return;

            RollBannerData[TargetRollBannerIndex]  = RollBanner[TargetRollBannerIndex].split("*");
            RollBannerCount[TargetRollBannerIndex] = RollBannerData[TargetRollBannerIndex].length;

            if(RollBannerCount[TargetRollBannerIndex] <= 0) return;


            if(RollBannerCount[TargetRollBannerIndex] > RollBannerCountMax[TargetRollBannerIndex])
                RollBannerCount[TargetRollBannerIndex] = RollBannerCountMax[TargetRollBannerIndex];

        }


        for(TargetRollBannerIndex = 0; TargetRollBannerIndex < RollBannerNumber; TargetRollBannerIndex++) {

            BindSourceImageForRollBanner(TargetRollBannerIndex);
            BindSelecterForRollBanner(TargetRollBannerIndex);
            BindImageForRollBanner(TargetRollBannerIndex, 0, "");

        }


        return true;

    }











    function BindBannerForMiddleFix() {

        if(BannerMiddleFix == "") return;


        var BannerData = BannerMiddleFix.split("*");
        var DataCount  = BannerData.length;

        if(DataCount <= 0) return;



        var DisplayData = BannerData[0].split("|");
        var LoopCount;

        for(LoopCount = 0; (LoopCount < DataCount) && (LoopCount < 6); LoopCount++) {

            DisplayData = BannerData[LoopCount].split("|");

            self.document.getElementById( ("BannerImgIdForMiddleFix_"  + (LoopCount+1)) ).src    = BannerImagePath + DisplayData[0];
            self.document.getElementById( ("BannerLinkIdForMiddleFix_" + (LoopCount+1)) ).href   = DisplayData[1];
            self.document.getElementById( ("BannerLinkIdForMiddleFix_" + (LoopCount+1)) ).target = DisplayData[2];

        }

    }



