var http = null;
var http2 = null;
var http3 = null;
var http4 = null;
var http5 = null;
var http6 = null;
var baseUrl = 'http://www.sicgalleries.com/builder/gallery.php/';

function getConnection()
{
	var browser = navigator.appName;
	if (browser == "Microsoft Internet Explorer")
	{
		http = new ActiveXObject("Microsoft.XMLHTTP");
		http2 = new ActiveXObject("Microsoft.XMLHTTP");
		http3 = new ActiveXObject("Microsoft.XMLHTTP");
		http4 = new ActiveXObject("Microsoft.XMLHTTP");
		http5 = new ActiveXObject("Microsoft.XMLHTTP");
		http6 = new ActiveXObject("Microsoft.XMLHTTP");
	}
	else
	{
		http = new XMLHttpRequest();
		http2 = new XMLHttpRequest();
		http3 = new XMLHttpRequest();
		http4 = new XMLHttpRequest();
		http5 = new XMLHttpRequest();
		http6 = new XMLHttpRequest();
	}
}

function getLinks()
{
	var siteId = document.forms['main'].sites.options[document.forms['main'].sites.selectedIndex].value;
	if (siteId == 0)
	{
		return false;
	}
	document.forms['main'].links.style.color = "red";
	document.forms['main'].links.style.fontWeight = "bold";
	document.forms['main'].links.options.length = 0		
	document.forms['main'].links.options[0] = new Option('... Loading ...', '0');
	var url = 'rpc.php?cmd=getLinks&siteId=' + siteId;
	http5.open('get', url);
	http5.onreadystatechange = handleLinks;
	http5.send(null);
}

function handleLinks()
{
	if (http5.readyState == 4)
	{
		var response = http5.responseXML;
		var responseTxt = http5.responseText;
		//document.forms['main'].help.innerHTML = responseTxt;
		var allLinks = response.getElementsByTagName('link');
		var id = 0;
		var name = '';
		document.forms['main'].links.style.color = "black";
		document.forms['main'].links.style.fontWeight = "normal";
		document.forms['main'].links.options.length = 0		
		document.forms['main'].links.options[0] = new Option(' ', '0');
		for (i = 0; i < allLinks.length; i++)
		{
			id = allLinks[i].getAttribute('id');
			name = allLinks[i].getAttribute('name');
			document.forms['main'].links.options[i + 1] = new Option(name, id);
		}
	}
}

function getSetTypes()
{
	var url = 'rpc.php?cmd=getTypes';
	document.forms['main'].type.style.color = "red";
	document.forms['main'].type.style.fontWeight = "bold";
	document.forms['main'].type.options.length = 0;
	document.forms['main'].type.options[0] = new Option('... Loading ...', '0');
	http3.open('get', url);
	http3.onreadystatechange = handleTypes;
	http3.send(null);
}

function handleTypes()
{
	if (http3.readyState == 4)
	{
		var response = http3.responseXML;
		var types = response.getElementsByTagName('type');
		var id = 0;
		var name = '';
		document.forms['main'].type.style.color = "black";
		document.forms['main'].type.style.fontWeight = "normal";
		document.forms['main'].type.options.length = 0;
		document.forms['main'].type.options[0] = new Option(' ', '0');
		for (i = 0; i < types.length; i++)
		{
			id = types[i].getAttribute('id');
			name = types[i].getAttribute('name');
			document.forms['main'].type.options[i + 1] = new Option(name, id);
		}
	}
}

function getSites()
{
	//getConnection();
	var url = 'rpc.php?cmd=getSites';
	document.forms['main'].sites.style.color = "red";
	document.forms['main'].sites.style.fontWeight = "bold";
	document.forms['main'].sites.options.length = 0;
	document.forms['main'].sites.options[0] = new Option('... Loading ...', '0');
	http.open('get', url);
	http.onreadystatechange = handleSites;
	http.send(null);
}

function handleSites()
{
	if (http.readyState == 4)
	{
		var response = http.responseXML;
		var sites = response.getElementsByTagName('site');
		var id = 0;
		var name = '';
		document.forms['main'].sites.style.color = "black";
		document.forms['main'].sites.style.fontWeight = "normal";
		document.forms['main'].sites.options.length = 0		
		document.forms['main'].sites.options[0] = new Option(' ', '0');
		for (i = 0; i < sites.length; i++)
		{
			id = sites[i].getAttribute('id');
			name = sites[i].getAttribute('name');
			document.forms['main'].sites.options[i + 1] = new Option(name, id);
		}
	}
}

