


var globalMouseX;
var globalMouseY;
var upload_status_timer;
$(document).ready(function()
{
 	if (document.upload_form != null) 
	{		
		document.upload_form.style.display = 'block';
		
	}
	if (document.getElementById('upload_javascript_msg') != null) 
	{
		document.getElementById('upload_javascript_msg').style.display = 'none';
	}
	$("body").mousemove(
		function(e)
		{
			globalMouseX = e.pageX;
			globalMouseY = e.pageY;
		}
	);
	//GT CLIENT PAGE
	$('.installererror').children().hide();
	$('.installererror').click(function(e)
	{
		if ($(this).children().css('display') == 'block') 
		{
			$(this).children().hide();
			$(this).css('background-image', 'url(/_images/ico_expand.png)');
			ie6resize();
		}
		else 
		{
			$(this).children().show();
			$(this).css('background-image', 'url(/_images/ico_collapse.png)');
			ie6resize();
		}		
	});
	ie6resize();	
});

function getShortURL(url,count){
	document.getElementById("bitly_" + count).style.display = "block";
	document.getElementById("bitly_button_" + count).style.display = "none";
	data = url;
	$.get("/ext/bitly/bitly.php", {"url":url}, function(data) {
		document.getElementById("bitly_" + count).value = data.url;
		document.getElementById("bitly_" + count).style.display = "block";
					}, "json" );

}
//*****************************
//*****************************
function stopPropagation(event)
{
	if ($.browser.msie)
		window.event.cancelBubble = true
	else
		event.stopPropagation();
}
//*****************************
//*****************************
function hoverPopupShow(element, event, content)
{
	var popup = document.getElementById("HOVERPOPUP");
	if (popup == null)
	{
		//CREATE POPUP
		e = document.createElement("div");
		e.id = "HOVERPOPUP";
		e.style.display = "none";
		e.style.position = "absolute";
		e.style.zIndex = 1000;
		e.className = "popup";
		//INSERT POPUP INTO DOM
		n1 = document.body.firstChild;
		while (n1.nodeType != 1)
			n1 = n1.nextSibling;
		document.body.insertBefore(e, n1);
		popup = document.getElementById("HOVERPOPUP");
	}
	//alert($(element).height());
	//DISPLAY
	if (popup.style.display == "none")
		popup.innerHTML = decodeURIComponent(unescape(content));
	popup.style.top = globalMouseY + 5 - $(popup).height() + "px";
	popup.style.left = globalMouseX + 5 + "px";
	popup.style.display = "block";
}
function hoverPopupHide()
{
	var popup = document.getElementById("HOVERPOPUP");
	if (popup != null)
		document.getElementById("HOVERPOPUP").style.display = "none";
}
function onclickPopupShow(element, content, halign, valign)
{
	$('#ONCLICKPOPUP').css('display', 'none');
	var popup = document.getElementById("ONCLICKPOPUP");
	if (popup == null)
	{
		//CREATE POPUP
		e = document.createElement("div");
		e.id = "ONCLICKPOPUP";
		e.style.display = "none";
		e.style.position = "absolute";
		e.style.zIndex = 1000;
		e.className = "popup";
		e.style.top = "0px";
		e.style.left = "0px";
		//INSERT POPUP INTO DOM
		n1 = document.body.firstChild;
		while(n1.nodeType != 1)
			n1 = n1.nextSibling;
		document.body.insertBefore(e, n1);
		popup = document.getElementById("ONCLICKPOPUP");
	}
	//CONTENT
	if (popup.style.display == "none")
		popup.innerHTML = decodeURIComponent(unescape(content));
	//POSITION
	var offset = $(element).offset();
	$('#ONCLICKPOPUP').css('display', 'block');

	if (valign == 'top')
		$('#ONCLICKPOPUP').css('top', offset.top + $(element).height() - $('#ONCLICKPOPUP').height());
	else if (valign == 'center'){
		height_var = $('#ONCLICKPOPUP').height()/2;
		if (height_var < 35){
			height_var = 120;
		}
		$('#ONCLICKPOPUP').css('top', offset.top + $(element).height() - (height_var));
	}
	else
		$('#ONCLICKPOPUP').css('top', offset.top);
	if (halign == 'left')
		$('#ONCLICKPOPUP').css('left', offset.left - $('#ONCLICKPOPUP').width());
	else if (halign == 'center') 
	{		
		$('#ONCLICKPOPUP').css('left', (offset.left + ($(element).width() / 2)) - ($('#ONCLICKPOPUP').width() / 2));
	}
	else 
		$('#ONCLICKPOPUP').css('left', offset.left + $(element).width());
	ie6resize();
};
function onclickPopupHide()
{
	$('#ONCLICKPOPUP').css('display', 'none');
}


