var offsetCop = 0;
var offsetUnitCop = 20;
var offsetUnitPlusCop = offsetUnitCop + 1;
var totalPagesCop, totalCountCop;
var residueCop;
var ppNowCop, sbNowCop;
var pageLinesCop = [];
var volGot = [];

var nextCopyNr = "";
var existCopyNr = "";

function constructSelCopSql() {
  qry_par = "";
  qry_sel = "select * from cops ";

  var bib_id  = bibGot[sbNow][2];
  qry_where   = "where bib_id = '" + bib_id + "' ";
  var has_vol = bibGot[sbNow][3];
  if(has_vol!=0 && has_vol != '') {
    var vol_id = volGot[vlNow][2];
    qry_where += " and vol_id = '" + vol_id +"' ";
  }
  qry_order = "";
  qry_limit = "";
  qry_par = qry_sel + qry_where + qry_order + qry_limit + ";";
}

function selectCop() {
  var url  = URLa;
  var dbn  = DBNa;
  var qry  = qry_par;
  var onCmplt = saveSelectedCop;
  sendAndQuery(url,dbn,qry,'true',onCmplt);
}

function saveSelectedCop(oj) {
  respJSON = oj.responseText;
  respData = eval( '(' + respJSON + ')' );

//alert(respData.qrys[0].qryn);                     // query number
//alert(respData.qrys[0].nrows+ "-- nrows");        // number of rows
//alert(respData.qrys[0].names.length+"-- length"); // number of columns
//alert(respData.qrys[0].names[0]+"-- names 0");    // names of second index of vals
//alert(respData.qrys[0].vals[0][0]+"-- id");       // id (first second index) of first index
//alert(respData.qrys[0].vals[0][1]+"-- bib_id");   // bi_id
//alert(respData.qrys[0].vals[0][2]+"-- vol_id");   // vol_id
//alert(respData.qrys[0].vals[0][3]+"-- copy_nr");  // copy_nr
//alert(respData.qrys[0].vals[0][4]+"-- rgtn");     // rgtn
//alert(respData.qrys[0].vals[0][5]+"-- loc");      // loc
//alert(respData.qrys[0].vals[0][6]+"-- cln");      // cln
//alert(respData.qrys[0].vals[0][7]+"-- ldf");      // ldf
//alert(respData.qrys[0].vals[0][8]+"-- ltr");      // ltr

  rowsCop  = respData.qrys[0].nrows;
  cellsCop = respData.qrys[0].names.length;
  copGot = new Array(rowsCop);
  for(var i=0; i<rowsCop; i++) {
    copGot[i] = new Array(cellsCop);
    for(var j=0; j<cellsCop; j++) {
      copGot[i][j] = respData.qrys[0].vals[i][j];
    }
  }
  totalCountCop = rowsCop;
  residueCop    = totalCountCop - Math.floor(totalCountCop/offsetUnitCop)*offsetUnitCop;
  totalPagesCop = Math.ceil(totalCountCop/offsetUnitCop);
  for(var i=0; i<totalPagesCop; i++) {
    if(i==(totalPagesCop-1)) {
      pageLinesCop[i] = residueCop;
    }else{
      pageLinesCop[i] = offsetUnitCop;
    }
  }
  offsetCop = 0;
  ppNowCop = 1;
  showSBSubPageCop();
}

