function Getjplasma_js()
{
  var txt='';
  txt+="// JPlasma Copyright(c) Jani Penttinen 2003.\r\n";
  txt+="// To use the plasma as a background effet, call:\r\n";
  txt+="//\r\n";
  txt+="// CreatePlasma(xtiles,ytiles,zdepth);\r\n";
  txt+="//\r\n";
  txt+="// in the BODY. Good values are for example (10,10,-1).\r\n";
  txt+="// Negative z values place the plasma behind the HTML\r\n";
  txt+="// content.\r\n";
  txt+="//\r\n";
  txt+="// To use plasma within the document, call:\r\n";
  txt+="//\r\n";
  txt+="// CreatePlasma(xtiles,ytiles,zdepth,width,height);\r\n";
  txt+="//\r\n";
  txt+="// anywhere in the document.\r\n";
  txt+="//\r\n";
  txt+="\r\n";
  txt+="var nums=new String(\"0123456789abcdef\");\r\n";
  txt+="var plasmatablewidth;\r\n";
  txt+="\r\n";
  txt+="var plasmatableheight;\r\n";
  txt+="var plasmaw;\r\n";
  txt+="var plasmah;\r\n";
  txt+="\r\n";
  txt+="function WriteHex(s,n)\r\n";
  txt+="{\r\n";
  txt+="    n&=255;\r\n";
  txt+="    var upper=n&gt&gt4;\r\n";
  txt+="    s+=nums.charAt(upper);\r\n";
  txt+="\r\n";
  txt+="    s+=nums.charAt(n&15);\r\n";
  txt+="\r\n";
  txt+="    return s;\r\n";
  txt+="}\r\n";
  txt+="\r\n";
  txt+="function CreatePlasma(w, h, z, tw, th)\r\n";
  txt+="{\r\n";
  txt+="    plasmaw=tw;\r\n";
  txt+="    plasmah=th;\r\n";
  txt+="\r\n";
  txt+="    var size=Math.floor(1/w*100);\r\n";
  txt+="    plasmatablewidth=w;\r\n";
  txt+="    plasmatableheight=h;\r\n";
  txt+="    var tableh=plasmah;\r\n";
  txt+="    if (!tableh) tableh=document.body.clientHeight;\r\n";
  txt+="    var t=\"\";\r\n";
  txt+="    if (z!=0) {\r\n";
  txt+="        t+=\"&ltSPAN ID='tablespanid' \";\r\n";
  txt+="        t+=\"style=\"POSITION: absolute; \";\r\n";
  txt+="        t+=\"Z-INDEX: \" + z + \"; \";\r\n";
  txt+="        t+=\"VISIBILITY: visible; \"&gt\";\r\n";
  txt+="    }\r\n";
  txt+="\r\n";
  txt+="    t+=\"&ltTABLE ID='tableid' \";\r\n";
  txt+="    t+=\"HEIGHT='\" + tableh + \"px' \";\r\n";
  txt+="    t+=\"WIDTH='\" + plasmaw + \"' \";\r\n";
  txt+="    t+=\"BORDER=0 CELLSPACING=0&gt\";\r\n";
  txt+="    for (var y=0;y&lth;++y) {\r\n";
  txt+="        t+=\"&ltTR&gt\";\r\n";
  txt+="        for (var x=0;x&ltw;++x) {\r\n";
  txt+="            var id=\"tdx\" + x + \"y\" + y;\r\n";
  txt+="            t+=\"&ltTD WIDTH='\" + size + \"%' \";\r\n";
  txt+="            t+=\"HEIGHT='\" + size + \"%' \";\r\n";
  txt+="            t+=\"id='\" + id + \"'&gt\";\r\n";
  txt+="            t+=\"&lt/TD&gt\";\r\n";
  txt+="        }\r\n";
  txt+="        t+=\"&lt/TR&gt\";\r\n";
  txt+="    }\r\n";
  txt+="    t+=\"&lt/TABLE&gt\";\r\n";
  txt+="    if (z!=0) {\r\n";
  txt+="        t+=\"&lt/SPAN&gt\";\r\n";
  txt+="    }\r\n";
  txt+="    document.write(t);\r\n";
  txt+="\r\n";
  txt+="    SetPlasmaColors();\r\n";
  txt+="    setInterval(\"UpdatePlasma();\",25);\r\n";
  txt+="}\r\n";
  txt+="\r\n";
  txt+="function UpdatePlasma()\r\n";
  txt+="\r\n";
  txt+="{\r\n";
  txt+="    var run=GetCookie(\"jplasma\");\r\n";
  txt+="    if (run!=\"1\") {\r\n";
  txt+="        return;\r\n";
  txt+="    }\r\n";
  txt+="    SetPlasmaColors();\r\n";
  txt+="}\r\n";
  txt+="\r\n";
  txt+="function SetPlasmaColors()\r\n";
  txt+="{\r\n";
  txt+="    if (!plasmah) {\r\n";
  txt+="        document.all[\"tableid\"].height=\r\n";
  txt+="            document.body.clientHeight;\r\n";
  txt+="    }\r\n";
  txt+="\r\n";
  txt+="    var updatetime=new Date();\r\n";
  txt+="\r\n";
  txt+="    var angle1=updatetime/1024.0;\r\n";
  txt+="    var angle2=updatetime/1400.0;\r\n";
  txt+="    var a1=angle1;\r\n";
  txt+="    var angle3=-updatetime/705.0;\r\n";
  txt+="    for (var y=0;y&ltplasmatableheight;++y) {\r\n";
  txt+="        angle2+=0.15;\r\n";
  txt+="        angle3+=0.27;\r\n";
  txt+="        angle1=a1;\r\n";
  txt+="        for (var x=0;x&ltplasmatablewidth;++x) {\r\n";
  txt+="            var r=Math.floor(255.0*\r\n";
  txt+="                ((1.0+Math.sin(angle1))*0.5));\r\n";
  txt+="            var g=Math.floor(255.0*\r\n";
  txt+="                ((1.0+Math.cos(angle2))*0.5));\r\n";
  txt+="            var b=Math.floor(255.0*\r\n";
  txt+="                ((1.0+Math.sin(angle3))*0.5));\r\n";
  txt+="            var col=\"#\";\r\n";
  txt+="            col=WriteHex(col,r);\r\n";
  txt+="            col=WriteHex(col,g);\r\n";
  txt+="            col=WriteHex(col,b);\r\n";
  txt+="            var id=\"tdx\" + x + \"y\" + y;\r\n";
  txt+="            var o=document.all[id];\r\n";
  txt+="            if (o) {\r\n";
  txt+="                o.bgColor=col;\r\n";
  txt+="            }\r\n";
  txt+="            angle1+=0.23;\r\n";
  txt+="\r\n";
  txt+="        }\r\n";
  txt+="\r\n";
  txt+="    }\r\n";
  txt+="\r\n";
  txt+="}\r\n";
  txt+="\r\n";
  return txt;
}
 