var xmlHttp = createXmlHttpRequestObject();
var button_grey = new Image();
button_grey.src = 'images/button_submit_grey.gif';
var portfolio_loader = new Image();
portfolio_loader.src = 'images/ajax-loader2.gif';
var portfolio_loader2 = new Image();
portfolio_loader2.src = 'images/portfolio_loader.gif';
var scriptFile = 'include/functions.php';
var menu_loader = new Image();
menu_loader.src = 'images/ajax-loader.gif';
var submit_hover = new Image();
submit_hover.src = 'images/button_submit_hover.gif';


function hideMenu() {
	document.getElementById('portfolio_frame').style.display = 'none';
	document.getElementById('portfolio_description').style.display = 'none';
	var menus = document.getElementsByTagName('li'); 
	for(i=0; i < menus.length; i++) {
		if (menus[i].className == 'hide') {
			menus[i].style.display = 'none';
		}
	}
}

function ButtonOut(button) {
	button = document.getElementById(button);
	button.src = 'images/button_submit.gif';
}

function ButtonOver(button) {
	button = document.getElementById(button);
	button.src = submit_hover.src;
}

function changeColorOnFocus(field) {
	field = document.getElementById(field);
	field.style.background = '#ffffff';
}

function changeColorOnBlur(field) {
	field = document.getElementById(field);
	field.style.background = '#f8ebce';
}

function createXmlHttpRequestObject(){
	var xmlHttp;
	try {
		xmlHttp = new XMLHttpRequest();
	}
	catch (e) {
		var XmlHttpVersions = new Array('MSXML2.XMLHTTP.6.0',
										'MSXML2.XMLHTTP.5.0',
										'MSXML2.XMLHTTP.4.0',
										'MSXML2.XMLHTTP.3.0',
										'MSXML2.XMLHTTP',
										'Microsoft.XMLHTTP');
		for (var i=0; i<XmlHttpVersions.length && !xmlHttp; i++) {
			try {
				xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
			}
			catch (e) {}
		}
	}
	if (!xmlHttp)
		alert('There was an error during XMLHttpRequest declaration');
	else
		return xmlHttp;
}

function processPost(scriptFile,params) {
	if (xmlHttp) {
		try {
			xmlHttp.open('POST',scriptFile,true);
			xmlHttp.onreadystatechange = handleRequestStateChange;
			xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			xmlHttp.send(params);
		}
		catch(e) {
			alert (e.toString());
		}
	}
}

function processGet(scriptFile,params) {
	if (xmlHttp) {
		try {
			xmlHttp.open('GET',scriptFile+''+params,true);
			xmlHttp.onreadystatechange = handleRequestStateChange;
			xmlHttp.send(null);
		}
		catch(e) {
			alert ('Error: Please wait until image loads. Select project from menu, once again.');
		}
	}
}

function handleRequestStateChange() {
	if (xmlHttp.readyState == 4) {
		if (xmlHttp.status == 200) {
			try {
				handleServerResponse();
			} 
			catch (e){
				alert ('Error: '+e.toString());
			}
		}
		else {
			alert('Errorrr: '+xmlHttp.statusText);
		}
	}
}

function checkImageLoader(image){ 
	if(image.complete == true) {
		return true;
	} else {
		setTimeout("checkImageLoader(document.getElementById('"+image+"'));",5000);
	}
	prompt(image.complete);
}

function loadPortfolioThumbnail(picturename,iditem,name) {
	var frame = document.getElementById('portfolio_frame');
	frame.innerHTML = '<img src="'+portfolio_loader2.src+'" class="portfolio_loader" />';
	var tempImage = new Image();
	tempImage.src = 'images/portfolio/thumbs/'+iditem+'/'+picturename;
	frame.innerHTML = '<a href="images/portfolio/pictures/'+iditem+'/'+picturename+'" rel="lightbox" title="'+name+'"><img src="'+tempImage.src+'"  class="portfolio_image"/></a>';
}

