<!--

function SizablePopupWindow(wURL, wwidth, wheight) {
  window.open(wURL,'thenewwindow','height='+wheight+',width='+wwidth+',dependent=yes,scrollbars=1,location=0,statusbar=0,menubar=0');
	//if (window.focus) {newwindow.focus()}
	return false;

}



function RefreshParent(){
  //opener.window.location=opener.window.location;
  opener.window.location.href = opener.window.location.href;
	
}
//onkeypress="return notyping(this, event)"
function notyping(myfield, e, dec)
{
var key;
var keychar;
if (window.event)
 key = window.event.keyCode;
else if (e)
 key = e.which;
else
 return true;
keychar = String.fromCharCode(key);
// control keys
if ((key==null) || (key==0) || (key==8) || 
 (key==9) || (key==13) || (key==27) )
 return true;
// numbers
else if ((("").indexOf(keychar) > -1))
 return true;
// decimal point jump
else if (dec && (keychar == "."))
 {
 myfield.form.elements[dec].focus();
 return false;
 }
else
 return false;
}

function numbersonly(myfield, e, dec){
  var key;
  var keychar;
  if (window.event)
   key = window.event.keyCode;
  else if (e)
   key = e.which;
  else
   return true;
  keychar = String.fromCharCode(key);
// control keys
  if ((key==null) || (key==0) || (key==8) || 
    (key==9) || (key==13) || (key==27) )
    return true;
// numbers
  else if ((("0123456789+").indexOf(keychar) > -1))
    return true;
// decimal point jump
  else if (dec && (keychar == ".")) {
   myfield.form.elements[dec].focus();
   return false;
  }
 else
  return false;
}

function moneyonly(myfield, e, dec){
  var key;
  var keychar;
  if (window.event)
   key = window.event.keyCode;
  else if (e)
   key = e.which;
  else
   return true;
  keychar = String.fromCharCode(key);
// control keys
  if ((key==null) || (key==0) || (key==8) || 
    (key==9) || (key==13) || (key==27) )
    return true;
// numbers
  else if (((".0123456789+").indexOf(keychar) > -1))
    return true;
// decimal point jump
  else if (dec && (keychar == ".")) {
   myfield.form.elements[dec].focus();
   return false;
  }
 else
  return false;
}
 //onkeypress="return moneyonly(this, event)"
 
 
///toggle section
function toggle(link, divId) {
  //alert(link);
	if(link != "javascript:void(0);"){
	  link = getObject(link);
	}
  var lText = link.innerHTML; 
	var d = getObject(divId);
 	var cur_dis = d.style.display;
	if(cur_dis == "none"){
	   d.style.display = 'block';
		 link.innerHTML = '-';
		 //link.innerHTML = '<img src="images/cat_minus.gif" width="11" height="11" alt="-" />';
	}else{
	   d.style.display = 'none';
		 link.innerHTML = '+';
		 //link.innerHTML = '<img src="images/cat_plus.gif" width="11" height="11" alt="+" />';
	}
		
}//end toggle


var clicked = 0;
function toggleCats(link, divId) {
  //alert(link);
	if(link != "javascript:void(0);"){
	  link = getObject(link);
	}
   
 
	var lText = link.innerHTML; 
	var d = getObject(divId);
 	var cur_dis = d.style.display;
	if(cur_dis == "none"){
	   d.style.display = 'block';
		 link.innerHTML = '<img src="images/cat_minus.gif" width="11" height="11" alt="-" />';
	}else{
	   d.style.display = 'none';
		 link.innerHTML = '<img src="images/cat_plus.gif" width="11" height="11" alt="+" />';
	}
		
}//end toggle




var ie4 = false; 
if(document.all) { 
	ie4 = true; 
}
function getObject(id) 
{ 
	if (ie4) { 
		return document.all[id]; 
	} else { 
		return document.getElementById(id); 
	} 
}

function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1) 
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }

function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }






///AJAX handling Example
var xmlHttp;

function GetXmlHttpObject()
{ 
var objXMLHttp=null
if (window.XMLHttpRequest)
{
objXMLHttp=new XMLHttpRequest()
}
else if (window.ActiveXObject)
{
objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
}
return objXMLHttp
}
////////////////


function MbbOrdersGrid(days){
 document.getElementById('MBB_Orders_Grid_Data').innerHTML = '<br /><div id="AjaxLoader"><img src="images/ajax-loader.gif" alt=""></div>';
 xmlHttp=GetXmlHttpObject()
 if (xmlHttp==null){
   alert ("Browser does not support HTTP Request")
   return
  }
 var url="AjaxCaller.php"
 url=url+"?sid="+Math.random()
 url=url+"&proc=GetMbbOrders"
 url=url+"&days="+days
 xmlHttp.onreadystatechange=stateMBBOrdersGrid 
 xmlHttp.open("GET",url,true)
 xmlHttp.send(null)
	
}
function stateMBBOrdersGrid() { 
  //alert("STATE FIRED - "+divid);
  if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){ 
		document.getElementById('MBB_Orders_Grid_Data').innerHTML = xmlHttp.responseText;
  } 
	//ExpandCategoriesHolderHeight();
}

//end of AJAX

function getfileextension(inputId){ 
 var fileinput = document.getElementById(inputId); 
 if(!fileinput ) return ""; 
 var filename = fileinput.value; 
 if( filename.length == 0 ) return ""; 
 var dot = filename.lastIndexOf("."); 
 if( dot == -1 ) return ""; 
 var extension = filename.substr(dot,filename.length); 
 extension = extension.replace('.','');
 return extension; 
}

