//<!-- Original:  Altan (snow@altan.hr) -->
//<!-- Web Site:  http://www.altan.hr/snow -->

//<!-- This script and many more are available free online at -->
//<!-- The JavaScript Source!! http://javascript.internet.com -->

//<!-- Begin-->

  var no = 25; // snow number
  var speed = 30; // smaller number moves the snow faster
  var snowflake = "/snow.gif";
  
  var ns4up = (document.layers) ? 1 : 0;  // browser sniffer
  var ie4up = (document.all) ? 1 : 0;
  var l1dom = (document.getElementById) ? 1 : 0;
  
//alert('ie4up= ' + ie4up + '\nns4up= ' + ns4up + '\nl1dom= ' + l1dom);  
  
  var dx, xp, yp;    // coordinate and position variables
  var am, stx, sty;  // amplitude and step variables
  var i, doc_width = 800, doc_height = 600;
if (ns4up) {
doc_width = self.innerWidth;
doc_height = self.innerHeight;
} else if (ie4up) {
doc_width = document.body.clientWidth;
doc_height = document.body.clientHeight;
}
  dx = new Array();
  xp = new Array();
  yp = new Array();
  am = new Array();
  stx = new Array();
  sty = new Array();

  for (i = 0; i < no; ++ i) {  
    dx[i] = 0;                        // set coordinate variables
    xp[i] = Math.random()*(doc_width-50);  // set position variables
    yp[i] = Math.random()*doc_height;
    am[i] = Math.random()*20;         // set amplitude variables
    stx[i] = 0.02 + Math.random()/10; // set step variables
    sty[i] = 0.7 + Math.random();     // set step variables
    if (l1dom) {                      // 
        if (i == 0) {
          document.write("<div id=\"dot"+ i +"\" style=\"POSITION: ");
          document.write("absolute; Z-INDEX: "+ i +"; VISIBILITY: ");
          document.write("visible; TOP: 15px; LEFT: 15px;\"><img style='border-width:0;' src=\"");
          document.write(snowflake + "\" border=\"0\"></div>");
        } else {
          document.write("<div id=\"dot"+ i +"\" style=\"POSITION: ");
          document.write("absolute; Z-INDEX: "+ i +"; VISIBILITY: ");
          document.write("visible; TOP: 15px; LEFT: 15px;\"><img style='border-width:0;' src=\"");
          document.write(snowflake + "\" border=\"0\"></div>");
         }
    } else if (ns4up) {                      // set layers
        if (i == 0) {
            document.write("<layer name=\"dot"+ i +"\" left=\"15\" ");
            document.write("top=\"15\" visibility=\"show\"><img style='border-width:0;' src=\"");
            document.write(snowflake + "\" border=\"0\"></layer>");
         } else {
            document.write("<layer name=\"dot"+ i +"\" left=\"15\" ");
            document.write("top=\"15\" visibility=\"show\"><img style='border-width:0;' src=\"");
            document.write(snowflake + "\" border=\"0\"></layer>");
         }
    } else if (ie4up) {
        if (i == 0) {
          document.write("<div id=\"dot"+ i +"\" style=\"POSITION: ");
          document.write("absolute; Z-INDEX: "+ i +"; VISIBILITY: ");
          document.write("visible; TOP: 15px; LEFT: 15px;\"><img style='border-width:0;' src=\"");
          document.write(snowflake + "\" border=\"0\"></div>");
          } else {
          document.write("<div id=\"dot"+ i +"\" style=\"POSITION: ");
          document.write("absolute; Z-INDEX: "+ i +"; VISIBILITY: ");
          document.write("visible; TOP: 15px; LEFT: 15px;\"><img style='border-width:0;' src=\"");
          document.write(snowflake + "\" border=\"0\"></div>");
        }
    }
  }

  function snow1DOM() {  // Level 1 DOM main animation function
//alert('Inne snow1DOM');
    for (i = 0; i < no; ++ i) {  // iterate for every dot
      yp[i] += sty[i];
      if (yp[i] > doc_height-28) {
        xp[i] = Math.random()*(doc_width-am[i]-30);
        yp[i] = -10;
        stx[i] = 0.02 + Math.random()/10;
        sty[i] = 0.7 + Math.random();
        if (self.innerWidth) {
          doc_width = self.innerWidth;
          doc_height = self.innerHeight;
        } else {
          doc_width = document.body.clientWidth;
          doc_height = document.body.clientHeight; 
        }
      }
      dx[i] += stx[i];
      document.getElementById("dot"+i).style.top = yp[i] + document.body.scrollTop;
      document.getElementById("dot"+i).style.left = xp[i] + am[i]*Math.sin(dx[i]);
    }
    setTimeout("snow1DOM()", speed);
  }
  
  function snowNS() {  // Netscape main animation function
  for (i = 0; i < no; ++ i) {  // iterate for every dot
  yp[i] += sty[i];
  if (yp[i] > doc_height-50) {
  xp[i] = Math.random()*(doc_width-am[i]-30);
  yp[i] = 0;
  stx[i] = 0.02 + Math.random()/10;
  sty[i] = 0.7 + Math.random();
  doc_width = self.innerWidth;
  doc_height = self.innerHeight;
  }
  dx[i] += stx[i];
  document.layers["dot"+i].top = yp[i];
  document.layers["dot"+i].left = xp[i] + am[i]*Math.sin(dx[i]);
  }
  setTimeout("snowNS()", speed);
  }
  
  function snowIE() {  // IE main animation function
  for (i = 0; i < no; ++ i) {  // iterate for every dot
  yp[i] += sty[i];
  if (yp[i] > doc_height-25) {
  xp[i] = Math.random()*(doc_width-am[i]-30);
  yp[i] = 0;
  stx[i] = 0.02 + Math.random()/10;
  sty[i] = 0.7 + Math.random();
  doc_width = document.body.clientWidth;
  doc_height = document.body.clientHeight;
  }
  dx[i] += stx[i];
  document.all["dot"+i].style.pixelTop = yp[i];
  document.all["dot"+i].style.pixelLeft = xp[i] + am[i]*Math.sin(dx[i]);
  }
  setTimeout("snowIE()", speed);
  }
  
  if (l1dom) {
  snow1DOM();
  } else if (ns4up) {
  snowNS();
  } else if (ie4up) {
  snowIE();
}
// End -->
