function sort(value, d)
{
	var qs = getQuery(location.search, "sort");
	var ss = "sort=" + value;
	
	if ((qs != ss) == d)
	{	
		location.search = changeQuery(location.search, "sort", value);
	}
	else
	{
		value --;
		location.search = changeQuery(location.search, "sort", value);
	}		
}
function showInfoByIP($ip)
{
	search = "getinfobyip";
	search+= "&" + getQuery(location.search, "sessionid");
	search+= "&" + getQuery(location.search, "userid");
	search+= "&ip=" + $ip;
	location.search= search;
}
function editUser(documentID, name, value, action)
{
	if (value || confirm("Do you wish to remove user from project?"))
	{
		search = action; 
		search+= "&" + getQuery(location.search, "userid");
		search+= "&documentid=" + documentID;
		search+= "&username=" + name;
		search+= "&permissionstomodyfy=" + value;
		search+= "&addpermission";
	
		location.search = search;
	}		
}
function showAllIP()
{
	locsearch = location.search;
	search = "";
	search+= "getallip";
	search+= "&" + getQuery(locsearch, "level");
	search = changeIntQuery(search, "level", 1);
	search+= "&" + getQuery(locsearch, "sessionid");
	search+= "&" + getQuery(locsearch, "userid");
	search+= "&" + getQuery(locsearch, "datefrom");
	search+= "&" + getQuery(locsearch, "dateto");
	location.search = search;
}

function showIPLogs(ip)
{
	locsearch = location.search;
	search = "getiplogs&level=1&ip=" + ip;
	search+= "&" + getQuery(location.search, "sessionid");
	search+= "&" + getQuery(location.search, "userid");
	search+= "&" + getQuery(locsearch, "datefrom");
	search+= "&" + getQuery(locsearch, "dateto");
	location.search = search;
}

function showLogs(mode)
{
	locsearch = location.search;
	search = "";
	search+= "viewlogs";
	search+= "&" + getQuery(locsearch, "level");
	search = changeIntQuery(search, "level", 1);
	search+= "&" + getQuery(location.search, "sessionid");
	search+= "&" + getQuery(location.search, "userid");
	search+= "&" + getQuery(locsearch, "datefrom");
	search+= "&" + getQuery(locsearch, "dateto");
	search+= "&mode=" + mode;	
	location.search = search;

//	search = changeIntQuery(location.search, "level", 1);
//	location.search = changeQuery(search, "mode", mode);
}

function changeLogDate()
{
		var dateFromArr = new Array();
		var dateToArr = new Array();
		dateFromArr[0] = document.all.month[0].value;
		dateFromArr[1] = document.all.day[0].value;
		dateFromArr[2] = document.all.year[0].value;
		dateToArr[0] = document.all.month[1].value;
		dateToArr[1] = document.all.day[1].value;
		dateToArr[2] = document.all.year[1].value;

	if (isNaN(parseInt(dateFromArr[1])  ||
		parseInt(dateFromArr[1]) == 0   || 
		parseInt(dateFromArr[1]) > 31)  ||
		isNaN(parseInt(dateToArr[1])    ||
		parseInt(dateToArr[1]) == 0     || 
		parseInt(dateToArr[1]) > 31))
		{	
			alert("Please input correct day!");
			return;
		}
		
		jdateFrom = new Date (dateFromArr[2], dateFromArr[1], dateFromArr[0]);
		jdateTo = new Date (dateToArr[2], dateToArr[1], dateToArr[0]);

		if (jdateTo.getTime()  < jdateFrom.getTime()) 
		{	
			alert("Date from < Date till!");
			return;
		}
		dateFrom = dateFromArr[0] + "," + dateFromArr[1] + "," + dateFromArr[2];
		dateTo = dateToArr[0] + "," + dateToArr[1] + "," + dateToArr[2];

		search = location.search;
		search = changeQuery(search, "datefrom", dateFrom);
		search = changeQuery(search, "dateto", dateTo);
		search = changeIntQuery(search, "level", 1);
		location.search = search;
}

function onMsOver(item, action)
{
	if (action == "on")
	{
		if(item.className == "off")
			item.className = "on";
	}
	if (action == "off")
	{
		if(item.className == "on" || item.className == "alterOff")
			item.className = "off";			
	}
}