function ie6resize()
{
	if($.browser.msie )
	{
		//alert('resizing');
		$("div").each(
		function()
		{											
			var padr = $(this).css('right');
			var padl = ($(this).css('left'));			
			if(padr!='auto' && padl!='auto')			
			{
				var pad = parseInt(padl.substring(0, padl.length - 2)) + parseInt(padr.substring(0, padr.length - 2));
				var width = $(this.parentNode).width();
				var border = ($(this).css('border-right-width'));
				if(border=='1px')
					pad += 2;			

				$(this).css("width", width - pad + 'px');
			}			
			var padt = ($(this).css('top'));
			var padb = ($(this).css('bottom'));
			if (padt != 'auto' && padb != 'auto') 
			{
				var pad = parseInt(padt.substring(0, padt.length - 2)) + parseInt(padb.substring(0, padb.length - 2));
				var height = $(this.parentNode).height();
				$(this).css("height", height - pad + 'px');
			}
			
								
		}
		);
		$("span[class^='btn_']").each(
		function()
		{
			var padr = $(this).css('right');
			var padl = ($(this).css('left'));			
			if(padr!='auto' && padl!='auto')			
			{
				var pad = parseInt(padl.substring(0, padl.length - 2)) + parseInt(padr.substring(0, padr.length - 2));
				var width = $(this.parentNode).width();
				$(this).css("width", width - pad + 'px');
			}			
			var padt = ($(this).css('top'));
			var padb = ($(this).css('bottom'));
			if (padt != 'auto' && padb != 'auto') 
			{
				var pad = parseInt(padt.substring(0, padt.length - 2)) + parseInt(padb.substring(0, padb.length - 2));
				var height = $(this.parentNode).height();
				$(this).css("height", height - pad + 'px');
			}																
		}
		);
		$("span[class^='btn_08']").each(
		function()
		{			
			$(this).css("margin-bottom", '-3px');																	
		}
		);			
	}
}


function upload_start()
{
	
	if(document.upload_form.tos.value == 1)
	{
		if(!document.upload_form.tos.checked)
		{
			alert('You must agree to the terms of service to upload files');						
			//document.upload_form.reset();
			return false;
		}
	}
	upload_status_timer = setInterval("scheduler()", 2000);
	
	if(document.upload_form.myFile.value == '')
	{		
		return false;		
	}
	
	
	
	//GET UPLOADID	
	UPLOADID = getUniqueID();
	document.upload_form.APC_UPLOAD_PROGRESS.value = UPLOADID;	
	//CREATE TARGET IFRAME, SET UPLOAD FORM TARGET TO IFRAME


	//HACK REQUIRED FOR IE6
	var e;
	try
	{
	  e = document.createElement('<iframe name="iframe_upload' + UPLOADID+'">');
	}
	catch (ex)
	{
	  e = document.createElement('iframe');
	}
	//e = document.createElement("iframe");
	e.id = "iframe_upload" + UPLOADID;
	e.name = "iframe_upload" + UPLOADID;
	e.style.display = "none";
	n1 = document.body.firstChild;
	while (n1.nodeType != 1)
		n1 = n1.nextSibling;
	document.body.insertBefore(e, n1);	
	document.upload_form.target = "iframe_upload" + UPLOADID;
	//SUBMIT UPLOAD FORM
	document.upload_form.submit();	



	var filesEmpty = document.getElementById('files_empty');
	if(filesEmpty)
		filesEmpty.style.display = 'none';
	var filesExists = document.getElementById('files_exist');
	if(filesExists)
		filesExists.style.display = 'block';
	
	
	filesExists = document.getElementById('filesfolders_container1');
	if(filesExists)
		filesExists.style.display = 'block';





	//IMAGE VERIFY REQUIRED


	//ADD HTML ENTRY TO FILE TABLE
	var html = '\
		<div uploadid="' + UPLOADID + '" uploadretries="0" uploadstatus="uploading">\
			<div class="fst_filesfolders_c01">\
				&nbsp;\
			</div>\
			<div class="fst_filesfolders_c02">\
				<img src="/_images/ico_file_uploading.png" alt="Uploading" />\
				<b>-</b>\
			</div>\
			<div class="fst_filesfolders_c03">\
				<div class="upload_progress">\
					<div class="upload_progress_bar">\
					</div>\
					<div class="upload_progress_text">\
					</div>\
				</div>\
				\
			</div>\
			<div class="fst_filesfolders_c04">\
			</div>\
			<div class="item_float_clear">\
			</div>\
		</div>';
	document.getElementById('fsUploadProgress').innerHTML = html + document.getElementById('fsUploadProgress').innerHTML;	




	ie6resize();
	document.upload_form.reset();
	return false;
}



