﻿function chkZenkakau(strForm)
{
    var str = strForm;
    var len = str.length;
    var n = 0;
    
    for(var i = 0; i < len; i++) {
        if(iszenkaku(str.charAt(i)))    //全角なら
            i++;                        //１バイト飛ばす
        n++;
    }
    return n;
    //alert(""+n);                        //文字数
}

function IsZenkakuStr(strForm)
{

    for(var i=0;i<strForm.length;i++)
    {
        if(!iszenkaku(strForm.charAt(i)))
        {
            return false;
        }
    }
    return true;
}
//全角ならtrueを返す
function iszenkaku(strForm) {
    //var str = escape(strForm);
    var str = encodeURI(strForm);
    if(str.charAt(0) != "%")
        return false;
    if(str.charAt(1) == "8")
        return true;
    else if(str.charAt(1) == "9")
        return true;
    else if(str.charAt(1) == "E")
        return true;
    else if(str.charAt(1) == "F")
        return true;
    else
        return false;
}

function checkIsZenkaku(value) {
  for (var i = 0; i < value.length; ++i) {
    var temp = value.charCodeAt(i);
    
    if (temp < 256 || (temp >= 0xff61 && temp <= 0xff9f)) {
      return false;
    }
  }
  return true;
}

function checkIsZenkakuKatakana(value)
{
    if (value.match(/^[\u30A0-\u30FF]+$/)){ return true;}
    else {    return false;}
}

function checkLetter(strings)
{    
    var c;
    var i;
    for(i=0;i<strings.length;i++)
    {
        c = strings.charAt(i);
        c = c.replace("\"","");
        if((c < 'a' || c > 'z')&&(c < 'A' || c > 'Z')&&(c < '0' || c > '9'))
       {
         return(false);
        }
    }
    return(true);
}

function checkSpace(str, mode) {
  for (var i = 0; i < str.length; i++) {
    if (str.charCodeAt(i) == 32 || str.charCodeAt(i) == 12288) {
        return false;
    }      
  }
  return true;
}

function chkInfo()
{

    var strLocalID = document.all["PageControl_strLocalID"].value.trim();
    var strPassword = document.all["PageControl_strPassword"].value.trim();
    var strPasswordConfirm = document.all["PageControl_strPasswordConfirm"].value.trim();
    var strNickName = document.all["PageControl_strNickName"].value.trim();
    var strName_first = execTrim(document.all["PageControl_strName_first"].value.trim());
    var strName_second = execTrim(document.all["PageControl_strName_second"].value.trim());
    var strName_otherNotation_first = execTrim(document.all["PageControl_strName_otherNotation_first"].value.trim());
    var strName_otherNotation_second = execTrim(document.all["PageControl_strName_otherNotation_second"].value.trim());
    var strPassAnswer = execTrim(document.all["PageControl_strPassAnswer"].value.trim());
    
    if( strLocalID == "")
    {
        alert("IDを入力してください。");
        return false;
    }
    
    if( document.all["PageControl_checkLocalID1"].value == "")
    {
        alert("ID重複チェックをしてください。");
        return false;
    }
  
    if( strNickName == "")
    {
        alert("ニックネームを入力してください。");
        return false;
    }
    
    if( document.all["PageControl_checkNickName1"].value == "")
    {
        alert("ニックネーム重複チェックをしてください。");
        return false;
    }
    
    if(strNickName == strLocalID)
    {
        alert("IDとニックネームを同じにすることはできません。");
        return false;
    }
    
    if( strPassword == "")
    {
        alert("パスワードを入力してください。");
        return false;
    }
    else
    {
        if( iszenkaku(strPassword) == true)
        {
            alert("パスワードの入力形式が正しくありません。");
            return false;
        }
      
        if ( checkLetter(strPassword) == false)
        {
            alert("パスワードは半角英数字で入力してください");
            return false;
        }
        
        if( strPassword.length < 4)
        {
            alert("パスワードは4文字以上入力してください。");
            return false;
        }
        
        if( strPassword.length > 20)
        {
            alert("パスワードは20文字以下入力してください。");
            return false;
        }
    } 
    
    if( strPasswordConfirm == "")
    {
        alert("パスワードを再入力してください。");
        return false;
    }
    
    if( strPassword != strPasswordConfirm )
    {
        alert("確認のため同じパスワードを再入力してください。");
        return false;
    }    
    
    if( document.all["PageControl_drAddress"].selectedIndex == "0")
    {
        alert("都道府県を選択してください。");
        return false;
    }
    
    if( strName_first == "" || strName_second == "")
    {
        alert("氏名(漢字)を入力してください。");
        return false;
    }
    else
    {
        if (!checkIsZenkaku(strName_first))
        {
            alert("氏名(漢字)姓の入力形式が正しくありません。");
            return false;
        }
        
        if( !checkIsZenkaku(strName_second))
        {
            alert("氏名(漢字)名の入力形式が正しくありません。");
            return false;
        }
    }
    

    if( strName_otherNotation_first == "" || strName_otherNotation_second == "")
    {
        alert("氏名(全角カタカナ)を入力してください。");
        return false;
    }
    else
    {
        if( !checkIsZenkakuKatakana(strName_otherNotation_first)) // || iszenkaku(strName_otherNotation_second) == false)
        {
            alert("氏名(全角カタカナ)姓の入力形式が正しくありません。");
            return false;
        }
        
        if( !checkIsZenkakuKatakana(strName_otherNotation_second))
        {
            alert("氏名(全角カタカナ)名の入力形式が正しくありません。");
            return false;
        }
    }
    
    if( document.all["PageControl_txtUserMail"].value == "" )
    {
        alert("Eメールアドレスを入力してください。");
        return false;
    }
    
    if( document.all["PageControl_txtUserMail"].value != document.all["PageControl_txtReUserMail"].value)
    {
        alert("メールアドレスが一致しません。");
        return false;
    }
    
    if ( document.all["PageControl_strPhone1"].value == "" || document.all["PageControl_strPhone2"].value == "" || document.all["PageControl_strPhone3"].value == "")
    {
        alert("電話番号を入力してください。");
        return false;
    }

    if ( document.all["PageControl_strPhone3"].value.length < 4 )
    {
        alert("電話番号をご確認ください。");
        return false;
    }
    
    if ( document.all["PageControl_strPhone1"].value.length > 4 || document.all["PageControl_strPhone2"].value.length > 4 || document.all["PageControl_strPhone3"].value.length > 4)
    {
        alert("電話番号は4文字まで入力してください。");
    }

  
    if ( IsZenkakuStr(document.all["PageControl_strPhone1"].value) || IsZenkakuStr(document.all["PageControl_strPhone2"].value) || IsZenkakuStr(document.all["PageControl_strPhone3"].value) || IsZenkakuStr(document.all["PageControl_strYear"].value))
    {
        ChangeInValidChar();
    }
    
    if ( !isNumber(document.all["PageControl_strPhone1"].value) || !isNumber(document.all["PageControl_strPhone2"].value) || !isNumber(document.all["PageControl_strPhone3"].value))
    {
        alert("電話番号を数字で入力してください。");
        return false;
    }

    if( document.all["PageControl_strYear"].value == "" || document.all["PageControl_strYear"].value == null )
    {
        alert("生年月日の年を入力してください。");
        return false;
    }
    
    if( document.all["PageControl_strYear"].value.length < 4)
    {
        alert("生年月日をご確認ください。");
        return false;
    }
    
    if ( !isNumber(document.all["PageControl_strYear"].value))
    {
        alert("生年月日の年を数字で入力してください。");
        return false;
    }
    
    if( document.all["PageControl_strPassHint"].selectedIndex == 0)
    {
        alert("秘密の質問を選択してください。");
        return false;
    }
    
    if( strPassAnswer == "")
    {
        alert("秘密の質問の答えを入力してください。");
        return false;
    }
}

