var btn = {
	init : function() {
		if (!document.getElementById || !document.createElement || !document.appendChild) return false;
		as = btn.getElementsByClassName('btn(.*)');
		for (i=0; i<as.length; i++) {
			if ( as[i].tagName == "INPUT" && ( as[i].type.toLowerCase() == "submit" || as[i].type.toLowerCase() == "button" ) ) {
				var a1 = document.createElement("a");
				a1.appendChild(document.createTextNode(as[i].value));
				a1.className = as[i].className;
				a1.id = as[i].id;
				as[i] = as[i].parentNode.replaceChild(a1, as[i]);
				as[i] = a1;
				as[i].style.cursor = "pointer";
			}
			else if (as[i].tagName == "A") {
				var tt = as[i].childNodes;
			}
			else { return false };
			var i1 = document.createElement('i');
			var i2 = document.createElement('i');
			var s1 = document.createElement('span');
			var s2 = document.createElement('span');
			s1.appendChild(i1);
			s1.appendChild(s2);
			while (as[i].firstChild) {
			  s1.appendChild(as[i].firstChild);
			}
			as[i].appendChild(s1);
			as[i] = as[i].insertBefore(i2, s1);
		}
	},
	findForm : function(f) {
		while(f.tagName != "FORM") {
			f = f.parentNode;
		}
		return f;
	},
	getElementsByClassName : function(className, tag, elm) {
		var testClass = new RegExp("(^|\s)" + className + "(\s|$)");
		var tag = tag || "*";
		var elm = elm || document;
		var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
		var returnElements = [];
		var current;
		var length = elements.length;
		for(var i=0; i<length; i++){
			current = elements[i];
			if(testClass.test(current.className)){
				returnElements.push(current);
			}
		}
		return returnElements;
	}
}

function createXMLHttp() {
	if (typeof XMLHttpRequest != "undefined") {
		var oXmlHttp = new XMLHttpRequest();
		return oXmlHttp;
	} else 
		if (window.ActiveXObject) {
			var aVersions = [ "MSXML2.XMLHttp.5.0",
				"MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0",
				"MSXML2.XMLHttp","Microsoft.XMLHttp"
			];
			for (var i = 0; i < aVersions.length; i++) {
				try {
					var oXmlHttp = new ActiveXObject(aVersions[i]);
					return oXmlHttp;
				} catch (oError) {
					//Do nothing
				}
			}
		}
	throw new Error("XMLHttp object could be created.");
}
function CallAjax(url, type, obj, mode) {
	var oXmlHttp = createXMLHttp();
	oXmlHttp.open("get", url, mode);
	oXmlHttp.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
	oXmlHttp.onreadystatechange = function () {
  		if (oXmlHttp.readyState == 4) {
			var status = "";
			try {
 				status = oXmlHttp.status;
	   	 	}
			catch(e){
 				status = "Trouble accessing it";
			}
       		if (status == 200) {
				if (type == 1) {
					obj(oXmlHttp.responseText);
				}
				if (type == 2) {
					var o = window.document.getElementById(obj);
					o.value = trimAll(oXmlHttp.responseText);
					return true;
				}
				if (type == 3) {
					var o = window.document.getElementById(obj);
					o.innerHTML = trimAll(oXmlHttp.responseText);
					return true;
				}
			} else {
				//alert("An error occurred: " + oXmlHttp.statusText);
			}
   		}
	};
	oXmlHttp.send(null);
}

	function ChangeSort() {
		var obj = window.document.getElementById("order_by");
		AddToFilter("order_by", obj.options[obj.selectedIndex].value);
		Filter();
	}
	function JumpToRow(row) {
		var a = document.filter_form;
		a.start_row.value = row;
		ChangeSort();
	}
	function Filter() {
		var a = document.filter_form;
		a.submit();
	}
	function AddToFilter(field, value) {
		var a = document.filter_form;
		var newdiv = document.createElement("div");
        newdiv.innerHTML = "<input type='hidden' name='" + field + "' value='" + value + "'>";
        document.getElementById("formDiv").appendChild(newdiv);
	}
	function RemoveFilter(field, value) {
		var a = document.filter_form;
		for (i=0; i<a.length; i++) {
			if (a.elements[i].name == field) {
				if (a.elements[i].type == "hidden" || a.elements[i].type == "text") {
					var temp = new Array();
					for (j=0; j<a.elements[i].value.split(",").length; j ++)
						if (a.elements[i].value.split(",")[j] != value)
							temp[temp.length] = a.elements[i].value.split(",")[j];
					a.elements[i].value = temp;
				}
				if (a.elements[i].type == "select-one") {
					a.elements[i].selectedIndex = 0;
				}
			}
		}
		JumpToRow(0);
	}
	function ShowHideDiv(obj) {
		var obj1 = window.document.getElementById("div_more" + obj);
		var obj2 = window.document.getElementById("div_pages" + obj);
		
		if (obj1.style.display == "none") {
			obj1.style.display = "";
			// obj2.style.display = "none";
		}
		else { 
			obj1.style.display = "none";
			obj2.style.display = "";
		}
	}
