﻿// CREDITS: // Snowmaker Copyright (c) 2003 Peter Gehrig. All rights reserved. 
// Distributed by http://www.hypergurl.com // Permission given to use the script on webpages provided that this notice remains as is. 
// Set the number of snowflakes (more than 30 - 40 not recommended) 
var snowmax=20
// Set the colors for the snow. Add as many colors as you like 
var snowcolor=new Array("#aaaacc","#ddddFF","#ccccDD","#ccccFF","#ccffDD","#ccddff") 
// Set the fonts, that create the snowflakes. Add as many fonts as you like
//var snowtype=new Array("Arial Black","Arial Narrow","Times","Comic Sans MS","Bell MT","Calibri")
var snowtype = new Array("Wingdings") 
// Set the letter that creates your snowflake (recommended:*) 
var snowletter="J" //smile
// Set the speed of sinking (recommended values range from 0.3 to 2) 
var sinkspeed=1.2 
// Set the maximal-size of your snowflaxes 
var snowmaxsize=36
// Set the minimal-size of your snowflaxes 
var snowminsize=24
// Set the snowing-zone 
// Set 1 for all-over-snowing, set 2 for left-side-snowing 
// Set 3 for center-snowing, set 4 for right-side-snowing 
var snowingzone=1
/////////////////////////////////////////////////////////////////////////// 
// CONFIGURATION ENDS HERE /////////////////////////////////////////////////////////////////////////// 
// Do not edit below this line 
var snow=new Array() 
var marginbottom 
var marginright 
var timer 
var i_snow=0 
var x_mv=new Array(); var crds=new Array(); var lftrght=new Array(); var browserinfos=navigator.userAgent 
var ie5=document.all&&document.getElementById&&!browserinfos.match(/Opera/) 
var ns6=document.getElementById&&!document.all 
var opera=browserinfos.match(/Opera/) 
var browserok=ie5||ns6||opera 

function randommaker(range) 
{ 
    rand=Math.floor(range*Math.random()) 
    return rand 
} 

function initsnow() 
{ 
    if (ie5 || opera) 
    { 
        marginbottom = document.body.clientHeight 
        marginright = document.body.clientWidth 
    } 
    else if (ns6) 
    { 
        marginbottom = window.innerHeight 
        marginright = window.innerWidth 
    } 
    
    var snowsizerange=snowmaxsize-snowminsize 
    for (i=0;i<=snowmax;i++) 
    { 
        crds[i] = 0; 
        lftrght[i] = Math.random()*15; 
        x_mv[i] = 0.03 + Math.random()/10; 
        snow[i]=document.getElementById("s"+i) 
        snow[i].style.fontFamily=snowtype[randommaker(snowtype.length)] 
        snow[i].size=randommaker(snowsizerange)+snowminsize 
        snow[i].style.fontSize=snow[i].size+"px" 
        snow[i].style.color=snowcolor[randommaker(snowcolor.length)] 
        snow[i].sink=sinkspeed*snow[i].size/5 
        if (snowingzone==1) 
        {
            snow[i].posx=randommaker(marginright-snow[i].size)
        } 
        if (snowingzone==2) 
        {
            snow[i].posx=randommaker(marginright/2-snow[i].size)
        } 
        if (snowingzone==3) 
        {
            snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/4
        } 
        if (snowingzone==4) 
        {
            snow[i].posx=randommaker(marginright/2-snow[i].size)+marginright/2
        } 
        snow[i].posy=randommaker(2*marginbottom-marginbottom-2*snow[i].size) 
        snow[i].style.left=snow[i].posx+"px" 
        snow[i].style.top=snow[i].posy+"px"
    } 
    movesnow() 
}

function movesnow() 
{
    for (i = 0; i <= snowmax; i++) 
    {
        crds[i] += x_mv[i];
        snow[i].posy += snow[i].sink
        snow[i].style.left = snow[i].posx + lftrght[i] * Math.sin(crds[i])+"px";
        snow[i].style.top = snow[i].posy+"px"
        if (snow[i].posy >= marginbottom - 2 * snow[i].size || parseInt(snow[i].style.left) > (marginright - 3 * lftrght[i])) 
        {
            if (snowingzone == 1) 
            {
                snow[i].posx = randommaker(marginright - snow[i].size)
            }
            if (snowingzone == 2) 
            {
                snow[i].posx = randommaker(marginright / 2 - snow[i].size)
            }
            if (snowingzone == 3) 
            {
                snow[i].posx = randommaker(marginright / 2 - snow[i].size) + marginright / 4
            }
            if (snowingzone == 4) 
            {
                snow[i].posx = randommaker(marginright / 2 - snow[i].size) + marginright / 2
            }
            snow[i].posy = 0
        }
    }
    var timer = setTimeout("movesnow()", 50)
}

for (i = 0; i <= snowmax; i++) {
    document.write("<span id='s" + i + "' style='position:absolute;top:-" + snowmaxsize + "'>" + snowletter + "</span>")
}
if (browserok) {
    window.onload = initsnow
} 