function convert1ByteChar(strArg) {
	var FullChar = ['０', '１', '２', '３', '４', '５', '６', '７', '８', '９'];
	var byteChar = "";
	var byteString = "";
	var charInput;
	for(i=0;i<strArg.length;i++) {
		charInput = strArg.charAt(i);
		
		for(j=0;j<10;j++) {
    		if(charInput==FullChar[j]) {
    			charInput = j;
    		}
		}			
		byteString = byteString + charInput;
	}
	return byteString;
}

function ChangeInValidChar()
{
	document.all["PageControl_strYear"].value = convert1ByteChar(document.all["PageControl_strYear"].value);
	document.all["PageControl_strPhone1"].value = convert1ByteChar(document.all["PageControl_strPhone1"].value);
	document.all["PageControl_strPhone2"].value = convert1ByteChar(document.all["PageControl_strPhone2"].value);
	document.all["PageControl_strPhone3"].value = convert1ByteChar(document.all["PageControl_strPhone3"].value);
}

function GetAddressWindow()
{
	var zipcode1 = document.all["PageControl_strZipcode1"].value;
	var zipcode2 = document.all["PageControl_strZipcode2"].value;
	
	if ( zipcode1 == '' || zipcode2 == '' || isNumber(zipcode1) == false || isNumber(zipcode2) == false )
	{
		alert( '郵便番号を正しく入力してください。' );
	}
	else
	{
		window.open('../Page/NX.aspx?URL=membership/popup/member_registid_zipcode&zipcode1=' + zipcode1 + '&zipcode2=' + zipcode2 + '&pageID=1', 'GetAddressWindow', 'status=no, location=no, scrollbars=no, resizable=no, width=430, height=284');
	}
}

function isNumber(strArg)
{
	var charNumber = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];
	var charInput;
	var flag;
	
	for( i = 0; i < strArg.length; i++ )
	{
		charInput = strArg.charAt(i);
		flag = false;
		
		for( j = 0; j < 10; j++ )
		{
    		if( charInput == charNumber[j] )
    		{
    			flag = true;
    			break;
    		}
		}
		
		if( flag == false )
		{
			return false;
		}
	}
	
	return true;
}

//Space check
function execTrim(strString)
{
var kcd = event.keyCode;
if(33 <= kcd && kcd <= 40) return;
var strAnswer = strString;

for(i = 0; i < strAnswer.length; i++)
{
  strAnswer = strAnswer.replace(/^\s+|\s+$/g,"");
  strAnswer = strAnswer.replace(/^[　]+|[　]+$/g,"");
}    
return strAnswer;
}
//Space check
 String.prototype.trim = function()
 {
  return this.replace(/(^\s*)|(\s*$)/g, "");
 }


function EnLower()
{
if( IsZenkakuStr(document.all["PageControl_strLocalID"].value))
{
    alert("1111");
    return false;
}
}
