function Inint_AJAX () {
	try { return new ActiveXObject("Msxml2.XMLHTTP");	} catch(e) {} //IE
	try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {} //IE
	try { return new XMLHttpRequest(); } catch(e) {} //Native Javascript
	alert("XMLHttpRequest not supported")
	return null
}

function removefaverite (id) {
	var req = Inint_AJAX()
	req.onreadystatechange = function () { 
		if (req.readyState == 4) {
			if (req.status == 200) {
				var newweb = document.getElementById('newweb')
				newweb.innerHTML = req.responseText
				newweb.style.height = "100%"
			} 
		} 
	}
	req.open("GET", "faverite.php?id=" + id + "&action=delete&" + new Date().getTime() + Math.random(), true)
	req.send(null)

	return false;
}

//ฟังก์ชั่น เพิ่มลงในรายการโปรด
function addfaverite (id) {
	var req = Inint_AJAX()
	req.onreadystatechange = function () { 
		if (req.readyState == 4) {
			if (req.status == 200) {
				alert(req.responseText)
			} 
		} 
	}
	req.open("GET", "faverite.php?id=" + id + "&" + new Date().getTime() + Math.random(), true)
	req.send(null)

	return false;
}

//ฟังก์ชั่น เมื่อมีการคลิกเพื่อปิดเพจ ไปเพิ่มรายการคนเยี่ยมชม
function dovisited (id) {
	var visited = document.getElementById('visited' + id)
	var req = Inint_AJAX()
	req.onreadystatechange = function () { 
		if (req.readyState == 4) {
			if (req.status == 200) {
				if (visited) visited.innerHTML = req.responseText
			} 
		} 
	}
	req.open("GET", "updatevisited.php?id=" + id + "&" + new Date().getTime() + Math.random(), true)
	req.send(null)
}

//ฟังก์ชั่น เมื่อคลิกปุ่มค้นหา
function dosearch (search) {
	if (search.value == "") {
		alert("กรุณากรอกข้อความค้นหา")
		search.focus()
	} else {
		show(encodeURIComponent(search.value), 1, 1)
	}
	return false
}

//ฟังก์ชั่นหลัก สำหรับการแสดงรายการที่เลือก ในหน้าต่างๆ
function show(search, page, category) {
	var content = document.getElementById('content')
	content.style.backgroundImage = "url(img/wait.gif)"
	var req = Inint_AJAX()
	req.onreadystatechange = function () { 
		if (req.readyState == 4) {
			if (req.status == 200) {
				content.style.backgroundImage = "url()"
				var ret = req.responseText
				if (search != "") {
					search = decodeURIComponent(search)
					var searchArray = search.split(" ")
					for (var i = 0; i < searchArray.length; i++) {
						if (searchArray[i]) ret = doHighlight(ret, searchArray[i])
					}
				}
				content.innerHTML = ret
				//แสดง ลิงค์ล่าสุด
				if ((category == "") || (parseInt(category) == 0)) selecttab('newlink')
			} 
		} 
	}
	var data = "search=" + search + "&page=" + page + "&category=" + category
	req.open("GET", "webdir.php?" + data + "&" + new Date().getTime() + Math.random(), true)
	req.send(null)
	
	return false
}

//ฟังก์ชั่น เมื่อมีการกดปุ่มแก้ไขรายการเว็บเพจ
function editmodule(id, page) {
	var content = document.getElementById('content')
	content.style.backgroundImage	= "url(img/wait.gif)"
	var req = Inint_AJAX()
	req.onreadystatechange = function () { 
		if (req.readyState == 4) {
			if (req.status == 200) {
				content.style.backgroundImage	= "url()"
				content.innerHTML = req.responseText
			} 
		} 
	}
	req.open("GET", "login.php?action=edit&id=" + id + "&page=" + page + "&" + new Date().getTime() + Math.random(), true)
	req.send(null)
	
	return false
}

