/**
*
* ad/exchange
*
* @copyright (c) 2009-2010 Quicknet Company
*
*/

if (xianAd === undefined) {
	var xianAd = (function () {
		var url = 'http://www.xianrenhui.com/ad/exchange.php';
		var min_ad_width = 290;
		var max_ad_width = 1920;
		var min_ad_height = 42;
		var max_ad_height = 1080;
		var busy = false;
		var adbox_list = [];
		var adbox = {};
		var delay = 500;
		var started = false;
		var ajax = (function () {
			var head;
			var element;
			var script;
			try {
				head = document.getElementsByTagName('head')[0];
			}
			catch (e) {
				return;
			}
			if ((! busy) && (adbox_list.length > 0)) {
				busy = true;
				adbox = adbox_list.shift();
				element = document.getElementById(adbox.id);
				if (element) {
					script = document.getElementById('xianad_script');
					if (script) {
						try {
							script.parentNode.removeChild(script);
						}
						catch (e) {
						}
						script = null;
					}
					script = document.createElement('script');
					script.id = 'xianad_script';
					script.type = 'text/javascript';
					script.src = '' + url + '?' + adbox.query;
					head.appendChild(script);
				} else {
					adbox_list.push(adbox);
					adbox = {};
					busy = false;
				}
			}
			setTimeout(ajax, delay);
		});
		var that = {};
		that.ad = (function (m_id, width, height) {
			document.write(that.ad_string(m_id, width, height));
		});
		that.ad_string = (function (m_id, width, height) {
			var id = 0;
			var o = {};
			var html = '';
			w = width;
			h = height;
			if (w < min_ad_width) {
				w = min_ad_width;
			}
			if (w > max_ad_width) {
				w = max_ad_width;
			}
			if (h < min_ad_height) {
				h = min_ad_height;
			}
			if (h > max_ad_height) {
				h = max_ad_height;
			}
			id = Math.floor(Math.random() * 1000000);
			o.id = 'xianAd' + id;
			o.query = 'm_id=' + m_id + '&w=' + (w - 2) + '&h=' + (h - 2) + '&z=' + id;
			adbox_list.push(o);
			html += '<div style="';
			html += 'text-align: center; ';
			html += 'display: block; ';
			html += 'overflow: hidden; ';
			html += 'margin: 0px; ';
			html += 'border: none; ';
			html += 'padding: 0px;';
			html += '">';
			html += '<div style="';
			html += 'width: ' + w + 'px; ';
			html += 'height: ' + h + 'px; ';
			html += 'display: block; ';
			html += 'overflow: hidden; ';
			html += 'margin: auto; ';
			html += 'border: none; ';
			html += 'padding: 0px;';
			html += '">';
			html += '<div id="' + o.id + '" ';
			html += 'style="';
			html += 'position: relative; ';
			html += 'top: 0px; ';
			html += 'left: 0px; ';
			html += 'width: ' + (w - 2) + 'px; ';
			html += 'height: ' + (h - 2) + 'px; ';
			html += 'display: block; ';
			html += 'overflow: hidden; ';
			html += 'margin: 0px; ';
			html += 'border: solid 1px #CCCCCC; ';
			html += 'padding: 0px;';
			html += '"';
			html += '>';
			html += '</div>';
			html += '</div>';
			html += '</div>';
			if (! started) {
				started = true;
				ajax();
			}
			return html;
		});
		that.callback = (function (responseText) {
			try {
				document.getElementById(adbox.id).innerHTML = responseText;
			}
			catch (e) {
			}
			adbox = {};
			busy = false;
		});
		return that;
	})();
}
