/*********************************
  リンク処理  
*********************************/
function g_linkclick(strLinkURL) {
  var objElement = document.getElementsByTagName("FORM")[0];
  objElement.action = strLinkURL;
  objElement.target = "self";
  objElement.method = "post";
  objElement.submit();
}

function g_changeBlock(strBlockNam, intDisplayIndex) {
  var i;
  for (i = 1 ; document.getElementById(strBlockNam + "_" + i) ; i++) {
    if (i == intDisplayIndex) {
      document.getElementById(strBlockNam + "_" + i).className = "disp";
    } else {
      document.getElementById(strBlockNam + "_" + i).className = "nodisp";
    }
  }
}

function g_ninzu_change(){
  if(document.getElementById("ninzu").value >= 4){
    g_changeBlock('dsp_KokyakuKbn', 1);
    document.getElementById("dantaimei").focus();
  }else{
    g_changeBlock('dsp_KokyakuKbn', 0);
  }
}
function clear_area(){
  document.getElementById("onamae").value = "";
  document.getElementById("address").value = "";
  document.getElementById("month").value = "";
  document.getElementById("day").value = "";
  document.getElementById("time").value = "";
  document.getElementById("ninzu").value = "";
  document.getElementById("tel1").value = "";
  document.getElementById("tel2").value = "";
  document.getElementById("tel3").value = "";
  document.getElementById("dantaimei").value = "";
  document.getElementById("message").value = "";
}
function g_submit(){
  if(document.getElementById("onamae").value == ""){
    alert("お名前をご記入ください。");
    document.getElementById("onamae").focus();
    return;
  }
  if(document.getElementById("address").value == ""){
    document.getElementById("address").value == "メールアドレスはご指定されませんでした。";
  }
  if(document.getElementById("month").value == ""){
    alert("ご利用予定月をご記入ください。");
    document.getElementById("month").focus();
    return;
  }
  if(document.getElementById("day").value == ""){
    alert("ご利用予定日をご記入ください。");
    document.getElementById("day").focus();
    return;
  }
  if(document.getElementById("time").value == ""){
    alert("ご利用開始時間をご記入ください。");
    document.getElementById("time").focus();
    return;
  }
  if(document.getElementById("ninzu").value == ""){
    alert("ご利用予定人数をご記入ください。");
    document.getElementById("ninzu").focus();
    return;
  }
  if(document.getElementById("tel1").value == ""){
    alert("お電話番号をご記入ください。");
    document.getElementById("tel1").focus();
    return;
  }
  if(document.getElementById("tel2").value == ""){
    alert("お電話番号をご記入ください。");
    document.getElementById("tel2").focus();
    return;
  }
  if(document.getElementById("tel3").value == ""){
    alert("お電話番号をご記入ください。");
    document.getElementById("tel3").focus();
    return;
  }
  if(document.getElementById("ninzu").value >= 4){
    if(document.getElementById("dantaimei").value == ""){
      alert("団体様名をお書き添えください");
      document.getElementById("dantaimei").focus();
      return;
    }
  }else{
    document.getElementById("dantaimei").value == "";
    document.getElementById("course").value == "選択していません";
  }
  document.data.submit();
}

/*================
  イベントの設定  
================*/
document.onmouseover = g_onMouseOver;
document.onmouseout = g_onMouseOut;

/*==================
  マウスオーバー時  
==================*/
function g_onMouseOver() {
  var objSource = event.toElement;
  var strClass = objSource.className;
  
  if (objSource.id == "top") {
    objSource.src = "image/top_name_on.gif";
  }
  if (objSource.id == "shop") {
    objSource.src = "image/shop_on.gif";
  }
  if (objSource.id == "menu") {
    objSource.src = "image/menu_on.gif";
  }
  if (objSource.id == "enkai") {
    objSource.src = "image/enkai_on.gif";
  }
  if (objSource.id == "reserve") {
    objSource.src = "image/reserve_on.gif";
  }
  if (objSource.id == "coupon") {
    objSource.src = "image/coupon_on.gif";
  }
  if (objSource.id == "zasiki") {
    objSource.src = "image/zasiki_on.gif";
  }
  if (objSource.id == "kositu") {
    objSource.src = "image/kositu_on.gif";
  }
  if (objSource.id == "counter") {
    objSource.src = "image/counter_on.gif";
  }
  if (objSource.id == "bar") {
    objSource.src = "image/bar_on.gif";
  }
  if (objSource.id == "map") {
    objSource.src = "image/map_on.gif";
  }
  if (objSource.id == "close") {
    objSource.src = "image/close_on.gif";
  }
  if (objSource.id == "course") {
    objSource.src = "image/course_on.gif";
  }
  if (objSource.id == "kusiage") {
    objSource.src = "image/kusiage_on.gif";
  }
  if (objSource.id == "gyosai") {
    objSource.src = "image/gyosai_on.gif";
  }
  if (objSource.id == "isigama") {
    objSource.src = "image/isigama_on.gif";
  }
  if (objSource.id == "drink") {
    objSource.src = "image/drink_on.gif";
  }
  if (objSource.id == "send") {
    objSource.src = "image/send_on.gif";
  }
  if (objSource.id == "print") {
    objSource.src = "image/print_on.gif";
  }
}