function handleServerResponse() {
	var responseXml = xmlHttp.responseXML;
	var xmlDoc = responseXml.documentElement;
	if(xmlDoc.tagName == 'portfolio') {
		var name = xmlDoc.getElementsByTagName("name")[0].firstChild.data;
		var description = xmlDoc.getElementsByTagName("description")[0].firstChild.data;
		var blog = xmlDoc.getElementsByTagName("blog")[0].firstChild.data;
		var itemid = xmlDoc.getElementsByTagName("itemid")[0].firstChild.data;
		var description_text;
		var pic;
		var thumbid;
		description_text = '<p id="thumb_numbers">';
		for (var i = 1; i<=10; i++){
			pic = 'pic'+i;
			if(i == 1) {
					description_text += '<a href="images/portfolio/pictures/'+itemid+'/'+xmlDoc.getElementsByTagName(pic)[0].firstChild.data+'" onclick="loadPortfolioThumbnail(\''+xmlDoc.getElementsByTagName(pic)[0].firstChild.data+'\',\''+itemid+'\',\''+name+'\'); return false;" >'+i+'</a>';
					loadPortfolioThumbnail(xmlDoc.getElementsByTagName(pic)[0].firstChild.data,itemid,name);
			} else {
				if(xmlDoc.getElementsByTagName(pic)[0].firstChild.data != 'none') {
					description_text += ' / <a href="images/portfolio/pictures/'+itemid+'/'+xmlDoc.getElementsByTagName(pic)[0].firstChild.data+'" onclick="loadPortfolioThumbnail(\''+xmlDoc.getElementsByTagName(pic)[0].firstChild.data+'\',\''+itemid+'\',\''+name+'\'); return false;" >'+i+'</a>';
				}
			}
		}
		description_text += '</p>';
		description_text += '<p id="project_details"><strong>Project details:</strong></p>';
		description_text += '<p id="project_details"><strong>Name:</strong> '+name+'</p>';
		if (description != 'none')
		{
			description_text += '<p id="project_details">'+description+'</p>';
		}
		if (blog != 'none')
		{
			description_text += '<p id="project_details"><a href="'+blog+'">Click to read about this project on our blog!</a></p>';
		}
		document.getElementById('portfolio_description').innerHTML = description_text;
	}
	if(xmlDoc.tagName == 'sendMessageResponse') {
		form = 'contact_form';
		var response = xmlDoc.getElementsByTagName("response")[0].firstChild.data;
		var name = document.getElementById(form).fName;
		var email = document.getElementById(form).fEmail;
		var message = document.getElementById(form).fMessage;
		var subject = document.getElementById(form).fSubject;
		var submit = document.getElementById('contact_submit');
		var message_box = document.getElementById('send_message_info');
		var image_loader = document.getElementById('send_message_loader');
		image_loader.style.display = 'none';
		message_box.style.display = 'inline';
		submit.src = 'images/button_submit.gif';
		submit.disabled = '';
		message.disabled = '';
		name.disabled = '';
		email.disabled = '';
		subject.disabled = '';
		if (response == 'OK')
		{
			message_box.innerHTML = '<p><span class="green">Message sent successful...</span></p>';
		}
		if (response == 'ERROR')
		{
			message_box.innerHTML = '<p><span class="red">Error! <a href="mailto:support@zeedesingstudios.com">support@zeedesingstudios.com</a></span></p>';
		}
		if (response == 'EMPTY')
		{
			message_box.innerHTML = '<p><span class="red">All fields are required!</span></p>';
		}
	}
	if(xmlDoc.tagName == 'newsletterResponse') {
		form = 'newsletter';
		var response = xmlDoc.getElementsByTagName("response")[0].firstChild.data;
		var email = document.getElementById(form).fEmail;
		var message_box = document.getElementById('newsletter_info');
		var image_loader = document.getElementById('newsletter_loader');
		var submit = document.getElementById('newsletter_submit');
		image_loader.style.display = 'none';
		submit.src = 'images/button_submit.gif';
		submit.disabled = '';
		email.disabled = '';
		if (response == 'OK')
		{
			message_box.innerHTML = '<p><span class="green">Success!</span></p>';
		}
		if (response == 'ERROR')
		{
			message_box.innerHTML = '<p><span class="red">Error! <a href="mailto:support@zeedesingstudios.com">support@zeedesingstudios.com</a></span></p>';
		}
		if (response == 'EMPTY')
		{
			message_box.innerHTML = '<p><span class="red">This field is required!</span></p>';
		}
	}
}




