var offsetVol = 0;
var offsetUnitVol = 20;
var offsetUnitPlusVol = offsetUnitVol + 1;
var totalPagesVol, totalCountVol;
var residueVol;
var ppVlNow, vlNow;
var pageLinesVol = [];

var nextVolId = "";
var existVolId = "";



function constructSelVolSql() {
  qry_par = "";
  qry_sel = "select * from vols ";

  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 = "order by vol_id desc ";
  qry_limit = "";
  qry_par = qry_sel + qry_where + qry_order + qry_limit + ";";
}

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

function saveSelectedVol(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");   // bib_id
//alert(respData.qrys[0].vals[0][2]+"-- vol_id");   // vol_id
//alert(respData.qrys[0].vals[0][3]+"-- vol_ttl");  // vol_ttl
//alert(respData.qrys[0].vals[0][4]+"-- vol_ym");   // vol_ym
//alert(respData.qrys[0].vals[0][5]+"-- vol_ser");  // vol_ser
//alert(respData.qrys[0].vals[0][6]+"-- vol_dt");   // vol_dt
//alert(respData.qrys[0].vals[0][7]+"-- articles"); // articles

  rowsVol  = respData.qrys[0].nrows;
  cellsVol = respData.qrys[0].names.length;
  volGot = new Array(rowsVol);
  for(var i=0; i<rowsVol; i++) {
    volGot[i] = new Array(cellsVol);
    for(var j=0; j<cellsVol; j++) {
      volGot[i][j] = respData.qrys[0].vals[i][j];
    }
  }
  totalCountVol = rowsVol;
  residueVol    = totalCountVol - Math.floor(totalCountVol/offsetUnitVol)*offsetUnitVol;
  totalPagesVol = Math.ceil(totalCountVol/offsetUnitVol);
  for(var i=0; i<totalPagesVol; i++) {
    if(i==(totalPagesVol-1)) {
      pageLinesVol[i] = residueVol;
    }else{
      pageLinesVol[i] = offsetUnitVol;
    }
  }
  offsetVol = 0;
  ppVlNowV = 1;
  showSBSubPageVol();
}

function showSBSubPageVol() {
  $('vlp_an_sblp_line').style.fontSize = "small";
  $('vlp_an_sblp_line').innerHTML = "巻号データは未登録です。";
  $('vlp_lines').innerHTML = "";
  if(totalCountVol>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 + ") ";
    $('vlp_an_sblp_line').innerHTML = bibDigest;

    var linesData = "<br><table border='1' style='border-collapse:collapse; font-size:small'>";
    offsetNextVol = offsetVol + offsetUnitVol;
    linesData += "<tr><td style='text-align:center'>書誌 - 巻号</td><td style='text-align:center'>巻号タイトル 等</td>";
    linesData += "<td>巻号年月次</td><td>通巻号</td><td>巻号発行年月日</td>"
    linesData += "</tr>";
    for(var i=offsetVol; i<offsetNextVol; i++) {
      var bib_id   = volGot[i][ 1];    var vol_id   = volGot[i][ 2];
      var vol_ttl  = volGot[i][ 3];    var vol_ym   = volGot[i][ 4];
      var vol_ser  = volGot[i][ 5];    var vol_dt   = volGot[i][ 6];
      var articles = volGot[i][ 7];    
      
      linesData += "<tr><td>" + bib_id + " - <b>" + vol_id +  "</b> </td>";
      linesData += "<td><a href=\"javascript:showSelectedSingleVol("+i+");\">";
      linesData += "<span style='font-weight:bold'>" + vol_ttl + "</span>";
      linesData += "<span>" + vol_dt + "</span>";
      linesData += "</a></td>";
      linesData += "<td>" + vol_ym + "</td>";
      linesData += "<td>" + vol_ser + "</td>";
      linesData += "<td>" + vol_dt + "</td>";
      linesData += "</tr>";
      if(i==(totalCountVol-1)) break;
    }
    linesData += "</table></br>";
    $('vlp_lines').innerHTML = linesData;

    var vlpPgCon = document.getElementById("vlp_pgcon");
    vlpPgCon.innerHTML = "";
    vlpPgCon.style.textAlign = "center";
    for(var pp=1; pp<totalPagesVol+1; pp++) {
      if(Math.ceil(offsetVol/offsetUnitVol)==(pp-1)) {
        var aspan = document.createElement("span");
        aspan.style.color = "red";
        aspan.style.fontWeight = "bold";
        aspan.appendChild(document.createTextNode(pp));
        vlpPgCon.appendChild(aspan);
      }else{
        var alink = document.createElement("a");
        alink.setAttribute("href","javascript:changeSBSubPageVol("+pp+");");
        var aspan = document.createElement("span");
        aspan.style.color = "maroon";
        aspan.appendChild(document.createTextNode(pp));
        alink.appendChild(aspan);
        vlpPgCon.appendChild(alink);
      }
    }
    var vlpNrs = document.getElementById("vlp_nrs");
    vlpNrs.style.fontSize = "small";
    var text3 = "<span style=\"text-align:center\">巻号検索結果　件数 = " + rowsVol + "件; 　ページ数 = " + totalPagesVol + "ページ</span>";
    vlpNrs.innerHTML = text3;
  }else{
    var vlpNrs = document.getElementById("vlp_nrs");
    var text3 = "<span style=\"text-align:center\">巻号検索結果　件数 = " + rowsVol + "件; 　ページ数 = " + totalPagesVol + "ページ</span>";
    vlpNrs.innerHTML = text3;
  }
}

