﻿/* Simple AJAX Code-Kit (SACK) v1.6.1 */
/* ｩ2005 Gregory Wild-Smith */
/* www.twilightuniverse.com */
/* Software licenced under a modified X11 licence,
   see documentation or authors website for more details */

function sack(file) {
	this.xmlhttp = null;

	this.resetData = function() {
		this.method = "POST";
  		this.queryStringSeparator = "?";
		this.argumentSeparator = "&";
		this.URLString = "";
		this.encodeURIString = true;
  		this.execute = false;
  		this.element = null;
		this.elementObj = null;
		this.requestFile = file;
		this.vars = new Object();
		this.responseStatus = new Array(2);
  	};

	this.resetFunctions = function() {
  		this.onLoading = function() { };
  		this.onLoaded = function() { };
  		this.onInteractive = function() { };
  		this.onCompletion = function() { };
  		this.onError = function() { };
		this.onFail = function() { };
	};

	this.reset = function() {
		this.resetFunctions();
		this.resetData();
	};

	this.createAJAX = function() {
		try {
			this.xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e1) {
			try {
				this.xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e2) {
				this.xmlhttp = null;
			}
		}

		if (! this.xmlhttp) {
			if (typeof XMLHttpRequest != "undefined") {
				this.xmlhttp = new XMLHttpRequest();
			} else {
				this.failed = true;
			}
		}
	};

	this.setVar = function(name, value){
		this.vars[name] = Array(value, false);
	};

	this.encVar = function(name, value, returnvars) {
		if (true == returnvars) {
			return Array(encodeURIComponent(name), encodeURIComponent(value));
		} else {
			this.vars[encodeURIComponent(name)] = Array(encodeURIComponent(value), true);
		}
	}

	this.processURLString = function(string, encode) {
		encoded = encodeURIComponent(this.argumentSeparator);
		regexp = new RegExp(this.argumentSeparator + "|" + encoded);
		varArray = string.split(regexp);
		for (i = 0; i < varArray.length; i++){
			urlVars = varArray[i].split("=");
			if (true == encode){
				this.encVar(urlVars[0], urlVars[1]);
			} else {
				this.setVar(urlVars[0], urlVars[1]);
			}
		}
	}

	this.createURLString = function(urlstring) {
		if (this.encodeURIString && this.URLString.length) {
			this.processURLString(this.URLString, true);
		}

		if (urlstring) {
			if (this.URLString.length) {
				this.URLString += this.argumentSeparator + urlstring;
			} else {
				this.URLString = urlstring;
			}
		}

		// prevents caching of URLString
		this.setVar("rndval", new Date().getTime());

		urlstringtemp = new Array();
		for (key in this.vars) {
			if (false == this.vars[key][1] && true == this.encodeURIString) {
				encoded = this.encVar(key, this.vars[key][0], true);
				delete this.vars[key];
				this.vars[encoded[0]] = Array(encoded[1], true);
				key = encoded[0];
			}

			urlstringtemp[urlstringtemp.length] = key + "=" + this.vars[key][0];
		}
		if (urlstring){
			this.URLString += this.argumentSeparator + urlstringtemp.join(this.argumentSeparator);
		} else {
			this.URLString += urlstringtemp.join(this.argumentSeparator);
		}
	}

	this.runResponse = function() {
		eval(this.response);
	}

	this.runAJAX = function(urlstring) {
		if (this.failed) {
			this.onFail();
		} else {
			this.createURLString(urlstring);
			if (this.element) {
				this.elementObj = document.getElementById(this.element);
			}
			if (this.xmlhttp) {
				var self = this;
				if (this.method == "GET") {
					totalurlstring = this.requestFile + this.queryStringSeparator + this.URLString;
					this.xmlhttp.open(this.method, totalurlstring, true);
				} else {
					this.xmlhttp.open(this.method, this.requestFile, true);
					try {
						this.xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
					} catch (e) { }
				}

				this.xmlhttp.onreadystatechange = function() {
					switch (self.xmlhttp.readyState) {
						case 1:
							self.onLoading();
							break;
						case 2:
							self.onLoaded();
							break;
						case 3:
							self.onInteractive();
							break;
						case 4:
							self.response = self.xmlhttp.responseText;
							self.responseXML = self.xmlhttp.responseXML;
							self.responseStatus[0] = self.xmlhttp.status;
							self.responseStatus[1] = self.xmlhttp.statusText;

							if (self.execute) {
								self.runResponse();
							}

							if (self.elementObj) {
								elemNodeName = self.elementObj.nodeName;
								elemNodeName.toLowerCase();
								if (elemNodeName == "input"
								|| elemNodeName == "select"
								|| elemNodeName == "option"
								|| elemNodeName == "textarea") {
									self.elementObj.value = self.response;
								} else {
									self.elementObj.innerHTML = self.response;
								}
							}
							if (self.responseStatus[0] == "200") {
								self.onCompletion();
							} else {
								self.onError();
							}

							self.URLString = "";
							break;
					}
				};

				this.xmlhttp.send(this.URLString);
			}
		}
	};

	this.reset();
	this.createAJAX();
}
var ajax;
var quanhuyen = Array();
/*
quanhuyen[0] = new Option('Quận huyện','0');
quanhuyen[1] = Array();
quanhuyen[1][0] = new Option('Quận huyện','0');
quanhuyen[1][1] = new Option('Từ liêm','101');
quanhuyen[1][2] = new Option('Thanh trì','102');
quanhuyen[1][3] = new Option('Sóc sơn','103');
quanhuyen[1][4] = new Option('Gia lâm','104');
quanhuyen[1][5] = new Option('Đông oanh','105');
quanhuyen[1][6] = new Option('Long biên','106');
quanhuyen[1][7] = new Option('Hoảng mai','107');
quanhuyen[1][8] = new Option('Cầu giấy','108');
quanhuyen[1][9] = new Option('Tây hồ','109');
quanhuyen[1][10] = new Option('Thanh xuân','110');
quanhuyen[1][11] = new Option('Hai bà trưng','111');
quanhuyen[1][12] = new Option('Đông đa','112');
quanhuyen[1][13] = new Option('Ba đình','113');
quanhuyen[1][14] = new Option('Hoàn kiếm','114');
quanhuyen[1][15] = new Option('Văn điển','115');
quanhuyen[2] = Array();
quanhuyen[2][0] = new Option('Quận huyện','0');
quanhuyen[2][1] = new Option('Quận 1','201');
quanhuyen[2][2] = new Option('Quận 2','202');
quanhuyen[2][3] = new Option('Quận 3','203');
quanhuyen[2][4] = new Option('Quận 4','204');
quanhuyen[2][5] = new Option('Quận 5','205');
quanhuyen[2][6] = new Option('Quận 6','206');
quanhuyen[2][7] = new Option('Quận 7','207');
quanhuyen[2][8] = new Option('Quận 8','208');
quanhuyen[2][9] = new Option('Quận 9','209');
quanhuyen[2][10] = new Option('Quận 10','210');
quanhuyen[2][11] = new Option('Phú nhuận','211');
quanhuyen[2][12] = new Option('Bình thạch','212');
quanhuyen[2][13] = new Option('Tân phú','213');
quanhuyen[2][14] = new Option('Tân bình','214');
quanhuyen[2][15] = new Option('Gò vấp','215');
quanhuyen[2][16] = new Option('Thủ đức','216');
quanhuyen[2][17] = new Option('Bình tân','217');
quanhuyen[2][18] = new Option('Bình chánh','218');
quanhuyen[2][19] = new Option('Củ chi','219');
quanhuyen[2][20] = new Option('Hóc môn','220');
quanhuyen[2][21] = new Option('Nhà bè','221');
quanhuyen[2][22] = new Option('Cần giờ','222');
*/
quanhuyen[0] = new Option('Quận huyện','0');
quanhuyen[1] = Array();
quanhuyen[1][0] = new Option('Quận huyện','0');
quanhuyen[1][1] = new Option('Từ liêm','101');
quanhuyen[1][2] = new Option('Thanh trì','102');
quanhuyen[1][3] = new Option('Sóc sơn','103');
quanhuyen[1][4] = new Option('Gia lâm','104');
quanhuyen[1][5] = new Option('Đông oanh','105');
quanhuyen[1][6] = new Option('Long biên','106');
quanhuyen[1][7] = new Option('Hoảng mai','107');
quanhuyen[1][8] = new Option('Cầu giấy','108');
quanhuyen[1][9] = new Option('Tây hồ','109');
quanhuyen[1][10] = new Option('Thanh xuân','110');
quanhuyen[1][11] = new Option('Hai bà trưng','111');
quanhuyen[1][12] = new Option('Đông đa','112');
quanhuyen[1][13] = new Option('Ba đình','113');
quanhuyen[1][14] = new Option('Hoàn kiếm','114');
quanhuyen[1][15] = new Option('Văn điển','115');
quanhuyen[2] = Array();
quanhuyen[2][0] = new Option('Quận huyện','0');
quanhuyen[2][1] = new Option('Quận 1','201');
quanhuyen[2][2] = new Option('Quận 2','202');
quanhuyen[2][3] = new Option('Quận 3','203');
quanhuyen[2][4] = new Option('Quận 4','204');
quanhuyen[2][5] = new Option('Quận 5','205');
quanhuyen[2][6] = new Option('Quận 6','206');
quanhuyen[2][7] = new Option('Quận 7','207');
quanhuyen[2][8] = new Option('Quận 8','208');
quanhuyen[2][9] = new Option('Quận 9','209');
quanhuyen[2][10] = new Option('Quận 10','210');
quanhuyen[2][11] = new Option('Phú nhuận','211');
quanhuyen[2][12] = new Option('Bình thạch','212');
quanhuyen[2][13] = new Option('Tân phú','213');
quanhuyen[2][14] = new Option('Tân bình','214');
quanhuyen[2][15] = new Option('Gò vấp','215');
quanhuyen[2][16] = new Option('Thủ đức','216');
quanhuyen[2][17] = new Option('Bình tân','217');
quanhuyen[2][18] = new Option('Bình chánh','218');
quanhuyen[2][19] = new Option('Củ chi','219');
quanhuyen[2][20] = new Option('Hóc môn','220');
quanhuyen[2][21] = new Option('Nhà bè','221');
quanhuyen[2][22] = new Option('Cần giờ','222');