/*================
  マウスアウト時  
================*/
function g_onMouseOut() {
  var objSource = event.fromElement;
  var strClass = objSource.className;
  
  if (objSource.id == "top") {
    objSource.src = "image/top_name.gif";
  }
  if (objSource.id == "shop") {
    objSource.src = "image/shop.gif";
  }
  if (objSource.id == "menu") {
    objSource.src = "image/menu.gif";
  }
  if (objSource.id == "enkai") {
    objSource.src = "image/enkai.gif";
  }
  if (objSource.id == "reserve") {
    objSource.src = "image/reserve.gif";
  }
  if (objSource.id == "coupon") {
    objSource.src = "image/coupon.gif";
  }
  if (objSource.id == "zasiki") {
    objSource.src = "image/zasiki.gif";
  }
  if (objSource.id == "kositu") {
    objSource.src = "image/kositu.gif";
  }
  if (objSource.id == "counter") {
    objSource.src = "image/counter.gif";
  }
  if (objSource.id == "bar") {
    objSource.src = "image/bar.gif";
  }
  if (objSource.id == "map") {
    objSource.src = "image/map.gif";
  }
  if (objSource.id == "close") {
    objSource.src = "image/close.gif";
  }
  if (objSource.id == "course") {
    objSource.src = "image/course.gif";
  }
  if (objSource.id == "kusiage") {
    objSource.src = "image/kusiage.gif";
  }
  if (objSource.id == "gyosai") {
    objSource.src = "image/gyosai.gif";
  }
  if (objSource.id == "isigama") {
    objSource.src = "image/isigama.gif";
  }
  if (objSource.id == "drink") {
    objSource.src = "image/drink.gif";
  }
  if (objSource.id == "send") {
    objSource.src = "image/send.gif";
  }
  if (objSource.id == "print") {
    objSource.src = "image/print.gif";
  }
}

/***************************************************************************************************
  別画面を開く関数                                                                                  
***************************************************************************************************/
function g_openWindow(strUrl, intWidth, intHeight) {
  var strWindowPrm = "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,risizable=no,top=0,left=0";
  //var objWindow;
  if (intWidth == undefined) {
    intWidth = "500";
  }
  if (intHeight == undefined) {
    intHeight = "600";
  }
  if(strUrl == "map.html"){
    win = "map";
  }else{
    win = "open";
  }
  strWindowPrm = strWindowPrm + ",width=" + intWidth
  strWindowPrm = strWindowPrm + ",height=" + intHeight
  window.open(strUrl, win, strWindowPrm);
  //objWindow = window.open(strUrl, win, strWindowPrm);
  //objWindow.focus();
}

function g_checkCharacter(objElement, intCheckKbn) {
  var strText_1 = "abcdefghijklmnopqrstuvwxyz";
  var strText_2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  var strText_3 = "0123456789";
  var strText_4 = "ｱｲｳｴｵｶｷｸｹｺｻｼｽｾｿﾀﾁﾂﾃﾄﾅﾆﾇﾈﾉﾊﾋﾌﾍﾎﾏﾐﾑﾒﾓﾔﾕﾖﾗﾘﾙﾚﾛﾜｦﾝｧｨｩｪｫｬｭｮｯﾞﾟｰ-";
  var strSource = objElement.value;
  var strChar;
  var strParmit;
  var strMessage;
  var intLocation;
  var i;
  
  switch (intCheckKbn) {
    case 1:
      strParmit = strText_1;
      strMessage = "半角英小文字"
      break;
    case 2:
      strParmit = strText_2;
      strMessage = "半角英大文字"
      break;
    case 3:
      strParmit = strText_1 + strText_2;
      strMessage = "半角英文字"
      break;
    case 4:
      strParmit = strText_3;
      strMessage = "半角数字"
      break;
    case 5:
      strParmit = strText_1 + strText_3;
      strMessage = "半角英小文字・半角数字"
      break;
    case 6:
      strParmit = strText_2 + strText_3;
      strMessage = "半角英大文字・半角数字"
      break;
    case 7:
      strParmit = strText_1 + strText_2 + strText_3;
      strMessage = "半角英数"
      break;
    case 8:
      strParmit = strText_4;
      strMessage = "半角カナ"
      break;
    case 1024:
      strParmit = strText_1 + strText_2 + strText_3 + "@._-";
      strMessage = "半角英数、@、.、_、-"
      break;
    case 1025:
      strParmit = strText_1 + strText_2 + strText_3 + "_-";
      strMessage = "半角英数、_、-"
      break;
    default:
      strParmit = strText_1 + strText_2 + strText_3;
      strMessage = "半角英数"
      break;
  }
  for (i = 0 ; i < strSource.length ; i++) {
    strChar = strSource.charAt(i);
    intLocation = strParmit.indexOf(strChar);
    if (intLocation == -1) {
      alert(strMessage + "以外は入力できません");
      objElement.value = "";
      objElement.focus();
      return false;
    }
  }
  return true;
}

