// JavaScript Document

YAHOO.util.Event.addListener(window, "load", initialize);
 
function initialize()
{
	 SetSideMenuBehaviors("product_categories");
	 SetSideMenuBehaviors("services_categories");
	 SetSideMenuBehaviors("master_italian_plaster");
	 SetSideMenuBehaviors("misc_links");
	 SetSideMenuBehaviors("gallery");
	 SetSideMenuBehaviors("learn_more");
	 SetSideMenuBehaviors("as_seen_on");
	 SetSideMenuBehaviors("download");
	 
	 //Preload rollover images	 
	 MM_preloadImages('images/home_over.gif','images/upcoming_events_over.gif','images/showroom_over.gif','images/marketing_tools_over.gif','images/online_store_over.gif','images/site_map_over.gif','images/about_us_over.gif','images/contact_us_over.gif');
}

function EmbedFlash_home()
{
	var swf_home = new SWFObject("mm/home_page_holder.swf", "HomepagePresentation", "536", "278", "#ffffff");
	swf_home.addParam("quality", "high");
	swf_home.write("flash_container_home");
}

function EmbedFlash_marketing_tools()
{
	var swf_marketing_tools = new SWFObject("mm/marketing_tools_presentation.swf", "MarketingToolsPresentation", "532", "350", "#ffffff");
	swf_marketing_tools.addParam("quality", "high");
	swf_marketing_tools.write("flash_container_marketing_tools");
}

function SetSideMenuBehaviors(id)
{
	var list = document.getElementById(id);
	
	if (!list)
		return;
		
	var len = list.childNodes.length;
	
	for (i=0; i < len; i++)
	{
		if (list.childNodes[i].tagName == "LI")
		{
			if (list.childNodes[i].className != "selected")
			{
				list.childNodes[i].onmouseover = function() { this.className = "mouseover"; }
				list.childNodes[i].onmouseout = function() { this.className = ""; }
			}
		}		
	}
	
}

//Prompts the user to bookmark the page
function Bookmark(title, url) 
{
	if (window.sidebar) //Mozilla, Firefox
		window.sidebar.addPanel(title, url,"");			
	else if(window.opera && window.print) //Opera
	{
		var mbm = document.createElement('a');
		mbm.setAttribute('rel','sidebar');
		mbm.setAttribute('href',url);
		mbm.setAttribute('title',title);
		mbm.click();
	}		
	else if(document.all) //IE
		window.external.AddFavorite( url, title);
}


/*
==================================================================
Quick getElement reference
==================================================================
*/
function $() 
{
	var elements = new Array();
	
	for (var i = 0; i < arguments.length; i++)
	{
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);
			
		if (arguments.length == 1)
			return element;
			
		elements.push(element);
	}
	
	return elements;
}

/*
==================================================================
Cancels event bubbling. Only tested on Firefox 1.5.0.4 and IE6SP1
==================================================================
*/
function CancelEvent(e)
{
    e.cancelBubble = true;
    e.returnValue = false;
    if (e.preventDefault) e.preventDefault();
}