function slide(menu,loader,triangle){
	menu = document.getElementById(menu);
	triangle = document.getElementById(triangle);
	if (menu.style.display == 'none')
	{
		Effect.Appear(menu,{duration: 0.6});
		triangle.src = 'images/img_arrow_down.gif';
		showLoader(loader);
		setTimeout('hideLoader(\''+loader+'\')',600);
	}
	if (menu.style.display != 'none')
	{
		Effect.Fade(menu,{duration: 0.6});
		triangle.src = 'images/img_arrow_right.gif';
		showLoader(loader);
		setTimeout('hideLoader(\''+loader+'\')',600);
	}
	return false;
}

function showLoader(loader) {
		loader = document.getElementById(loader);
		loader.src = menu_loader.src;
}

function hideLoader(loader) {
		loader = document.getElementById(loader);
		loader.src = 'images/dot.gif';
}

function portfolio(image) {
	document.getElementById('first_item').style.display = 'none';
	var portfolio_frame = document.getElementById('portfolio_frame');
	var portfolio_description = document.getElementById('portfolio_description');
	if (portfolio_frame.style.display == 'none' && portfolio_description.style.display == 'none')
	{
		Effect.Appear('portfolio_frame');
		Effect.Appear('portfolio_description');
	}
	document.getElementById('portfolio_description').innerHTML = '<p id="project_details"><strong>Loading</strong> ...</p>';
	document.getElementById('portfolio_frame').innerHTML = '<img src="'+portfolio_loader2.src+'" class="portfolio_loader" />';
	loadPortfolioImage(image);
	return false;
}

function loadPortfolioImage(image) {
	params = 'action=getportfolioinfo&iditems='+image;
	processPost(scriptFile,params);
}


function forwardToFriend(form){

}

function sendMessage(form,action){
	var name_value = encodeURIComponent(document.getElementById(form).fName.value);
	var email_value = encodeURIComponent(document.getElementById(form).fEmail.value);
	var message_value = encodeURIComponent(document.getElementById(form).fMessage.value);
	var subject_value = encodeURIComponent(document.getElementById(form).fSubject.value);
	var name = document.getElementById(form).fName;
	var email = document.getElementById(form).fEmail;
	var message = document.getElementById(form).fMessage;
	var subject = document.getElementById(form).fSubject;
	var submit = document.getElementById('contact_submit');
	var message_box = document.getElementById('send_message_info');
	var image_loader = document.getElementById('send_message_loader');
	image_loader.style.display = 'inline';
	message_box.style.display = 'inline';
	message_box.innerHTML = '<p>Sending...</p>';
	submit.src = button_grey.src;
	submit.disabled = 'disabled';
	message.disabled = 'disabled';
	name.disabled = 'disabled';
	email.disabled = 'disabled';
	subject.disabled = 'disabled';
	params = 'fName='+name_value+'&fEmail='+email_value+'&fMessage='+message_value+'&fSubject='+subject_value+'&action='+action+'';
	setTimeout("processPost(scriptFile,params)",1000);
	return false;
}

function addEmail(form){
	var email_value = encodeURIComponent(document.getElementById(form).fEmail.value);
	var email = document.getElementById(form).fEmail;
	var submit = document.getElementById('newsletter_submit');
	var message_box = document.getElementById('newsletter_info');
	var image_loader = document.getElementById('newsletter_loader');
	message_box.style.display = 'inline';
	message_box.innerHTML = '<p><img src="images/newsletter_loader.gif" alt="" title="" id="newsletter_loader"/></p>';
	submit.src = button_grey.src;
	submit.disabled = 'disabled';
	email.disabled = 'disabled';
	params = 'fEmail='+email_value+'&action=addemail';
	setTimeout("processPost(scriptFile,params)",1000);
	return false;
}