/*==============
  数値チェック  
==============*/
function g_sujicheck(objFld, intMin, intMax, intFlag, intDecimals) {
  var strMsg;
  // 省略可能な引数の設定
  if (intMax == undefined) {
    intMax = null;
  }
  if (intMin == undefined) {
    intMin = null;
  }
  // @データの空白チェック
  if (objFld.value == "") {
    return false;
  }
  // Aデータの変換
  objFld.value = g_format(objFld.value, intFlag, intDecimals);
  // B数値チェック
  if (objFld.value == "") {
    alert("数値を入力してください");
    objFld.focus();
    return false;
  }
  // C最大値・最小値チェック
  if (((intMax != null) && (intMax < g_tonumber(objFld.value))) || ((intMin != null) && (intMin > g_tonumber(objFld.value)))) {
    if (intMax == null) {
      strMsg = intMin + "以上の数値を入力してください";
      objFld.value = "";
    } else if (intMin == null) {
      strMsg = intMax + "以下の数値を入力してください";
      objFld.value = "";
    } else {
      strMsg = intMin + "以上" + intMax + "以下の数値を入力してください";
      objFld.value = "";
    }
    alert(strMsg);
    objFld.focus();
    return false;
  }
  return true;
}

function g_tonumber(strNumber) {
  // @コンマを取り除き浮動小数点に変換
  strNumber += "";
  return parseFloat(strNumber.replace(/,/g, ""));
}
/*==================================
  コンマ区切りの数値文字列にに変換  
==================================*/
function g_format(varNumber, intFlag, intDecimals) {
  var strSign = "";
  var strInteger = "";
  var strDecimal = "";
  var intPlace;
  var i;
  // 省略可能な引数の設定
  if (intFlag == undefined) {
    intFlag = -1;
  }
  if (intDecimals == undefined) {
    intDecimals = 0;
  }
  // @浮動小数点に変換
  varNumber = g_tonumber(varNumber);
  if (isNaN(varNumber)) {
    return "";
  }
  // A数値の整形
  switch (intFlag) {
    case -1:
      //特別な処理を行わない
      varNumber = "" + varNumber;
      break;
    case 0:
      //小数点以下第(intDecimals)位で四捨五入
      varNumber = "" + Math.round(varNumber * Math.pow(10, intDecimals)) / Math.pow(10, intDecimals);
      break;
    case 1:
      //小数点以下第(intDecimals)位で切り捨て
      varNumber = "" + Math.floor(varNumber * Math.pow(10, intDecimals)) / Math.pow(10, intDecimals);
      break;
    case 2:
      //小数点以下第(intDecimals)位で切り上げ
      varNumber = "" + Math.ceil(varNumber * Math.pow(10, intDecimals)) / Math.pow(10, intDecimals);
      break;
  }
  // B整数部は３桁ごとにカンマを挿入
  //   小数部は桁数をそろえる
  if (varNumber.charAt(0) == "-") {
    strSign = "-";
    varNumber = varNumber.substring(1);
  }
  intPlace = varNumber.indexOf(".");
  if (intPlace != -1) {
    strDecimal = varNumber.substring(intPlace);
    varNumber = varNumber.substring(0, intPlace);
  }
  if (intDecimals > 0) {
    if (strDecimal == "") {
      strDecimal = ".";
    }
    strDecimal = strDecimal + "0000000000";
    strDecimal = strDecimal.substring(0, intDecimals + 1);
  }
  for (i = varNumber.length - 1 ; i >= 0 ; i--) {
    strInteger = varNumber.charAt(i) + strInteger;
    if ((varNumber.length - i) % 3 == 0 && i != 0) {
      strInteger = "," + strInteger;
    }
  }
  return strSign + strInteger + strDecimal;
}

