/********************************/
/* 縦書き表示シナリオ用 Ver.4.0 */
/********************************/
var oPager;
var offsetX;
var offsetY;
var dragFlag = false;
var curPage = 0;
var listPages;
var homePageURL = "SCENARIO.HTM";

//
// マウスボタンを上げたとき
//
function mouseUpPager() {
  if( dragFlag ) {
    dragFlag = false;
  }
}

//
// マウスボタンを押したとき
//
function mouseDownPager() {
  dragFlag = true;
  offsetX = event.clientX - oPager.offsetLeft;
  offsetY = event.clientY - oPager.offsetTop;
}

//
// マウスカーソルを動かした時
//
function mouseMovePager() {
  if( dragFlag ) {
    oPager.style.left = event.clientX - offsetX;
    oPager.style.top  = event.clientY - offsetY;
    return( false );
  } else {
    return( true );
  }
}

//
// 現在表示しているページを隠す
//
function hidePage() {
  listPages[curPage].style.display = "none";
}

//
// 現在隠しているページを表示する
//
function showPage() {
  listPages[curPage].style.display = "block";
 
  //
  // ページャーの再表示
  //
  Pager.PageNo.value = ( curPage + 1 ) + "/" + listPages.length;
  if( curPage == 0 ) {
      Pager.PrevPageBtn.disabled = true;
  } else {
      Pager.PrevPageBtn.disabled = false;
  }
  if( curPage == listPages.length - 1 ) {
      Pager.NextPageBtn.disabled = true;
  } else {
      Pager.NextPageBtn.disabled = false;
  }
}

//
// ウィンドウの初期化処理
//
function initial() {
  var i, cookie;

  //
  // Internet Explorer 5.5以降のみ実行する
  //
  if( navigator.userAgent.match( /MSIE (\d+\.\d+)/ ) && RegExp.$1 >= 5.5 ) {
    if( ( listPages = document.getElementsByTagName( "PRE" ) ) ) {
      //
      // 全ページを縦書き表示に設定変更する
      //
      for( i = 0; i < listPages.length; i++ ) {
        listPages[i].className = "Vertical";
      }
      //
      // ページャーの表示
      //
      oPager = document.createElement( "DIV" );
      oPager.className = "Pager";
      oPager.innerHTML = "<NOBR><FORM ID=Pager CLASS=Pager UNSELECTABLE=on>"
                       + "<INPUT TYPE=TEXT ID=PageNo CLASS=Pager SIZE=7 UNSELECTABLE=on>&nbsp;"
                       + "<INPUT TYPE=BUTTON ID=HomePageBtn VALUE='戻る' onClick=homePage()>"
                       + "<INPUT TYPE=BUTTON ID=PrevPageBtn VALUE='前頁' onClick=prevPage()>"
                       + "<INPUT TYPE=BUTTON ID=NextPageBtn VALUE='次頁' onClick=nextPage()>"
                       + "</FORM></NOBR>";
      listPages[0].parentNode.appendChild( oPager );

      oPager.setAttribute( "unselectable", "on" );
      oPager.attachEvent( "onmousedown", mouseDownPager );
      document.onmousemove = mouseMovePager;
      document.onmouseup   = mouseUpPager;
      window.onunload      = closePage;

      //
      // クッキーを読み出して、ページャーを前回起動時の配置を再現する
      //
      cookie = document.cookie;
      if( cookie.match( /pager=(\d+) (\d+)/ ) ) {
        oPager.style.left = RegExp.$1;
        oPager.style.top  = RegExp.$2;
      } else {
        oPager.style.left = 10;
        oPager.style.top  = 10;
      }
      //
      // トップページの表示
      //
      showPage();
    }
  }
}

//
//「戻る」ボタンを押したときのイベント処理
//
function homePage() {
  window.location.href = homePageURL;
}

//
//「前頁」ボタンを押した時のイベント処理
//
function prevPage() {
  if( listPages && curPage > 0 ) {
    hidePage();
    curPage--;
    showPage();
  }
}

//
//「次頁」ボタンを押した時のイベント処理
//
function nextPage() {
  if( listPages && curPage < listPages.length - 1 ) {
    hidePage();
    curPage++;
    showPage();
  }
}

//
// クッキーを書き込んで、ページャーの最終位置を保存する
//
function closePage() {
  document.cookie = "pager= " + oPager.offsetLeft + " " + oPager.offsetTop
                  + "; expires=Fri, 31-Dec-2030 23:59:59 GMT;";
}

