function JPscrollStart() {
    JPscrollgetcontent();
    JPscrollValidate();
    JPSCROLL_outerdiv=document.getElementById('JPSCROLL_outer');
    JPSCROLL_outerdiv.style.height            = JPSCROLL_height+'px';
    JPSCROLL_outerdiv.style.width             = JPSCROLL_width+'px';
    JPSCROLL_outerdiv.style.border            = JPSCROLL_bordercolor+' '+JPSCROLL_borderstyle+' '+JPSCROLL_borderwidth+'px';

    //JPSCROLL_outerdiv.style.clip              = 'rect(0 '+JPSCROLL_innerwidth+' '+JPSCROLL_innerheight+' 0)';
    JPSCROLL_outerdiv.style.backgroundColor   = JPSCROLL_bgcolor;
    JPSCROLL_style = 'position:relative; overflow: hidden;height:'+(JPSCROLL_height-2*JPSCROLL_borderwidth)+'px; width: '+(JPSCROLL_width-2*JPSCROLL_borderwidth)+'px; border-color: '+JPSCROLL_bgcolor+'; border-style: solid; border-width: '+JPSCROLL_bordergap+'px; background-color:'+JPSCROLL_bgcolor+'; ' + 'color: '+JPSCROLL_textcolor+';'+ 'font-size: '+JPSCROLL_fontsize+'px; '+ 'font-family: '+JPSCROLL_fontfamily+'; '+ 'font-style: '+JPSCROLL_fontstyle+'; '+ 'font-weight: '+JPSCROLL_fontweight+'; '; JPSCROLL_outerdiv.innerHTML='<div style="'+JPSCROLL_style+'"><div id="JPSCROLL_area" style="position:relative; overflow: hidden; width:'+JPSCROLL_innerwidth+'px;text-align: '+JPSCROLL_alignment+'; border: 0px; margin: 0px; padding: 0px;"></div></div>';
    JPSCROLL_div=document.getElementById('JPSCROLL_area'); JPSCROLL_div.style.top=JPSCROLL_innerheight+'px';
    JPSCROLL_div.innerHTML=JPSCROLL_message;
    JPSCROLL_vsize=JPSCROLL_div.offsetHeight; adjustVsize();
    JPSCROLL_div.innerHTML=JPSCROLL_message + JPSCROLL_filler + JPSCROLL_message; JPscroll();
}

function adjustVsize() {
    var tempheight = 0;
    while (tempheight<JPSCROLL_vsize) { tempheight = tempheight + JPSCROLL_innerheight; }

    if ( (tempheight-JPSCROLL_vsize-2)<1 ) {
        JPSCROLL_filler = "";
    } else {
        JPSCROLL_filler = '<div style="border: 0px; margin: 0px; padding: 0px; background-color: '+JPSCROLL_bgcolor+'; height: '+(tempheight-JPSCROLL_vsize-2)+'px;"> </div>';
    }
    JPSCROLL_vsize = tempheight;
}

function JPscroll() {
    if (JPSCROLL_sspeed > 0) {
        JPSCROLL_pagepixelcount++;
        if (JPSCROLL_pagepixelcount > JPSCROLL_innerheight) {
            JPSCROLL_pagepixelcount = 0;
            if (JPSCROLL_pagepause>0) {
            setTimeout("JPscroll()",JPSCROLL_pagepause);
            } else {
                JPscroll();
            } } else {
            if(parseInt(JPSCROLL_div.style.top)>=JPSCROLL_vsize*(-1)) {
                JPSCROLL_div.style.top=parseInt(JPSCROLL_div.style.top)-JPSCROLL_sspeed+'px';
                setTimeout("JPscroll()",JPSCROLL_speed)+'px';
            } else {
                JPSCROLL_div.style.top=-2+'px'; JPscroll();
            } } } else {
        setTimeout("JPscroll()",10);
    }
}

function JPscrollgetcontent() {
    try {
        document.getElementById('JPSCROLL_content').style.visibility="hidden";
        document.getElementById('JPSCROLL_content').style.height="1px";
        document.getElementById('JPSCROLL_content').style.width="1px";
        document.getElementById('JPSCROLL_content').style.overflow="hidden";
        JPSCROLL_message = document.getElementById('JPSCROLL_content').innerHTML;
    } catch (ex) {
        JPSCROLL_message = "Error <br> Unable to load content<br><br>Ensure Content DIV tag is placed before the SCRIPT tags.";
    }
}

function JPscrollValidate() {
    if (JPSCROLL_speed<10) {
        JPSCROLL_speed = 10;
    }
    var found = false;
    var thelink = "";
    var jplink  = "j"+"p"+"o"+"w"+"e"+"r"+"e"+"d"+"."+"c"+"o"+"m";
    for (i=0; i<document.links.length; i++) {
        thelink = document.links[i].href;
        if (thelink.indexOf(jplink)>0) {
            found = true;
        }
    }
    if (!found) {
        JPSCROLL_message = "Link is not present in the page";
    }
}

