// UXmatters Global JavaScript Functions

// peekaboo bug fix script for float drop
function P7_limit(a,b){ //v1.1.2 by PVII-www.projectseven.com
	document.p7limit=a;document.p7min=b;
	if(document.getElementById&&navigator.appVersion.indexOf("MSIE")>-1&&!window.opera){
		if(window.attachEvent){
			window.attachEvent("onresize",P7_setMinWidth);
			window.attachEvent("onload",P7_setMinWidth);
		}else{
			onload=P7_setMinWidth;
			onresize=P7_setMinWidth;
		}
	}
}

// This hack now only needed for IE7...
if (-1 != navigator.appVersion.indexOf("MSIE 7.")){
	P7_limit('page-wrapper',1006);
}

function P7_setMinWidth(){ //v1.1.2 by PVII-www.projectseven.com
	var cw,w,pl,pr,ml,mr,br,bl,ad,theDiv=document.p7limit;
	var g=document.getElementById(theDiv);
	w=parseInt(document.p7min);
	if(g && document.body && document.body.clientWidth){
		gs=g.currentStyle;
		cw=parseInt(document.body.clientWidth);
		pl=parseInt(gs.paddingLeft);
		pr=parseInt(gs.paddingRight);
		ml=parseInt(gs.marginLeft);
		mr=parseInt(gs.marginRight);
		bl=parseInt(gs.borderLeftWidth);
		br=parseInt(gs.borderRightWidth);
		ml=ml?ml:0;
		mr=mr?mr:0;
		pl=pl?pl:0;
		pr=pr?pr:0;
		bl=bl?bl:0;
		br=br?br:0;
		ad=pl+pr+ml+mr+bl+br;
		if(cw<=w){
			w-=ad;
			g.style.width=w+"px";
		}else{
			g.style.width="auto";
		}
	}
}
// end peekaboo bug fix script for float drop

/* 
author: Rob Eberhardt
desc: fix MinWidth for IE6 & IE
params: none
returns: nothing
notes: cannot yet fix childless elements like INPUT or SELECT
history:
   2006-11-20 revised for standards-mode compatibility
   2006-11-17 first version
*/
function fixMinWidthForIE(){
   try{
      if(!document.body.currentStyle){return} //IE only
   }catch(e){return}
   var elems=document.getElementsByTagName("*");
   for(e=0; e<elems.length; e++){
      var eCurStyle = elems[e].currentStyle;
      var l_minWidth = (eCurStyle.minWidth) ? eCurStyle.minWidth : eCurStyle.getAttribute("min-width"); //IE7 : IE6
      if(l_minWidth && l_minWidth != 'auto'){
         var shim = document.createElement("DIV");
         shim.style.cssText = 'margin:0 !important; padding:0 !important; border:0 !important; line-height:0 !important; height:0 !important; BACKGROUND:RED;';
         shim.style.width = l_minWidth;
         shim.appendChild(document.createElement("&nbsp;"));
         if(elems[e].canHaveChildren){
            elems[e].appendChild(shim);
         }else{
            //??
         }
      }
   }
}
// End fix MinWidth for IE6 & IE7

// mouseover script
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_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_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];
		}
	}
}
// end mouseover script

// rollover submit form button script
// copyright 1999-2001 Idocs, Inc. http://www.idocs.com/tags/
// Distribute this script freely, but keep this 
// notice with the code.
var submitRolls = new Object();
function submitroll(src, oversrc, name)
{
this.src=src;
this.oversrc=oversrc;
this.name=name;
this.alt="Submit Query";
this.write=submitroll_write;
}
function submitroll_write()
{
var thisform = 'document.forms[' + (document.forms.length - 1) + ']';
submitRolls[this.name] = new Object();
submitRolls[this.name].over = new Image();
submitRolls[this.name].over.src = this.oversrc;
submitRolls[this.name].out = new Image();
submitRolls[this.name].out.src = this.src;
document.write
(
'<A onMouseOver="if (document.images)document.images[\'' + this.name + "'].src=submitRolls['" + this.name + '\'].over.src"' + 
' onMouseOut="if (document.images)document.images[\'' + this.name + "'].src=submitRolls['" + this.name + '\'].out.src"' + 
' HREF="javascript:'
);
if (this.sendfield)
{
if (! this.sendvalue)
this.sendvalue = 1;
document.write(thisform, ".elements['", this.sendfield, "'].value='", this.sendvalue, "';");
}
document.write(thisform + '.submit();void(0);"');
if (this.msg)document.write(' onClick="return confirm(\'' , this.msg, '\')"');
document.write('>');
document.write('<IMG SRC="' + this.src + '" ALT="' + this.alt + '" BORDER=0 NAME="' + this.name + '"');
if (this.height)document.write(' HEIGHT=' + this.height);
if (this.width)document.write(' WIDTH='  + this.width);
if (this.otheratts)document.write(' ' + this.otheratts);
document.write('></A>');
if (this.sendfield)
{
document.write('<INPUT TYPE=HIDDEN NAME="' + this.sendfield + '">');
document.forms[document.forms.length - 1].elements[this.sendfield].value='';
}
}

// end rollover submit form button script

// open portfolio window script
	function newWindow(portfolioPage) {
	portfolioWindow = window.open(portfolioPage,"newPortfolioWindow","toolbar=no,menubar=no,scrollbars=yes,resizable=yes,status=yes")
	portfolioWindow.focus()
}


//function openWindow(url) {
//	window.open(url,"newWindow","toolbar=no,menubar=no,scrollbars=yes,resizable=yes,status=yes")
//	newWindow.focus()
//}
// end open portfolio window script

// open privacy window script
function openWindow(url) {
	window.open(url,"newPrivacyWindow","width=550,toolbar=no,menubar=no,scrollbars=yes,resizable=yes,status=yes");
}
// end open privacy window script


// hide email address/mailto link from non-JavaScript-aware browsers
var lhs = "info";     // change this to your username/alias
var rhs = "uxmatters.com";  // change this to your domain
function print_mail_to_link() {
	document.write("<a href=\"mailto");
	document.write(":" + lhs + "@");
	document.write(rhs + "\">info&#64uxmatters&#46;com<\/a>");
}
function print_e_mail_address() {
	document.write(lhs + "@" + rhs);
}
// end hide email address/mailto link from non-JavaScript-aware browsers

// hide email address/mailto link from non-JavaScript-aware browsers
var lhs = "sponsor";     // change this to your username/alias
var rhs = "uxmatters.com";  // change this to your domain
function print_mail_to_link() {
	document.write("<a href=\"mailto");
	document.write(":" + lhs + "@");
	document.write(rhs + "\">sponsor&#64uxmatters&#46;com<\/a>");
}
function print_e_mail_address() {
	document.write(lhs + "@" + rhs);
}
// end hide email address/mailto link from non-JavaScript-aware browsers

// hide email address/mailto link from spambots
function maillink(user) {
	var hostname = "uxmatters.com";
	var addr = user + "@" + hostname;
    var link = '<a href="mailto:' + addr + '">';
    if (arguments.length > 1)
        link += arguments[1] + '</a>';
    else 
        link += addr + '</a>';
    
    return link;
}
// end hide email address/mailto link from spambots

