var paperAD = {
	_cache: [],
	_id: "chyp_paperad",
	init: function () {
		if (paperAD._init) return;
		$('body').append(
			'<span id="' + paperAD._id + '" style="position:absolute; top:0px; left:0px; overflow:hidden; display:-moz-inline-box; display:inline-block; border:2px solid #FFCC34; background:transparent url(../images/yp_data_icon_4.png) 1px 1px no-repeat; font-size:12px; padding:10px; background-color:white;">' +
				'<div>請稍候<img src="/images/dotting.gif"></div>' +
				'<div>下載失敗!</div>' +
				'<img />' +
			'</span>'
		);
		paperAD._init = true;
		paperAD._box = $('#' + paperAD._id);
		paperAD._box.hide();
		paperAD._txt = paperAD._box.children(":eq(0)");
		paperAD._msg = paperAD._box.children(":eq(1)");
		paperAD._img = paperAD._box.children(":eq(2)");
		paperAD._img.bind("load", function(e) {
			paperAD._box.css("left", parseInt(paperAD._box.css("left")) + 100);
			paperAD._box.css("left", parseInt(paperAD._box.css("left")) - $(this).width());
			paperAD._load = false;
			paperAD._txt.hide();
			$(this).show();
			paperAD._box.animate({width: $(this).attr("width"), height: $(this).attr("height")}, 400);
		});
		paperAD._img.bind("error", function(e) {
			paperAD._load = false;
			paperAD._txt.hide();
			paperAD._msg.show();
		});
		paperAD._box.bind("click", function(e) {
			$(this).hide(400);
		});
	},
	set: function (_elem, _url) {
		paperAD.init();
		var pos = $(_elem).offset();
		var dch = $(document.documentElement).innerHeight();
		var dcw = $(document.documentElement).innerWidth();
		var dst = $(document).scrollTop();
		var dsl = $(document).scrollLeft();
		paperAD._img.hide();
		paperAD._msg.hide();
		paperAD._txt.show();
		paperAD._load = true;
		paperAD.loading();
		paperAD._box.show();
//		paperAD._box.css("left", (pos.left - dsl + 100) > dcw ? dcw - 100 + dsl : pos.left);
//		paperAD._box.css("top", (pos.top - dst + 100) > dch ? dch - 100 + dst : pos.top);
		paperAD._box.css("left", pos.left - 100);
		paperAD._box.css("top", pos.top);
		paperAD._box.css("width", 100);
		paperAD._box.css("height", 100);
		if (paperAD._cache[_url]) {
			paperAD._img.attr("title", paperAD._cache[_url].com_cht_name);
			paperAD._img.attr("src", paperAD._cache[_url].paperad_url);
		}
		else {
			$.getJSON(_url + "&callback=?", function (data) {
				paperAD._img.attr("title", data.com_cht_name);
				paperAD._img.attr("src", data.paperad_url);
				paperAD._cache[_url] = data;
			});
		}
		if (window.event) event.returnValue = false;
	},
	loading: function () {
//		if (!paperAD._load) return;
//		paperAD._txt.animate({opacity: "toggle"}, 400, function() {
//			paperAD.loading();
//		});
	}
};