/**
 * @author WMC (tompear)
 * @require Mootools 1.2 (http://mootools.net)
 */
var wmc_apopup = new Class({
	timer1: null,
	timer2: null,
	options: {
		image: null,
		flash: null,
		w: null,
		h: null,
		opacity: 1,
		player: 8,
		target: null
	},

	initialize: function(options) {
		this.options = $extend(this.options, options || {});
		this.go();
	},

	go: function() {
		var obj = this;
		var banner = new Element('div').setStyles({
			'display': 'block',
			'position': 'absolute',
			'width': obj.options.w + 'px',
			'left': ((window.getWidth() - obj.options.w) / 2).toInt(),
			'top': ((window.getHeight() - obj.options.h) / 2).toInt(),
			'background': 'transparent',
			'z-index': 10002,
			'opacity': 0
		}).inject(document.body);
		var close = new Element('img', {
			'src': '/static/images/close_label.gif',
			'border': '0',
			'width': '18px',
			'height': '22px'
		}).setStyle('padding', '4px');
		var a = new Element('a', {
			'href': 'javascript:void(null)'
		}).addEvent('click', function(e) {
			e.stop();
			obj.timer = $clear(obj.timer);
			banner.destroy();
		});
		close.inject(a.inject(new Element('div').setStyle('text-align', 'right').inject(banner)));
		var extra_banner = new Element('div', {
			'id': 'extra-banner'
		}).inject(banner);
		if (obj.options.image) {
			new Element('img', {
				'src': obj.options.image,
				'alt': '',
				'border': 0
			}).inject(obj.options.target ?
				new Element('a', {
					'href': obj.options.target
				}).inject(extra_banner) : extra_banner
			);
		} else {
			swf = new SWFObject(obj.options.flash, obj.options.image, obj.options.w, obj.options.h, obj.options.player, '#ffffff');
			swf.addParam("wmode", "transparent");
			swf.write("extra-banner");
		}
//		var a = new Fx.Morph(banner, {duration: 2000});
//		a.start({
//			'opacity': [0, obj.options.opacity]
//		});
//		timer = a.start.delay(30000, a, {
//			'opacity': [obj.options.opacity, 0]
//		});
//		var fx = new Fx.Morph(banner, {duration: 1000, transition: Fx.Transitions.Back.easeOut});
		window.addEvent('scroll', function() {
			obj.timer2 = $clear(obj.timer2);
			fx.cancel();
			obj.timer2 = fx.start.delay(500, fx, {'top': [banner.getTop(), ((window.getHeight() - obj.options.h) / 2).toInt() + window.getScrollTop()]});
		});
	}
});
