function JSONscriptRequest(fullUrl) {
    this.fullUrl = fullUrl;
    this.noCacheIE = '&noCacheIE=' + (new Date()).getTime();
    this.headLoc = document.getElementsByTagName("head").item(0);
    this.scriptId = 'JscriptId' + JSONscriptRequest.scriptCounter++;
}
JSONscriptRequest.scriptCounter = 1;
JSONscriptRequest.prototype.buildScriptTag = function () {
    this.scriptObj = document.createElement("script");
    this.scriptObj.setAttribute("type", "text/javascript");
    this.scriptObj.setAttribute("charset", "utf-8");
    this.scriptObj.setAttribute("src", this.fullUrl + this.noCacheIE);
    this.scriptObj.setAttribute("id", this.scriptId);
}
JSONscriptRequest.prototype.addScriptTag = function () {
    this.headLoc.appendChild(this.scriptObj);
}
JSONscriptRequest.prototype.removeScriptTag = function () {
    this.headLoc.removeChild(this.scriptObj);  
}
function listget(url){
	var n = JSONscriptRequest.scriptCounter;//Math.round ( Math.random() * 4 );
	var oJsr = new JSONscriptRequest(url);
	oJsr.buildScriptTag();
	setTimeout( function() { oJsr.addScriptTag(); }, (n-1) * 1100);
	setTimeout( function() { oJsr.removeScriptTag(); }, n * 2000);
}
function figout( n ) {
var l, m = '';
n = '' + n;
while ( (l = n.length) > 3 ) {
m = "," + n.substr( l - 3, 3 ) + m;
n = n.substr( 0, l - 3 );
}
n = '' + n + m;
return n;
}
function rakuRankG(p){
	var ss = document.getElementById('gRanking');
	var vs = document.createElement('div');
	if ( p['Header'].Status == "Success" ){
		var a = p['Body']['ItemRanking']['Items']['Item'];
		var aff = p['Header'].Args['Arg']['affiliateId'].value;
		var tit = p['Body']['ItemRanking'].title.substr(14);
		var i = 0;
		var s = new Array;
		while ( setrank > i && a[i] ){
			s[i] = makeTable_rn(a[i],aff);
			i++;
		}
		vs.innerHTML = '<span class="rRankTitle">'+tit+'</span>'+s.join('');
		ss.parentNode.replaceChild(vs,ss);
	} else vs.innerHTML = 'No Ranking';
}
function reqestMake_gr(){
var gg = getRankGenre.split(',');
gg = gg[Math.round(Math.random()*(gg.length-1))];
	if ( !rDevid ) rDevid = '00d9ba815ba1315dc5cbd52144ada540';
	if ( !rAffid ) rAffid = '0405da24.88678a11.0405da25.8f7352ac';
	var gid = '&genreId=';
	if ( !gg ) gid += '0';
	else gid += gg;
	var did = 'developerId='+rDevid;
	var aid = '&affiliateId='+rAffid;
	var req ='http://api.rakuten.co.jp/rws/1.12/json?'+did+aid+'&operation=ItemRanking&version=2008-09-01&callBack=rakuRankG'+gid;
	listget(req.replace(/\s/g,''));
} setTimeout( function() { reqestMake_gr(); }, 700);
