/**
 * @version  1.00
 * @updated  2008/02/01
 */



Banners = {
	init: function () {
		this.data = {};
		this.xml();
	},
	
	
	
	xml: function () {
		var url = document.URL;
		
		
		if      (url.indexOf('web')     != -1) { var xml = '/service/gyokai/web/banners.xml' }
		else if (url.indexOf('game')    != -1) { var xml = '/service/gyokai/game/banners.xml' }
		else if (url.indexOf('movie')   != -1) { var xml = '/service/gyokai/movie/banners.xml' }
		else if (url.indexOf('product') != -1) { var xml = '/service/gyokai/product/banners.xml' }
		else if (url.indexOf('dtp')     != -1) { var xml = '/service/gyokai/dtp/banners.xml' }
		else if (url.indexOf('osaka')   != -1) { var xml = '/service/shiten/osaka/banners.xml' }
		else if (url.indexOf('nagoya')  != -1) { var xml = '/service/shiten/nagoya/banners.xml' }
		else                                   { var xml = '/service/banners.xml' }
		
		
		Banners.load(xml);
	},
	
	
		
	load: function (xml) {
		jQuery.ajax({
			url     : xml,
			type    : 'GET',
			dataType: 'xml',
			cache   : false,
			success : function (xml) {
				var data = Banners.array(xml.lastChild);
				
				Banners.html(data)
			}
		});
	},
	
	
	
	array: function(node, self) {
		var r    = {};
		var self = self || this.toArray;
		for (var attr, i = 0; attr = node.attributes[i]; i++)
			r[attr.name] = node.getAttribute(attr.name);
		
		var tags = [];
		jQuery(node).children().each(function () {
			if (!r[this.nodeName])
				r[this.nodeName] = [], tags.push(this.nodeName);
			
			var data = { text: jQuery(this).text() };
			for (var attr, i = 0; attr = this.attributes[i]; i++)
				data[attr.name] = this.getAttribute(attr.name);
			
			r[this.nodeName].push(jQuery(this).children().size() ? self(this, self) : data);
		});
		
		for (var tag, i = 0; tag = tags[i]; i++) {
			if (r[tag].length == 1) {
				for (var key in r[tag][0])
					r[tag][key] = r[tag][0][key];
			}
		}
		
		return r;
	},



	html: function(data) {
		var html = [];
		
		html.push('<div class=banners-box>');
		html.push('<h2><img src="/service/shared/img/facebox/banners_title.gif" alt="バナー一覧" width="822" height="23"/></h2>');
		html.push('<div class="in">');
		html.push('');
		$(data.banner).each(function (i) {
			if (i == 0) {
				html.push('<div class="tbl-wrap"><table cellspacing="0" cellpadding="0" border="0"><tr>' + '<td><a href="' + this.href + ((this.target) ? '" target="_blank">' : '">') + '<img src="' + this.src + '" />' + '</a></td>');
			} else if ((i + 1) % 4 == 1) {
				html.push('</tr></table></div><div class="tbl-wrap"><table cellspacing="0" cellpadding="0" border="0"><tr>' + '<td><a href="' + this.href + ((this.target) ? '" target="_blank">' : '">') + '<img src="' + this.src + '" />' + '</a></td>');
			} else {
				html.push('<td><a href="' + this.href + ((this.target) ? '" target="_blank">' : '">') + '<img src="' + this.src + '" />' + '</a></td>');
			}
		});
		html.push('</tr></table></div>');
		html.push('</div></div>');
		
		jQuery.facebox(html.join(''));

	}
}
