//alert('version L');

var MLAJsHost = (("https:" == document.location.protocol) ? "https://" : "http://");


// set the height for a spacer image to push the bottom nav to the bottom of the page
var MinHeight;
var MinImgSpacer;
MinHeight = getInsideWindowHeight();
MinHeight = MinHeight - 230;
MinImgSpacer = '<img src="' + MLAJsHost + 'www.mla.org/images/docstudio/clear.gif" width="10" height="' + MinHeight + '" alt="">';
	
// rollovers
if (document.images) {
	var navbutton_1 = new Image(108,21);
	navbutton_1.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_resources_on.gif';
	var navbutton_2 = new Image(108,21);
	navbutton_2.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_publications_on.gif';
	var navbutton_3 = new Image(108,21);
	navbutton_3.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_bookstore_on.gif';
	var navbutton_4 = new Image(108,21);
	navbutton_4.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_style_on.gif';
	var navbutton_5 = new Image(108,21);
	navbutton_5.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_convention_on.gif';
	var navbutton_6 = new Image(108,21);
	navbutton_6.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_governance_on.gif';
	var navbutton_7 = new Image(108,21);
	navbutton_7.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_membership_on.gif';
	var navbuttonOn_1 = new Image(108,21);
	navbuttonOn_1.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_resources_off.gif';
	var navbuttonOn_2 = new Image(108,21);
	navbuttonOn_2.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_publications_off.gif';
	var navbuttonOn_3 = new Image(108,21);
	navbuttonOn_3.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_bookstore_off.gif';
	var navbuttonOn_4 = new Image(108,21);
	navbuttonOn_4.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_style_off.gif';
	var navbuttonOn_5 = new Image(108,21);
	navbuttonOn_5.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_convention_off.gif';
	var navbuttonOn_6 = new Image(108,21);
	navbuttonOn_6.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_governance_off.gif';
	var navbuttonOn_7 = new Image(108,21);
	navbuttonOn_7.src = MLAJsHost + 'www.mla.org/images/docstudio/nav_membership_off.gif';
	}
	
function changeImages() {
	if (document.images) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
			}
		}
	}


// for targed links in the popup window

if (window.name != "preview") {
	window.name = "mla_main";
	this.focus();
	}

window.onresize = reset_menus;

// pop up window

var docs_popup;
function popup(url, name, w, h) {
	var temp;
	if (!name) {name = 'docs_popup';}
	if (!w) {w = 460;}
	if (!h) {h = 500;}
	eval('temp = ' + name);
	temp = window.open(url, name, 'width=' + w + ',height=' + h + ',scrollbars,resizable,left=12,top=12');
	if (parseInt(navigator.appVersion) >= 4) { temp.window.focus(); }
	eval(name + ' = temp');
}



// drop-downs

var DOCSMenu = null;
var ClosedMenu = null;
var Timeout_ID;

function menuOver(MenuID) {
	
	ClosedMenu = null;
	// old netscape browsers
	if (document.layers) {
		if (document.layers[MenuID]!=null) {
			// the window is already open
			if (DOCSMenu==document.layers[MenuID]){
				clearTimeout(Timeout_ID);
				} else{
				// opening a new menu, so close the old one
				if(DOCSMenu!=null){
					clearTimeout(Timeout_ID);
					hideNow();
					}
				}
			// show the menu
			DOCSMenu = document.layers[MenuID];
			if (DOCSMenu.visibility!=null) {
				Timeout_ID = window.setTimeout('showNow();',600);
				}
			}
	// newer browsers
		} else {
		if ((document.getElementById)&&(document.getElementById(MenuID)!=null)) {
		// the window is already open
			if (DOCSMenu==document.getElementById(MenuID)){
				clearTimeout(Timeout_ID);
				} else{
				// opening a new menu, so close the old one
				if(DOCSMenu!=null){
					clearTimeout(Timeout_ID);
					hideNow();
					}
				}
			// show the menu
			DOCSMenu = document.getElementById(MenuID);
			if ((DOCSMenu.style) && (DOCSMenu.style.visibility!=null)) {
				Timeout_ID = window.setTimeout('showNow()',600);
				}
			}
		}
}

function showNow() {
	
	if (ClosedMenu != DOCSMenu) {
		// old netscape browsers
		if (document.layers) {
			DOCSMenu.visibility = 'visible';
		// newer browsers
			} else {
			if ((DOCSMenu.style)&&(DOCSMenu.style.visibility)) {
				DOCSMenu.style.visibility = 'visible';
				}
			}
		}
}