function getTemplates()
{
	//getConnection();
	var type = document.forms['main'].type.options[document.forms['main'].type.selectedIndex].value;
	if (type == 0)
	{
		return false;
	}
	var url = 'rpc.php?cmd=getTemplates&type=' + type + '&siteId=' + document.forms['main'].sites.options[document.forms['main'].sites.selectedIndex].value ;
	document.forms['main'].templates.style.color = "red";
	document.forms['main'].templates.style.fontWeight = "bold";
	document.forms['main'].templates.options.length = 0;
	document.forms['main'].templates.options[0] = new Option('... Loading ...', '0');
	http.open('get', url);
	http.onreadystatechange = handleTemplates;
	http.send(null);
}

function handleTemplates()
{
	if (http.readyState == 4)
	{
		var response = http.responseXML;
		var temps = response.getElementsByTagName('template');
		var id = 0;
		var name = '';
		document.forms['main'].templates.style.color = "black";
		document.forms['main'].templates.style.fontWeight = "normal";
		document.forms['main'].templates.options.length = 0		
		document.forms['main'].templates.options[0] = new Option(' ', '0');
		if (temps.length < 1)
		{
			document.forms['main'].templates.style.color = "blue";
			document.forms['main'].templates.style.fontWeight = "normal";
			document.forms['main'].templates.options.length = 0		
			document.forms['main'].templates.options[0] = new Option('No Templates Found - Try A Different Set Type', '0');
		}
		else
		{
			for (i = 0; i < temps.length; i++)
			{
				id = temps[i].getAttribute('id');
				name = temps[i].getAttribute('name');
				document.forms['main'].templates.options[i + 1] = new Option(name, id);
			}
		}
	}
}

function getSets()
{
	//getConnection();
	var type = document.forms['main'].type.options[document.forms['main'].type.selectedIndex].value;
	if (type == 0)
	{
		return false;
	}
	var url = 'rpc.php?cmd=getSets&type=' + type + '&siteId=' + document.forms['main'].sites.options[document.forms['main'].sites.selectedIndex].value ;
	document.forms['main'].sets.style.color = "red";
	document.forms['main'].sets.style.fontWeight = "bold";
	document.forms['main'].sets.options.length = 0;
	document.forms['main'].sets.options[0] = new Option('... Loading ...', '0');
	http2.open('get', url);
	http2.onreadystatechange = handleSets;
	http2.send(null);
}

function handleSets()
{
	if (http2.readyState == 4)
	{
		var response = http2.responseXML;
		var sets = response.getElementsByTagName('set');
		var id = 0;
		var name = '';
		document.forms['main'].sets.style.color = "black";
		document.forms['main'].sets.style.fontWeight = "normal";
		document.forms['main'].sets.options.length = 0		
		document.forms['main'].sets.options[0] = new Option(' ', '-1');
		document.forms['main'].sets.options[1] = new Option('- Get Links For All Sets -', '0');
		document.forms['main'].sets.options[2] = new Option('- Get Daily Rotation Set -', '987654321');
		if (sets.length < 1)
		{
			document.forms['main'].sets.style.color = "blue";
			document.forms['main'].sets.style.fontWeight = "normal";
			document.forms['main'].sets.options.length = 0		
			document.forms['main'].sets.options[0] = new Option('No Sets Found - Try A Different Set Type', '-1');
		}
		else
		{
			for (i = 0; i < sets.length; i++)
			{
				id = sets[i].getAttribute('id');
				name = sets[i].getAttribute('name');
				document.forms['main'].sets.options[i + 3] = new Option(name, id);
			}
		}
	}
}

function getSetImage()
{
	var setId = document.forms['main'].sets.options[document.forms['main'].sets.selectedIndex].value;
	if (setId == 0 || setId == 987654321)
	{
		var tempImage = 'templates/gallery_temps/no_set.jpg';
		document.getElementById('set_img').src = tempImage;
		return;
	}
	var url = 'rpc.php?cmd=getSetImage&setId=' + setId;
	http2.open('get', url);
	http2.onreadystatechange = handleSetImage;
	http2.send(null);
}