//ฟังก์ชั่น เมื่อมีการกดปุ่มลบรายการ เว็บเพจ ให้ไปเรียกหน้า login เพื่อตรวจสอบคนลงทะเบียนเว็บ
function delmodule(id, page, category) {
	if (confirm("คุณแน่ใจ? ที่จะลบรายการนี้")) {
		var content = document.getElementById('content')
		content.style.backgroundImage	= "url(img/wait.gif)"
		var req = Inint_AJAX()
		req.onreadystatechange = function () { 
			if (req.readyState == 4) {
				if (req.status == 200) {
					content.style.backgroundImage	= "url()"
					content.innerHTML = req.responseText
				} 
			} 
		}
		req.open("GET", "login.php?action=delete&page=" + page + "&category=" + category + "&id=" + id + "&" + new Date().getTime() + Math.random(), true)
		req.send(null)
	}
	return false
}

//ฟังก์ชั่น เมื่อมีการเพิ่มข้อมูลใหม่เรียบร้อย
function uploadok(ret, page, category) {
	if (ret == -2) {
		show('', page, category)
		alert("ไม่สามารถแก้ไขเว็บไซต์ได้ คุณต้องเป็นผู้เพิ่มเว็บไซต์เท่านั้น");
	} else if (ret == -1) { //URL exists
		alert("มีเว็บไซต์นี้อยู่แล้ว กรุณาเปลี่ยนเป็นเว็บไซต์อื่น")
		document.frmadd.url.focus()
	} else if (ret == 0) { //Add
		show('', '1', category)
		alert("ขอบคุณที่เพิ่มเว็บไซต์กับเรา\nรูปเว็บไซต์จะถูกเพิ่มเข้ามาให้วันหลัง")
	} else if (ret == 1) { //Edit
		show('', page, category)
		alert("แก้ไขข้อมูลเรียบร้อย")
	}
}

//ฟังก์ชั่น ตรวจสอบการ login ของ Admin
function checklogin(frm) {
	var v1 = frm.user
	var v2 = frm.password
	if (v1.value.length = 0) {
		alert("กรุณากรอก ชื่อ")
		v1.focus()
	} else if (v2.value.length = 0) {
		alert("กรุณากรอก รหัสผ่าน")
		v2.focus()
	} else {
		var data = getRequest(frm)
		var req = Inint_AJAX()
		req.onreadystatechange = function () { 
			if (req.readyState == 4) {
				if (req.status == 200) {
					var ret = req.responseText
					var id = parseInt(ret)
					if (id > 0) {
						if (frm.action.value == "delete") {
							show('', frm.page.value, frm.category.value)
							alert("ลบรายการที่ " + id + " เรียบร้อย")
						} else postmodule(id, frm.page.value)
					} else {
						var content = document.getElementById('content')
						content.innerHTML = req.responseText
					}
				} 
			} 
		}
		req.open("GET", "login.php?" + data + "&" + new Date().getTime() + Math.random(), true)
		req.send(null)

	}
	return false
}

//ฟังก์ชั่น เมื่อมีการเพิ่มข้อมูลใหม่
function postmodule(id, page) {
	var content = document.getElementById('content')
	content.style.backgroundImage	= "url(img/wait.gif)"
	var req = Inint_AJAX()
	req.onreadystatechange = function () { 
		if (req.readyState == 4) {
			if (req.status == 200) {
				content.style.backgroundImage	= "url()"
				content.innerHTML = req.responseText
			} 
		} 
	}
	req.open("GET", "addweb.php?id=" + id + "&page=" + page + "&" + new Date().getTime() + Math.random(), true)
	req.send(null)
	
	return false
}

//ฟังก์ชั่น ตรวจสอบการกรอกข้อมูล
function submiturl(frm) {
	var v2 = frm.title
	var v4 = frm.user
	var v5 = frm.password
	
	if (v2.value.length < 5) {
		alert("ควรใส่	Title อย่างน้อย 5 ตัวอักษร")
		v2.focus()
		return false
	} else if (v4.value.length < 4) {
		alert("User ควรมีความยาวไม่น้อยกว่า 4 ตัวอักษร")
		v4.focus()
		return false
	} else if (v5.value.length < 4) {
		alert("Password ควรมีความยาวไม่น้อยกว่า 4 ตัวอักษร")
		v5.focus()
		return false
	} else
		return true
}

