var mac = (navigator.appVersion.indexOf('Mac') != -1) ? true:false;
var ie = (navigator.appName.charAt(0) == "M") ? true:false;

var NUM = "0123456789";	
var SALPHA = "abcdefghijklmnopqrstuvwxyz";
var ALPHA = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"+SALPHA;
var SPECIAL = "`~!@#$%^&*()-_=+\\|<,.>/?;:'\"[]{}";

if(mac){
	if(ie){
	//for Mac IE
		document.write('<LINK rel="stylesheet" type="text/css" href="../main/css/for_macie.css">');
	}
	//for Mac NN
	else{
		document.write('<LINK rel="stylesheet" type="text/css" href="../main/css/for_macnn.css">');
	}
}

else{
	if(ie){
	//for Win IE
		document.write('<LINK rel="stylesheet" type="text/css" href="../main/css/for_winie.css">');
	}
	//for Win NN
	else{
		document.write('<LINK rel="stylesheet" type="text/css" href="../main/css/for_winnn.css">');
	}
}

function cartConfirm() {
	var retVal = window.open('Cart_Confirm.html', 'newwincart', 'resizable=yes,menubar=no,toolbar=no,directories=no,status=yes,location=no,scrollbars=yes,width=780,height=550');

	if (typeof retVal != "undefined" && retVal) {
		  document.location.href='http://www.fiq-online.com/index.html';
	}
}

