
var rpamz_obj1 = null;
var rpamz_cur_obj = null;

var save_len = 10;

function rpamz_page_init(e){
  if(rpamz_obj1){
    return;
  }

  rpamz_obj1 = new rpamz_sltClass("1");

  if(!rpamz_id){
    rpamz_id = "";
  }

  rpamz_cur_obj = rpamz_obj1;
  rpamz_cur_obj.setData();
}

function rpamz_retObj(id){
  var ret_o = null;
  if(document.all){
    try{
      ret_o = document.all(id);
    }catch(e){
      if(document.getElementById){
	ret_o = document.getElementById(id);
      }
    }
  }
  else if(document.getElementById){
    ret_o = document.getElementById(id);
  }
  return ret_o;
}


function rpamz_chkImg(obj){
  if(parseInt(obj.width) < 10 && parseInt(obj.height) < 10){
    var ins_obj = rpamz_obj1.setBullpen();
    obj.parentNode.parentNode.replaceChild(ins_obj,obj.parentNode);
  }
  else{

  }
}

function rpamz_sltClass(nm){
  this.box_obj = rpamz_retObj("rpamz_slotbox"+nm);
  if(!this.box_obj){
    return null;
  }

  var size_val = "400";
  if(rpamz_size == "M"){
    size_val = "180";
  }
  else if(rpamz_size == "S"){
    size_val = "80";
  }
  this.box_obj.style.width = size_val + "px";


  this.bullpen = rpamz_retObj("rpamz_bullpen"+nm);
  this.bench = rpamz_retObj("rpamz_bench"+nm);
  this.nm = nm;
  
  this.alldata = null;
  this.data = null;
  this.hgt = parseInt(this.box_obj.style.height);
  this.word_obj = this.setWordObj(this.box_obj);

  this.mem_idx = 0;
  this.midx_max = 0;
  this.prev = false;
}


rpamz_sltClass.prototype.setBullpen = function(){
  var len = this.data.length;
  //var idx = Math.floor(Math.random() * len);

  var idx = this.mem_idx + 1;  
  while(!this.data[idx]){
    idx++;
    idx = (idx >= this.midx_max)? 0 : idx;
  }
  this.mem_idx = idx;

  var sch_url = "http://www.amazon.com/exec/obidos/ASIN/";
  var set_url = "";

  var tmp_id = (rpamz_id)? rpamz_id : "rndcatcom-20";
  tmp_id = (tmp_id == "")? "rndcatcom-20" : tmp_id;
    
  var ret_obj = document.createElement("a");
  set_url = sch_url + this.data[idx][1] + "/" + tmp_id;
  ret_obj.href = set_url;
  ret_obj.target = "_blank";
  
  var size_val = "400";
  if(rpamz_size == "M"){
    size_val = "160";
  }
  else if(rpamz_size == "S"){
    size_val = "75";
  }

  var set_str = "<img src=\"http://ec1.images-amazon.com/images/P/"+ this.data[idx][1] +".09._SC"+rpamz_size+"ZZZZZZZ_AA"+size_val+"_.jpg\" alt=\""+this.data[idx][0]+"\"style=\"border:0px none\" onload=\"rpamz_chkImg(this)\"><br>";

  // http://images-jp.amazon.com/images/P/{$tmp_asin}.09._SCMZZZZZZZ_AA160_.jpg

  set_str += this.data[idx][0];
  ret_obj.innerHTML = set_str;

  this.bullpen.appendChild(ret_obj);
  return ret_obj;

}

rpamz_sltClass.prototype.setBench = function(tmp_obj){
  try{
    this.bench.insertBefore(tmp_obj,this.bench.firstChild);
  }catch(e){
    this.bench.appendChild(tmp_obj.cloneNode(true));
  }

  if(this.bench.childNodes.length > save_len){
    var idx = this.bench.childNodes.length - 1;
    this.bench.removeChild(this.bench.childNodes.item(idx));
  }
}


rpamz_sltClass.prototype.wordSet = function(obj){
  var ins_obj = this.bullpen.removeChild(this.bullpen.firstChild);
  var rmv_obj = null;

  if(obj.firstChild){
    rmv_obj = obj.replaceChild(ins_obj,obj.firstChild);
    this.setBench(rmv_obj);
  }

  else{
    try{
      obj.appendChild(ins_obj);
    }catch(e){}
  }

  this.setBullpen();
}

rpamz_sltClass.prototype.prevWord = function(obj){
  var ins_obj = null;
  var rmv_obj = null;

  if(!this.bench.firstChild){
    alert("No more items backward");
    return;
  }
  ins_obj = this.bench.removeChild(this.bench.firstChild);
  rmv_obj = obj.removeChild(obj.firstChild);

  obj.appendChild(ins_obj);
  this.bullpen.insertBefore(rmv_obj,this.bullpen.firstChild);

  if(this.bullpen.childNodes.length > save_len){
    var idx = this.bullpen.childNodes.length - 1;
    this.bullpen.removeChild(this.bullpen.childNodes.item(idx));
  }

}


rpamz_sltClass.prototype.setWordObj = function(){
  var ret_obj = new Array();
  var word_tmp = this.box_obj.firstChild;

  var idx = 0;
  while(word_tmp){
    //this.wordSet(word_tmp);
    ret_obj[idx] = word_tmp;
    word_tmp = word_tmp.nextSibling;
    idx++;
  }

  return ret_obj;
}


rpamz_sltClass.prototype.setData = function(dt){
  this.alldata = rpamz_allval;
  this.selData();
}

rpamz_sltClass.prototype.selData = function(){
  this.data = [];
  var len = this.alldata.length;
  this.midx_max = len;
  if(len == 0){
    return false;
  }

  this.mem_idx = Math.floor(Math.random() * len);
  while(this.mem_idx < 0 || this.mem_idx >= len){
    this.mem_idx = Math.floor(Math.random() * len);
  }

  var idx = 0;
  for(ii=0;ii < len;ii++){
    this.data.push(this.alldata[ii]);
  }

  this.bullpen.innerHTML = "";
  for(ii=0;ii < save_len;ii++){
    this.setBullpen();
  }

  for(ii=0;ii<this.word_obj.length;ii++){
    this.wordSet(this.word_obj[ii]);
  }
}


function rpamz_mvbtn(val){
  var tmp_obj = rpamz_obj1;
  var chk_val = (val)? tmp_obj.prevWord(tmp_obj.word_obj[0]) : tmp_obj.wordSet(tmp_obj.word_obj[0]);
}

if(document.all){
  window.attachEvent("onload",rpamz_page_init);
}
else{
  window.addEventListener("load",rpamz_page_init,false);
}

document.write('<input type="button" value="prev" onclick="rpamz_mvbtn(1)"><input type="button" value="Next" onclick="rpamz_mvbtn(0)"><br><div id="rpamz_slotbox1" style="position:relative;font-size:9pt;;text-align:center;border:0px none;padding:3px;overflow:hidden;"><div align="center"></div><div id="rpamz_bullpen1" style="position:absolute;top:190px;left:0px;width:0px;height:0px;overflow:hidden;"></div><div id="rpamz_bench1" style="position:absolute;top:0px;left:10px;width:0px;height:0px;overflow:hidden;"></div></div>');
