function openWin(fn,ht){ winName = window.open(fn,'winName','WIDTH=400,HEIGHT='+ht+',SCROLLBARS=0 ,resizable=yes'); winName.focus(); }
function openWinNew(fn,wt,ht,name){ winName = window.open(fn,name,'WIDTH='+wt+',HEIGHT='+ht+',SCROLLBARS=1'); winName.focus(); }

////////////////////////////////////////////////////////////////////////////////// 
// rolloverスクリプト　2007.11.20
//
////////////////////////////////////////////////////////////////////////////////
overImgClassName = 'rollover';
overImgPostfix = '_on';
Event.observe(window, 'load', RN_setMouseOverImages, false);
function RN_setMouseOverImages() {
  var btns = $A(document.getElementsByClassName(overImgClassName));
  btns.each(function (node){
    node.imgsrc = node.src;
    node.imgsrc_over = node.src.replace('.gif', overImgPostfix+'.gif').replace('.jpg', overImgPostfix+'.jpg');
    node.onmouseover = function() { this.src = this.imgsrc_over; };
    node.onmouseout = function() { this.src = this.imgsrc; };
  });
}

////////////////////////////////////////////////////////////////////////////////// 
// 別ウィンドウを開くスクリプト　2007.11.20
//
////////////////////////////////////////////////////////////////////////////////
var popupOpenWin = {

  conf : {
  className : "external",//クラス名
  fileTypes : ["pdf","doc","xls","ppt"]//←これらのファイルも
  },

  main : function(){
  var fileTypesReg = "";
  for(i = 0; i <popupOpenWin.conf.fileTypes.length; i++){
    fileTypesReg += "."+popupOpenWin.conf.fileTypes[i]+"|";
  }
  fileTypesReg=fileTypesReg.slice(0, -1);

  var a = document.links;
  for (i = 0; i < a.length; i++) {
    if (new RegExp("\\b" + popupOpenWin.conf.className + "\\b").exec(a[i].className)||
      (new RegExp(fileTypesReg).exec(a[i].getAttribute("href")))){
    a[i].onclick = popupOpenWin.openWin;
    a[i].onkeypress = popupOpenWin.openWin;
    }
  }
  },

  openWin : function(){
  var uri = this.href;
  window.open(uri, "", "toolbar=yes, location=yes, directories=yes, status=yes, menubar=yes, scrollbars=yes, resizable=yes, close=yes");
  this.href = uri;
  return false;
  },

  addEvent : function(){
  try {
    window.addEventListener('load', popupOpenWin.main, false);
  } catch (e) {
    window.attachEvent('onload', popupOpenWin.main);
  }
  }

}

popupOpenWin.addEvent();

