/**
 *
 * 全角チェックを行います
 *
 * @param   string  val     チェック対象文字列
 * @param   boolean bYenFlg ￥を許可フラグ
 * @param   boolean spaceFlg ' 'を許可フラグ
 *
 * @return  boolean 全て全角の場合 true, そうでなければ false
 *
 */
function isZen(val, bYenFlg, spaceFlg){
    var len = val.length;
    for(i = 0; i < len; i++){
        var c = val.charCodeAt(i);
        if(c < 256 || (0xff61 <= c && c <= 0xff9f)){
            // "\" 半角 \ だけOK
            if(bYenFlg){
                if(c == 92) continue;
            }
            if(spaceFlg){
                if(c == 32) continue;
            }

            // “×”、“÷”、“¶”、“°”、“±”、“§”、“¨”、“´”OK
            if(c == 215 || c == 247 || c == 182 || c == 176 || c == 177 || c == 167 || c == 168 || c == 180) continue;

            return false;
        }
    }
    return true;
}
//メールアドレスの簡易チェック
function valid_mail(mailAddress) {
    if(!mailAddress.match(/.+@.+\..+/))
        return false;
    return true;
}

//電話番号の簡易チェック
function valid_tel(tel) {
    if(tel==""){
        return false;
    }
    if(tel.length < 10 || tel.length > 13)
        return false;
    if ((tel.match(/^[0-9]+\-[0-9]+\-[0-9]+$/) == null)) {
        return false;
    }
    return true;
}
function checkContact(){
    var err_info = "";
    var firstErrElement = null;

    if(document.frm_contact.surname.value == "") {
        if(firstErrElement == null) firstErrElement = document.frm_contact.surname;
    }
    if(!isZen(document.frm_contact.surname.value, false, false)) {
        if(firstErrElement == null) firstErrElement = document.frm_contact.surname;
    }
    if(document.frm_contact.prename.value == "") {
        if(firstErrElement == null) firstErrElement = document.frm_contact.prename;
    }
    if(!isZen(document.frm_contact.prename.value, false, false)) {
        if(firstErrElement == null) firstErrElement = document.frm_contact.prename;
    }
    if(document.frm_contact.surname.value == "" || document.frm_contact.prename.value == ""){
        err_info += "・お名前が入力されていません。<br>";
    }else{
        if(!isZen(document.frm_contact.prename.value, false, false) || !isZen(document.frm_contact.surname.value, false, false)) {
            err_info += "・氏名は全角で入力してください。<br>";
        }
    }

    if(document.frm_contact.surname_furigana.value == "") {
        if(firstErrElement == null) firstErrElement = document.frm_contact.surname_furigana;
    }
    if(!isZen(document.frm_contact.surname_furigana.value, false, false)) {
        if(firstErrElement == null) firstErrElement = document.frm_contact.surname_furigana;
    }
    if(document.frm_contact.prename_furigana.value == "") {
        if(firstErrElement == null) firstErrElement = document.frm_contact.prename_furigana;
    }
    if(!isZen(document.frm_contact.prename_furigana.value, false, false)) {
        if(firstErrElement == null) firstErrElement = document.frm_contact.prename_furigana;
    }
    if(document.frm_contact.surname_furigana.value == "" || document.frm_contact.prename_furigana.value == ""){
        err_info += "・ふりがなが入力されていません。<br>";
    }else{
        if(!isZen(document.frm_contact.surname_furigana.value, false, false) || !isZen(document.frm_contact.prename_furigana.value, false, false)) {
            err_info += "・ふりがなは全角で入力してください。<br>";
        }
    }

    if(document.frm_contact.sex[0].checked == false && document.frm_contact.sex[1].checked == false ) {
        err_info += "・性別が選択されていません。<br>";
        if(firstErrElement == null) firstErrElement = document.frm_contact.sex;
    }
    if(document.frm_contact.job.value == "") {
        err_info += "・ご職業が選択されていません。<br>";
        if(firstErrElement == null) firstErrElement = document.frm_contact.job;
    }
    if(document.frm_contact.pref.value == "") {
        err_info += "・お住まいが選択されていません。<br>";
        if(firstErrElement == null) firstErrElement = document.frm_contact.pref;
    }
    if(document.frm_contact.tel.value !== "") {
    /*  err_info += "・電話番号が入力されていません。<br>";
        if(firstErrElement == null) firstErrElement = document.frm_contact.tel;
    }else{
    */
        if(!valid_tel(document.frm_contact.tel.value)) {
            err_info += "・正しい電話番号を入力してください。 <br>";
            if(firstErrElement == null) firstErrElement = document.frm_contact.tel;
        }
    }
    if(document.frm_contact.mail.value == "") {
        err_info += "・メールアドレスが入力されていません。<br>";
        if(firstErrElement == null) firstErrElement = document.frm_contact.mail;
    }else{
        if(!valid_mail(document.frm_contact.mail.value)){
            err_info += "・メールアドレスの形式が違います。<br>";
            if(firstErrElement == null) firstErrElement = document.frm_contact.mail;
        }
    }

    if(document.frm_contact.contacttext.value == "") {
        err_info += "・ご意見・ご質問が入力されていません。<br>";
        if(firstErrElement == null) firstErrElement = document.frm_contact.contacttext;
    }else{
/*        if(!isZen(document.frm_contact.contacttext.value)){
            err_info += "・ご意見・ご質問は全角で入力してください。<br>";
            if(firstErrElement == null) firstErrElement = document.frm_contact.contacttext;
        }*/
    }

    if(err_info != "") {

        var sp_message = document.getElementById("message");
        sp_message.innerHTML = err_info;
        if(firstErrElement != null){
            firstErrElement.focus();
            firstErrElement = null;
        }
        return false;
    }

    return true;
}
function to_send(){
    document.frm_contact.action="/php/contact/index.php?mode=new";
    document.frm_contact.submit();
}
function to_back(){
    document.frm_contact.action="/php/contact/index.php?mode=back";
    document.frm_contact.submit();
}
function to_confirm(){
    if(checkContact()){
        document.frm_contact.action='/php/contact/index_confirm.php';
        document.frm_contact.submit();
    }
}
function to_reset(){
    document.frm_contact.reset();
}
function getShop(){
    document.frm_contact.action="/php/contact/index.php?mode=getshop";
    document.frm_contact.submit();
}