function showSBSubPageCop() {
  $('clp_an_sblp_line').style.fontSize = "small";
  $('clp_an_sblp_line').innerHTML = "所蔵複本データは未登録です。";
  $('clp_an_vlp_line').innerHTML = "";
  $('clp_lines').innerHTML = "";
  if(bibGot[sbNow][3]==0 || bibGot[sbNow][3]=="") {
    $('clpToSvp').disabled = true;
  }else{
    $('clpToSvp').disabled = false;
  }
  if(totalCountCop>0) {
    var bib_id    = bibGot[sbNow][ 2];    var has_vol   = bibGot[sbNow][ 3];
    var title     = bibGot[sbNow][ 4];    var author    = bibGot[sbNow][ 5];
    var publ      = bibGot[sbNow][ 8];    var pubdt     = bibGot[sbNow][ 9];
    var phys      = bibGot[sbNow][10];    var ptbl      = bibGot[sbNow][11];

    var bibDigest = "<br /><b>" + (sbNow+1) + " " + bib_id;
    if(has_vol == 0 || has_vol == "") {
      bibDigest += "__0 " + " </b> ";
    }else{
      bibDigest += " </b> ";
    }

    bibDigest += title;
    if(author!="") bibDigest += " / " + author;
    if(publ!="")   bibDigest += ". -- " + publ;
    if(pubdt!="")  bibDigest += ", " + pubdt;
    if(phys!="")   bibDigest += ". -- " + phys;
    if(ptbl!="")   bibDigest += " -- (" + ptbl + ") ";
    $('clp_an_sblp_line').innerHTML = bibDigest;

    var linesData = "<br><table border='1' style='border-collapse:collapse; font-size:small'>";
    offsetNextCop = offsetCop + offsetUnitCop;
    linesData += "<tr><td style='text-align:center'>書誌 - 巻号 - 複本</td><td style='text-align:center'>登録番号</td><td>配置コード</td><td>請求記号</td></tr>";
    for(var i=offsetCop; i<offsetNextCop; i++) {
      var bib_id  = copGot[i][ 1];    var vol_id  = copGot[i][ 2];
      var copy_nr = copGot[i][ 3];    var rgtn    = copGot[i][ 4];
      var loc     = copGot[i][ 5];    var cln     = copGot[i][ 6];

      linesData += "<tr><td>" + bib_id + " - " + vol_id + " - <b>" + copy_nr +  "</b> </td>";
      linesData += "<td><a href=\"javascript:showSelectedSingleCop("+i+");\">";
      linesData += "<span style='font-weight:bold'>" + rgtn + "</span>";
      linesData += "</a></td>";
      linesData += "<td>" + loc + "</td>";
      linesData += "<td>" + cln + "</td>";
      linesData += "</tr>";
      if(i==(totalCountCop-1)) break;
    }
    linesData += "</table></br>";
    $('clp_lines').innerHTML = linesData;

    var sblpPgCon = document.getElementById("sblp_pgcon");
    sblpPgCon.innerHTML = "";
    sblpPgCon.style.textAlign = "center";
    for(var pp=1; pp<totalPagesCop+1; pp++) {
      if(Math.ceil(offsetCop/offsetUnitCop)==(pp-1)) {
        var aspan = document.createElement("span");
        aspan.style.color = "red";
        aspan.style.fontWeight = "bold";
        aspan.appendChild(document.createTextNode(pp));
        sblpPgCon.appendChild(aspan);
      }else{
        var alink = document.createElement("a");
        alink.setAttribute("href","javascript:changeSBSubPageCop("+pp+");");
        var aspan = document.createElement("span");
        aspan.style.color = "maroon";
        aspan.appendChild(document.createTextNode(pp));
        alink.appendChild(aspan);
        sblpPgCon.appendChild(alink);
      }
    }

    var sblpNrs = document.getElementById("sblp_nrs");
    var text3 = "<span style=\"text-align:center\">複本検索結果　件数 = " + rows + "件; 　ページ数 = " + totalPages + "ページ</span>";
    sblpNrs.innerHTML = text3;
  }else{
    var sblpNrs = document.getElementById("sblp_nrs");
    var text3 = "<span style=\"text-align:center\">検索結果　件数 = " + rows + "件; 　ページ数 = " + totalPages + "ページ</span>";
    sblpNrs.innerHTML = text3;
  }
}

function changeSBSubPageCop(pp) {
  ppNow = pp;
  offset = offsetUnit * (pp-1);
  showSBSubPage();
}