function JS_in_array(arrayToSearch, stringToSearch) {
  $retval = false;
	for (var i = 0; i < arrayToSearch.length; i++) {
       // need to use a double equals sign "==" to test for equality
      if (arrayToSearch[i] == stringToSearch){
            $retval = true;
						break;
			}
  }
return $retval;
}

function PasswordConfirmer(password1_id,password2_id){
   p1 = getObject(password1_id);
   p2 = getObject(password2_id);
	 if(p1.value == p2.value){
	   return true;
	 }else{
	   alert("Passwords Do Not Match");
	   return false;
		 
	 }
}

function EmailValidator(emailFieldId) {
    email = p2 = getObject(emailFieldId);
		str = email.value;
		var at="@";
		var dot=".";
		var lat=str.indexOf(at);
		var lstr=str.length;
		var ldot=str.indexOf(dot);
		if (str.indexOf(at)==-1){
		   alert("Invalid E-mail Address");
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail Address")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail Address")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail Address")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail Address")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail Address")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail Address")
		    return false
		 }

 		 return true					
	}
	
function ExpandCategoriesHolderHeight(){
 cr = getObject('content_right');
 cch = getObject('cl_categories_holder');
 ht = cr.offsetHeight;
 if(ht > 523){
   cch.style.height = (cr.offsetHeight - 40)+"px";	
 }else{
   cch.style.height = "523px";
 }

}




function EndOfPageScript(){




}


//opacity, used on ItemViewer and Search Results
////////////opacity
function opacity(did, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + did + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpac(" + i + ",'" + did + "')",(timer * speed));
            timer++;
        }
    }
}
function changeOpac(opacity, did) {
    var object = document.getElementById(did).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}
var PortOverCount = 0;

function PortMenuFadeIn(){
  var object_st = document.getElementById('PortTypesMenuHolder').style;
	PortOverCount = 0;
  if(object_st.display == "none"){   
	  opacity('PortTypesMenuHolder', 0, 90, 1000);
	  object_st.display = "block";
	}
}
function PortMenuFadeOut(){
 var object_st = document.getElementById('PortTypesMenuHolder').style;
 PortOverCount++;
 if(PortOverCount >= 1){
    changeOpac(0, 'PortTypesMenuHolder');
    SetIDDisplayNone('PortTypesMenuHolder');
		object_st.display = "none";
  }
}//end function
function SetIDDisplayNone(did){
  var object_st = document.getElementById(did).style;
	object_st.display = "none"
}

function PortMenuFadeOutInside(element, event, JavaScript_code) {
			var current_mouse_target = null;
			if( event.toElement ) {				
				current_mouse_target 			 = event.toElement;
			} else if( event.relatedTarget ) {				
				current_mouse_target 			 = event.relatedTarget;
			}
			if( !is_child_of(element, current_mouse_target) && element != current_mouse_target ) {
				eval(JavaScript_code);
			}
}
///////////////
function is_child_of(parent, child) {
			if( child != null ) {			
				while( child.parentNode ) {
					if( (child = child.parentNode) == parent ) {
						return true;
					}
				}
			}
			return false;
}




//PORTFOLIO AJAX CALLER
function PopulateCustomPageAJAXML(refid,proc){ 
 if (window.XMLHttpRequest) { // Mozilla, Safari,...
    xmlHttp = new XMLHttpRequest();
    if (xmlHttp.overrideMimeType) {
        xmlHttp.overrideMimeType('text/xml');
    }
  } else if (window.ActiveXObject) { // IE
    try {
         xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
         try {
            xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
          } catch (e) {}
    }
  }
 //SxmlHttp=GetXmlHttpObject()
 if (xmlHttp==null){
   alert ("Browser does not support HTTP Request, the page will not load properly")
   return
  } 
	

 var url="AjaxCaller.php"
 url=url+"?ref_id="+refid
 url=url+"&sid="+Math.random()
 url=url+"&proc="+proc
 xmlHttp.onreadystatechange=statePopulateCustomPageAJAXML
 xmlHttp.open("GET",url,true)
 xmlHttp.send(null)

}

//////////////////////////////////////
function statePopulateCustomPageAJAXML() { 
  //alert("STATE FIRED");
  if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){ 
	   //alert(xmlHttp.responseText);
	   if (xmlHttp.status == 200) {    
				 var xmldoc = xmlHttp.responseXML;
				 var root = xmldoc.getElementsByTagName('root').item(0);
				 for (var iNode = 0; iNode < root.childNodes.length; iNode++) {
            var node = root.childNodes.item(iNode);
            for (i = 0; i < node.childNodes.length; i++) {
               var sibl = node.childNodes.item(i);
               var len = parseInt(sibl.childNodes.length / 2);
               var arr = new Array(len);
               var cnt = 0;
               for (x = 0; x < sibl.childNodes.length; x++) {
                  var sibl2 = sibl.childNodes.item(x);
                  var sibl3;
                  if (sibl2.childNodes.length > 0) {
                     sibl3 = sibl2.childNodes.item(0);
                     //alert(cnt);
										 arr[cnt] = sibl3.data;   
                     cnt++;
										
                  }//end if sibl2
               }//end for sibl.childNodes.length
               
							//this is where we poulate the divs
						 if(arr.length != 0){
						   //arr[0] is the div name from the xml
							 document.getElementById(arr[0]).innerHTML = arr[1];
							}
						}//end for node.childNodes.length
         }//end for page.childNodes.length
    }else{//status 200
		  alert('NO STAT 200');
		
		} 
  } //end if readysate

}



//END AJAX PORTFOLIO CALLER







////MAIN MENU FUNCTIONS - SWAP
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_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 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;
}

-->