function menuOut(MenuID){

	
	// old netscape browsers
	if (document.layers) {
		if (document.layers[MenuID]!=null) {
			DOCSMenu = document.layers[MenuID];
			ClosedMenu = DOCSMenu;
			Timeout_ID = window.setTimeout('hideNow();',10);
			}
	// newer browsers
		} else {
		if ((document.getElementById)&&(document.getElementById(MenuID)!=null)) {
			DOCSMenu = document.getElementById(MenuID);
			ClosedMenu = DOCSMenu;
			Timeout_ID = window.setTimeout('hideNow();',10);
			}
		}
}

function hideNow() {
	
	// old netscape browsers
	if (document.layers) {
		DOCSMenu.visibility = 'hidden';
	// newer browsers
		} else {
		if ((DOCSMenu.style)&&(DOCSMenu.style.visibility)) {
			DOCSMenu.style.visibility = 'hidden';
			}
		}
}
	

		
function getInsideWindowHeight() {
	
    if (window.innerHeight) {
        return window.innerHeight;
        } else if (document.body && document.body.clientHeight) {
		return document.body.clientHeight;
		} else {
		return 600;
		}
}

		
function getInsideWindowWidth() {
	
    if (window.innerWidth) {
        return window.innerWidth;
        } else if (document.documentElement && document.documentElement.clientWidth) {
		return document.documentElement.clientWidth;
		 } else if (document.body) {
		return document.body.clientWidth;
		} else {
		return 800;
		}
}


function reset_menus() {

	if (document.getElementById) {
		// set the left position
		var dd_resources=document.getElementById('menu_resources');
		if (!dd_resources) return; // Stop here if we don't have a menu bar.
		
		var dd_resources_bar=document.getElementById('navBar_resources');
		position_nav(dd_resources,dd_resources_bar,0);
		var dd_publications=document.getElementById('menu_publications');
		var dd_publications_bar=document.getElementById('navBar_publications');
		position_nav(dd_publications,dd_publications_bar,23);
		var dd_bookstore=document.getElementById('menu_bookstore');
		var dd_bookstore_bar=document.getElementById('navBar_bookstore');
		position_nav(dd_bookstore,dd_bookstore_bar,23);
		var dd_style=document.getElementById('menu_style');
		var dd_style_bar=document.getElementById('navBar_style');
		position_nav(dd_style,dd_style_bar,23);
		var dd_convention=document.getElementById('menu_convention');
		var dd_convention_bar=document.getElementById('navBar_convention');
		position_nav(dd_convention,dd_convention_bar,23);
		var dd_governance=document.getElementById('menu_governance');
		var dd_governance_bar=document.getElementById('navBar_governance');
		position_nav(dd_governance,dd_governance_bar,23);
		var dd_membership=document.getElementById('menu_membership');
		var dd_membership_bar=document.getElementById('navBar_membership');
		position_nav(dd_membership,dd_membership_bar,46);
		}	
}


// position the drop-downs
function position_nav(menu,bar,offset) {
	var topNode=bar.offsetParent;
	var topCoord=bar.offsetTop;
	var leftCoord=bar.offsetLeft;
	while(topNode){
		topCoord+=topNode.offsetTop;
		leftCoord+=topNode.offsetLeft;
		topNode=topNode.offsetParent;
		}
	menu.style.left = eval(leftCoord - offset) + 'px';
	menu.style.top = eval(topCoord + 21) + 'px';
	
}


function ShowOverlayDiv(id) {
	var inviteDiv = document.getElementById(id);
	addoverlay();
	inviteDiv.style.visibility='visible';
}

	
function ShowOverlayDivclose(id) {
	var inviteDiv = document.getElementById(id);
	inviteDiv.style.visibility='hidden';
	var inviteOverlay = document.getElementById('ShowOverlayDiv_overlay');
	inviteOverlay.className = 's1';
	inviteOverlay.style.top = '-100px';
	inviteOverlay.style.left = '-100px';
	inviteOverlay.style.width = '1px';
	inviteOverlay.style.height = '1px';
}
	
function addoverlay() {
	
	var inviteOverlay = document.getElementById('ShowOverlayDiv_overlay');
	if(tb_detectMacXFF()){
		inviteOverlay.className = "TB_overlayMacFFBGHack";//use png overlay so hide flash
		}else{
		inviteOverlay.className = "TB_overlayBG";//use background and opacity
		}
	inviteOverlay.style.top = 0;
	inviteOverlay.style.left = 0;
	inviteOverlay.style.width = '100%';
	inviteOverlay.style.height = '100%';

}