function spawnWindow(URL,Name,features) {
	window.open(URL,Name,features);
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
window.open(theURL,winName,features);
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
  var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
  if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v3.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function update_frame(myoptions) 
{
	destination = myoptions[myoptions.selectedIndex].value;
	if (destination == "null")
	{
			return true;
	}
	window.open(destination, '_top');
	myoptions.selectedIndex = 0;

	return true;
}
function displayColumn(obj) {
		var columnIndex = obj.options[obj.selectedIndex].value;
        if (columnIndex == "null")
        {
                return false;
        } else {
				window.open("/main/cm_column.php?idx=" + columnIndex, "_top");
		}
}
function displayGallery(obj) {
		var galleryIndex = obj.options[obj.selectedIndex].value;
        if (galleryIndex == "null")
        {
                return false;
        } else {
				window.open("/main/cm_gallery.php?idx=" + galleryIndex, "_top");
		}
}
function popup_sel(pop_sel) {
	a = pop_sel.selectedIndex;
	window.open(pop_sel.options[a].value,"bp","width=750,height=500");
}
function openNews(idx) {
	var w = window.open('../main/cm_news.php?idx=' + idx, '_blank', 'resizable=yes,menubar=no,directories=no,status=yes,location=no,scrollbars=no,width=750,height=500');
	w.focus();
}

// ----------------------------------------------------------------
function CheckGoodString( sStr, sGoodString )
{
	var i;
	for ( i = 0; i < sStr.length; i++ )
	{
		if ( sGoodString.indexOf( sStr.substring(i, i+1) ) < 0 )
		{
			return false;
		}
	}
		
	return true;
}
// ----------------------------------------------------------------

// ----------------------------------------------------------------
function CheckBadString( sStr, sBadStr )
{
	var i;
	for ( i = 0; i < sStr.length; i++ )
	{
		if ( sBadStr.indexOf( sStr.substring(i, i+1) ) >= 0)
		{
			return false;
		}
	}

	return true;
}
// ----------------------------------------------------------------

// ----------------------------------------------------------------
function CheckTextObjectValue( oTextObject, sCheckStr, sGB, sErrorMsg )
{
	var oValue = oTextObject.value;

	if ( oValue == "" )
	{
		return true;
	}

	if ( sGB == "Good" )
	{
		if ( !CheckGoodString( oValue, sCheckStr ) )
		{
			alert( sErrorMsg );
			oTextObject.focus();
			return false;
		}
	}
	else
	{
		if ( !CheckBadString( oValue, sCheckStr ) )
		{
			alert( sErrorMsg );
			oTextObject.focus();
			return false;
		}
	}
	return true;
}

function checkSubmit()
{
	var f = document.form;
	
	if ( f.email.value == "" )
	{
		alert( "メールアドレスを入力してください。" );
		f.email.focus();
		return false;
	}
	if ( f.passwd.value == "" )
	{
		alert( "パスワードを入力してください。" );
		f.passwd.focus();
		return false;
	}	
	return CheckInput();	
}

function checkSubmit2()
{
	var f = document.cform;
	var check_agreed = document.cform.agreed.checked;
	if (f.origin_sn.value == '') {
		alert('生地を選択してください');
		return false;
	}
	var count = (check_agreed ? 1 : 0)
	if ( count < 1 )
	{
		alert( "READ ATTENTIONを確認の上、「同意する」をチェックして下さい。" );
		f.agreed.focus();
		return false;
	}
}

function checkSubmit3()
{
	var f = document.cform;
	var check_agreed = document.cform.agreed.checked;

	if (f.opt_sn.value == '') {
		alert('カートに入れる商品が選択されておりません。');
		return false;
	}	
	
	var count = (check_agreed ? 1 : 0)
	if ( count < 1 )
	{
		alert( "READ ATTENTIONを確認の上、「同意する」をチェックして下さい。" );
		f.agreed.focus();
		return false;
	}
}

function checkSubmit4()
{
	var f = document.cform;
	var check_agreed = document.cform.agreed.checked;
	
	if (hasSize) {
		if (f.opt_sn.value == '') {
			alert('サイズを選択してください');
			return false;
		}
	}
	
	if (f.origin_sn.value == '') {
		alert('生地を選択してください');
		return false;
	}
	
	if (hasOpt) {
		if (f.item_opt.value == '') {
			alert(optselect.type + 'を選択してください');
			return false;
		}
	}
	var count = (check_agreed ? 1 : 0)
	if ( count < 1 )
	{
		alert( "READ ATTENTIONを確認の上、「同意する」をチェックして下さい。" );
		f.agreed.focus();
		return false;
	}
}

function checkSubmit5()
{
	var f = document.cform;
	var check_agreed = document.cform.agreed.checked;
	
	
	if (f.origin_sn.value == '') {
		alert('生地を選択してください');
		return false;
	}
	if (f.order_opt1.value == '' || f.order_opt2.value == '') {
		alert('サイズを入力して決定をクリックしてください ');
		return false;
	}
	
	var count = (check_agreed ? 1 : 0)
	if ( count < 1 )
	{
		alert( "READ ATTENTIONを確認の上、「同意する」をチェックして下さい。" );
		f.agreed.focus();
		return false;
	}
}

function checkSubmit6()
{
	var f = document.cform;
	var check_agreed = document.cform.agreed.checked;
	
	
	if (hasSize) {
		if (f.opt_sn.value == '') {
			alert('ｽﾀｲﾙを選択してください ');
			return false;
		}
	}
	
	if (f.origin_sn.value == '') {
		alert('生地を選択してください');
		return false;
	}
	
	if (f.item_opt.value == '') {
		alert('開き方を選択してください ');
		return false;
	}	
	if (f.order_opt1.value == '' || f.order_opt2.value == '') {
		alert('サイズを入力して決定をクリックしてください ');
		return false;
	}
	if (f.order_opt3.value == '') {
		alert('フックタイプを選択してください');
		return false;
	}	
	
	var count = (check_agreed ? 1 : 0)
	if ( count < 1 )
	{
		alert( "READ ATTENTIONを確認の上、「同意する」をチェックして下さい。" );
		f.agreed.focus();
		return false;
	}
}

function checkSubmit7()
{
	var f = document.cform;
	var check_agreed = document.cform.agreed.checked;
	
	
	if (hasSize) {
		if (f.opt_sn.value == '') {
			alert('ｽﾀｲﾙを選択してください ');
			return false;
		}
	}
	
	if (f.origin_sn.value == '') {
		alert('生地を選択してください');
		return false;
	}
	
	if (f.item_opt.value == '') {
		alert('取付方法を選択してください ');
		return false;
	}	
	if (f.order_opt1.value == '' || f.order_opt2.value == '') {
		alert('サイズを入力して決定をクリックしてください ');
		return false;
	}
	if (f.order_opt3.value == '') {
		alert('操作ポジションを選択してください');
		return false;
	}	
	
	var count = (check_agreed ? 1 : 0)
	if ( count < 1 )
	{
		alert( "READ ATTENTIONを確認の上、「同意する」をチェックして下さい。" );
		f.agreed.focus();
		return false;
	}
}

function CheckInput()
{	
	var f = document.form;
	// Check E-Mail type
	if ( !CheckTextObjectValue( f.email, "@.-_"+ALPHA+NUM, "Good", "メールアドレスの形式を確認してください。 例: e-mail@domain.com" ) )
	{
		return false;
	}	
	else if ( f.email.value != "" )
	{
		var iAt = f.email.value.indexOf('@');
		var iDot = f.email.value.indexOf('.');
		if ( iAt <= 0 || iAt == f.email.value.length - 1 || iDot <= 0 || iDot == f.email.value.length - 1 || iDot+1 == iAt || iAt+1 == iDot )
		{
			alert( "メールアドレスの形式を確認してください。例: email@domain.com" );
			f.email.focus();
			return false;
		}
	}	
}

function loadData(count) {
	var sourceDiv = document.getElementById("spec" + count);
	writeSpec(sourceDiv.innerHTML);
	writeNum(count);
	writeImg(count);
}
function writeSpec(str) {
	var targetDiv = document.frames["itemspec"].document.getElementById("targetDiv");
	targetDiv.innerHTML = str;
}
function writeNum(num) {
	var targetImage = document.getElementById("itemnum");
	targetImage.src = 'img/item/0' + num + '.gif' ;		
}
function writeImg(num) {
	var targetImage = document.getElementById("itemimg");
	targetImage.src = document.getElementById("b0" + num).src;	
}
function writeAttention() {
	var sourceDiv = document.getElementById("attentionData");
	var targetDiv = document.frames['attention'].document.getElementById("targetDiv");
	targetDiv.innerHTML = sourceDiv.innerHTML;	
}
function changeQuantity(plus) {
	var targetSpan = document.getElementById("totalQuantity");
	var count = 100 + parseInt(plus);
	targetSpan.innerText = count;
	var f = document.cform;
	f.pcount.value = count / 10;
}

function selectOrigin(item_sn, origin_sn, origin_name, item_stock) {
	if (item_stock=="2") {
		alert("欠品中の商品です。選択できません。");
		return;
	} else if (item_stock=="3") {
		alert("SOLD OUTの商品です。選択できません。");
		return;
	}
	var f = document.cform;
	f.origin_name.value = origin_name;
	f.origin_sn.value = origin_sn;
	actionFrame.location.replace('selectTextile.php?origin_sn=' + origin_sn + '&item_sn=' + sitem_sn + '&fixornot=' + sfixornot + '&template=' + stemplate + '&flag_sizeoption=' +  sflag_sizeoption);	
}

function selectUnique(unique_sn, sn, unique_name, item_stock) {
	if (item_stock=="2") {
		alert("欠品中の商品です。選択ができません。")
		return;
	} else if (item_stock=="3") {
		alert("SOLD OUTになった商品です。選択ができません。")
		return;
	}
	var f = document.cform;
	f.origin_name.value = unique_name;
	f.opt_sn.value = sn;
	f.origin_sn.value = 0;	
	actionFrame.location.replace('selectUnique.php?unique_sn=' + unique_sn + '&sn=' + sn);
}

function selectOutlet(outlet_sn, sn, outlet_name, item_stock) {
	if (item_stock=="2") {
		alert("欠品中の商品です。選択ができません。")
		return;
	} else if (item_stock=="3") {
		alert("SOLD OUTになった商品です。選択ができません。")
		return;
	}
	var f = document.cform;
	f.origin_name.value = outlet_name;
	f.opt_sn.value = sn;
	f.origin_sn.value = 0;	
	actionFrame.location.replace('selectOutlet.php?outlet_sn=' + outlet_sn + '&sn=' + sn);
}

function initOrigin() {
	var f = document.cform;
	f.origin_name.value = '';
	f.origin_sn.value = '';
	document.getElementById("textileSelectDiv").innerHTML = document.getElementById("defaultTextileSelectDiv").innerHTML;	
}
function selectSize(item_sn, opt_sn, opt_name) {
	var f = document.cform;
	f.opt_sn.value = opt_sn;
	f.size_opt.value = opt_name;
	initOrigin();	
	actionFrame.location.replace('selectSize.php?item_sn=' + sitem_sn + '&opt_sn=' + opt_sn + '&opt_name=' + opt_name);		
}
function selectOpt(item_sn, opt_sn, opt_name) {
	var f = document.cform;
	f.item_opt.value = opt_name;
	actionFrame.location.replace('selectOpt.php?item_sn=' + sitem_sn + '&opt_sn=' + opt_sn + '&opt_name=' + opt_name);		
}
function savesizeform() {
	var f = document.cform;
	if ( document.getElementById("sizeformwidth").value == "" )
	{
		alert( "サイズを入力してください。" );
		document.getElementById("sizeformwidth").focus();
		return;
	}
	if ( !CheckTextObjectValue( document.getElementById("sizeformwidth"), NUM, "Good", "半角数字を記入してください。" ) )
	{
		return;
	}	
	
	if ( document.getElementById("sizeformheight").value == "" )
	{
		alert( "サイズを入力してください。" );
		document.getElementById("sizeformheight").focus();
		return;
	}	
	if ( !CheckTextObjectValue( document.getElementById("sizeformheight"), NUM, "Good", "半角数字を記入してください。" ) )
	{
		return;
	}	
	f.order_opt1.value = document.getElementById("sizeformwidth").value;
	f.order_opt2.value = document.getElementById("sizeformheight").value;
	var opt1_half = Math.round(f.order_opt1.value / 2);
	var opt2_half = f.order_opt2.value;
	
	document.getElementById("defaultsizeform").style.display = 'none';
	template = document.getElementById("writtensizetemplate").innerHTML;
	template = template.replace('@width', f.order_opt1.value);
	template = template.replace('@height', f.order_opt2.value);
	template = template.replace('@width_half', opt1_half);
	template = template.replace('@height_half', opt2_half);
	
	document.getElementById("writtensizeform").innerHTML = template;
	document.getElementById("writtensizeform").style.display = '';
}
function resetsizeform() {
	var f = document.cform;
	f.order_opt1.value = '';
	f.order_opt2.value = '';
	document.getElementById("sizeformwidth").value = '';
	document.getElementById("sizeformheight").value = '';	
	document.getElementById("defaultsizeform").style.display = '';
	document.getElementById("writtensizeform").style.display = 'none';	
}
function selectDefaultSide() {
	var f = document.cform;
	f.item_opt.value = '';

	document.getElementById("default").style.display = '';
	document.getElementById("defaultsize").style.display = '';
	
	document.getElementById("oneside").style.display = 'none';
	document.getElementById("onesidesize").style.display = 'none';	
	
	document.getElementById("twoside").style.display = 'none';
	document.getElementById("twosidesize").style.display = 'none';	
}
function selectOneSide() {
	var f = document.cform;
	f.item_opt.value = '片開き';
	
	document.getElementById("default").style.display = 'none';
	document.getElementById("defaultsize").style.display = 'none';
	
	document.getElementById("oneside").style.display = '';
	document.getElementById("onesidesize").style.display = '';	
	
	document.getElementById("twoside").style.display = 'none';
	document.getElementById("twosidesize").style.display = 'none';	
	document.getElementById("twosideview").style.display = 'none';	
}
function selectTwoSide() {
	var f = document.cform;
	f.item_opt.value = '両開き';

	document.getElementById("default").style.display = 'none';
	document.getElementById("defaultsize").style.display = 'none';
	
	document.getElementById("oneside").style.display = 'none';
	document.getElementById("onesidesize").style.display = 'none';	
	
	document.getElementById("twoside").style.display = '';
	document.getElementById("twosidesize").style.display = '';
	document.getElementById("twosideview").style.display = '';	
}
function selectDefaultSideSize() {
	document.getElementById("defaultsize").style.display = '';
	document.getElementById("onesidesize").style.display = 'none';	
	document.getElementById("twosidesize").style.display = 'none';	
}
function selectOneSideSize() {
	document.getElementById("defaultsize").style.display = 'none';
	document.getElementById("onesidesize").style.display = '';	
	document.getElementById("twosidesize").style.display = 'none';	
}
function selectTwoSideSize() {
	document.getElementById("defaultsize").style.display = 'none';
	document.getElementById("onesidesize").style.display = 'none';	
	document.getElementById("twosidesize").style.display = '';	
}
function selectDefaultHook() {
	var f = document.cform;
	f.order_opt3.value = '';

	document.getElementById("defaulthook").style.display = '';
	document.getElementById("atypehook").style.display = 'none';
	document.getElementById("btypehook").style.display = 'none';	
}
function selectAtypeHook() {
	var f = document.cform;
	f.order_opt3.value = 'Aフック';
	
	document.getElementById("defaulthook").style.display = 'none';
	document.getElementById("atypehook").style.display = '';
	document.getElementById("btypehook").style.display = 'none';	
		
}
function selectBtypeHook() {
	var f = document.cform;
	f.order_opt3.value = 'Bフック';
	document.getElementById("defaulthook").style.display = 'none';
	document.getElementById("atypehook").style.display = 'none';
	document.getElementById("btypehook").style.display = '';	
}
function selectSyomen() {
	var f = document.cform;
	f.item_opt.value = '正面付け';
	
	document.getElementById("default").style.display = 'none';
	document.getElementById("defaultsize").style.display = 'none';
	
	document.getElementById("syomen").style.display = '';
	document.getElementById("syomensize").style.display = '';	
	
	document.getElementById("tenjo").style.display = 'none';
	document.getElementById("tenjosize").style.display = 'none';	
		
}
function selectTenjo() {
	var f = document.cform;
	f.item_opt.value = '天井付け';

	document.getElementById("default").style.display = 'none';
	document.getElementById("defaultsize").style.display = 'none';
	
	document.getElementById("syomen").style.display = 'none';
	document.getElementById("syomensize").style.display = 'none';	
	
	document.getElementById("tenjo").style.display = '';
	document.getElementById("tenjosize").style.display = '';	
}
function selectSyomenSize() {
	document.getElementById("defaultsize").style.display = 'none';
	document.getElementById("syomensize").style.display = '';	
	document.getElementById("tenjosize").style.display = 'none';	
}
function selectTenjoSize() {
	document.getElementById("defaultsize").style.display = 'none';
	document.getElementById("syomensize").style.display = 'none';	
	document.getElementById("tenjosize").style.display = '';	
}
function selectDefaultPosition() {
	var f = document.cform;
	f.order_opt3.value = '';

	document.getElementById("defaultposition").style.display = '';
	document.getElementById("leftposition").style.display = 'none';
	document.getElementById("rightposition").style.display = 'none';	
}
function selectLeftPosition() {
	var f = document.cform;
	f.order_opt3.value = '左操作';
	
	document.getElementById("defaultposition").style.display = 'none';
	document.getElementById("leftposition").style.display = '';
	document.getElementById("rightposition").style.display = 'none';	
		
}
function selectRightPosition() {
	var f = document.cform;
	f.order_opt3.value = '右操作';
	document.getElementById("defaultposition").style.display = 'none';
	document.getElementById("leftposition").style.display = 'none';
	document.getElementById("rightposition").style.display = '';	
}

function getCookieVal (offset) {
   var endstr = document.cookie.indexOf (";", offset);
   if (endstr == -1) endstr = document.cookie.length;
   return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) {
   var arg = name + "=";
   var alen = arg.length;
   var clen = document.cookie.length;
   var i = 0;
   while (i < clen) { //while open
      var j = i + alen;
      if (document.cookie.substring(i, j) == arg)
         return getCookieVal (j);
      i = document.cookie.indexOf(" ", i) + 1;
      if (i == 0) break; 
   } //while close
   return null;
}

function SetCookie(name, value) {
   var argv = SetCookie.arguments;
   var argc = SetCookie.arguments.length;
   var expires = (2 < argc) ? argv[2] : null;
   var path = (3 < argc) ? argv[3] : null;
   var domain = (4 < argc) ? argv[4] : null;
   var secure = (5 < argc) ? argv[5] : false;
   document.cookie = name + "=" + escape (value) +
      ((expires == null) ? "" : 
         ("; expires=" + expires.toGMTString())) +
      ((path == null) ? "" : ("; path=" + path)) +
      ((domain == null) ? "" : ("; domain=" + domain)) +
      ((secure == true) ? "; secure" : "");
}
function procFav(item_sn, sn, obj) {
	var savedata = GetCookie("textilefav");

	if (savedata == null) {
		savedata = '';
	}

	var nowdata = '';
	nowdata += item_sn + '_' + sn;
	nowdata += ',';

	if (obj.checked) {
		savedata += nowdata;
	} else {
		var re = new RegExp(nowdata);
		savedata = savedata.replace(re, "");
	}
	SetCookie("textilefav", savedata);
}
function checkFav() {
	
	var savedata = GetCookie("textilefav");
	if (savedata == null) {
		return;
	} 
	var items = savedata.split(",");
	var target;	

	for (var i = 0; i < items.length; i++) {
		target = document.getElementById("fav_" + items[i]);
		if (target != null) {
			target.checked = true;
		}
	}
	
}
