//This JS function file is utilized by easylife tutorial.php and tutorial_detail.php files.
function edit(obj, id, source) //Edit the subject, abstract and content in tutorial.php and tutorial_detail.php files.
{
	var oTD = document.getElementById(obj.id);
	if(source == "content" || source == "abstract")
	{
		var oSource_input = document.createElement("textarea");
		if(source == "content")
		{
			oSource_input.cols = "100";
			oSource_input.rows = "50";
		}
		else
		{
			oSource_input.cols = "80";
			oSource_input.rows = "5";
		}
	}
	else
	{
		var oSource_input = document.createElement("input");
		oSource_input.type = "text";
	}
	
	if(document.all)
	{
		oSource_input.value = oTD.innerText;
	}
	else
	{
		oSource_input.value = oTD.innerHTML;
	}
	oSource_input.onblur = function(){commit(id, source)};
		
	oTD.innerHTML = "";
	oTD.appendChild(oSource_input);
	oSource_input.focus();
		
	function commit(id, source)
	{
		var data = oSource_input.value;
		var url = "edit_code.php";
		request.open("POST", url, true);
		request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
		request.onreadystatechange = update_edit;
		request.send("id="+id+"&source="+source+"&data="+data);
	}
	
	function update_edit()
	{
		if(request.readyState == 4)
		{
			if(request.status == 200)
			{
				oTD.innerHTML = request.responseText;
			}
		}
	}
}

function addReply(tid)
{
	var oAdd_name = document.getElementById("name");
	var oAdd_reply = document.getElementById("reply");
	var url = "reply_code.php";
	request.open("POST", url, true);
	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	request.onreadystatechange = update_addReply;
	request.send("tid="+tid+"&nickname="+oAdd_name.value+"&reply="+oAdd_reply.value);
			
	function update_addReply()
	{
		if(request.readyState == 4)
		{
			if(request.status == 200)
			{
				var json = eval(request.responseText);
				var id = json[0].id;
				var tid = json[0].tid;
				var nickname = json[0].nickname;
				var reply = json[0].reply;
	
				var oTable = document.getElementById("table_reply");
					
				var addRow1 = oTable.insertRow(-1);
				var addRow1Column0 = addRow1.insertCell(0);
				var addRow1Column1 = addRow1.insertCell(1);
				
				addRow1Column0.id = "nickname"+id;
				addRow1Column0.align = "center";
				addRow1Column0.valign = "middle";
				addRow1Column0.innerHTML = nickname;
				addRow1Column1.id = "message"+id;
				addRow1Column0.align = "left";
				addRow1Column1.valign = "middle";
				addRow1Column1.innerHTML = reply;
				
				var addRow2 = oTable.insertRow(-1);
				var addRow2Column0 = addRow2.insertCell(0);
				var addRow2Column1 = addRow2.insertCell(1);
				
				addRow2Column0.align = "right";
				addRow2Column0.valign = "middle";
				addRow2Column1.align = "right";
				addRow2Column1.valign = "middle";

				var oA = document.createElement("a");
				oA.href = "javascript:quoteMessage("+id+");";
				
				var oImg = document.createElement("img");
				oImg.src = "../images/039.gif";
				oImg.width = "66";
				oImg.height = "19";
				oImg.border = "0";
				
				oA.appendChild(oImg);
				addRow2Column1.appendChild(oA);
				
				var addRow3 = oTable.insertRow(-1);
				var addRow3Column0 = addRow3.insertCell(0);
				addRow3Column0.colSpan = "2";
				var oHr = document.createElement("hr");
				oHr.size = "1";
				oHr.noshade = "noshade";
				addRow3Column0.appendChild(oHr);
				
				oAdd_name.value = "";
				oAdd_reply.value = "";
			}
		}
	}
}

function deleteReply(id, tid)
{
	if(confirm("Are you sure?"))
	{
		var url = "delete_code.php";
		request.open("POST", url, true);
		request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
		request.onreadystatechange = update_deleteReply;
		request.send("id="+id+"&tid="+tid);
		
		function update_deleteReply()
		{
			if(request.readyState == 4)
			{
				if(request.status == 200)
				{
					var oTable = document.getElementById("table_reply");
					var oColumn = document.getElementById("message"+id);
					var rowIndex = oColumn.parentNode.rowIndex;
					for(var i=1;i<=3;i++)
					{
						oTable.deleteRow(rowIndex);
					}
				}
			}
		}
	}
}

function deleteTutorial(id, identifier)
{
	if(confirm("Are you sure?"))
	{
		var url = "delete_code.php";
		request.open("POST", url, true);
		request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
		request.onreadystatechange = update_deleteTutorial;
		request.send("id="+id+"&Identifier="+identifier);
		
		function update_deleteTutorial()
		{
			if(request.readyState == 4)
			{
				if(request.status == 200)
				{
					var oTable = document.getElementById("table_tutorial");
					var oColumn = document.getElementById("subject"+id);
					var rowIndex = oColumn.parentNode.rowIndex;
					for(var i=1;i<=5;i++)
					{
						oTable.deleteRow(rowIndex);
					}
				}
			}
		}
	}
}

function editCate(obj, id, cateid, source)//Edit the tutorial category in tutorial.php file.
{
	var oSpan = document.getElementById(obj.id);
	var url = "cate_code.php";
	request.open("POST", url, true);
	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	request.onreadystatechange = function (){selectCate(id, cateid, source)};
	request.send(null);
		
	function selectCate(id, cateid, source)
	{
		if(request.readyState == 4)
		{
			if(request.status == 200)
			{
				var json = eval(request.responseText);
				var oCate = document.createElement("select");
				oCate.options.length = 0;
				for(var i=0; i<json.length; i++)
				{
					if(json[i].id != 0)
					{
						oCate.options[i] = new Option(json[i].name, json[i].id);
						if(cateid == json[i].id)
						{
							oCate.options[i].selected = true;
						}
					}
				}
				oSpan.innerHTML = "";
				oSpan.appendChild(oCate);
				oCate.focus();
				oCate.onblur = function (){commitCate(this, id, source)};
			}
		}
	}
	
	function commitCate(oCate, id, source)
	{
		var data = oCate.options[oCate.selectedIndex].value;
		var name = oCate.options[oCate.selectedIndex].text;
		var url = "edit_code.php";
		request.open("POST", url, true);
		request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
		request.onreadystatechange = function(){update_cate(oSpan, id, data, source)};
		request.send("id="+id+"&source="+source+"&data="+data+"&name="+name);
	}
	
	function update_cate(oSpan, id, data, source)
	{
		if(request.readyState == 4)
		{
			if(request.status == 200)
			{
				oSpan.innerHTML = request.responseText;
				oSpan.ondblclick = function(){editCate(oSpan, id, data, source)};
			}
		}
	}
}

function quoteMessage(id)
{
	var nickname = document.getElementById("nickname"+id);
	var message = document.getElementById("message"+id);
	var reply = document.getElementById("reply");
	if(navigator.appName.indexOf( "Internet Explorer" ) >= 0 )
	{
		var range = document.selection.createRange().text;
	}
	else
	{
		var range = document.getSelection().toString();
	}
	
	if(range)
	{
		reply.value += "<font color=\"#ffff00\">["+range+"]</font>";
	}
	else
	{
		reply.value += "<font color=\"#ffff00\">["+message.innerHTML+"]</font>";
		reply.focus();
	}
}