﻿// JScript File
// Continuous text Vertical Scroller with stop/start button
        // copyright 14th August 2010 by Stephen Chapman
        // http://javascript.about.com/library/blctvert1.htm
        // permission to use this Javascript on your web page is granted
        // provided that all of the code below in this script (including these
        // comments) is used without any alteration
        //function startstopchange(m,txt) {for (var j=m.length - 1; j > -1; j--) document.getElementById('ss'+m[j].id).value = txt;}  
        /*function startstop(m,n) {
            return;
            var ss = document.createElement('form');
            var sd = document.createElement('div');
            ss.appendChild(sd);
            var sb = document.createElement('input');
            sb.type='button';
            sd.appendChild(sb);
            sb.id = 'ss'+n.id;
            sb.value = 'STOP'; 
            sb.onclick = function() {if (this.value == 'STOP') {clearTimeout(m[0].TO); startstopchange(m,'START');} else {mqRotate(m); startstopchange(m,'STOP');}}; n.parentNode.insertBefore(ss,n);}   
            */
        function objHeight(obj) {
            if(obj.offsetHeight) return  obj.offsetHeight; 
            if (obj.clip) return obj.clip.height; 
            if (obj.style.height) return obj.style.height;
            return 0;
        } 
        var mqr = []; 
        //var px = 'px';
        //if (document.all) px = '';
        function mq(id){  
            mqr = []; 
            //alert('aaaaaaaaaaaa');         
            this.mqo=document.getElementById(id);             
            var ht = objHeight(this.mqo.getElementsByTagName('div')[0]); 
            if (document.all) ht = ht + 5;
            else ht = ht + 5;
            var fulht = objHeight(this.mqo);            
            var txt = this.mqo.getElementsByTagName('div')[0].innerHTML; 
            this.mqo.innerHTML = ''; 
            var wid = this.mqo.style.width; 
            this.mqo.onmouseout=function() {
                mqRotate(mqr);
                //startstopchange(mqr,'STOP');
            }; 
            this.mqo.onmouseover=function() {
                clearTimeout(mqr[0].TO); 
                //startstopchange(mqr,'START');
            };             
            this.mqo.ary=[]; 
            var maxw = Math.ceil(fulht/ht)+1; 
            for (var i=0;i < maxw;i++){
                this.mqo.ary[i]=document.createElement('div'); 
                this.mqo.ary[i].innerHTML = txt; 
                this.mqo.ary[i].style.position = 'absolute'; 
                this.mqo.ary[i].style.top = (ht*i)+'px'; 
                this.mqo.ary[i].style.height = ht+'px'; 
                this.mqo.ary[i].style.width = wid; 
                this.mqo.appendChild(this.mqo.ary[i]);} 
                mqr.push(this.mqo);
                //startstop(mqr,this.mqo);
            } 
            function mqRotate(mqr){
                if (!mqr) return;  
                //alert(    mqr.length);
                for (var j=mqr.length - 1; j > -1; j--) {
                    maxa = mqr[j].ary.length; 
                    for (var i=0;i<maxa;i++){
                        var x = mqr[j].ary[i].style;
                        x.top=(parseInt(x.top,10)-1)+'px';
                    } 
                    var y = mqr[j].ary[0].style;                     
                    //z.innerHTML = z.innerHTML + '#' + typeof(y);            
                    if (parseInt(y.top,10)+parseInt(y.height,10)<0) {                        
                        var z = mqr[j].ary.shift();
                        z.style.top = (parseInt(z.style.top, 10) + parseInt(z.style.height, 10)*maxa) + 'px';            
                        mqr[j].ary.push(z);             
                        //document.getElementById('divLog')innerHTML = document.getElementById('divLog')innerHTML + 'aaaa';
                     }
                     //z.innerHTML = z.innerHTML + '#' + y.top + '#' + y.height;                     
                } 
                //this.mqo.ary[i].innerHTML = this.mqo.ary[i].innerHTML + z.style.top;
                mqr[0].TO=setTimeout('mqRotate(mqr)',30);
            }
        function startNewsMarquee(divNewsMarquee) {
           if (document.getElementById(divNewsMarquee)){new mq(divNewsMarquee);mqRotate(mqr);}
        }
        function stopNewsMarquee(){
            if (mqr[0]) clearTimeout(mqr[0].TO);
        }