function showSelectedSingleCop(i) {
  $('scp_an_sblp_line').style.fontSize = "small";
  $('scp_an_sblp_line').innerHTML = "";
  $('an_scp').style.fontSize = "small";
  $('an_scp').innerHTML = "";

    var bib_id    = bibGot[sbNow][ 2];    var has_vol   = bibGot[sbNow][ 3];
    var title     = bibGot[sbNow][ 4];    var author    = bibGot[sbNow][ 5];
    var publ      = bibGot[sbNow][ 8];    var pubdt     = bibGot[sbNow][ 9];
    var phys      = bibGot[sbNow][10];    var ptbl      = bibGot[sbNow][11];

    var bibDigest = "<br /><b>" + (sbNow+1) + " " + bib_id;
    if(has_vol == 0 || has_vol == "")
         { bibDigest += "__0 " + " </b> "; }
    else { bibDigest += " </b> "; }

    bibDigest += title;
    if(author!="") bibDigest += " / " + author;
    if(publ!="")   bibDigest += ". -- " + publ;
    if(pubdt!="")  bibDigest += ", " + pubdt;
    if(phys!="")   bibDigest += ". -- " + phys;
    if(ptbl!="")   bibDigest += " -- (" + ptbl + ") ";
    $('scp_an_sblp_line').innerHTML = bibDigest;
    $('scp_an_sblp_line').style.fontSize = "small";

    if(has_vol!=0 && has_vol !="") {
      var id        = volGot[vlNow][ 0];    var bib_id    = volGot[vlNow][ 1];
      var vol_id    = volGot[vlNow][ 2];    var vol_ttl   = volGot[vlNow][ 3];
      var vol_ym    = volGot[vlNow][ 4];    var vol_ser   = volGot[vlNow][ 5];
      var vol_dt    = volGot[vlNow][ 6];    var articles  = volGot[vlNow][ 7];
      var volDigest = "　　　" + vol_id + "　<b>" + vol_ttl + "　" + vol_ym + "＿" + vol_ser + " </b> ";
      $('scp_an_vlp_line').innerHTML = volDigest;
    }else{
      $('scp_an_vlp_line').innerHTML = "　　　＿＿＿＿＿";
    }
    $('scp_an_vlp_line').style.fontSize = "small";

  cpNow = i;
  var id        = copGot[i][ 0];    var bib_id    = copGot[i][ 1];
  var vol_id    = copGot[i][ 2];    var copy_nr   = copGot[i][ 3];
  var rgtn      = copGot[i][ 4];    var loc       = copGot[i][ 5];
  var cln       = copGot[i][ 6];    var ldf       = copGot[i][ 7];
  var ltr       = copGot[i][ 8];

  var singleCopy = "<br /><table class='tb1'>";
/*
  singleCopy += "<tr class='tr1'><td class='leftitemname2 td1'>id</td>";
  singleCopy += "<td class='rightitemcontent1 td1b'>" + id + "</td></tr>";
  singleCopy += "<tr class='tr1'><td class='leftitemname2 td1'>書誌id</td>";
  singleCopy += "<td class='rightitemcontent1 td1b'>" + bib_id + "</td></tr>";
  singleCopy += "<tr class='tr1'><td class='leftitemname2 td1'>巻号id</td>";
  singleCopy += "<td class='rightitemcontent1 td1b'>" + vol_id + "</td></tr>";
*/
  singleCopy += "<tr class='tr1'><td class='leftitemname2 td1'>複本番号</td>";
  singleCopy += "<td class='rightitemcontent1 td1b'><b>" + copy_nr + "</b></td></tr>";
  singleCopy += "<tr class='tr1'><td class='leftitemname2 td1'>登録番号</td>";
  singleCopy += "<td class='rightitemcontent1 td1b'>" + rgtn + "</td></tr>";
  singleCopy += "<tr class='tr1'><td class='leftitemname2 td1'>配置コード</td>";
  singleCopy += "<td class='rightitemcontent1 td1b'>" + loc + "</td></tr>";
  singleCopy += "<tr class='tr1'><td class='leftitemname2 td1'>請求記号</td>";
  singleCopy += "<td class='rightitemcontent1 td1b'>" + cln + "</td></tr>";
  singleCopy += "<tr class='tr1'><td class='leftitemname2 td1'>ローカルデータ定義</td>";
  singleCopy += "<td class='rightitemcontent1 td1b'>" + ldf + "</td></tr>";
  singleCopy += "<tr class='tr1'><td class='leftitemname2 td1'>ローカルトレーシング</td>";
  singleCopy += "<td class='rightitemcontent1 td1b'>" + ltr + "</td></tr>";
  singleCopy += "</table></br /><br />";

  singleCopy += "<input type=\"button\" id=\"scp_prev\" value=\"前\" onclick=\"scpPrevClicked(" + (i-1) + ");\">";
  singleCopy += "<span> 第 " + (i+1) + " 件 </span>";
  singleCopy += "<input type=\"button\" id=\"scp_next\" value=\"次\" onclick=\"scpNextClicked(" + (i+1) + ");\">";
  singleCopy += "<span>　　(現在" + (Math.ceil(offset/offsetUnit)+1) + "ページ [" + (offsetCop+1) + "から" + offsetNextCop + "まで] ) <span>";
  singleCopy += "<br /><br />";

  $('an_scp').innerHTML = singleCopy;

  if(bibGot[sbNow][3]==0 || bibGot[sbNow][3]=="")
       { $('scpToVlp').disabled = true;  $('scpToSvp').disabled = true; }
  else { $('scpToVlp').disabled = false; $('scpToSvp').disabled = false; }

  changeVisiblePanel('single_copy_panel');
}

function ssbpChangeToSbp()  { changeVisiblePanel('search_bib_panel'); }
function ssbpChangeToSblp() { changeVisiblePanel('searched_bib_lines_panel'); }

function scpPrevClicked(p) {
  if(p<offsetCop)
       { $('scp_prev').style.display = "none"; $('scp_next').style.display = "block"; }
  else { showSelectedSingleCop(p); }
}

function scpNextClicked(n) {
  if(n>=offsetNextCop || n >= totalCountCop)
       { $('scp_prev').style.display = "block";  $('scp_next').style.display = "none"; }
  else { showSelectedSingleCop(n); }
}

function ssbpCopListClicked() { changeVisiblePanel('copy_lines_panel'); constructSelCopSql(); selectCop(); }
function clpChangeToSsbp()    { changeVisiblePanel('searched_single_bib_panel'); }
function clpChangeToSvp()     { changeVisiblePanel('single_vol_panel'); }
function scpChangeToSbp()     { changeVisiblePanel('search_bib_panel'); }
function scpChangeToSblp()    { changeVisiblePanel('searched_bib_lines_panel'); }
function scpChangeToSsbp()    { changeVisiblePanel('searched_single_bib_panel'); }
function scpChangeToVlp()     { changeVisiblePanel('vol_lines_panel'); constructSelVolSql(); selectVol(); }
function scpChangeToSvp()     { changeVisiblePanel('single_vol_panel'); }
function scpChangeToClp()     { changeVisiblePanel('copy_lines_panel'); constructSelCopSql(); selectCop(); }