/*
==================================================================
Finds the X-position of an element positioned relatively on screen
==================================================================
*/
function FindPosX(obj)
{
	var curleft = 0;
	
	if (obj.offsetParent) 
	{
		while (obj.offsetParent) 
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
		
	return curleft;
}

/*
==================================================================
Finds the X-position of an element positioned relatively on screen
==================================================================
*/
function FindPosY(obj) 
{
	var curtop = 0;
	
	if (obj.offsetParent) 
	{
		while (obj.offsetParent) 
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
		
	return curtop;
}


/*
==================================================================
Checks if value is an integer. e.g. (100, -45, +1)
==================================================================
*/
function IsInteger(value)
{
     var result = /^[-\+]{0,1}\d+$/.test(value);
     return result;
}


/*
==================================================================
Checks if value is an unsinged integer. e.g. (100, 45, 1)
==================================================================
*/
function IsUInteger(value)
{
     var result = /^\d+$/.test(value);
     return result;
}

/*
==================================================================
Checks if value is a number. e.g. (100, 45.0, 0.11, -10, -0.51)
==================================================================
*/
function IsNumber(value)
{
     var result = /^\d*[\.\d]{0,1}\d+$/.test(value);
     return result;
}

/*
==================================================================
Checks if value is currency. e.g. (10.2, .2, .24, 0.24, 45)
==================================================================
*/
function IsCurrency(value)
{
     var result = /^\d*(\.\d{1,2}){0,1}$/.test(value);
     return result;
}

function LTrim(str)
{
   var whitespace = new String(" \t\n\r");

   var s = new String(str);

   if (whitespace.indexOf(s.charAt(0)) != -1) {
      var j=0, i = s.length;

      while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
         j++;

      s = s.substring(j, i);
   }
   return s;
}

function RTrim(str)
{
   var whitespace = new String(" \t\n\r");

   var s = new String(str);

   if (whitespace.indexOf(s.charAt(s.length-1)) != -1) {

      var i = s.length - 1;

      while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
         i--;

      s = s.substring(0, i+1);
   }

   return s;
}

function Trim(str)
{
   return RTrim(LTrim(str));
}

/* Adobe Dreamweaver generated code */
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function popup(url, width, height) {
	var params ="toolbar=no, scrollbars=yes, status=yes, depended=yes, resize=yes, width=" + width + ", height=" + height
    var win = window.open(url, "", params)
	win.moveTo(50, 50);
}

function ScrollOffset()
{
  var _x = 0, _y = 0;
  
  if(typeof( window.pageYOffset ) == 'number') 
  {
    //Netscape compliant
    _y = window.pageYOffset;
    _x = window.pageXOffset;
  } 
  else if(document.body && ( document.body.scrollLeft || document.body.scrollTop )) 
  {
    //DOM compliant
    _y = document.body.scrollTop;
    _x = document.body.scrollLeft;
  } 
  else if(document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop)) 
  {
    //IE6 standards compliant mode
    _y = document.documentElement.scrollTop;
    _x = document.documentElement.scrollLeft;
  }
  
  return {x:_x, y:_y};
};

/*code for rotating images*/

var imagenumber = 50;
var randomnumber = Math.random();
var rand1 = Math.round( (imagenumber-1) * randomnumber) + 1;
images = new Array();

images[1] = "images/banners/banner01.jpg";
images[2] = "images/banners/banner02.jpg";
images[3] = "images/banners/banner03.jpg";
images[4] = "images/banners/banner04.jpg";
images[5] = "images/banners/banner05.jpg";
images[6] = "images/banners/banner06.jpg";
images[7] = "images/banners/banner07.jpg";
images[8] = "images/banners/banner08.jpg";
images[9] = "images/banners/banner09.jpg";
images[10] = "images/banners/banner10.jpg";
images[11] = "images/banners/banner11.jpg";
images[12] = "images/banners/banner12.jpg";
images[13] = "images/banners/banner13.jpg";
images[14] = "images/banners/banner14.jpg";
images[15] = "images/banners/banner15.jpg";
images[16] = "images/banners/banner16.jpg";
images[17] = "images/banners/banner17.jpg";
images[18] = "images/banners/banner18.jpg";
images[19] = "images/banners/banner19.jpg";
images[20] = "images/banners/banner20.jpg";
images[21] = "images/banners/banner21.jpg";
images[22] = "images/banners/banner22.jpg";
images[23] = "images/banners/banner23.jpg";
images[24] = "images/banners/banner24.jpg";
images[25] = "images/banners/banner25.jpg";
images[26] = "images/banners/banner26.jpg";
images[27] = "images/banners/banner27.jpg";
images[28] = "images/banners/banner28.jpg";
images[29] = "images/banners/banner29.jpg";
images[30] = "images/banners/banner30.jpg";
images[31] = "images/banners/banner31.jpg";
images[32] = "images/banners/banner32.jpg";
images[33] = "images/banners/banner33.jpg";
images[34] = "images/banners/banner34.jpg";
images[35] = "images/banners/banner35.jpg";
images[36] = "images/banners/banner36.jpg";
images[37] = "images/banners/banner37.jpg";
images[38] = "images/banners/banner38.jpg";
images[39] = "images/banners/banner39.jpg";
images[40] = "images/banners/banner30.jpg";
images[41] = "images/banners/banner41.jpg";
images[42] = "images/banners/banner42.jpg";
images[43] = "images/banners/banner43.jpg";
images[44] = "images/banners/banner44.jpg";
images[45] = "images/banners/banner45.jpg";
images[46] = "images/banners/banner46.jpg";
images[47] = "images/banners/banner47.jpg";
images[48] = "images/banners/banner48.jpg";
images[49] = "images/banners/banner49.jpg";
images[50] = "images/banners/banner50.jpg";

var image = images[rand1];