function changeSBSubPageVol(pp) {
  ppVlNow = pp;
  offsetVol = offsetUnitVol * (pp-1);
  showSBSubPageVol();
}

function showSelectedSingleVol(i) {
  $('svp_an_sblp_line').style.fontSize = "small";
  $('svp_an_sblp_line').innerHTML = "";
  $('an_svp').style.fontSize = "small";
  $('an_svp').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 + ") ";
  $('svp_an_sblp_line').innerHTML = bibDigest;
  $('svp_an_sblp_line').style.fontSize = "small";

  vlNow = i;
  var id        = volGot[i][ 0];    var bib_id    = volGot[i][ 1];
  var vol_id    = volGot[i][ 2];    var vol_ttl   = volGot[i][ 3];
  var vol_ym    = volGot[i][ 4];    var vol_ser   = volGot[i][ 5];
  var vol_dt    = volGot[i][ 6];    var articles  = volGot[i][ 7];

  var volDigest = "　　　" + vol_id + "　<b>" + vol_ttl + "　" + vol_ym + "＿" + vol_ser + " </b> ";
  $('svp_an_vlp_line').innerHTML = volDigest;
  $('svp_an_vlp_line').style.fontSize = "small";

  var singleVol = "<br /><table class='tb1'>";
/*
  singleVol += "<tr class='tr1'><td class='leftitemname2 td1'>id</td>";
  singleVol += "<td class='rightitemcontent1 td1b'>" + id + "</td></tr>";
  singleVol += "<tr class='tr1'><td class='leftitemname2 td1'>書誌id</td>";
  singleVol += "<td class='rightitemcontent1 td1b'>" + bib_id + "</td></tr>";
*/
  singleVol += "<tr class='tr1'><td class='leftitemname2 td1'>巻号id</td>";
  singleVol += "<td class='rightitemcontent1 td1b'>" + vol_id + "</td></tr>";
  singleVol += "<tr class='tr1'><td class='leftitemname2 td1'>巻号タイトル</td>";
  singleVol += "<td class='rightitemcontent1 td1b'><b>" + vol_ttl + "</b></td></tr>";
  singleVol += "<tr class='tr1'><td class='leftitemname2 td1'>年月次</td>";
  singleVol += "<td class='rightitemcontent1 td1b'>" + vol_ym + "</td></tr>";
  singleVol += "<tr class='tr1'><td class='leftitemname2 td1'>通巻号</td>";
  singleVol += "<td class='rightitemcontent1 td1b'>" + vol_ser + "</td></tr>";
  singleVol += "<tr class='tr1'><td class='leftitemname2 td1'>出版年月日</td>";
  singleVol += "<td class='rightitemcontent1 td1b'>" + vol_dt + "</td></tr>";
  singleVol += "<tr class='tr1'><td class='leftitemname2 td1'>特集記事</td>";
  singleVol += "<td class='rightitemcontent1 td1b'>" + articles + "</td></tr>";
  singleVol += "</table></br /><br />";

  singleVol += "<input type=\"button\" id=\"svp_prev\" value=\"前\" onclick=\"svpPrevClicked(" + (i-1) + ");\">";
  singleVol += "<span> 第 " + (i+1) + " 件 </span>";
  singleVol += "<input type=\"button\" id=\"svp_next\" value=\"次\" onclick=\"svpNextClicked(" + (i+1) + ");\">";
  singleVol += "<span>　　(現在" + (Math.ceil(offsetVol/offsetUnitVol)+1) + "ページ [" + (offsetVol+1) + "から" + offsetNextVol + "まで] ) <span>";
  singleVol += "<br /><br />";

  $('an_svp').innerHTML = singleVol;

  changeVisiblePanel('single_vol_panel');
}

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

function svpPrevClicked(p) {
  if(p<offsetVol) { $('svp_prev').style.display = "none";  $('svp_next').style.display = "block"; }
  else            { showSelectedSingleVol(p); }
}

function svpNextClicked(n) {
  if(n>=offsetNextVol || n >= totalCountVol)
          { $('svp_prev').style.display = "block";  $('svp_next').style.display = "none"; }
  else    { showSelectedSingleVol(n); }
}

function ssbpVolListClicked() {
  changeVisiblePanel('vol_lines_panel');
  constructSelVolSql();
  selectVol();
}

function vlpChangeToSsbp() { changeVisiblePanel('searched_single_bib_panel'); }

function clpChangeToSvp()  { changeVisiblePanel('single_vol_panel'); }

function svpChangeToSbp()  { changeVisiblePanel('search_bib_panel'); }
function svpChangeToSblp() { changeVisiblePanel('searched_bib_lines_panel'); }
function svpChangeToSsbp() { changeVisiblePanel('searched_single_bib_panel'); }
function svpChangeToVlp() {
  changeVisiblePanel('vol_lines_panel');
  constructSelVolSql();
  selectVol();
}
function svpChangeToClp() {
  changeVisiblePanel('copy_lines_panel');
  constructSelCopSql();
  selectCop();
}