function slowdownScroll() {
if(navigator.appName == "Microsoft Internet Explorer" && document.compatMode == "CSS1Compat") {
sctop = document.body.parentNode.scrollTop;
}
else if(window.pageYOffset){
sctop = window.pageYOffset;
} else {
sctop = document.body.scrollTop;
}

if(sctop){
scup = Math.ceil(sctop*.2);
scrollBy(0,-scup);
if (sctop-scup) setTimeout("slowdownScroll()",20);
}
}
////////////////////////////////////////////////////////////////////////////////// 

  var StaticApp = {

    defaultWord : function (obj, msg) {
      if (obj.value == msg) {
        obj.value = '';
      }
      obj.style.color = '#000';
    },

    ajaxExecute : function (b) {
      var buf = b.value;
      if (!b.disabled) {
        b.disabled = true;
        b.value = "データを送信中です。";
        new Ajax.Request(b.form.action,
          {
            asynchronous:true,
            evalScripts:true,
            parameters:Form.serialize(b.form),
            onComplete:function(request){b.disabled = false; b.value = buf;}
          }
        );
      }
    },

    execute : function (b, action, text) {
      var buf = b.value;
      if (!b.disabled) {
//        b.disabled = true;
        if (text) {
          b.value = text;
        } else {
          b.value = "データを送信中です。";
        }
        if (action) {
          b.form.action = action;
        }
        b.form.submit();
      }
    },

    resetForm : function (id) {
      $$('.text').each(function(element) {
        element.value = "";
      });
      $$('.pulldown').each(function(element) {
        element.selectedIndex = 0;
      });
      $$('.checkbox').each(function(element) {
        element.checked = false;
      });
      $$('.radio').each(function(element) {
        element.checked = false;
      });
    },

    acceptCheck : function (targetsClassName) {
      var ret = true;
      $A($$('.' + targetsClassName)).each(function(element) {
        if (element.checked == false ) {
          ret = false;
        }
      });
      return ret;
    },

    allCheck : function (checked, targets_name) {
      $A(document.getElementsByName(targets_name)).each(function(element) {
        element.checked = checked;
      });
    },

    allRadioSet : function (value, targetsClassName) {
      $$('.' + targetsClassName).each(function(element) {
        if (value == 999) {
          element.checked = false;
        } else if (element.value == value) {
          element.checked = true;
        }
      });
    },

    allPulldownSet : function (value, targetsClassName) {
      var i;
      $$('.' + targetsClassName).each(function(element) {
        for (i = 0; i < element.options.length; i++) {
          if (value == element.options[i].value) {
            element.selectedIndex = i;
          }
        }
      });
    },

    allTextSet : function (value, targetsClassName) {
      var i;
      $$('.' + targetsClassName).each(function(element) {
        element.value = value;
      });
    },

    resetMultiPulldown : function (pulldownName) {
      $A($(pulldownName).options).each(function(element) {
        element.selected = false;
      })
    },

    resizeTextarea : function (ev, defaultHeight) {
      var textarea = ev.target || ev.srcElement;
      var value = textarea.value;
      var lines = 1;
      for (var i = 0, l = value.length; i < l; i++){
        if (value.charAt(i) == '\n') lines++;
      }
      Element.setStyle(textarea, {'height': lines * 11 + defaultHeight +'px'});
    },

    addressSearch : function (form, zip, prefecture, address) {
      zipcode = zip.value.gsub(/-/, '');
      zipcode = zipcode.gsub(/１/, '1');
      zipcode = zipcode.gsub(/２/, '2');
      zipcode = zipcode.gsub(/３/, '3');
      zipcode = zipcode.gsub(/４/, '4');
      zipcode = zipcode.gsub(/５/, '5');
      zipcode = zipcode.gsub(/６/, '6');
      zipcode = zipcode.gsub(/７/, '7');
      zipcode = zipcode.gsub(/８/, '8');
      zipcode = zipcode.gsub(/９/, '9');
      zipcode = zipcode.gsub(/０/, '0');
      zipcode = zipcode.gsub(/－/, '');
      zip.value = zipcode;
      if (zipcode.length >= 3) {
        if (prefecture == '') {
          new Ajax.Request('/service/zip/search_without_prefecture',
            {
               method:'get',
               asynchronous:true,
               evalScripts:true,
               parameters:'form=' + form.id + '&zip=' + zipcode + '&address=' + address.id
            }
          )
        } else {
          new Ajax.Request('/service/zip/search',
            {
               method:'get',
               asynchronous:true,
               evalScripts:true,
               parameters:'form=' + form.id + '&zip=' + zipcode + '&prefecture=' + prefecture.id + '&address=' + address.id
            }
          )
        }
      }
    },

    collectChecked : function (target_class_name) {
      var ret = '';
      $A($$('.' + target_class_name)).each(function(element) {
        if (element.checked) {
          ret = (ret.length == 0) ? (element.value) : (ret + ',' + element.value);
        }
      })
      return ret;
    },

    highlightTr : function (obj, trId) {
      if (obj.checked) {
        $(trId).addClassName('selected');
      } else {
        $(trId).removeClassName('selected');
      }
    },

    highlightTrs : function (obj, targetsClassName) {
      $$('.' + targetsClassName).each(function(element) {
        if (obj.checked) {
          element.addClassName('selected');
        } else {
          element.removeClassName('selected');
        }
      });
    }

  }


  var AutoRuby = {

    convFlag : 1,    //モードフラグ 0:ひらがな 1:カタカナ
    baseVal  : [],

    setRuby : function (nameId, rubyId) {
      var newVal = $(nameId).value;
      if (typeof(this.baseVal[nameId]) == "undefined") {
        this.baseVal[nameId] = $(nameId).value;
      }
      if (this.baseVal[nameId] == newVal){return;}
      if (newVal == "") {
        $(rubyId).value="";
        this.baseVal[nameId] = "";
        return;
      }

      var addVal = newVal;
      for(var i=this.baseVal[nameId].length; i>=0; i--) {
        if (newVal.substr(0,i) == this.baseVal[nameId].substr(0,i)) {
          addVal = newVal.substr(i);break;
        }
      }
      this.baseVal[nameId] = newVal;
      var addruby = addVal.replace( /[^ 　ぁあ-んァー]/g, "" );
      if (addruby == ""){return;}
      if(this.convFlag){addruby = this.convKana(addruby);}
      $(rubyId).value += addruby;
    },

    convKana : function (val){
      var c, a = [];
      for(var i=val.length-1;0<=i;i--){
        c = val.charCodeAt(i);
        a[i] = (0x3041 <= c && c <= 0x3096) ? c + 0x0060 : c;
      }
      return String.fromCharCode.apply(null, a);
    }
  }

  // 注文フォームを管理するクラス
  var OrderApp = {

    // お届け先の表示・非表示
    showDelivery : function () {
      $F('order_receiver_choice') == 1 ? $('delivery_area').hide() : $('delivery_area').show();
    },

    // 掲載内容をお客様情報にコピー
    copy : function (elements_key) {
			
			
			
			switch (elements_key){
			
			case "meishi":
			  $('order_company_name').value          = $('order_log_' + elements_key + '_company_name').value;
				$('order_company_section').value       = $('order_log_' + elements_key + '_company_section').value;
				$('order_sei').value                   = $('order_log_' + elements_key + '_sei').value;
				$('order_mei').value                   = $('order_log_' + elements_key + '_mei').value;
				$('order_zip').value                   = $('order_log_' + elements_key + '_zip').value;
				$('order_address1').value              = $('order_log_' + elements_key + '_address1').value;
				$('order_address2').value              = $('order_log_' + elements_key + '_address2').value;
				$('order_tel').value                   = $('order_log_' + elements_key + '_tel1').value;
				$('order_fax').value                   = $('order_log_' + elements_key + '_tel2').value;
				$('order_prefecture_id').selectedIndex = $('order_log_' + elements_key + '_prefecture_id').value;

			  break;
			
			case "sender":
			  $('order_company_name').value          = $('order_log_' + elements_key + '_company_name').value;
				$('order_zip').value                   = $('order_log_' + elements_key + '_zip').value;
				$('order_address1').value              = $('order_log_' + elements_key + '_address1').value;
				$('order_address2').value              = $('order_log_' + elements_key + '_address2').value;
				$('order_tel').value                   = $('order_log_' + elements_key + '_tel').value;
				$('order_fax').value                   = $('order_log_' + elements_key + '_fax').value;
				$('order_prefecture_id').selectedIndex = $('order_log_' + elements_key + '_prefecture_id').value;
			  break;
			}
			
				// 全サイト共通
				$('order_mail').value                  = $('order_log_' + elements_key + '_mail').value;
				$('order_mail_confirmation').value     = $('order_log_' + elements_key + '_mail').value;
			
			
    }
  }

  var Front = {
  }
	
		// 会員情報の表示・非表示
  function showDemand() {
    $('demand').style.display = ( $('demand').style.display == 'none' ? 'block' : 'none' );
  }

  // スピナー画像の非表示
  var hideSpinner = function () {
    $$('.spinner').each(function(element) {
      element.hide();}
    );
  }
  // スピナー画像の表示
  var showSpinner = function () {
    $$('.spinner').each(function(element) {
      element.show();}
    );
  }


