/*
 * JSONLoader Class
 *   via http://muumoo.jp/news/2007/05/30/0jsonloader.html
 *   (一部カスタマイズ)
 */
var JSONLoader = function(){
  this.results = {};
};
JSONLoader._count = 0;
JSONLoader.prototype.load = function(){
	var o = this;
	if(!o.config instanceof Array) o.config = [o.config];
	
	var call_jsonp = function(config, index){
		var uri = config[index].uri;
		var jsonp_callback_name = 'JSONLoader_callback_' + (JSONLoader._count++);
		if(config[index].onstart) config[index].onstart();
		window[jsonp_callback_name] = function(result){
			if(config[index].onfinish) config[index].onfinish(result);
			o.results[uri] = result;
			if(index == config.length - 1){
				o.callback(o.results);
			}else{
				call_jsonp(config, index + 1);
			}
		};
		
		var script = document.createElement('script');
		script.setAttribute('src', uri + jsonp_callback_name);
		script.setAttribute('type', 'text/javascript');
		script.setAttribute('charset', 'utf-8');
		document.getElementsByTagName('head')[0].appendChild(script);
	};
	call_jsonp(o.config, 0);
};