function loadQuanHuyen()
{
	var value = document.getElementById('ad_city').value;
	var qh = document.getElementById('ad_quanhuyen');
	qh.innerHTML = "";
		
	if (value == 1 || value == 2)
	{
		for (i=0;i<quanhuyen[value].length;i++)
		{
			var option = document.createElement("option");
			option.value = quanhuyen[value][i][0];
			option.innerHTML = quanhuyen[value][i][1];
			qh.appendChild(option);
		}
	}
	else
	{
		//qh.appendChild(quanhuyen[0]);
	}	
}
function changePrice(price)
{
	var t = document.getElementById('ad_price');
	if (price == 3)
	{
		t.value = "";
		t.disabled = true;			
	}
	else
	{
		t.disabled = false;
	}
}

function showPrice(price,type,hinhthucrao)
{
	price = price.toString();
	var t  = document.getElementById('gia_bat_san');
	var info;
	var tmpArr = new Array();
	var j=0;
	while (price.length > 3)
	{
		tmpArr[j] = price.substr(price.length-3,3);
		price = price.substr(0,price.length - 3);
		j++;
	}
	info = price;
	var i = j -1;
	while (i >= 0)
	{
		info = info+","+tmpArr[i];
		i -- ;
	}
	switch (type)
	{
		case 1:
			info = info + "<br/>Lượng";
			break;
		case 2:
			info = info + "<br/>USD";
			break;
		case 3:
			info = info + "<br/>VND";
			break;
	}	 
	if (hinhthucrao == 1)
	{
		info = info + "/m2";
	}
	if (hinhthucrao == 2)
	{
		info = info + "/tháng";
	}
	t.innerHTML = info;
}
function loadContentEx(divId, url)
{
	var value = document.getElementById('ad_city').value;
	var qh = document.getElementById('ad_quanhuyen');
	qh.innerHTML = "";
		
	if (value == 1 || value == 2)
	{
		for (i=0;i<quanhuyen[value].length;i++)
		{
			var option = document.createElement("option");
			option.value = quanhuyen[value][i][0];
			option.innerHTML = quanhuyen[value][i][1];
			qh.appendChild(option);
		}
	}
	else
	{
		//qh.appendChild(quanhuyen[0]);
	}	

	if (url != '')
		loadContent(divId, url);
}
function loadNav(divId,url,nav)
{
    url += url.indexOf('?')!=-1?'&':'?';
    url += makePOSTRequest('content_form');
	url += nav;
	
	ajax = new sack();
    
	ajax.requestFile = url;
	ajax.onCompletion = function()
	{
		var txt=ajax.response;	
		var startIndex = txt.search("<!-- NOIDUNGTIN START-->")+"<!-- NOIDUNGTIN START-->".length;
		var endIndex = txt.search("<!-- NOIDUNGTIN END-->");
		var t = txt.slice(startIndex,endIndex);
		var r=new RegExp(/{alert\s*.*?}/i);
		var obj=txt.match(r);
		var table = document.getElementById(divId);
		if (startIndex == -1 || endIndex == -1)
		{
			t = "Kh&#xF4;ng c&#xF3; tin n&#xE0;o";
		}
		table.innerHTML =  t.replace(r,'');		
			
	};
	ajax.onLoading = function()
	{
 		//var btnOK = eval('document.adminForm.btnOK');
 		//if(btnOK)btnOK.disabled = true;
 		if(document.getElementById('status_message'))
		{
 			document.getElementById('status_message').innerHTML = "<img src='../components/com_autovm/js/tabs/images/indicator.gif' />";
 		}
 		else 
			document.getElementById(divId).innerHTML = "Loading... Please wait..";
 	};
	ajax.runAJAX();

}
function loadContent(divId, url)
{

    ajax = new sack();
    url += url.indexOf('?')!=-1?'&':'?';
    url += makePOSTRequest('content_form');

	ajax.requestFile = url;
	ajax.onCompletion = function()
	{
		var txt=ajax.response;	
		var startIndex = txt.search("<!-- NOIDUNGTIN START-->")+"<!-- NOIDUNGTIN START-->".length;
		var endIndex = txt.search("<!-- NOIDUNGTIN END-->");
		var t = txt.slice(startIndex,endIndex);
		var r=new RegExp(/{alert\s*.*?}/i);
		var obj=txt.match(r);
		var table = document.getElementById(divId);
		if (startIndex == -1 || endIndex == -1)
		{
			t = "Kh&#xF4;ng c&#xF3; tin n&#xE0;o";
		}
		table.innerHTML =  t.replace(r,'');		
			
	};
	ajax.onLoading = function()
	{
 		//var btnOK = eval('document.adminForm.btnOK');
 		//if(btnOK)btnOK.disabled = true;
 		if(document.getElementById('status_message'))
		{
 			document.getElementById('status_message').innerHTML = "<img src='../components/com_autovm/js/tabs/images/indicator.gif' />";
 		}
 		else 
			document.getElementById(divId).innerHTML = "<div align='center'>Xin vui lòng đợi trong giây lát<br/><img src='images/ajax-loader.gif' /></div>";
 	};
	ajax.runAJAX();

}
function loadQuanHuyen()
{
    var thanhpho = document.getElementById('thanhpho');
    return;
}
function makePOSTRequest(form_name, except)
{
	var form = eval('document.'+form_name);
	var items=form.getElementsByTagName('input');
	var getstr = '';
	loop:
		for (i=0; i<items.length; i++) 
		{
			for(except_type in except)
			{
				if (items[i].type == except[except_type])continue loop;
			}
			if (items[i].type == "text") 
			{
				getstr += items[i].name + "=" +encodeURI(items[i].value) + "&";
			}
			else if (items[i].type == "checkbox") 
			{
				if (items[i].checked) 
				{
					getstr += items[i].name + "=" + encodeURI(items[i].value) + "&";
				} else {
					getstr += items[i].name + "=&";
				}
		}
		else if (items[i].type == "radio") 
		{
			if (items[i].checked) {
				getstr += items[i].name + "=" + encodeURI(items[i].value) + "&";
			}
		}
		else if (items[i].type == "hidden") {
			getstr += items[i].name + "=" + encodeURI(items[i].value) + "&";
		}
	}
	delete items;
	items=form.getElementsByTagName('select');
	for (i=0;i<items.length;i++)
	{

		var sel = items[i];
		if (sel.selectedIndex != 0)
		{
			var index = sel.selectedIndex;			
			getstr += sel.name + "=" + encodeURI(sel.options[index].value) + "&";	
		}
		else
		{
			getstr += sel.name + "=" + "&";	
		}
	}
	delete items;
	items=form.getElementsByTagName('textarea');
	for (i=0; i<items.length; i++) 
	{
		getstr += items[i].name + "=" + encodeURI(items[i].value) + "&";
	}
	delete items;
	return getstr;
}

function submitForm()
{
	var page = document.getElementById('page_submit').getAttribute('page');
	document.forms[page].submit();
}
function nav(value,content,p)
{
	document.getElementById("catid").value=value ; 
	loadContent("noidung_tin",content);
	tabs=document.getElementById('ads_navigation').getElementsByTagName("a") //Get all tab links within container
	for (var i=0; i<tabs.length; i++)
	{ 
		tabs[i].className= "navigation_";
	}	
	p.className="navigation_selected" ;
}