/*  selection.js
 *  (c) 2008 Kei Kusakari, Liu Shenwei
 *
 *  License : MIT-style license.
 *  Web site: http://blog.imishin.com/products/javascript/selectionjs/
 *
 *  selection.js - depends on prototype.js 1.6 or later
 *  http://www.prototypejs.org/
 *
/*--------------------------------------------------------------------------*/
var Selection = Class.create();
Selection.Version = "1.1";
Selection.prototype = {
  doc : document,
  initialize : function(element) {
    this.element = $(element);
    this.tmpSelection = {range: null, start:0, end:0, text: null};
    this.save();
  },
  setPrefixSuffix: function(prefix, suffix) {
    var oldText = this.text();
    var newText = prefix + oldText + suffix;
    this.replace(newText);
    if (oldText == '') {
      this.moveBetween(newText, suffix);
    }
  },
  moveBetween: function(text, suffix) {
    this.save();
    if (Prototype.Browser.IE) {
      var range = this.doc.body.createTextRange();
      range.moveToElementText(this.element);
      this.tmpSelection.range.moveStart('character', -suffix.length);
      range.setEndPoint('StartToStart', this.tmpSelection.range);
      range.setEndPoint('EndToStart', this.tmpSelection.range);
      range.select();
    } else {
      var selectedPos = this.tmpSelection.end - suffix.length;
      this.element.selectionStart = selectedPos;
      this.element.selectionEnd = selectedPos;
      this.element.focus();
    }
  },
  replace: function(text) {
    if (Prototype.Browser.IE) {
      this.tmpSelection.range.text = text;
      this.tmpSelection.range.select();
    } else {
      var val = this.element.value;
      var beforeNode = val.slice(0, this.tmpSelection.start);
      var afterNode = val.slice(this.tmpSelection.end);
      this.element.value = beforeNode + text + afterNode;
      var selectedPos = (beforeNode + text).length;
      this.element.selectionStart = selectedPos;
      this.element.selectionEnd = selectedPos;
      this.element.focus();
    }
  },
  text: function() {
    if (Prototype.Browser.IE) {
      return this.tmpSelection.range.text;
    } else {
      if (this.element.value) {
        return this.element.value.slice(this.tmpSelection.start, this.tmpSelection.end);
      } else {
        return this.tmpSelection.text;
      }
    }
  },
  save: function() {
    if (Prototype.Browser.IE) {
      this.element.focus();
      this.tmpSelection.range = this.doc.selection.createRange();
    } else {
      this.tmpSelection.start = this.element.selectionStart;
      this.tmpSelection.end = this.element.selectionEnd;
      this.tmpSelection.text = window.getSelection();
    }
  }
}