function showContent(content)
{
	if (content == "documents")
	{
		search = getQuery(location.search, "sessionid");
		search += "&" + getQuery(location.search, "userid");
		search += "&" + getQuery(location.search, "sort");
		search += "&parentdocumentid=" + document.all.projects.value;

		if (eval("permArr['" + document.all.projects.value + "'] < 4"))
			search += "&content=0";
		else
			search += "&content=1";
			
		if (eval("permArr['" + document.all.projects.value + "'] > 2"))
		{
			search += "&newdoc=1";
		}
		else
			search += "&newdoc=0";

		location.search = search;
	}

	if (content == "users")
	{
		document.all.newdoc.onclick = newUser;
		documentID = document.all.projects.value;
		search = "userlist&documentid=" + documentID;
		search += "&" + getQuery(location.search, "userid");
		search += "&" + getQuery(location.search, "sort");
		search += "&" + getQuery(location.search, "sessionid");
		location.search = search;
	}

	if (content == "viewAccount" || content == "editAccount")
	{
		documentID = document.all.projects.value;
		document.all.newdoc.disabled = true;
		search = "getmyaccount";
		search += "&" + getQuery(location.search, "userid");
		search += "&" + getQuery(location.search, "sessionid");
		search += "&" + content;
		location.search = search;
	}
}	
	
function newDoc()
{
	parentid = document.all.projects.value;
	url = "cadeopen.php?createdocument&parentdocumentid=" + parentid;
	url += "&permvalue=" + eval("permArr['" + parentid + "']");
	url += "&type=1";
	url += "&" + getQuery(location.search, "sessionid");
	window.open(url, "newdoc");
	
}

function newUser()
{
	name = prompt("Please input user name", "");
	if((name != "null") && validateEmail(name))
		editUser(document.all.projects.value, name, 2, "setpermissions");
}

function viewImage(documentid)
{
	url = "../index.php?imageshow&documentid=" + documentid;
	window.open(url, "viewimage");
}

function editDocument(documentID, disabled)
{
	search = "getfilename";
	search += "&" + getQuery(location.search, "level");
	search = changeIntQuery(search, "level", 1);
	if (documentID == 0)
		search += "&" + getQuery(location.search, "documentid");
	else
		search += "&documentid=" + documentID;
	search += "&" + getQuery(location.search, "userid");
	search += "&type=4&nextversion=0";
	search += "&" + getQuery(location.search, "sessionid");
	search += "&height=300";
	if (disabled)
		search += "&disabled";
	
	location.search = search;
}

function showHistory(documentID, disabled)
{
	search = "documenthistory";
	search += "&" + getQuery(location.search, "level");
	search = changeIntQuery(search, "level", 1);
	if (documentID == 0)
		search += "&" + getQuery(location.search, "documentid");
	else
		search += "&documentid=" + documentID;
	search += "&" + getQuery(location.search, "userid");
	search += "&" + getQuery(location.search, "sessionid");
	search += "&printdescription";
	if (disabled)
		search += "&disabled";
	location.search = search;
		
}

function backToDrawings()
{
	search = getQuery(location.search, "level");
	par = parseInt(search.replace("level=", ""));
	history.go((-1) * par);
}
function deleteDocument(documentID)
{
	if (confirm('Do you wish to delete this document?'))
	{
		search = "deletedocument";
		search += "&documentid=" + documentID;
		search += "&" + getQuery(location.search, "userid");
		location.search = search;
	}
}

function empty()
{
}

function signOut()
{
	url = "signIn.php?" + getQuery(location.search, "sessionid");
	location.href = url;
}

function showUsers()
{
	documentID = document.all.projects.value;
	search = "userlist&documentid=" + documentID;
	search += "&" + getQuery(location.search, "userid");
	search += "&" + getQuery(location.search, "sessionid");
	
	window.location.search = search;
	document.all.list.innerText = "Project Documents";
	document.all.list.onclick = showDocuments;
}

function showAllUsers()
{
	search = "allusers";
	search += "&" + getQuery(location.search, "userid");
	search += "&" + getQuery(location.search, "sessionid");
	top("documents").location.search = search;
	document.all.list.innerText = "Project Documents";
	document.all.list.onclick = showDocuments;
}

function validateEmail(testingEmail)
{
	var helpArr = testingEmail.split("@");
	if ((helpArr.length != 2) || (helpArr[1].indexOf(".") < 0))
	{
		alert ("Please input valid email");
		return false;
	}
	return true;	
}	

function validateXMLString(xml)
{
	resArr = xml.split("&");
	count = resArr.length;
	res = "";
	for(var i = 0; i < count; i ++)
		res += "&amp;" + resArr[i];
	res = res.slice(5);	 
	helpstr = "";
	while(res != helpstr)
	{
		helpstr = res;
		res = res.replace("<","&lt;");
		res = res.replace(">","&gt;");
	}
	
	return res;
}

function autoCursor()
{
	document.all.newdoc.style.cursor = "none";
}

function handCursor()
{
	document.all.newdoc.style.cursor = "hand";
}
