
function lTrim(str) {
    if (str.charAt(0) == " ") {
        str = str.slice(1);
        str = lTrim(str);
    }
    return str;
}
function rTrim(str) {
    var iLength = str.length;
    if (str.charAt(iLength - 1) == " ") {
        str = str.slice(0, iLength - 1);
        str = rTrim(str);
    }
    return str;
}
function trim(str) {
    if (str == null) {
        return "";
    }
    return lTrim(rTrim(str));
}
function OnloadFunction() {
}
function getCalcStr(str) {
    if (str.length == 0) {
        return "";
    }
    str = str.toString();
    var re, r;
    var s;
    re = /\./g;
    r = str.search(re);
    if (r) {
        s = str.split(".");
        str = s[0];
    } else {
        s[1] = "";
    }
    str = parseInt(str);
    str = str.toString();
    var ss = str.substr(0, 1);
    if (ss == "-") {
        var flag = "-";
        str = str.substr(1);
    } else {
        var flag = "";
    }
    var len = str.length;
    var n = len % 3;
    var returnstr = "";
    for (var i = 0, loop = 1; i < len; i++) {
        var start = len - loop * 3;
        var leng = 3;
        if (start < 0) {
            start = 0;
            leng = n;
        }
        ss = str.substr(start, leng);
        if (start == 0) {
            returnstr = ss + returnstr;
        } else {
            returnstr = "," + ss + returnstr;
        }
        loop++;
        i = i + 2;
    }
    if (s[1] == null) {
        returnstr = flag + returnstr;
    } else {
        returnstr = flag + returnstr + "." + s[1];
    }
    return returnstr;
}
function getDayOption(yearObj, monthObj, dayObj) {
    var maxday = getday(yearObj.value, monthObj.value);
    var selectvalue = dayObj.value;
    if (selectvalue != "" && selectvalue > maxday) {
        selectvalue = maxday;
    }
    for (var i = dayObj.length - 1; i > 0; i--) {
        dayObj.options[i] = null;
    }
    if (maxday == 0) {
        getDayOptions(yearObj, monthObj, dayObj);
        return false;
    }
    for (var m = 1; m <= maxday; m++) {
        var value = zeroprefix(m.toString(), 2);
        dayObj.options[m - 1] = new Option(m, value);
        if (selectvalue == value) {
            dayObj.options[m - 1].selected = true;
        }
    }
    if (selectvalue == null) {
        dayObj.options[0].selected = true;
    }
}
function getDayOptions(yearObj, monthObj, dayObj) {
    var maxday = getday(yearObj.value, monthObj.value);
    var selectvalue = dayObj.value;
    var monthvalue = monthObj.value;
    if (yearObj.value == "") {
        for (var i = monthObj.length - 1; i > 0; i--) {
            monthObj.options[i] = null;
        }
        monthObj.options[0] = new Option("--", "");
        monthObj.options[0].selected = true;
    } else {
        for (var m = 1; m <= 12; m++) {
            var value = zeroprefix(m.toString(), 2);
            monthObj.options[m] = new Option(m, value);
            if (monthvalue == value) {
                monthObj.options[m].selected = true;
            }
        }
    }
    if (selectvalue != "" && selectvalue > maxday) {
        selectvalue = maxday;
    }
    for (var i = dayObj.length - 1; i > 0; i--) {
        dayObj.options[i] = null;
    }
    dayObj.options[0] = new Option("--", "");
    for (var m = 1; m <= maxday; m++) {
        var value = zeroprefix(m.toString(), 2);
        dayObj.options[m] = new Option(m, value);
        if (selectvalue == value) {
            dayObj.options[m].selected = true;
        }
    }
    if (selectvalue == null) {
        dayObj.options[0].selected = true;
    }
}
function getday(year, mon) {
    var intday;
    var maxday;
    var intmon = parseInt(mon, 10);
    if (year.length == 2) {
        year = "20" + year;
    }
    var intyear = parseInt(year, 10);
    if (isNaN(intmon) || isNaN(intyear)) {
        return 0;
    }
    if (intmon > 12 || intmon < 1) {
        return 0;
    }
    if (intmon == 1 || intmon == 3 || intmon == 5 || intmon == 7 || intmon == 8 || intmon == 10 || intmon == 12) {
        maxday = 31;
    }
    if (intmon == 4 || intmon == 6 || intmon == 9 || intmon == 11) {
        maxday = 30;
    }
    if (intmon == 2) {
        if (isleapyear(intyear) == true) {
            maxday = 29;
        } else {
            maxday = 28;
        }
    }
    return maxday;
}
function zeroprefix(str, len) {
    var i, ret;
    ret = "";
    if (str == "") {
        return ret;
    }
    if (len < str.length) {
        ret = str.substr(str.length - len);
    } else {
        for (i = 0; i < len - str.length; i++) {
            ret += "0";
        }
        ret += str;
    }
    return ret;
}
function isleapyear(year) {
    if ((year % 100) == 0) {
        if ((year % 400) == 0) {
            return true;
        }
    } else {
        if ((year % 4) == 0) {
            return true;
        }
    }
    return false;
}
function getBunrui1(flag) {
    DWRUtil.removeAllOptions("bunruiId1");
    DWRUtil.removeAllOptions("bunruiId2");
    //DWRUtil.removeAllOptions("bunruiId3");
    //DWRUtil.removeAllOptions("bunruiId4");
    if (flag == 0) {
        BunruiItemsBean.getDefaultBunruiList(createList1);
        BunruiItemsBean.getDefaultBunruiList(createList2);
      //BunruiItemsBean.getDefaultBunruiList(createList3);
      //BunruiItemsBean.getDefaultBunruiList(createList4);
    }
    BunruiItemsBean.FBunruiList(createList1);
}
function createList1(data) {
    DWRUtil.addOptions("bunruiId1", data);
}
function getBunrui2(flag) {
    DWRUtil.removeAllOptions("bunruiId2");
    //DWRUtil.removeAllOptions("bunruiId3");
    //DWRUtil.removeAllOptions("bunruiId4");
    if (flag == 0) {
        BunruiItemsBean.getDefaultBunruiList(createList2);
      //BunruiItemsBean.getDefaultBunruiList(createList3);
      //BunruiItemsBean.getDefaultBunruiList(createList4);
    }
    if (DWRUtil.getValue("bunruiId1") != "0") {
        BunruiItemsBean.BunruiList(createList2, DWRUtil.getValue("bunruiId1"));
    }
}
function createList2(data) {
    DWRUtil.addOptions("bunruiId2", data);
}
//function getBunrui3(flag)
//{
//    DWRUtil.removeAllOptions("bunruiId3");
//    DWRUtil.removeAllOptions("bunruiId4");
//    if(flag==0){
//      BunruiItemsBean.getDefaultBunruiList(createList3);
//      BunruiItemsBean.getDefaultBunruiList(createList4);
//    }
//    BunruiItemsBean.BunruiList(createList3,DWRUtil.getValue("bunruiId2"));
//}
//function createList3(data)
//{
//    DWRUtil.addOptions("bunruiId3", data);
//}
//function getBunrui4(flag)
//{
//    DWRUtil.removeAllOptions("bunruiId4");
//    if(flag==0){
//      BunruiItemsBean.getDefaultBunruiList(createList4);
//    }
//    BunruiItemsBean.BunruiList(createList4,DWRUtil.getValue("bunruiId3"));
//}
//function createList4(data)
//{
//    DWRUtil.addOptions("bunruiId4", data);
//}
function validEmail() {
    MemberValid.valideEmail(regValid1, DWRUtil.getValue("email"));
}
function validMbemail() {
    MemberValid.valideMbemail(regValid1, DWRUtil.getValue("mbemail"));
}
function validUserId() {
    MemberValid.valideUserId(regValid2, DWRUtil.getValue("userId"));
}
function validBirthday() {
    MemberValid.valideBirthday(showBirthday, DWRUtil.getValue("emailsend"));
}
function showBirthday(data) {
    if (data == "0") {
        document.getElementById("birthdayShow").style.display = "none";
    } else {
        if (data == "1") {
            document.getElementById("birthdayShow").style.display = "block";
        }
    }
}
function regValid1(data) {
    if (data == "0") {
        alert("\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002");
    } else {
        if (data == "1") {
            alert("\u3053\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u306f\u3001\u3059\u3067\u306b\u767b\u9332\u6e08\u307f\u3067\u3059\u3002");
        } else {
            if (data == "2") {
                alert("\u3053\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3092\u3054\u5229\u7528\u3044\u305f\u3060\u3051\u307e\u3059\u3002");
            }
        }
    }
}
function regValid2(data) {
    if (data == "0") {
        alert("\uff29\uff24\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002");
    } else {
        if (data == "1") {
            alert("\uff29\uff24\u304c\u5b58\u5728\u3057\u307e\u3059\u3002");
        } else {
            if (data == "2") {
                alert("\uff29\uff24\u304c\u5b58\u5728\u3057\u3066\u3044\u307e\u305b\u3093\u304b\u3089,\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002");
            }
        }
    }
}
function cartDelSubmit(n) {
    ShoppingCart.updateCart(delCartHtml, DWRUtil.getValue("bsktId"), DWRUtil.getValue("id" + n));
}
function delCartHtml(data) {
    var dataArr = data.split("/");
    var id = dataArr[0];
    var zeikomiKakaku = dataArr[1];
    var constShipchg = dataArr[2];
    var cardFee = dataArr[3];
    var totalPrice = dataArr[4];
    if (document.getElementById("constShipchg")) {
        document.getElementById("constShipchg").innerHTML = constShipchg;
    }
    if (document.getElementById("cardFee")) {
        document.getElementById("cardFee").innerHTML = cardFee;
    }
    if (document.getElementById("totalPrice")) {
        document.getElementById("totalPrice").innerHTML = totalPrice;
    }
    var traObj = document.getElementById("tra" + id);
    var trbObj = document.getElementById("trb" + id);
    traObj.style.display = "none";
    trbObj.style.display = "none";
}
function chkvaliddate(strDate) {
    var separator = new Array("-", " ", "/", ".");
    var i, strDateArray, year, month, day, intyear, intmon, intday, maxday;
    for (i = 0; i < separator.length; i++) {
        if (strDate.indexOf(separator[i]) != -1) {
            strDateArray = strDate.split(separator[i]);
            if (strDateArray.length == 3) {
                year = strDateArray[0];
                mon = strDateArray[1];
                day = strDateArray[2];
                if (year.length == 2) {
                    year = "20" + year;
                }
                break;
            }
        }
    }
    if (i == separator.length) {
        if (strDate.length == 8) {
            year = strDate.substr(0, 4);
            mon = strDate.substr(4, 2);
            day = strDate.substr(6);
        } else {
            return false;
        }
    }



        //check date's constitute is valid . by yuanjk@justware.co.jp
    if (chknumber(day) == false) {
        return false;
    }
    if (chknumber(mon) == false) {
        return false;
    }
    if (chknumber(year) == false) {
        return false;
    }
    intday = parseInt(day, 10);
    intmon = parseInt(mon, 10);
    intyear = parseInt(year, 10);
    if (isNaN(intday) || isNaN(intmon) || isNaN(intyear)) {
        return false;
    }
    if (intmon > 12 || intmon < 1) {
        return false;
    }
    if (intmon == 1 || intmon == 3 || intmon == 5 || intmon == 7 || intmon == 8 || intmon == 10 || intmon == 12) {
        maxday = 31;
    }
    if (intmon == 4 || intmon == 6 || intmon == 9 || intmon == 11) {
        maxday = 30;
    }
    if (intmon == 2) {
        if (isleapyear(intyear) == true) {
            maxday = 29;
        } else {
            maxday = 28;
        }
    }
    if (intday > maxday || intday < 1) {
        return false;
    }

//	return intyear.toString()+"/"+intmon.toString()+"/"+intday.toString();
    return true;
}
function getRegDateStr(s) {
    var d = getDateObj(s);
    if (d == false) {
        return "false";
    }
    var separator = "/";
    return d.getFullYear() + separator + zeroprefix((d.getMonth() + 1).toString(), 2) + separator + zeroprefix(d.getDate().toString(), 2);
}
function getDateObj(dateStr) {
    var separator = new Array("-", " ", "/", ".");
    var year, month, day;
    var d = new Date();
    for (i = 0; i < separator.length; i++) {
        if (dateStr.indexOf(separator[i]) != -1) {
            strDateArray = dateStr.split(separator[i]);
            dateStr = dateStr.replace(separator[i], "");
            if (strDateArray.length == 3) {
                year = strDateArray[0];
                month = parseInt(strDateArray[1], 10) - 1;
                day = strDateArray[2];
                if (year.length == 2) {
                    year = "20" + year;
                }
                break;
            }
        }
    }
    if (year == null || year == "" || month == null || month == "" || day == null || day == "") {
        var len = dateStr.length;
        if (len <= 2) {
            year = d.getFullYear();
            month = d.getMonth();
            day = dateStr;
        } else {
            if (len <= 4) {
                year = d.getFullYear();
                month = parseInt(dateStr.substring(0, len - 2), 10) - 1;
                day = dateStr.substr(len - 2, 2);
            } else {
                if (len <= 6) {
                    year = "20" + zeroprefix(dateStr.substring(0, len - 4), 2);
                    month = parseInt(dateStr.substr(len - 4, 2), 10) - 1;
                    day = dateStr.substr(len - 2, 2);
                } else {
                    if (len == 8) {
                        year = dateStr.substring(0, 4);
                        month = parseInt(dateStr.substr(len - 4, 2), 10) - 1;
                        day = dateStr.substr(len - 2, 2);
                    }
                }
            }
        }
    }

        //for common use , do not auto convert special data such as 9999 to reg date, so judge if the date regular or not
    var intday = parseInt(day, 10);
    var intmon = parseInt(month, 10) + 1;
    var intyear = parseInt(year, 10);
    if (isNaN(intday) || isNaN(intmon) || isNaN(intyear)) {
        return false;
    }
    if (intmon > 12 || intmon < 1) {
        return false;
    }
    if (intmon == 1 || intmon == 3 || intmon == 5 || intmon == 7 || intmon == 8 || intmon == 10 || intmon == 12) {
        maxday = 31;
    }
    if (intmon == 4 || intmon == 6 || intmon == 9 || intmon == 11) {
        maxday = 30;
    }
    if (intmon == 2) {
        if (isleapyear(intyear) == true) {
            maxday = 29;
        } else {
            maxday = 28;
        }
    }
    if (intday > maxday || intday < 1) {
        return false;
    }
    d.setFullYear(year, month, day);
    return d;
}
function setRegDate(currentObj) {
    if (isSpecDate(currentObj.value)) {
        return;
    }
    var dateStr;
    if (trim(currentObj.value) != "") {
        dateStr = getRegDateStr(currentObj.value);
    }
    if (dateStr != null && trim(dateStr) != "") {
        if (chkvaliddate(dateStr)) {
            currentObj.value = dateStr;
        } else {
            alert("\u65e5\u4ed8\u306b\u4e0d\u6b63\u306a\u6587\u5b57\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3059\u3002");
            currentObj.focus();
        }
    }
}
function isSpecDate(s) {
    if (s == "9999/99/99" || s == "99999999" || s == "99/99/99" || s == "999999") {
        return true;
    } else {
        return false;
    }
}
function chknumber(str) {
    return chkvalidnumberbase(str, "");
}
function chkvalidnumberbase(str, validstr) {
    var i, code;
    for (i = 0; i < str.length; i++) {
        code = str.charCodeAt(i);
        if (code < 48 || code > 57) {
            if (validstr.indexOf(str.charAt(i)) == -1) {
                return false;
            }
        }
    }
    return true;
}
function checknum() {
    if (!(((window.event.keyCode >= 48) && (window.event.keyCode <= 57)))) {
        window.event.keyCode = 0;
    }
}
function pastechk(currentObj) {
    var v = trim(currentObj.value);
    var i, code;
    for (i = 0; i < v.length; i++) {
        code = v.charCodeAt(i);
        if (code < 48 || code > 57) {
            currentObj.value = "";
        }
    }
}
function updatePointSet(num) {
    var pointNeed = document.getElementById("needPoint_" + num);
    var pointSet = document.getElementById("point_" + num);
    if (!chknumber(pointSet.value)) {
        alert("\u30dd\u30a4\u30f3\u30c8\u306f\u6574\u6570\u3092\u5165\u529b\u3057\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b\u3093\u3002");
        return false;
    }
    pointSet.value = Number(pointSet.value);
    var pointNeedNum = Number(pointNeed.innerHTML.replace(",", "").replace(",", "").replace(",", ""));
    if (Number(pointSet.value) > pointNeedNum) {
        pointSet.value = pointNeedNum;
    }
    if (!chkAllPoint()) {
        return false;
    }
}
function chkAllPoint() {
    var pointValidShow = document.getElementById("pointValidShow");
    var memberPoint = document.getElementById("memberPoint");
    var pointUseShow = document.getElementById("pointUseShow");
    var listSize = document.getElementById("listSize");
    var pointUse = 0;
    for (i = 0; i < listSize.value; i++) {
        var pointUseTemp = document.getElementById("point_" + i);
        var totalPprice = document.getElementById("totalPprice_" + i);
        var totalConstfree = document.getElementById("totalConstfree_" + i);
        var paymentMethod = document.getElementById("paymentMethod_" + i);
        var totalPoint = document.getElementById("totalPoint_" + i);
        if (pointUseTemp.value == "") {
            pointUseTemp.value = 0;
        }
        if (!chknumber(pointUseTemp.value)) {
            alert("\u30dd\u30a4\u30f3\u30c8\u306f\u6574\u6570\u3092\u5165\u529b\u3057\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b\u3093\u3002");
            return false;
        } else {
            pointUseTemp.value = Number(pointUseTemp.value);
            pointUse += Number(pointUseTemp.value);
        }
        var finalTotaltax = (Number(totalPprice.innerHTML.replace(",", "").replace(",", "").replace(",", "")) + Number(totalConstfree.innerHTML.replace(",", "").replace(",", "").replace(",", "")));
        ShoppingCart.getCardFee(updateCardFee, i, finalTotaltax, pointUseTemp.value, paymentMethod.value, totalPoint.value);
    }
    if (pointUse > memberPoint.value) {
        alert("\u5206\u914d\u306e\u30dd\u30a4\u30f3\u30c8\u306f\u30c8\u30fc\u30bf\u30eb\u30dd\u30a4\u30f3\u30c8\u3092\u8d85\u3048\u3066\u306f\u306a\u308a\u307e\u305b\u3093\u3002");
        return false;
    }
    pointUseShow.innerHTML = getCalcStr(pointUse);
    pointValidShow.innerHTML = getCalcStr(memberPoint.value - pointUse);
    return true;
}
function updateCardFee(data) {
    var totalCardfree = document.getElementById("totalCardfree_" + data[0]);
    var totalCardfreeInfo = document.getElementById("totalCardfreeInfo_" + data[0]);
    var totalFinalPrice = document.getElementById("totalFinalPrice_" + data[0]);
    var totalGetPoint = document.getElementById("totalGetPoint_" + data[0]);
    if (data[1] == "") {
        totalCardfree.innerHTML = cartfeeErr;
        totalCardfreeInfo.style.display = "none";
    } else {
        totalCardfree.innerHTML = getCalcStr(data[1]);
        totalCardfreeInfo.style.display = "";
    }
    totalGetPoint.innerHTML = getCalcStr(data[3]);
    totalFinalPrice.innerHTML = getCalcStr(data[2]);
}
function getPostAddress() {
    var postcode = $("postcode");
    var postcodevalue = null;
    if(postcode){
    	postcodevalue = postcode.value;
    }else{
	    var postcode1 = $("postcode1");
	    var postcode2 = $("postcode2");
	    var postcode1value = postcode1.value;
	    var postcode2value = postcode2.value;
    	postcodevalue = postcode1value+postcode2value;
    }
    MemberValid.getPostAddress(updateAddress, postcodevalue);
}
function updateAddress(data) {
   	var addressErr = $("addressErr"); 	
 
    if (data[0] == "get") {
        var prefId = $("prefId");
        var address1 = $("address1");
        var address2 = $("address2");
        prefId.value = data[1];
        address1.value = data[2];
        address2.value = data[3];
        addressErr.innerHTML = "";
    } else {    	
        addressErr.innerHTML = "&nbsp;&nbsp;&nbsp;&nbsp;"+data[1];
    }
    return false;
}
function getMagazineflg(id) {
    var email;
    if (id == "2") {
        email = $("mbemail");
    } else {
        email = $("email");
    }
    var emailvalue = email.value;
    MemberValid.getEmailMagazineFlg(updateMagezineFlg, id, emailvalue);
}
function updateMagezineFlg(data) {
    if (data[0] == "1") {
        var pcmagazineFlag = $("pcmagazineFlag");
        if (data[1] != "") {
            pcmagazineFlag.checked = data[1];
        }
    } else {
        if (data[0] == "2") {
            var mbmagazineFlag = $("mbmagazineFlag");
            if (data[1] != "") {
                mbmagazineFlag.checked = data[1];
            }
        }
    }
    return false;
}
function registCancel(){
	document.RegistActionForm.action="../member/promise.do?method=regist";
	document.RegistActionForm.submit();
}



