﻿
$(
    function()
    {
        //VARIABLE DECLARATIONS
        var speed = 80; //SCROLL SPEED - HIGHER NUMBER SLOWER SCROLL SPEED
        var mpause = 1;
        var btop = 0;
        
        //THE HEIGHT MUST BE MANUALLY SET TO 300 INSTEAD OF USING THE HEIGHT OF #NEWLINKS, BECAUSE
        //IE6 STRETCHES THE HEIGHT WHEN POPULATING THE DIV WITH NEWS LINKS
        var mheight = 283;
        var mwidth = $("#newsLinks").width() - 5;
        
        //CREATES A NEW EMPTY DIV AND ATTACHES IT TO THE END OF THE BODY
        $("<div></div>").addClass("headlines2").css("height", mheight).css("position", "relative").css("overflow", "hidden").prependTo("#newsLinks");

        //MOVES THE DIVS(IMMEDIATE CHILDREN) OF MARQUEE INTO THE EMPTY DIV CREATED ABOVE
        $("#marqueeNews").children().each(
            function()
            {
                //ADDS THE DIV TO HEADLINES
                $(this).addClass("headlines").css("width", mwidth).appendTo("div.headlines2");
                
                //SETS THE POSITION OF THE DIV ABSOLUTELY IN RELATION TO HEADLINES
                $(this).css("top", btop).css("position", "absolute");
                
                //MOVES THE DIV DOWN PAST THE PREVIOUS DIV (CHILD)
                btop = btop + $(this).height() - 10;
            }
        );

        //USED AS A COUNTER TO STEP THROUGH THE CHILDREN OF THE HEADLINES DIV
        var ccount = 0;
        
        //DETERMINES THE NUMBER OF DIVS IN HEADLINES2; LATER USED TO SHIFT THE TOP DIV TO THE BOTTOM OF THE LIST
        var fall = $("div.headlines").length - 1;
        
        //MOVES EACH DIV UP ONE PIXEL
        function advance()
        {
            $("div.headlines").each(
                function()
                {
                    var atop = parseInt($(this).css("top"));
                    $(this).css("top", atop - 1 + "px");
                }
            );
            
            //CHECKS TO SEE IF THE DIV IS PAST THE TOP OF THE CONTAINING DIV
            var ttest = $("div.headlines:eq(0)").height();
            var atop = parseInt($("div.headlines:eq(0)").css("top"));
            var ttop = 0 - ttest;
            
            //IF THE DIV HAS PASTED THE TOP, MOVE IT TO THE BOTTOM
            if (ttop == atop)
            {
                moveToBottom();
            }
            else 
            {}
        };

        //MOVES THE DIV TO THE BOTTOM OF THE LIST
        function moveToBottom()
        {
            var eq0 = btop - $("div.headlines:eq(0)").height();
            $("div.headlines:eq(0)").clone().insertAfter("div.headlines:eq(" + fall + ")");
            $("div.headlines:eq(0)").remove();
            $("div.headlines:eq(" + fall + ")").css("position", "absolute").css("top", eq0);
        };
        
        //CONTINUALLY CALLS THE ADVANCE FUNCTION TO SHIFT DIVS UP
        var scrollit = setInterval(advance,speed);
        
        
        $("<div></div>").addClass("toggle").height(0).attr("id", "0").prependTo("body");
        $("<a></a>").appendTo(".toggle");

        //STOPS THE SCROLLING
        function mout()
        {
            clearInterval(scrollit);
            $("div.headlines2").css("overflow", "auto");
            $("div.headlines:eq(0)").css("top", "0px");
            ttemp = 0;
            $("div.headlines").each(
                function()
                {
                    var atop = parseInt($(this).css("top"));
                    $(this).css("top", ttemp);
                    ttemp = ttemp + $(this).height();
                }
            );
        };

        //RESUMES SCROLLING
        function mback()
        {
            $("div.headlines2").css("overflow", "hidden");
            scrollit = setInterval(advance,speed);
        };


        function select()
        {
            selec = $(".toggle").attr("id")
            if( selec == 0)
            {
                $(".toggle").attr("id", "1");
                mout();
            }
            else 
            {
                $(".toggle").attr("id", "0"); mback();
            };
        };

        $(".toggle").click(select);

        if (mpause == 1)
        {
            $("div.headlines2").hover(
                function()
                {
                    clearInterval(scrollit);
                }, 
                function()
                {
                    if ( $(".toggle").attr("id") == 0)
                    {
                        scrollit = setInterval(advance,speed);
                    };
                }
            );
        };
    }
);