function tb_detectMacXFF() {
  var userAgent = navigator.userAgent.toLowerCase();
  if (userAgent.indexOf('mac') != -1 && userAgent.indexOf('firefox')!=-1) {
    return true;
  }
}


// Standard DOCStudio AJAX script
function MLAjaxFunction(geturl,posturl,poststr,on_success,on_fail) {
		var xmlHttp;
		try {	xmlHttp=new XMLHttpRequest(); }// Firefox, Opera 8.0+, Safari
		catch (e) {
			try	{ xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } // Internet Explorer
			catch (e) {
				try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); }
				catch (e) {
					on_fail("Your browser does not support AJAX.");
					}
				}
			}
		xmlHttp.onreadystatechange=function() {
			if(xmlHttp.readyState==4) {
				if (xmlHttp.responseText) { on_success(xmlHttp.responseText); }
				}
			}
	
	if (posturl != '' && poststr != '') {
		xmlHttp.open('POST', posturl, true);
		xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Content-length", poststr.length);
		xmlHttp.setRequestHeader("Connection", "close");
		xmlHttp.send(poststr);
		} else {
		xmlHttp.open("GET",geturl,true);
		xmlHttp.send(null);
		}

	}

// Form validation / feedback functions

// Check for a valid e-mail address
function validateEmail(str) {

	var msg = "";
	
	if (str == '') {
		msg = 'You must enter a valid e-mail address. ';
	}
	if (str.indexOf('"') != -1) {
		msg = "Your e-mail address cannot contain double quotes. ";
	}
	if (str.indexOf("'") != -1) {
		msg += "Your e-mail address cannot contain single quotes. ";
	}
	if (str.indexOf(",") != -1) {
		msg += "Your e-mail address cannot contain commas. ";
	}
	if (msg=="") {
		if (str.search(/^\s*\S+\@\S+\.\S+\s*$/) == -1) {
			msg = "A full e-mail address must be entered - for example dan.alvarez@ucla.edu.";
		}
	}

	return msg;
}

// This function formats numbers by adding commas
function numberFormat(nStr){
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1))
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	return x1 + x2;
}

// counts the number of unicode characters, which may differ from str.length
function charCount(str) {
	var esc = encodeURIComponent(str); // escape more robust than encodeURI, but encodeURIComponent does a better job of encoding the way the backend does, so use that.
	return esc.replace(/%uD[C-F]../g,'').replace(/%u..../g,'...').replace(/%../g,".").length;
}

function wordCount(str) {
	var arr = str.replace(/\s/g, ' ').split(' ');
	var count = 0;
	for (i=0; i<arr.length; i++)
		if (arr[i].length) count++;
	return count;
}


// standard overlay functions

var originalSimpleOverlayHTML = '';

function openSimpleOverlay(contentID) {
	var simpleOverlayContainer = document.getElementById('simple_overlay_container');
	var simpleDimmerDiv = document.getElementById('simple_overlay_dimmer');
	var simpleOverlayContent = document.getElementById('simple_overlay_content');
	originalSimpleOverlayHTML = contentID ? document.getElementById(contentID).innerHTML : simpleOverlayContent.innerHTML;
	//alert(navigator.userAgent);
	
	simpleOverlayContent.innerHTML = originalSimpleOverlayHTML.replace(/prototype_id_/g, '');
	simpleOverlayContainer.style.display = 'block';
	if (navigator.userAgent.indexOf('BlackBerry') == -1) {
		simpleDimmerDiv.style.minHeight = "" + document.body.offsetHeight + "px";
		simpleDimmerDiv.style.display = 'block';
	}
	window.scrollTo(0,0);
	
}

function rewriteSimpleOverlay(contentID) {
	var simpleOverlayContent = document.getElementById('simple_overlay_content');
	var newContent = document.getElementById(contentID);
	
	simpleOverlayContent.innerHTML = newContent.innerHTML;
}

function closeSimpleOverlay() {
	var simpleOverlayContainer = document.getElementById('simple_overlay_container');
	var simpleDimmerDiv = document.getElementById('simple_overlay_dimmer');
	var simpleOverlayContent = document.getElementById('simple_overlay_content');
	
	simpleOverlayContainer.style.display = 'none';
	simpleDimmerDiv.style.display = 'none';
	simpleOverlayContent.innerHTML = '';
	
}

