var ZYKJ = {
    is_ie: (navigator.appName == "Microsoft Internet Explorer"),
    extend: function(a, b) {
		for (var m in b) {	a[m] = b[m]}
		  return a;
    },
	h: function() {
		var b = null;
		if (window.ActiveXObject) {
			b = new ActiveXObject("Microsoft.XMLHTTP")
		} else {
			if (window.XMLHttpRequest) {
				b = new XMLHttpRequest();
				if (b.overrideMimeType) {
					b.overrideMimeType("text/xml")
				}
			}
		}
		return b;
	},	
	r: function() {
		return Math.random().toString().substr(2);
    },	
	Ajax: function(options) {
		var settings = {
			asc: true,
			url: "",
			dataType: "text",
			method: "get",
			data: "",
			succeed: function(a, b, c) {
				return true
			},
			error: function(a, b, c) {
				return true
			}
		};
		if (options) {
			this.extend(settings, options)
		}
		var s = settings;
		var a = this.h();
		var u = s.url;
		var b = u.indexOf("?") == -1 ? false: true;
		u = b ? u + "&aienrnd=" + this.r() : u + "?aienrnd=" + this.r();
		if (s.method.toLowerCase() == "get") {
			u = s.data == "" ? u: u + "&" + s.data
		}
		var d = null;
		if (s.method.toLowerCase() == "post") {
			d = s.data
		}
		a.open(s.method, u, s.asc);
		if (s.method.toLowerCase() == "post") {
			a.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
		}
		a.onreadystatechange = function() {
			if (a.readyState == 4) {
				if (a.status == 200) {
					var t = s.dataType.toLowerCase();
					if (t == "text") {
						s.succeed(a.responseText, a, s)
					}
					if (t == "xml") {
						s.succeed(a.responseXML, a, s)
					}
					if (t == "json") {
						eval("j=" + a.responseText);
						s.succeed(j, a, s)
					}
				} else {
					s.error(a.status, a, s)
				}
			}
		};
		a.send(d);
		if (!this.is_ie) {
			if (a.readyState == 4) {
				if (a.status == 200) {
					var t = s.dataType.toLowerCase();
					if (t == "text") {
						s.succeed(a.responseText, a, s)
					}
					if (t == "xml") {
						s.succeed(a.responseXML, a, s)
					}
					if (t == "json") {
						eval("j=" + a.responseText);
						s.succeed(j, a, s)
					}
				} else {
					s.error(a.status, a, s)
				}
			}
		}
	}

};
ZYKJ.event = {
    add : function(el, event, listener) {
		if (el.addEventListener){
			//if (event=="keyup") event="input";
			el.addEventListener(event, listener, false);
		} else if (el.attachEvent){
			el.attachEvent('on' + event, listener);
		}
    },
    remove : function(el, event, listener) {
		if (el.removeEventListener){
			el.removeEventListener(event, listener, false);
		} else if (el.detachEvent){
			el.detachEvent('on' + event, listener);
		}
    }
};
ZYKJ.$ = function(id, doc){
    var doc = doc || document;
    return doc.getElementById(id);
};