function handleSetImage()
{
	var setId = document.forms['main'].sets.options[document.forms['main'].sets.selectedIndex].value;
	if (http2.readyState == 4)
	{
		var response = http2.responseText;
		var setImage = response;
	}
	document.getElementById('set_img').src = setImage;
}

function updateTemplateImage()
{
	var tempId = document.forms['main'].templates.options[document.forms['main'].templates.selectedIndex].value;
	if (tempId > 0)
	{
		var tempImage = 'advg_images/temp_thumb_'  + tempId + '.jpg';
	}
	else
	{
		var tempImage = 'templates/gallery_temps/no_temp.jpg';
	}
	document.getElementById('temp_img').src = tempImage;
}

function updateLink(clearLink)
{
	if (clearLink == 2)
	{
		document.getElementById('gallery_link').innerHTML = '&nbsp;';
		return;
	}
	var webId = document.forms['main'].webid.value;
	var tempId = document.forms['main'].templates.options[document.forms['main'].templates.selectedIndex].value;
	var siteId = document.forms['main'].sites.options[document.forms['main'].sites.selectedIndex].value;
	var linkId = document.forms['main'].links.options[document.forms['main'].links.selectedIndex].value;
	if (document.forms['main'].sets.selectedIndex >= 0)
	{
		var setId = document.forms['main'].sets.options[document.forms['main'].sets.selectedIndex].value;
	}
	else
	{
		var setId = 0;
	}
	if (document.forms['main'].type.selectedIndex >= 0)
	{
		var type = document.forms['main'].type.options[document.forms['main'].type.selectedIndex].value;
	}
	else
	{
		var type = 0;
	}
	if (webId > 0 && tempId > 0 && type > 0 && linkId > 0 && setId == 0)
	{
		var url = 'rpc.php?cmd=getAllSiteLinks&type=' + type + '&siteId=' + siteId + '&tempId=' + tempId + '&webId=' + webId + '&linkId=' + linkId;
		http6.open('get', url);
		http6.onreadystatechange = handleGetAllSiteLinks;
		http6.send(null);
	}
	else if (webId > 0 && tempId > 0 && setId > 0 && type > 0 && linkId > 0)
	{
		if (setId == 987654321)
		{
			var galleryLink = baseUrl + 'daily/' + webId + '/' + siteId + '/' + type + '/' + tempId + '/' + linkId;
			document.getElementById('gallery_link').innerHTML = '<em>This link will display a new set of images/video clips each day.</em><br><a href="' + galleryLink + '" target="_blank">' + galleryLink + '</a>';
		}
		else
		{
			if (type == 1)
			{
				var galleryLink = baseUrl + 'display/' + webId + '/' + tempId + '/' + setId + '/' + linkId;
			}
			else
			{
				var galleryLink = baseUrl + 'display_clips/' + webId + '/' + tempId + '/' + setId + '/' + linkId;
			}
			document.getElementById('gallery_link').innerHTML = '<a href="' + galleryLink + '" target="_blank">' + galleryLink + '</a>';
		}
	}
	else
	{
		if (webId < 1)
			document.getElementById('gallery_link').innerHTML = '<em>Enter your webmaster ID.</em>';
		else if (siteId < 1)
			document.getElementById('gallery_link').innerHTML = '<em>Select a site.</em>';
		else if (type < 1)
			document.getElementById('gallery_link').innerHTML = '<em>Select a set type.</em>';
		else if (tempId < 1)
			document.getElementById('gallery_link').innerHTML = '<em>Select a template.</em>';
		else if (setId < 1)
			document.getElementById('gallery_link').innerHTML = '<em>Select a set.</em>';
		else if (linkId < 1)
			document.getElementById('gallery_link').innerHTML = '<em>Select a link.</em>';
		else
			document.getElementById('gallery_link').innerHTML = '&nbsp;';
	}
}

function handleGetAllSiteLinks()
{
	if (http6.readyState == 4)
	{
		var response = http6.responseText;
		document.getElementById('gallery_link').innerHTML = response;
	}
}

function checkWebId()
{
	var webId = document.forms['main'].webid.value;
	if (webId.length == 0)
	{
		alert("Please enter your webmaster ID first!");
		return false;
	}
	else
	{
		return true;
	}
}

getConnection();