function scheduler()
{	
	var makerequest = false;
	var xml = '\
		<request>\
			<function>UploadProgress</function>';
	$("div[uploadstatus]").each(
		function()
		{
			makerequest = true;
			xml += '\
			<upload>\
				<id>' + $(this).attr('uploadid') + '</id>\
				<status>' + $(this).attr('uploadstatus') + '</status>\
				<retries>' + $(this).attr('uploadretries') + '</retries>\
			</upload>';
		}
	);
	xml += '\
		</request>';
	if(!makerequest){
		return;
	}
	$.ajax(
	{	
		type:			"POST",
		url:			"/api/index.php",
		cache:			false,
		data:			"host=" + document.upload_form.remote_hostname.value + "&xml=" + xml,
		dataType:		"xml",
		success: function(responseXML)
		{
			var uploads = responseXML.getElementsByTagName('upload');		
			for(i = 0; i < uploads.length; ++i) 
			{
				var uploadid = uploads[i].getElementsByTagName("id")[0].firstChild.nodeValue;				
				var uploadContainer = $("div[uploadid='" +uploadid+ "']")				
				uploadContainer.replaceWith(Base64.decode(uploads[i].getElementsByTagName("html")[0].firstChild.nodeValue));		
			}			
				if (document.getElementById('bytesleft') != null) 
				{
					document.getElementById('bytesleft').innerHTML = responseXML.getElementsByTagName('bytesleft')[0].firstChild.nodeValue;
				}								

			ie6resize();
			return;
		},
		error: function(responseXML)
		{			
			//alert('AJAX ERROR');	
			return;			
		}			
	});
}
function folderTreeToggle(element)
{
	if(element.src.indexOf('expand') != -1) 
	{		
		element.alt = '-';
		element.src = '/_images/ico_collapse.png';
		var padding = $(element.parentNode).css('padding-left');
		var padding = parseInt(padding.substring(0, padding.length - 2));		
		$(element.parentNode).nextAll('div').each(
			function()
			{
				var ipadding = $(this).css('padding-left');
				var ipadding = parseInt(ipadding.substring(0, ipadding.length - 2));
				if(ipadding > padding)					
					$(this).css('display', 'block')
				else
					return;
			}
		);	
	}
	else
	{	
		element.alt = '+';
		element.src = '/_images/ico_expand.png';		
		var padding = $(element.parentNode).css('padding-left');
		var padding = parseInt(padding.substring(0, padding.length - 2));		
		$(element.parentNode).nextAll('div').each(
			function()
			{
				var ipadding = $(this).css('padding-left');
				var ipadding = parseInt(ipadding.substring(0, ipadding.length - 2));
				if(ipadding > padding)					
					$(this).css('display', 'none')
				else
					return;
			}
		);			
		
		
	}	
}
function getUniqueID()
{
	var chars = "0123456789abcdefghijklmnopqurstuvwxyzABCDEFGHIJKLMNOPQURSTUVWXYZ";	
	var str = "";
	for(var i=0; i<32; ++i)
	{
		str += chars.substr( Math.floor(Math.random() * 62), 1);
	}
	return str;
}

