/**
 * @name       sp
 * @version    2.01
 * @updated    2008/01/28
 * @copyright  Copyright (c) 2008, SOFTBANK MOBILE Corp.
 */



(function () {
	var base      = 'http://mb.softbank.jp/mb/shared/js';
	var base_json = base.replace(/shared\/js/, 'special/shared/js');
	
	if (typeof(SBM) == 'undefined') {
		document.write('<script src="' + base + '/sbm_plain.js"  type="text/javascript"></script>');
	}
	
	if (document.all) {
		document.write('<script src="' + base + '/spl/pngfix.js" type="text/javascript"></script>');
	}
	
	var json = '/json.js?nocache=' + new Date().getTime();
	window['use_spl'] = true;
	document.write('<script src="' + base      + '/spl/spl_ff.js"      type="text/javascript"></script>');
	document.write('<script src="' + base_json + json +             '" type="text/javascript"></script>');
	document.write('<link  href="' + base      + '/spl/css/spl_ff.css" type="text/css" rel="stylesheet" media="all" />');
	
	var ua = navigator.userAgent;
	if(/windows/i.test(ua) && /gecko/i.test(ua) && !/khtml/i.test(ua)) {
		document.addEventListener('DOMContentLoaded', createEmbedFlash, false);
	}
	
	window.onload = function () {
		SBM.spl.create(base);
		if (document.all) { PNGFix.fix('spl'); }
		this.focus();
	};
})();



/**
 * @private
 */
function createEmbedFlash () {
	var el = document.getElementsByTagName('object')[0];
	if (el) {
		var id     = el.id;
		var params = el.innerHTML.split('>');
		var width  = el.width;
		var height = el.height;
		var embed = [];
		for (var i = 0, ix = params.length; i < ix; i++) {
			params[i].match(/name="([^"]+)" value="([^"]+)"/);
			var name  = RegExp.$1;
			    name  = (name == 'movie') ? 'src' : name;
			var value = RegExp.$2;
			    value = (name == 'wmode') ? 'window'  : value;
			    value = (name == 'scale') ? 'noscale' : value;
			embed.push(name + '="' + value + '"');
		}
		embed.push('salign="tl"');
		embed = '<embed id="spl_ff_swf" ' + embed.join(' ') + ' width="' + width + '" height="' + height + '" />';
	
		var div              = document.createElement('div');
		    div.innerHTML    = embed;
		    div.style.height = height + 'px';
		el.parentNode.insertBefore(div, el);
		el.parentNode.removeChild(el);
	}
}



/**
 * @param  {string}  url
 */
function openServiceSite (url) {
	SBM.win.opener(url);
}



/**
 * @param  {string}  url
 */
function openSpecialSite (url) {
	var name    = 'sb_sp08';
	var width   = 950;
	var height  = 650;
	var options = '0,1,0,1,1,1,0';
	
	SBM.win.open(url, width, height, name, options);
}