/****************************/
/* ページバック         */
/****************************/
function pageBack(){
    history.back();
}
/****************************/
/* 入力チェック             */
/****************************/
function CheckInput(parts){
    iLength = parts.value.length
    if(iLength == 0)
        return false;
    return true;
}
/****************************/
/* 半角数値チェック         */
/****************************/
function CheckNumData(parts){
    if(isNaN(parts.value) == true)
        return false;
    return true;
}
function CheckNum(parts){
    if(!CheckNumData(parts)){
        alert("半角数値を入力してください。");
        parts.focus();
        parts.select();
    }else if(parts.value <= 0){
        alert("1以上を入力してください。");
        parts.focus();
        parts.select();
    }
}
/*****************************/
/* 電話番号/郵便番号チェック */
/*****************************/
function CheckTelNumber_ZipCodeData(parts){
    var i,chkData;
    var checkStr = new String ("0123456789-");

    //スペースを取り除く
    chkData = parts.value.replace(/ /g,"");
    for(i=0; i < chkData.length; i++){
        if(checkStr.indexOf(chkData.charAt(i),0) == -1)
            return false;
    }
    return true;
}
/****************************/
/* Eメールチェック          */
/****************************/
function CheckMailAddressData(parts){
    if(parts.value.length > 0){
        emailStr = parts.value;
        var emailPat   = /^(.+)@(.+)$/;
        var userPat    = /^[a-zA-Z0-9\._-]+$/;
        var domainPat  = /^[a-zA-Z0-9\.-]+$/;
        var invalid0   = /^(.+)\.(.+)\.(.+)$/;
        var invalid1   = /^\.(.+)/;
        var invalid2   = /(.+)\.$/;
        var invalid3   = /\.\./;

        var eMailArray = emailStr.match(emailPat);
        if (eMailArray == null)
            return false;

        var user      = eMailArray[1];
        var dom       = eMailArray[2];
        if (user.match(userPat) == null)
            return false;

        if (dom.match(domainPat) == null || dom.indexOf('.') == -1
             || dom.length < 4           || dom.match(invalid1) != null
                                         || dom.match(invalid2) != null
                                         || dom.match(invalid3) != null)
            return false;
    }
    return true;
}
//////////////////////////////
// ご注文決定確認
//////////////////////////////
function ConfirmOrder(fm){
    if(!confirm("ご注文しますか。"))
        return false;
    else{
        // お名前入力チェック
        if(!CheckInput(fm.name)){
            alert("お名前を入力してください。");
            fm.name.focus();
            return false;
        }
        // 郵便番号入力チェック
        if(!CheckInput(fm.zip_code)){
            alert("郵便番号を入力してください。");
            fm.zip_code.focus();
            return false;
        }
        // ご住所入力チェック
        if(!CheckInput(fm.address_1)){
            alert("ご住所を入力してください。");
            fm.address_1.focus();
            return false;
        }
        // 電話番号入力チェック
        if(!CheckInput(fm.tel_number)){
            alert("電話番号を入力してください。");
            fm.tel_number.focus();
            return false;
        }
        // Eメールアドレス入力チェック
        if(!CheckInput(fm.email_address)){
            alert("Eメールアドレスを入力してください。");
            fm.email_address.focus();
            return false;
        }
        return true;
    }
}
//////////////////////////////
// 郵便番号チェック
//////////////////////////////
function CheckZipCode(parts){
    if(!CheckTelNumber_ZipCodeData(parts)){
        alert("郵便番号のフォーマットが違います。");
        parts.focus();
        parts.select();
    }
}
//////////////////////////////
// 電話番号チェック
//////////////////////////////
function CheckTelNumber(parts){
    if(!CheckTelNumber_ZipCodeData(parts)){
        alert("電話番号のフォーマットが違います。");
        parts.focus();
        parts.select();
    }
}
//////////////////////////////
// メールアドレスチェック
//////////////////////////////
function CheckMailAddress(parts){
    if(!CheckMailAddressData(parts)){
        alert("Eメールアドレスのフォーマットが違います。");
        parts.focus();
        parts.select();
    }
}
