function objGet(id)
{
	document.write('<DIV id="obj' + id + '"></DIV>');
	var aobj = new ajaxObject("objCourse.php", objGot);
	aobj.elementId = "obj" + id;
	aobj.update("action=objGet&objId="+id); 
}

function objGot(responseText, responseStatus)
{	
	if(responseStatus==200) 
	{		
		if(this.elementId=="courseAssessGroupReport")
		{
			//open new window with response...
			wd = window.open("", "", 'toolbar,width=640,height=640,scrollbars=yes,resizable=yes,toolbar=yes,menubar=yes,status=yes')
			wd.document.write(responseText)
			wd.document.close() 
		}
		else
		{
			document.getElementById(this.elementId).innerHTML=responseText;
			//messy but only place it appears to work.
			if(this.elementId=="absUserWork")
			{
				focusSet("objFeedback");
			}
		}
	}
}

/*
function objCompleted(id, cb)
{	
	var aobjComp = new ajaxObject("objCourse.php");
	aobjComp.update("action=objCompleted&objId="+id+"&cbState="+cb.checked);
}
*/

function objRequestMark(userId, id, cb)
{	
	var aobjReqMark = new ajaxObject("objCourse.php");
	aobjReqMark.update("action=objRequestMark&userId="+userId+"&objId="+id+"&cbState="+cb.checked);	
}

function objReviewProgress(courseId, sortBy)
{	
	var elementId = "objReview"+ courseId;
	if(!document.getElementById(elementId)) document.write('<DIV id="' + elementId + '"></DIV>');	
	var obj = new ajaxObject("objCourse.php", objGot);
	obj.elementId = elementId;
	obj.update("action=objReviewProgress&course="+courseId+"&sortBy=" + sortBy);
}

//a
function objReviewUserProgress(courseId, sortBy, userId)
{	
	 var viewDiv = document.getElementById("absUserWork");	 			
 	 	 	
	viewDiv.style.visibility="visible";
	 	
	 viewDiv.innerHTML = "Loading...";
	 var obj = new ajaxObject("objCourse.php", objGot);	
	 obj.elementId="absUserWork";	
	obj.update("action=objReviewProgress&course="+courseId+"&sortBy=" + sortBy +"&userId="+userId);
}

function courseAssessShowGroups(courseId)
{	
	if(!document.getElementById("courseAssess")) document.write('<DIV id="courseAssess"></DIV>');
	var obj = new ajaxObject("objCourse.php", objGot);
	obj.elementId = "courseAssess";
	obj.update("action=courseGetGroups&course=" + courseId);
}

function courseAssessGroupReport(groupIds, courseId)
{
	var obj = new ajaxObject("objCourse.php", objGot);
	obj.elementId = "courseAssessGroupReport";
	obj.update("action=courseGetGroupReport&course=" + courseId + "&groupIds="+groupIds);
}

function courseShow()
{	
	if(!document.getElementById("courseAssess")) document.write('<DIV id="courseAssess"></DIV>');
	var obj = new ajaxObject("objCourse.php", objGot);
	obj.elementId = "courseAssess";
	obj.update("action=courseShow");
}

function courseAssessGroupChange(courseId, sortObjBy, groupIds)
{
	if(!document.getElementById("courseAssess")) document.write('<DIV id="courseAssess"></DIV>');
	var obj = new ajaxObject("objCourse.php", objGot);
	obj.elementId = "courseAssess";
	if(groupIds != "") obj.update("action=courseAssessGroups&course=" + courseId + "&groupIds="+groupIds+"&sortObjBy="+sortObjBy);
}

function courseAssessGroup(courseId, sortObjBy)
{
	var groupIds = "";
	groupIds = getIds(document.groups);
	courseAssessGroupChange(courseId, sortObjBy, groupIds);
}

function courseSetMarkCb(userId, objId, markObj)
{	
	//checkbox
	var mark = 0;
	if(markObj.checked)
	{
		var mark = markObj.value;
	}
		
	var obj = new ajaxObject("objCourse.php");
	obj.elementId = "courseAssess";
	obj.update("action=courseSetMark&userId=" + userId + "&objId="+objId+"&mark="+mark);
	
}

function courseSetMark(userId, objId, markObj)
{	

	var mark = markObj.value;
	//var maxMark = markObj.options[markObj.length-1].value;

	//var flag = document.getElementById("flag"+userId+"-"+objId);
	//var currentFlag = basename(flag.src);
	
	//if(currentFlag=="flagRed.gif" && mark != maxMark) flag.src=urlGet("_images/flagWhite.gif");
	//if(maxMark==mark) flag.src=urlGet("_images/tick.gif");	
	//if(maxMark != mark && currentFlag=="tick.gif") flag.src=urlGet("_images/flagWhite.gif");
	
	var obj = new ajaxObject("objCourse.php");
	obj.elementId = "courseAssess";
	obj.update("action=courseSetMark&userId=" + userId + "&objId="+objId+"&mark="+mark);
}

function courseSetFlag(userId, objId)
{
	
	var flag = document.getElementById("flag"+userId+"-"+objId);
	var currentFlag = basename(flag.src);
	var f = 0;
	if(currentFlag=="tick.gif")
	{
		alert("You can't change the flag until the mark is less than the maximum mark");
	}
	else
	{
		if(currentFlag=="flagWhite.gif") 
		{
			flag.src=urlGet("_images/flagRed.jpg");
			f = 1;
		}
		else
		{
			flag.src=urlGet("_images/flagWhite.gif");			
		}
		//run php update...
		var obj = new ajaxObject("objCourse.php");	
		obj.update("action=courseSetFlag&userId=" + userId + "&objId="+objId+"&flag="+f);		
	}
	
}

function courseViewWork(userId, objId)
{
	//write content...?
	 var winl = (screen.width - 800) / 2;
	 var wint = (screen.height - 800) / 2;
	 
	 var viewDiv = document.getElementById("absUserWork");	 			
 	 	 
	 viewDiv.style.left= winl;
	 viewDiv.style.top = wint;
	viewDiv.style.visibility="visible";
	 	
	 viewDiv.innerHTML = "Loading...";
	 var obj = new ajaxObject("objCourse.php", objGot);	
	 obj.elementId="absUserWork";
	obj.update("action=courseViewWork&userId="+userId+"&objId="+objId);
}

function courseClearFeedback(userId, objId)
{
	var objFeedback = document.getElementById("objFeedback");
	objFeedback.value="";
}

function courseCancelFeedback()
{
	hideUserDiv();
}

function courseSetFeedback(userId, objId)
{
	var objFeedback = document.getElementById("objFeedback");
	feedback = objFeedback.value;
	var obj = new ajaxObject("objCourse.php");
	//probably need to encode/decode feedback!
	hideUserDiv();
	var obj = new ajaxObject("objCourse.php", objGot);
	obj.elementId="absUserWork";
	obj.update("action=courseSetFeedback&userId=" + userId + "&objId="+objId+"&feedback="+feedback, "POST");
}

function courseSetFeedbackB(userId, objId, feedback)
{
	var obj = new ajaxObject("objCourse.php", objGot);
	obj.elementId="";
	obj.update("action=courseSetFeedback&userId=" + userId + "&objId="+objId+"&feedback="+feedback.value, "POST");
}

function hideUserDiv()
{
	var viewDiv = document.getElementById("absUserWork");
	viewDiv.style.visibility="hidden";
}