function JPscrollConfig() {
   
    JPSCROLL_width=150;
    JPSCROLL_height=200;
    JPSCROLL_bgcolor="#FFDDDD";
    JPSCROLL_bordercolor="#FF0000";
    JPSCROLL_speed=10;
    JPSCROLL_pagepause = 1000;
    JPSCROLL_borderwidth = 1;
    JPSCROLL_borderstyle = "dashed";
    JPSCROLL_bordergap = 2;
    JPSCROLL_alignment = "left";
    JPSCROLL_textcolor = "#000000";
    JPSCROLL_fontsize = 12;
    JPSCROLL_fontfamily = "Arial, sans-serif";
    JPSCROLL_fontstyle = "normal";
    JPSCROLL_fontweight = "normal";
    JPSCROLL_width       = JPscrollGetIntParam('JPSCROLL_width','150');
    JPSCROLL_height      = JPscrollGetIntParam('JPSCROLL_height','200');
    JPSCROLL_bgcolor     = JPscrollGetParam('JPSCROLL_bgcolor','#FFFFFF');
    JPSCROLL_bordercolor = JPscrollGetParam('JPSCROLL_bordercolor','#444444');
    JPSCROLL_speed       = JPscrollGetIntParam('JPSCROLL_speed','10');
    JPSCROLL_borderwidth = JPscrollGetIntParam('JPSCROLL_borderwidth','1');
    JPSCROLL_borderstyle = JPscrollGetParam('JPSCROLL_borderstyle','solid');
    JPSCROLL_bordergap   = JPscrollGetIntParam('JPSCROLL_bordergap','2');
    JPSCROLL_alignment   = JPscrollGetParam('JPSCROLL_alignment','left');
    JPSCROLL_pagepause   = 1000 * JPscrollGetIntParam('JPSCROLL_pagepause','0');
    JPSCROLL_textcolor   = JPscrollGetParam('JPSCROLL_textcolor','#000000');
    JPSCROLL_fontsize    = JPscrollGetIntParam('JPSCROLL_fontsize','12');
    JPSCROLL_fontfamily  = JPscrollGetParam('JPSCROLL_fontfamily','Arial, sans-serif');
    JPSCROLL_fontstyle   = JPscrollGetParam('JPSCROLL_fontstyle','normal');
    JPSCROLL_fontweight  = JPscrollGetParam('JPSCROLL_fontweight','normal');
    if (JPSCROLL_width<1)       {
        JPSCROLL_width=150;
    }
    if (JPSCROLL_height<1)      {
        JPSCROLL_height=200;
    }
    if (JPSCROLL_speed<10)      {
        JPSCROLL_speed=10;
    }
    if (JPSCROLL_pagepause<0)   {
        JPSCROLL_pagepause=0;
    }
    if (JPSCROLL_borderwidth<0) {
        JPSCROLL_borderwidth=0;
    }
    if (JPSCROLL_bordergap<0)   {
        JPSCROLL_bordergap=0;
    }
    if (JPSCROLL_fontsize<6)    {
        JPSCROLL_fontsize=12;
    }
    JPSCROLL_borderstyle = JPSCROLL_borderstyle.toLowerCase();
    JPSCROLL_alignment   = JPSCROLL_alignment.toLowerCase();
    JPSCROLL_fontstyle   = JPSCROLL_fontstyle.toLowerCase();
    JPSCROLL_fontweight  = JPSCROLL_fontweight.toLowerCase();
    JPSCROLL_innerwidth  = JPSCROLL_width - 2*JPSCROLL_borderwidth - 2*JPSCROLL_bordergap;
    JPSCROLL_innerheight = JPSCROLL_height - 2*JPSCROLL_borderwidth - 2*JPSCROLL_bordergap;
}

function JPscrolltrim(str) {
    while(str.charAt(0)==" ") {
        str=str.substring(1,str.length);
    }
    while(str.charAt(str.length-1)==" ") {
        str=str.substring(0,str.length-1);
    }
    return str;
}

function JPscrollGetParam(paramname,defaultvalue) {
    var paramvalue = defaultvalue;
    if (document.getElementById(paramname)) {
        document.getElementById(paramname).style.visibility="hidden";
        document.getElementById(paramname).style.height="1px";
        document.getElementById(paramname).style.width="1px";
        paramvalue = document.getElementById(paramname).innerHTML;
    } paramvalue = JPscrolltrim(paramvalue);
    return paramvalue;
}

function JPscrollGetIntParam(paramname,defaultvalue) {
    var paramvalue = defaultvalue;
    if (document.getElementById(paramname)) {
        document.getElementById(paramname).style.visibility="hidden";
        document.getElementById(paramname).style.height="1px";
        document.getElementById(paramname).style.width="1px";
        paramvalue = document.getElementById(paramname).innerHTML;
    }
    paramvalue = parseInt(paramvalue);
    if (isNaN(paramvalue)) {
        paramvalue = parseInt(defaultvalue);
    }
    return paramvalue;
}

var JPSCROLL_sspeed=1;
var JPSCROLL_restart=JPSCROLL_sspeed;
var JPSCROLL_innerwidth  = JPSCROLL_width - 2*JPSCROLL_borderwidth - 2*JPSCROLL_bordergap;
var JPSCROLL_innerheight = JPSCROLL_height - 2*JPSCROLL_borderwidth - 2*JPSCROLL_bordergap;
var JPSCROLL_message='no content';
var JPSCROLL_width=1;
var JPSCROLL_height=2;
var JPSCROLL_bgcolor="#FFDDDD";
var JPSCROLL_bordercolor="#FF0000";
var JPSCROLL_speed=10;
var JPSCROLL_borderwidth = 1;
var JPSCROLL_borderstyle = "dashed";
var JPSCROLL_bordergap = 2;
var JPSCROLL_alignment = "left";
var JPSCROLL_pagepause = 1000;
var JPSCROLL_pagepixelcount = 0;
var JPSCROLL_textcolor = "#000000";
var JPSCROLL_fontsize = 12;
var JPSCROLL_fontfamily = "Arial, sans-serif";
var JPSCROLL_fontstyle = "normal";
var JPSCROLL_fontweight = "normal";
var JPSCROLL_filler = "";
JPscrollConfig();
JPscrollStart();
