
function DocumentLoadHandler()
{
    var cssRule = GetStyleSheetRule(".OuterTable_Side_Img", false);
    if (cssRule)
    {                  
        cssRule.style.height =  parseInt(document.getElementById("BodyRowTable").offsetHeight) + "px";
    }
}


function SetBoxUrl(strImageUrl)
{
    var elem = document.getElementById('Box');
    if (elem && elem.firstChild && elem.firstChild.firstChild.tagName == 'IMG' )
    {   
        elem = elem.firstChild.firstChild; 
        elem.src = strImageUrl;
        elem.alt = strImageUrl;
    }
    elem = document.getElementById('mbox');
    if (elem && elem.firstChild && elem.firstChild.firstChild == 'IMG' )
    {   
        elem = elem.firstChild.firstChild; 
        elem.src = strImageUrl;
        elem.alt = strImageUrl;
    }
}

function FigureTotal()
{
    var total = 0;
    var elemOderForm = document.getElementById('OderForm');
    var elemTotal = document.getElementById('Total');

    if (elemOderForm && elemTotal) {
        for (i = 0; i < elemOderForm.length; i++) {
            if (elemOderForm.elements[i].type != 'hidden') {
                if (elemOderForm.elements[i].checked == true) {
                    var priceElemId = elemOderForm.elements[i].value;
                    var priceElem = document.getElementById(priceElemId);
                    if (priceElem) {
                        total += parseFloat(priceElem.value);
                    }
                } 
            }
        }
        if (total > 0) {
            elemTotal.value = "$" + total;
        }
    }           
}


/* -- Utility Functions -- */
function Debug(msg)
{
    if (DEBUG == true)
    {    
        var debugZone = document.getElementById('DebugZone');
        if (debugZone == null)
        {   
            debugZone = document.createElement('div');
            debugZone.setAttribute('id', 'DebugZone');
            debugZone.style.height ='500px';
            debugZone.style.width = '700px';
            debugZone.style.marginTop = '100px';
            debugZone.style.overflow = 'scroll'
            debugZone.style.border = '1px solid red';
            document.body.appendChild(debugZone);
        }
        
        if (debugZone != null)
        {   
            var text = document.createTextNode(msg);
            debugZone.appendChild(text);
            debugZone.appendChild(document.createElement('br'));
        }
    }  
}


function getPos(e)
{
    var element = e;
    var left = element.offsetLeft;
    var top  = element.offsetTop;
    while(element=element.offsetParent)
    {
        left += element.offsetLeft;
        top  += element.offsetTop;
    }
    
    return [left, top];
    
}

function getStyleByElemName(elemName, strCssRule)
{
    var elem = document.getElementById(elemName);
    return getStyle(elem, strCssRule);
}

function getStyle(oElm, strCssRule)
{
	var strValue = "";
	if(document.defaultView && document.defaultView.getComputedStyle)
	{
	    // Mozilla / Chrome
		strValue = document.defaultView.getComputedStyle(oElm, "").getPropertyValue(strCssRule);
	}
	else if(oElm.currentStyle)
	{
	    // IE
		strCssRule = strCssRule.replace(/\-(\w)/g, function (strMatch, p1)
		{
			return p1.toUpperCase();
		});
		strValue = oElm.currentStyle[strCssRule];
	}
	return strValue;
}


function GetStyleSheetRule(ruleName) {                    // Return requested style obejct
  if (document.styleSheets) {                             // If browser can play with stylesheets
    for (var i=0; i<document.styleSheets.length; i++) {   // For each stylesheet
      var styleSheet=document.styleSheets[i];             // Get the current Stylesheet
      var ii=0;                                           // Initialize subCounter.
      var cssRule=false;                                  // Initialize cssRule. 
      do {                                                // For each rule in stylesheet
        if (styleSheet.cssRules) {                        // Browser uses cssRules?
          cssRule = styleSheet.cssRules[ii];              // Yes -- Mozilla Style
        } else {                                          // Browser usses rules?
          cssRule = styleSheet.rules[ii];                 // Yes IE style. 
        }                                                 // End IE check.
        if (cssRule)  {                                   // If we found a rule...
          if (cssRule.selectorText==ruleName) {           // Does current rule match ruleName?
              return cssRule;                             // return the style object.
          }                                               // End found rule name
        }                                                 // end found cssRule
        ii++;                                             // Increment sub-counter
      } while (cssRule)                                   // end While loop
    }                                                     // end For loop
  }                                                       // end styleSheet ability check
  return false;                                           // we found NOTHING!
}                                                         // end getCSSRule 





function RandomInteger(n) 
{
	var i = Math.random();
	var num = Math.ceil(i * n);
    return num;
};

//uts = Underscore To Space
String.prototype.uts= function() 
{
	return this.replace(/_/g," ");
};
String.prototype.trim = function() 
{
	return this.replace(/^\s+|\s+$/g,"");
};
String.prototype.ltrim = function() 
{
	return this.replace(/^\s+/,"");
};
String.prototype.rtrim = function() 
{
	return this.replace(/\s+$/,"");
};
/* -- End utility Functions -- */
