function NvScroll() {

this.name = "NvScroll";
this.item = new Array();
this.itemcount = 0;
this.currentspeed = 0;
this.scrollspeed = 50;
this.pausedelay = 1000;
this.pausemouseover = false;
this.stop = false;
this.type = 1;
this.height = 100;
this.width = 100;
this.stopHeight=0;
this.i=0;
 
this.add = function () {
    var text = arguments[0];
 
    this.item[this.itemcount] = text;
//  alert(this.item[this.itemcount]);
    this.itemcount ++;
};
 
this.add2 = function () {
    var url = arguments[0];
    var title = arguments[1];
    this.item[this.itemcount] = "<a href=" + url + ">" + title + "</a>";
    this.itemcount = this.itemcount + 1;
};
 
this.reset_item = function () {
    this.item = new Array();
    this.itemcount = 0;
};
 
this.start = function (layer_name) {
    if ( this.itemcount == 1 ) {
        this.add(this.item[0]);
    }
    if (layer_name != null)
    {
        document.getElementById(layer_name).innerHTML = this.str_ret();
    }
    else 
    {
        this.display();
    }
    this.currentspeed = this.scrollspeed;
    if ( this.type == 1 || this.type == 2 ) {
        this.stop = true;
        setTimeout(this.name+'.scroll()',this.currentspeed);
        window.setTimeout(this.name+".stop = false", this.pausedelay);
    } else if ( this.type == 3 ) {
        this.stop = true;
        setTimeout(this.name+'.rolling()',this.currentspeed);
        window.setTimeout(this.name+".stop = false", this.pausedelay);
    }
};
 
this.weather_start = function (layer_name, section) {
    if (section == null) {
        this.start(layer_name);
    }
    else {
        var str = '<ul id="'+this.name+'" style="height:'+this.height+'; width:'+this.width+'; position:relative; overflow:hidden; " OnMouseOver="'+this.name+'.onmouseover(); " OnMouseOut="'+this.name+'.onmouseout(); ">';
        for(var i = 0; i < this.itemcount; i++) {
            
            str += this.item[i];
        }
        str += '</ul>';
        document.getElementById(layer_name).innerHTML = str;
        this.currentspeed = this.scrollspeed;
        if ( this.type == 1 || this.type == 2 ) {
            this.stop = true;
            setTimeout(this.name+'.scroll()',this.currentspeed);
            window.setTimeout(this.name+".stop = false", this.pausedelay);
        } else if ( this.type == 3 ) {
            this.stop = true;
            setTimeout(this.name+'.rolling()',this.currentspeed);
            window.setTimeout(this.name+".stop = false", this.pausedelay);
        }
    }
   
};
 
this.display = function () {
    document.write('<ul id="'+this.name+'" style="height:'+this.height+'px; width:'+this.width+'px; position:relative; overflow:hidden; " OnMouseOver="'+this.name+'.onmouseover(); " OnMouseOut="'+this.name+'.onmouseout(); ">');
    for(var i = 0; i < this.itemcount; i++) {
        if ( this.type == 1 ) {
            document.write('<ul id="'+this.name+'item'+i+'"style="left:0px; width:'+this.width+'px; position:absolute; top:'+(this.height*i)+'px; ">');
            document.write(this.item[i]);
            document.write('</ul>');
        } else if ( this.type == 2 || this.type == 3 ) {
            document.write('<ul id="'+this.name+'item'+i+'"style="left:'+(this.width*i)+'px; width:'+this.width+'px; position:absolute; top:0px; ">');
            document.write(this.item[i]);
            document.write('</ul>');
        }
    }
    document.write('</ul>');
};


this.str_ret = function () {
    var str = '<ul id="'+this.name+'" style="height:'+this.height+'; width:'+this.width+'; position:relative; overflow:hidden; " OnMouseOver="'+this.name+'.onmouseover(); " OnMouseOut="'+this.name+'.onmouseout(); ">';
    for(var i = 0; i < this.itemcount; i++) {
        if ( this.type == 1 ) {
            str += '<ul id="'+this.name+'item'+i+'"style="left:0px; width:'+this.width+'; position:absolute; top:'+(this.height*i)+'px; ">';
            str += this.item[i];
            str += '</ul>';
        } else if ( this.type == 2 || this.type == 3 ) {
            str += '<ul id="'+this.name+'item'+i+'"style="left:'+(this.width*i)+'px; width:'+this.width+'; position:absolute; top:0px; ">';
            str += this.item[i];
            str += '</ul>';
        }
    }
            str += '</ul>';
            return str;
};
 
this.scroll = function () {
 
    if ( this.pause == true ) {
 
        window.setTimeout(this.name+".scroll()",this.pausedelay);
        this.pause = false;
 
    } else {
        
        this.currentspeed = this.scrollspeed;
        if ( !this.stop ) {
            for (i = 0; i < this.itemcount; i++) {
                obj = document.getElementById(this.name+'item'+i).style;
                /* modify start */
                if ( this.type == 1 ) {
                    a = parseInt(obj.top) - 1;
                    obj.top = a + "px";
                    if ( parseInt(obj.top) <= this.height * (-1) ){
                        c = this.height * (this.itemcount-1);
                        obj.top = c + "px";
                    }
                    if ( parseInt(obj.top) == 0 ) this.currentspeed = this.pausedelay;
                } else if ( this.type == 2 ) {
                    b = parseInt(obj.left) - 1;
                    obj.left = b + "px";
                    if ( parseInt(obj.left) <= this.width * (-1) ){
                        d = this.width * (this.itemcount-1);
                        obj.left = d + "px";
                    }
                /* modify end */
                    if ( parseInt(obj.left) == 0 ) this.currentspeed = this.pausedelay;
                }
            }
        }
        window.setTimeout(this.name+".scroll()",this.currentspeed);
    }
};
 
this.rolling = function () {
    if ( this.stop == false  ) {
        this.next();
    }
    window.setTimeout(this.name+".rolling()",this.scrollspeed);
}
 
this.onmouseover = function () {
    if ( this.pausemouseover ) {
        this.stop = true;
    }
};
 
this.onmouseout = function () {
    if ( this.pausemouseover ) {
        this.stop = false;
    }
};
 
this.next = function() {
 
    for (i = 0; i < this.itemcount; i++) {
        obj = document.getElementById(this.name+'item'+i).style;
        if ( parseInt(obj.left) < 1 ) { 
            width = this.width + parseInt(obj.left);
            break;
        }
    }
    for (i = 0; i < this.itemcount; i++) {
        obj = document.getElementById(this.name+'item'+i).style;
        if ( parseInt(obj.left) < 1 ) { 
            obj.left = this.width * (this.itemcount-1);
        } else {
            obj.left = parseInt(obj.left) - width;
        }
    }
 
}
 
this.down = function() {
 
    for (i = 0; i < this.itemcount; i++) {
        obj = document.getElementById(this.name+'item'+i).style;
        if ( parseInt(obj.top) < 1 ) { 
            height = this.height + parseInt(obj.top);
            break;
        }
    }
    for (i = 0; i < this.itemcount; i++) {
        obj = document.getElementById(this.name+'item'+i).style;
        if ( parseInt(obj.top) < 1 ) { 
            obj.top = this.height * (this.itemcount-1);
        } else {
            obj.top = parseInt(obj.top) - height;
        }
    }
 
}
 
this.prev = function() {
 
    for (i = 0; i < this.itemcount; i++) {
        obj = document.getElementById(this.name+'item'+i).style;
        if ( parseInt(obj.left) < 1 ) { 
            width = parseInt(obj.left) * (-1);
            break;
        }
    }
    if ( width == 0 ) {
        total_width = this.width * (this.itemcount-1);
        for (i = 0; i < this.itemcount; i++) {
            obj = document.getElementById(this.name+'item'+i).style;
            if ( parseInt(obj.left) + 1 > total_width ) { 
                obj.left = 0;
            } else {
                obj.left = parseInt(obj.left) + this.width;
            }
        }
    } else {
        for (i = 0; i < this.itemcount; i++) {
            obj = document.getElementById(this.name+'item'+i).style;
            if ( parseInt(obj.left) < 1 ) { 
                obj.left = 0;
            } else {
                obj.left = parseInt(obj.left) + width;
            }
        }
    }
}
 
this.up = function() {
 
    for (i = 0; i < this.itemcount; i++) {
        obj = document.getElementById(this.name+'item'+i).style;
        if ( parseInt(obj.top) < 1 ) { 
            height = parseInt(obj.top) * (-1);
            break;
        }
    }
    if ( height == 0 ) {
        total_height = this.height * (this.itemcount-1);
        for (i = 0; i < this.itemcount; i++) {
            obj = document.getElementById(this.name+'item'+i).style;
            if ( parseInt(obj.top) + 1 > total_height ) { 
                obj.top = 0;
            } else {
                obj.top = parseInt(obj.top) + this.height;
            }
        }
    } else {
        for (i = 0; i < this.itemcount; i++) {
            obj = document.getElementById(this.name+'item'+i).style;
            if ( parseInt(obj.top) < 1 ) { 
                obj.top = 0;
            } else {
                obj.top = parseInt(obj.top ) + height;
            }
        }
    }
 
}
 
this.unext = function () {
    this.onmouseover();
    if(this.type == 1) {
        this.down();
    } else {
        this.next();
    }
    window.setTimeout(this.name+".onmouseout()",this.pausedelay);
}
 
this.uprev = function () {
    this.onmouseover();
    if(this.type == 1) {
        this.up();
    } else {
        this.prev();
    }
    window.setTimeout(this.name+".onmouseout()",this.pausedelay);
}
 
}

dt_sokbo_news = new NvScroll();
dt_sokbo_news.name = "dt_sokbo_news";
dt_sokbo_news.height = 20;
dt_sokbo_news.width = 300;
dt_sokbo_news.scrollspeed = 1;
dt_sokbo_news.pausedelay = 3000;
dt_sokbo_news.pausemouseover = true;
dt_sokbo_news.type = 1;