//ฟังก์ชั่น เข้ารหัสฟอร์มก่อนส่ง
function getRequest(frm) {
	var params = new Array()
	for (i = 0; i < frm.elements.length; i++) {
		var name = encodeURIComponent(frm.elements[i].name)
		var value = encodeURIComponent(frm.elements[i].value)
		params.push(name + "=" + value)
	}
	return params.join("&")
}

//ฟังก์ชั่น อ่าน title description และตรวจสอบเว็บ
function checkurl(frm) {
	var url = encodeURIComponent(frm.url.value)
	var wait2 = document.getElementById('wait2')
	wait2.style.backgroundImage	= "url(img/wait2.gif)"
	var req = Inint_AJAX()
	req.onreadystatechange = function () { 
		if (req.readyState == 4) {
			wait2.style.backgroundImage	= "url()"
			if (req.status == 200) {
				var ret = req.responseText
				if (ret == '-1') {
					alert("ไม่สามารถเข้าถึงเว็บไซต์ที่ระบุได้\nกรุณาตรวจสอบ URL ให้ถูกต้อง")
					frm.url.focus()
				} else {
					var datas = eval('(' + ret + ')')
					frm.title.value=datas[0].title
					frm.description.innerHTML=datas[0].description
				}
			} else alert("ข้อผิดพลาด : " + req.status + "\nกรุณากรอกข้อมูลต่างๆด้วยตัวเอง.")
		}
	}
	req.open("GET", "chkurl.php?url=" + url + "&" + new Date().getTime() + Math.random(), true)
	req.send(null)
}

//ฟังก์ชั่น ทำไฮไลท์ข้อความด้วย Javascript
function doHighlight (bodyText, searchTerm) {
	//tag highlight
	highlightStartTag = "<font class=\"search\">";
	highlightEndTag = "</font>";

	var newText = "";
	var i = -1;
	//แปลงคำค้นหา เป็นตัวพิมพ์เล็กทั้งหมด
	var lcSearchTerm = searchTerm.toLowerCase();
	var lcBodyText = bodyText.toLowerCase();
		
	while (bodyText.length > 0) {
		i = lcBodyText.indexOf(lcSearchTerm, i + 1);
		if (i < 0) {
			newText += bodyText;
			bodyText = "";
		} else {
			//ข้าม HTML tag
			if (bodyText.lastIndexOf(">", i) >= bodyText.lastIndexOf("<", i)) {
				//ข้าม Javascript
				if (lcBodyText.lastIndexOf("/script>", i) >= lcBodyText.lastIndexOf("<script", i)) {
					//highlight ข้อความ
					newText += bodyText.substring(0, i) + highlightStartTag + bodyText.substr(i, searchTerm.length) + highlightEndTag;
					//ข้อความถัดไป สำหรับการค้นหา
					bodyText = bodyText.substr(i + searchTerm.length);
					lcBodyText = bodyText.toLowerCase();
					i = -1;
				}
			}
		}
	}
	
	return newText;
}

//ฟังก์ชั่นสำหรับการเลือก tab menu
function selecttab(id) {
	var newwebwait = document.getElementById('newwebwait')
	newwebwait.style.backgroundImage = "url(img/wait2.gif)"
	var req = Inint_AJAX()
	req.onreadystatechange = function () { 
		if (req.readyState == 4) {
			if (req.status == 200) {
				updatetab(id)
				newwebwait.style.backgroundImage = "url()"
				var newweb = document.getElementById('newweb')
				newweb.innerHTML = req.responseText
				newweb.style.height = "100%"
			} 
		} 
	}
	req.open("GET", id + ".php?" + new Date().getTime() + Math.random(), true)
	req.send(null)
}

//ฟังก์ชั่น สำหรับการอัปเดท Tab ต่างๆ
function updatetab(id){
	var linkobj = document.getElementById(id)
	var ul = linkobj.parentNode.parentNode //UL element เจ้าของ tab
	var ullist = ul.getElementsByTagName("a") //อ่านลิงค์ทั้งหมดใน tab
	for (var i = 0; i < ullist.length; i++){
		ullist[i].className = ""  //ยกเลิกการเลือก
	}
	linkobj.className = "current"  //เลือก tab ที่กำหนด
}