function updateStorageUsed(){
	if (document.getElementById('count_bytesused') != null) 
	{
		var xml = '\
				<request>\
					<function>AccountStorageUsed</function>\
				</request>';
		$.ajax(
		{	
			type:			"POST",
			url:			"/api/index.php",
			cache:			false,
			data:			"xml=" + xml,
			dataType:		"xml",
			success: function(responseXML)
			{
				if(responseXML.normalize)	
					responseXML.normalize();
				document.getElementById('count_bytesused').innerHTML = Base64.decode(responseXML.getElementsByTagName('html')[0].firstChild.nodeValue);
			}
		});
	} 
}
function submitMultipleFileDelete()
{

	var selected = '';
	var all = document.getElementsByTagName("input");
	for(var e = 0; e < all.length; ++e)
		if(all[e].name == "fileids[]")
			if(all[e].checked)
				selected += '<fileid>' + (all[e].value) + '</fileid>';
	
	for(var e = 0; e < all.length; ++e)
		if(all[e].name == "folderids[]")
			if(all[e].checked)
				selected += '<folderid>' + (all[e].value) + '</folderid>';
	if(selected.length == '')
	{
		alert("Please select at least one item to delete.");
		return;
	}	
	if(!confirm("Are you sure you want to delete the selected items?"))
		return;
	var xml = '\
		<request>\
			<function>FilesFoldersDelete</function>\
			' + selected + '\
		</request>';
	$.ajax(
	{	
		type:			"POST",
		url:			"/api/index.php",
		cache:			false,
		data:			"xml=" + xml,
		dataType:		"xml",
		success: function(responseXML)
		{
			if(responseXML.normalize)	
				responseXML.normalize();
			if(responseXML.getElementsByTagName('result')[0].firstChild.nodeValue == 'SUCCESS') 
			{
				//FILES
				var fileids = responseXML.getElementsByTagName('fileid');
				for(i=0; i < fileids.length; ++i) 
				{
					$("div[id='file_" + fileids[i].firstChild.nodeValue + "']").remove();
					if (document.getElementById('count_files') != null) 
					{
						document.getElementById('count_files').innerHTML = Math.abs(document.getElementById('count_files').innerHTML) - 1;
					} 
				}
				if (($("div[id^='file_']").length) == 0) 
				{
					$("#files_empty").show();
					$("#files_exist").hide();
				}
				//FOLDERS	
				var foldersids = responseXML.getElementsByTagName('folderid');
				for(i=0; i < foldersids.length; ++i) 
				{
					$("div[id='folder_" + foldersids[i].firstChild.nodeValue + "']").remove();
				}		
				var folderTreeHTML = Base64.decode(responseXML.getElementsByTagName("htmlfoldertree")[0].firstChild.nodeValue);
				if (folderTreeHTML != 'none') 
				{
					document.getElementById('htmlfoldertree').innerHTML = folderTreeHTML;
					
				}					
				//MESSAGE
				var err = Base64.decode(responseXML.getElementsByTagName("error")[0].firstChild.nodeValue);	
				if(err != 'none')
					alert(err);
					
				if (document.getElementById('bytesleft') != null) 
				{
					document.getElementById('bytesleft').innerHTML = responseXML.getElementsByTagName('bytesleft')[0].firstChild.nodeValue;
				}
				updateStorageUsed();
				ie6resize();							
			}
			else 
			{
				var err = Base64.decode(responseXML.getElementsByTagName("error")[0].firstChild.nodeValue);	
				if(err != 'none')
					alert(err);				
			}

			return;
		},
		error: function(responseXML)
		{			
			return;			
		}			
	});	
}




function submitMultipleFileMove(currentFOLDERID)
{
	var selected = '';
	var all = document.getElementsByTagName("input");
	var selectbox = document.getElementById('folder_move_select');
	var folder_id = selectbox.options[selectbox.selectedIndex].value
	
	
	for(var e = 0; e < all.length; ++e) 
	{
		if(all[e].name == "fileids[]"  && all[e].checked) 
			selected += '<fileid>' + (all[e].value) + '</fileid>';
		if(all[e].name == "folderids[]" && all[e].checked) 
			selected += '<folderids>' + (all[e].value) + '</folderids>';
	}

	
	if(selected.length == '')
	{
		alert("Please select at least one item to move.");
		return;
	}	
	if(!confirm("Are you sure you want to move the selected items?"))
		return;

	var xml = '\
		<request>\
			<function>FilesMove</function>\
			<currentfolderid>' + currentFOLDERID  + '</currentfolderid>\
			<folderid>' + folder_id  + '</folderid>\
			' + selected + '\
		</request>';
	$.ajax(
	{	
		type:			"POST",
		url:			"/api/index.php",
		cache:			false,
		data:			"xml=" + xml,
		dataType:		"xml",
		success: function(responseXML)
		{			
			if(responseXML.normalize)	
				responseXML.normalize();

			//FILES
			var fileids = responseXML.getElementsByTagName('fileid');
			for(i=0; i < fileids.length; ++i) 
			{
				$("div[id='file_" + fileids[i].firstChild.nodeValue + "']").remove();
			}
			if (($("div[id^='file_']").length) == 0) 
			{
				$("#files_empty").show();
				$("#files_exist").hide();
			}
			//FOLDERS
			var folderids = responseXML.getElementsByTagName('folderids');			
			for(i=0; i < folderids.length; ++i) 
			{
				$("div[id='folder_" + folderids[i].firstChild.nodeValue + "']").remove();
			}
			var folderTreeHTML = Base64.decode(responseXML.getElementsByTagName("htmlfoldertree")[0].firstChild.nodeValue);			
			if (folderTreeHTML != 'none') 
			{
				document.getElementById('htmlfoldertree').innerHTML = folderTreeHTML;					
			}
			if(responseXML.getElementsByTagName('result')[0].firstChild.nodeValue == 'SUCCESS') 
			{		
				//MESSAGE
				var err = Base64.decode(responseXML.getElementsByTagName("error")[0].firstChild.nodeValue);	
				if(err != 'none')
					alert(err);
				ie6resize();							
			}
			else 
			{
				var err = Base64.decode(responseXML.getElementsByTagName("error")[0].firstChild.nodeValue);	
				if(err != 'none')
					alert(err);				
			}			
			return;
		},
		error: function(responseXML)
		{			
			//alert('foo');
			return;			
		}			
	});	
}








