	// JavaScript Document
var the_cap = new Array("","");
var curr_img = 0;
var last_img = the_img.length - 1;
var lastCap = 'cap0';
var selected_letter;
var browserName=navigator.appName;
var is_ie = false;
var iconsImgs = getElementsByClass('iconClass', document, '*');
var val = 0;

if(browserName=="Microsoft Internet Explorer")	is_ie = true;
ResizeImage(document.images['blank']);

/************
Code to fix innerHTML problem on Internet Explorer.
Copied from http://stackoverflow.com/questions/1231770/innerhtml-removes-attribute-quotes-in-internet-explorer
*************/
function ieInnerHTML(obj)
{
	var zz = obj.innerHTML,
	z =  zz.match(/<\/?\w+((\s+\w+(\s*=\s*(?:".*?"|'.*?'|[^'">\s]+))?)+\s*|\s*)\/?>/g);
	if (z)
	{
		for (var i=0;i<z.length;i++)
		{
			var y, zSaved = z[i];
			z[i] = z[i].replace(/(<?\w+)|(<\/?\w+)\s/,
                          function(a){return a.toLowerCase();});
			y = z[i].match(/\=\w+[?\s+|?>]/g);
 			if (y)
			{
				for (var j=0;j<y.length;j++)
				{
					z[i] = z[i].replace(y[j],y[j].replace(/\=(\w+)([?\s+|?>])/g,'="$1"$2'));
				}
 			}
			zz = zz.replace(zSaved,z[i]);
		}
	}
	return zz;
}

//GET XML HTTP OBJECT 
function GetXmlHttpObject()
{
	if (window.XMLHttpRequest)
	{
		// code for IE7+, Firefox, Chrome, Opera, Safari
		return new XMLHttpRequest();
	}
	if (window.ActiveXObject)
	{
		// code for IE6, IE5
		return new ActiveXObject("Microsoft.XMLHTTP");
	}
	return null;
}


//ECHO USER INFO
function load_user_info(str, from_sub)
{
	var url;
	xmlhttp2=GetXmlHttpObject();
	
	if (xmlhttp2==null)
	{
		alert ("Browser does not support HTTP Request");
		return;
	}
	
	if(from_sub)	
	{
		url="../scripts/load_user_info.php";
	}
	else			
	{
		url="scripts/load_user_info.php";
		url=url+"?q="+str;
		url=url+"&sid="+Math.random(); 
		xmlhttp2.onreadystatechange=printUserInfo;
		xmlhttp2.open("GET",url,true);
		xmlhttp2.send(null);
	}
}
function printUserInfo()
{
	if (xmlhttp2.readyState==4)
	{
		document.getElementById("user_info").innerHTML=xmlhttp2.responseText;
		if(is_ie)	ieInnerHTML(document.getElementById("user_info"));
	}
}

//ECHO Image caption
function load_caption(str, img_id, from_sub)
	{
	xmlhttp5=GetXmlHttpObject();
	if (xmlhttp5==null)
		{
		alert ("Browser does not support HTTP Request");
		return;
	}
	var url;
	if(from_sub)	
	{
		url="../scripts/load_caption.php";
	}
	else			
	{
		url="scripts/load_caption.php";
		url=url+"?q="+str+"&n="+img_id;
		url=url+"&sid="+Math.random(); 
		xmlhttp5.onreadystatechange=printCaption;
		xmlhttp5.open("GET",url,true);
		xmlhttp5.send(null);
	}
}
function printCaption()
{
	if (xmlhttp5.readyState==4)
	{
		document.getElementById("caption").innerHTML = xmlhttp5.responseText;
		if(is_ie)	ieInnerHTML(document.getElementById("caption"));
	}
}

//CALL PICTURE
function callPicture(user_id, new_img, from_sub, kill_timer)
{
	var img_id;
	if(kill_timer)
	{
		window.stopPlaybackTimer();
	}
	if (document.images)
    {
      	document.images['blank'].src=the_img[new_img];
      	curr_img = new_img;
		var params = window.thumb_param_array[curr_img].split(',');
		user_id = params[0];
		img_id = params[1];
		load_caption(user_id, img_id, from_sub);
		load_user_info(user_id, from_sub);
		Icon_Highlight_Func();
 	    return;   
    }
}


if (document.layers) 
{
	visible = 'show';
	hidden  = 'hide';
} 
else if (document.all || document.getElementById) 
{ 
	visible = 'visible';
	hidden  = 'hidden';
}

//CAPTION
function caption( cap )
{
	if (document.getElementById) 
	{	
		document.getElementById(lastCap).style.visibility=hidden;
		document.getElementById(cap).style.visibility=visible;
	} 
	else 
	{
		if (document.layers) 
		{
			daLast = document.layers[lastCap];
			daItem = document.layers[cap];
		} 
		else if (document.all) 
		{
			daLast = document.all(lastCap).style;
			daItem = document.all(cap).style;
		}
		daLast.visibility = hidden;
		daItem.visibility = visible;
	}

	lastCap = cap;
}
 
function doPrevious(user_id) 
{
	var i = 0;
	var img_id;
	
    if (document.images && curr_img > 0) 
   	{
        curr_img--;
		var params = window.thumb_param_array[curr_img].split(',');
		user_id = params[0];
		img_id = params[1];
		load_caption(user_id, img_id, false);
		load_user_info(user_id, false);
		
		if ( curr_img == 0)
		{
			currentPosition = 0;
			// Move slideInner using margin-left
			$('#slideInner').animate({'marginLeft' : slideWidth*(-currentPosition)});
			// Hide left arrow if position is first slide
			if(currentPosition==0  || last_img < 8){ $('#leftControl').hide() } else{ $('#leftControl').show() }
			// Hide right arrow if position is last slide
			if(currentPosition==numberOfSlides-1  || last_img < 8){ $('#rightControl').hide() } else{ $('#rightControl').show() }
		}
		else
		{
			currentPosition = Math.floor(curr_img / 8); 
			//manageControls(currentPosition);
			// Move slideInner using margin-left
			$('#slideInner').animate({'marginLeft' : slideWidth*(-currentPosition)});
			// Hide left arrow if position is first slide
			if(currentPosition==0  || last_img < 8){ $('#leftControl').hide() } else{ $('#leftControl').show() }
			// Hide right arrow if position is last slide
			if(currentPosition==numberOfSlides-1  || last_img < 8){ $('#rightControl').hide() } else{ $('#rightControl').show() }
		}
		document.images['blank'].src=the_img[curr_img];
		Icon_Highlight_Func();
   		return;   
    }
    else if (document.images && curr_img == 0)
    {
     	curr_img = last_img;
		var params = window.thumb_param_array[curr_img].split(',');
		user_id = params[0];
		img_id = params[1];
		load_caption(user_id, img_id, false);
		load_user_info(user_id, false);

		if ( curr_img == 0)
		{
			currentPosition = 0;
			// Move slideInner using margin-left
			$('#slideInner').animate({'marginLeft' : slideWidth*(-currentPosition)});
			// Hide left arrow if position is first slide
			if(currentPosition==0  || last_img < 8){ $('#leftControl').hide() } else{ $('#leftControl').show() }
			// Hide right arrow if position is last slide
			if(currentPosition==numberOfSlides-1  || last_img < 8){ $('#rightControl').hide() } else{ $('#rightControl').show() }
		}
		else
		{
			currentPosition = Math.floor(curr_img / 8); 
			// Move slideInner using margin-left
			$('#slideInner').animate({'marginLeft' : slideWidth*(-currentPosition)});
			// Hide left arrow if position is first slide
			if(currentPosition==0  || last_img < 8){ $('#leftControl').hide() } else{ $('#leftControl').show() }
			// Hide right arrow if position is last slide
			if(currentPosition==numberOfSlides-1  || last_img < 8){ $('#rightControl').hide() } else{ $('#rightControl').show()}
		}
		document.images['blank'].src=the_img[curr_img];
		Icon_Highlight_Func();
   		return;   
    }
}


//DO NEXT
function doNext(user_id) 
{
	var img_id;
	if (document.images && curr_img < last_img) 
    {
        curr_img++;
		var params = window.thumb_param_array[curr_img].split(',');
		user_id = params[0];
		img_id = params[1];
		load_caption(user_id, img_id, false);
		load_user_info(user_id, false);
		
		if ( curr_img == 0)
		{
			currentPosition = 0;
			// Move slideInner using margin-left
			$('#slideInner').animate({'marginLeft' : slideWidth*(-currentPosition)});
			// Hide left arrow if position is first slide
			if(currentPosition==0 || last_img < 8){ $('#leftControl').hide() } else{ $('#leftControl').show() }
			// Hide right arrow if position is last slide
			if(currentPosition==numberOfSlides-1  || last_img < 8){ $('#rightControl').hide() } else{ $('#rightControl').show() }
		}
		else
		{
			currentPosition = Math.floor(curr_img / 8); 
			// Move slideInner using margin-left
			$('#slideInner').animate({'marginLeft' : slideWidth*(-currentPosition)});
			// Hide left arrow if position is first slide
			if(currentPosition==0  || last_img < 8){ $('#leftControl').hide() } else{ $('#leftControl').show() }
			// Hide right arrow if position is last slide
			if(currentPosition==numberOfSlides-1  || last_img < 8){ $('#rightControl').hide() } else{ $('#rightControl').show() }
		}		
		document.images['blank'].src=the_img[curr_img];
		Icon_Highlight_Func();
		return; 		
    }
    else if(document.images && curr_img == last_img) 
    {
     	curr_img = 0;
		var params = window.thumb_param_array[curr_img].split(',');
		user_id = params[0];
		img_id = params[1];
		load_caption(user_id, img_id, false);
		load_user_info(user_id, false);

		if ( curr_img == 0)
		{
			currentPosition = 0;
			// Move slideInner using margin-left
			$('#slideInner').animate({'marginLeft' : slideWidth*(-currentPosition)});
			// Hide left arrow if position is first slide
			if(currentPosition==0  || last_img < 8){ $('#leftControl').hide() } else{ $('#leftControl').show() }
			// Hide right arrow if position is last slide
			if(currentPosition==numberOfSlides-1  || last_img < 8){ $('#rightControl').hide() } else{ $('#rightControl').show() }
		}
		else
		{
			currentPosition = Math.floor(curr_img / 8); 
			// Move slideInner using margin-left
			$('#slideInner').animate({'marginLeft' : slideWidth*(-currentPosition)});
			// Hide left arrow if position is first slide
			if(currentPosition==0  || last_img < 8){ $('#leftControl').hide() } else{ $('#leftControl').show() }
			// Hide right arrow if position is last slide
			if(currentPosition==numberOfSlides-1  || last_img < 8){ $('#rightControl').hide() } else{ $('#rightControl').show() }
		}
		document.images['blank'].src=the_img[curr_img];
		Icon_Highlight_Func();
		return;   
    }
}

 //CURRENT CAPTION
function current_cap() 
{	
	document.getElementById('gal_cap').innerHTML  = the_cap[curr_img]; 
}

//GET ELEMENT BY CLASS
function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

//FIND ICON BTN
function find_icon_btn(e)
{
	var evt=window.event || e
	if (!evt.target) //if event obj doesn't support e.target, presume it does e.srcElement
 	evt.target=evt.srcElement //extend obj with custom e.target prop
	stopTimer = true;
	var i = 0;
	for(i = 0; i < iconsImgs.length; i++)
	{	
		if(iconsImgs[i] == evt.target)
		{   
			val = i;
			curr_img = val;
			iconsImgs[i].className="iconClassHighlight";
		}
		else
		{
			iconsImgs[i].className="iconClass";
		}
	}
	return(val);
}

//ICON HIGHLIGHT FUNCTION
function Icon_Highlight_Func()
{	
	val = curr_img;
	if(iconsImgs.length > 1)
	{
		for(i = 0; i < iconsImgs.length; i++)
		{
			iconsImgs[i].className="iconClass";
		}
	}
	iconsImgs[val].className="iconClassHighlight";
}

//NEXT PIC FUNTION
function nextPicFunc()
{
	window.curr_img++;
	if(window.curr_img >= (window.thumb_param_array.length-1))	
	{
		
		window.curr_img = 0;
		window.currentPosition = Math.floor(window.curr_img / 8);
		window.manageControls(window.currentPosition);
		window.positionThumbs(window.currentPosition);
	}
	if(is_safari3)
	{
		window.callPicture(window.user_id, window.curr_img, false, false);
	}
	else
	{
		window.callPicture(window.user_id, window.curr_img, false, false);
	}
}

//PAUSE-PLAY FUNCTION
function pausePlayFunc()
{	
	if(document.getElementById('slideshowPP').className=="pauseSlideshow")
	{
		stopPlaybackTimer();
	}
	else 
	{
		nextPicFunc();

		startPlaybackTimer();
	}
}

//PAUSE-PLAY DOWN
function pausePlayDown()
{
	if(document.getElementById('slideshowPP').className=="pauseSlideshow")
	{
		MM_swapImage('slideshowPP','','images/layout/play.png',1); 
	}
	else 
	{
		MM_swapImage('slideshowPP','','images/layout/pause.png',1); 
	}
}

//PAUSE-PLAY ROLLOVER
function pausePlayRollover()
{
	if(document.getElementById('slideshowPP').className=="pauseSlideshow")
	{
		MM_swapImage('slideshowPP','','images/layout/pauseOver.png',1); 
	}
	else 
	{
		MM_swapImage('slideshowPP','','images/layout/playOver.png',1); 
	}
}

//PAUSE-PLAY UP
function pausePlayUp()
{
	if(document.getElementById('slideshowPP').className=="pauseSlideshow")
	{
		MM_swapImage('slideshowPP','','images/layout/playOver.png',1); 
	}
	else 
	{
		MM_swapImage('slideshowPP','','images/layout/pauseOver.png',1); 
	}
}

//STARTPLAYBACK
function startPlaybackTimer()
{
	timerId = setInterval("nextPicFunc()", 5000);
	document.getElementById('slideshowPP').className="pauseSlideshow";
	document.getElementById('slideshowPP').title = "Pause Slideshow";
}

//GET_LINK
function get_link()
{
	var artist_link = "http://www.formz.com/gallery2/gallery.php?A=" + user_id + "&L="+ document.selected_letter;
	artist_link = escape(artist_link);

	var mailto_link ="mailto:someone@somewhere.com?subject= Check out this gallery page on the AutoDesSys website! &body=" + artist_link;
	win = window.open(mailto_link,'emailWindow');
	if (win && win.open &&!win.closed) win.close();	
}

