// Body onload utility (supports multiple onload functions)
// Function to safely chain onload event handlers transparently, pretty cool
// Call the following with your function and parameters as the argument
// SafeAddOnload(yourfunctioname);
var gSafeOnload = new Array() ; 
var testOnload  = /function SafeOnload()/ ;

function SafeAddOnload(f) {  
   if (window.onload) {
        if (!testOnload.test(window.onload)) {  // Don't make myself be part of the load
                gSafeOnload[0] = window.onload ;
                window.onload  = SafeOnload ;
        }               
	gSafeOnload[gSafeOnload.length] = f;
   } else {
        window.onload = f;
   }
}

function SafeOnload() {       
        for (var i=0;i<gSafeOnload.length;i++) {
                if (testOnload.test(gSafeOnload[i])) { // prevent recursive calling of myself
                        alert("Error: SafeOnload is recursive.") ;
                        continue; // Don't execute myself
                }
		eval(gSafeOnload[i]) ;
        }
}
SafeAddOnload('void(0)') ; // I don't know why, but this is needed to make other onLoads execute...?

function setFormCursor(formName, elementName) { 
	eval('document.' + formName + '.' + elementName + '.focus()') ;
}

function mailTO() {
	var emailParts = new Array('contact', 'joshrobertsmusic', 'com') ;
	document.location.href = 'mailto:' + emailParts[0] + '@' + emailParts[1] + '.' + emailParts[2] ;
}