function addFolder(name, parentFOLDERID)
{
	var xml = '\
		<request>\
			<function>AddFolder</function>\
			<name>' + name + '</name>\
			<parentFOLDERID>' + parentFOLDERID + '</parentFOLDERID>\
		</request>';
	$.ajax(
	{	
		type:			"POST",
		url:			"/api/index.php",
		cache:			false,
		data:			"xml=" + xml,
		dataType:		"xml",
		success: function(responseXML)
		{
			if(responseXML.normalize)						
				responseXML.normalize();			

			if(responseXML.getElementsByTagName('result')[0].firstChild.nodeValue == 'SUCCESS') 
			{
				document.getElementById('fsUploadProgress').innerHTML = document.getElementById('fsUploadProgress').innerHTML + Base64.decode(responseXML.getElementsByTagName("html")[0].firstChild.nodeValue);	
				document.getElementById('htmlfoldertree').innerHTML = Base64.decode(responseXML.getElementsByTagName("htmlfoldertree")[0].firstChild.nodeValue);	
				ie6resize();
			}
			else 
			{
				alert(responseXML.getElementsByTagName('error')[0].firstChild.nodeValue);
			}			
			return;
		},
		error: function(responseXML)
		{			
			return;			
		}			
	});
}


function submitSetAccountEmail()
{
	if(document.set_account_email.email1.value == "")
	{
		alert("Email address is a required field.");
		return false;
	}
	if(document.set_account_email.email1.value != document.set_account_email.email2.value)
	{
		alert("Your email address must match your verify email address field.");
		return false;
	}
	if(document.set_account_email.password.value == "")
	{
		alert("Password is a required field.");
		return false;
	}
	return true;
}
function submitSetAccountPassword()
{
	if(document.set_account_password.password1.value == "")
	{
		alert("New Password is a required field.");
		return false;
	}
	if(document.set_account_password.password1.value != document.set_account_password.password2.value)
	{
		alert("Your new password must match your verify new password field.");
		return false;
	}
	if(document.set_account_password.password.value == "")
	{
		alert("Password is a required field.");
		return false;
	}
	return true;
}

function fileExpand(element)
{	
	if(element.alt=='+')
	{
		$(element.parentNode.parentNode).children(".fst_ffml").show();
		element.src='/_images/ico_collapse.png';
		element.alt='-';		
	}
	else
	{
		$(element.parentNode.parentNode).children(".fst_ffml").hide();
		element.src='/_images/ico_expand.png';
		element.alt='+';
	}
	ie6resize();
}

function filesFoldersSelect(e)
{
	if($(e).val() == 'unchecked')
	{
		$(e).val('checked');
		$("input[name='fileids[]']").attr('checked', true);
		$("input[name='folderids[]']").attr('checked', true);
	}
	else
	{
		$(e).val('unchecked');
		$("input[name='fileids[]']").attr('checked', false);
		$("input[name='folderids[]']").attr('checked', false);
	}
}


function openInvoice(URL){
	var load = window.open(URL,'','scrollbars=no, menubar=no,height=550,width=740,resizable=yes,toolbar=no,location=no,status=no');
}
