﻿// JScript File
var scheduleTimeMsg = jMessage['SelectTime'];
var openCategorySetID = "";


function trimString(str) {
    if(str != null) {
        var newStr = str.replace(/^\s*/, '').replace(/\s*$/, ''); 
        if(newStr != '') {
            return newStr;
        }
    }
    
    return null;
}
		
function redirect(targetURL) {
    window.location.href=targetURL;
}

function submitSchedule(sender, form, cmd) {
    sender.disable;
    
    var fv = new FormValidator();
    
    fv.addValidator(new TextValidator("scheduleTime", scheduleTimeMsg));
    
    
    if(fv.validate()) {
        form.cmd.value = cmd;
        form.submit();
    } else {
        sender.enable;
    }
}

function submitScheduleNow(sender, form, cmd) {
    form.cmd.value = cmd;
    form.submit();
}

function mouseOver(sender, className) {
    sender.className = className;
}

function mouseOut(sender, className) {
    sender.className = className;
}


function validateItemForm(sender, form) {
   
    sender.disabled = true;
    
    
    if(fv.validate()) {
        form.submit();
    } else {
        sender.disabled = false;
    }
    
}

function applyCoupon(form, cmd) {
    var fv = new FormValidator();
    
    fv.addValidator(new TextValidator('coupon', jMessage['CouponCodeIsRequired']));
    
    if(fv.validate()) {
        form.cmd.value = cmd;
        form.submit();
    }
}

function removeCoupon(form, cmd) {
    form.cmd.value = cmd;
    form.submit();
}

function validateFreeProudctForm(sender, form) {
    var fv = new FormValidator();
    
    fv.addValidator(new RadioValidator('freeProduct', jMessage['SelectAnItem']));
    
    if(fv.validate()) {
        form.submit();
    }
}





function toggleOrderType(senderID, amount, cartTotal, minDelivery) {
    var sender = document.getElementById(senderID);
    //window.alert(sender.checked);
    if(document.webForm.street == null){
            return;
    }
    
    if(sender != null && sender.checked) {
        var deliveryFee = document.getElementById('deliveryFee');
        var total = document.getElementById('cartTotal');
        

        
        if(sender.value == 1 || sender.value == 2) {
	    //alert(minDelivery + " " + cartTotal + " " + parseFloat(cartTotal.split('$')[1]) );
	    
            deliveryFee.innerHTML = amount;
            total.innerHTML = cartTotal;
        }
        
        if(sender.value == 1) { // delivery order

	        if(minDelivery > parseFloat(cartTotal.split(jMessage['MoneySign'])[1])){
		        alert(jMessage['DeliveryMinNotMet'] + minDelivery + ".");
		        sender.checked = false;
		        return false;
            }

            document.webForm.street.disabled = false;
            document.webForm.city.disabled = false;
            document.webForm.state.disabled = false;
            document.webForm.zip.disabled = false;
            document.webForm.crossStreet.disabled = false;
        } else if(sender.value == 2) {
            document.webForm.street.disabled = true;
            document.webForm.city.disabled = true;
            document.webForm.state.disabled = true;
            document.webForm.zip.disabled = true;
            document.webForm.crossStreet.disabled = true;
        }
    }
    else{
        document.webForm.street.disabled = true;
        document.webForm.city.disabled = true;
        document.webForm.state.disabled = true;
        document.webForm.zip.disabled = true;
        document.webForm.crossStreet.disabled = true;
    }
}

function validateSignup(sender, form, cmd) {
    sender.disabled = true;
    
    var fv = new FormValidator();
    
    fv.addValidator(new TextValidator('firstName', jMessage['FirstNameIsRequired']));
    fv.addValidator(new TextValidator('lastName', jMessage['LastNameIsRequired']));
    fv.addValidator(new TextValidator('phone', jMessage['PhoneNumberIsRequired']));
    fv.addValidator(new EmailValidator('email', jMessage['EmailIsRequired'], jMessage['InvalidEmail']));
    fv.addValidator(new PasswordValidator('password1', 'password2', jMessage['PasswordIsRequired'], jMessage['PasswordMismatched']));
    
    if(fv.validate()) {
        form.cmd.value = cmd;
        form.submit();
    } else {
        sender.disabled = false;
    }
}

function validateLogin(sender, form, cmd) {
    sender.disabled = true;
    
    var fv = new FormValidator();
    
    fv.addValidator(new TextValidator('userName', jMessage['EmailIsRequired']));
    fv.addValidator(new TextValidator('password', jMessage['PasswordIsRequired']));
    
    if(fv.validate()) {
        form.cmd.value = cmd;
        form.submit();
    } else {
        sender.disabled = false;
    }
}

function validateAdminProductForm(sender, form){

    sender.disabled = true;
    var fv = new FormValidator();
    
    fv.addValidator(new TextValidator('name', jMessage['ProductNameIsRequired']));
    if(fv.validate()){
        form.submit();
    }else{
        sender.disabled = false;
    }


}

function validateAdminCategoryForm(sender, form){
    sender.disabled = true;
  
    var fv = new FormValidator();
    
    fv.addValidator(new TextValidator('name', jMessage['CategoryNameIsRequired']));
    if(fv.validate()){
        form.submit();
    }else{
        sender.disabled = false;
    }
}

function getRadioValue(radio) {
    for(var i = 0; i < radio.length; i++) {
        if(radio[i].checked) {
            return radio[i].value;
        }
    }
    
    return null;
}

function togglePaymentMethod(sender) {
    var form = document.webForm;
    
    if(sender.value == 1) { // credit card
        form.creditCard.disabled = false;
        form.expireMonth.disabled = false;
        form.expireYear.disabled = false;
        form.account.disabled = false;
        form.nameOnCard.disabled = false;
        
        form.ccStreet.disabled = false;
        form.ccCity.disabled = false;
        form.ccState.disabled = false;
        form.ccZip.disabled = false;
    } else {
        form.creditCard.disabled = true;
        form.expireMonth.disabled = true;
        form.expireYear.disabled = true;
        form.account.disabled = true;
        form.nameOnCard.disabled = true;
        
        form.ccStreet.disabled = true;
        form.ccCity.disabled = true;
        form.ccState.disabled = true;
        form.ccZip.disabled = true;
    }
}


function validateCheckout(sender, form) {
    sender.disabled = true;
    
    var orderType = getRadioValue(form.orderType);
    
    var fv = new FormValidator();
    
    fv.addValidator(new RadioValidator('orderType', jMessage['orderType']));
    fv.addValidator(new TextValidator('firstName', jMessage['FirstNameIsRequired']));
    fv.addValidator(new TextValidator('lastName', jMessage['LastNameIsRequired']));
    fv.addValidator(new TextValidator('phone', jMessage['PhoneNumberIsRequired']));
    
    if(trimString(form.email.value) != null) {
        fv.addValidator(new EmailValidator('email', jMessage['InvalidEmail'], jMessage['InvalidEmail']));
    }
    
    if(orderType == 1) {
        fv.addValidator(new TextValidator('street', jMessage['DeliveryStreetIsRequired']));
        fv.addValidator(new TextValidator('city', jMessage['DeliveryCityIsRequired']));
        fv.addValidator(new TextValidator('state', jMessage['DeliveryStateIsRequired']));
        fv.addValidator(new TextValidator('zip', jMessage['DeliveryZipCodeIsRequired']));
    }
    
    fv.addValidator(new RadioValidator('paymentMethod', jMessage['SelectPaymentMethod']));
    var paymentMethod = getRadioValue(form.paymentMethod);
    if(paymentMethod == 1) {
        fv.addValidator(new TextValidator('creditCard', jMessage['SelectCreditCard']));
        fv.addValidator(new TextValidator('expireMonth', jMessage['InvalidExpirationDate']));
        fv.addValidator(new TextValidator('expireYear', jMessage['InvalidExpirationDate']));
        fv.addValidator(new TextValidator('account', jMessage['CardNoIsRequired']));
        fv.addValidator(new TextValidator('nameOnCard', jMessage['NameOnCardIsRequired']));
        
        fv.addValidator(new TextValidator('ccStreet', jMessage['BillingStreetIsRequired']));
        fv.addValidator(new TextValidator('ccCity', jMessage['BillingCityIsRequired']));
        fv.addValidator(new TextValidator('ccState', jMessage['BillingStateIsRequired']));
        fv.addValidator(new TextValidator('ccZip', jMessage['BillingZipCodeIsRequired']));
    }
    
    if(fv.validate()) {
        form.submit();
    } else {
        sender.disabled = false;
    }
}


function getStateRate(stateAbbr){

    for(var i = 0; i < sdArray.length; i++){
    
        if(sdArray[i].stateAbbr == stateAbbr){
            return sdArray[i];
        }
    }

}


function overWriteStandardDeliveryFee(stateAbbr){

    var rateRow = null;
    
    resetToStandardDeliveryFee();
    
    if( stateAbbr != null && trimString(stateAbbr) != null){
        
        
    }
    
    
    
    
}

function resetToStandardDeliveryFee(){

    if(true){
        document.getElementById('deliveryFee').value = stdDelFee;
        document.getElementById('deliveryFeeField').value = stdDelFee;
        stateRateDiv.innerHTML = "";
        deliveryFee.innerHTML = stdDelFee;
        document.getElementById('cartTotal').innerHTML = cartTotalWithStdDelFee;
    }
}

function setOpenCategorySetID(id){
    
}


function changePricePerItemBoxes(num){
            
            changeDiv(num);
}
          
          

function changeDiv(num){
          
          
          
          if (document.all) { 
              
              i = 1;
             
              
              while(i <= 7){
                document.getElementById("p" + i).style.visibility = 'hidden';
                i++;
              }
              
              i = 1;
              while(i <= num){
                document.getElementById("p" + i).style.visibility = 'visible';
                i++;
              }
              
          }
          else if (document.layers) { 

                i = 1;
                while(i <= 7){
                  document.layers["p" + i].visibility = "hidden";
                  i++;
                }


                i = 1;
                while(i <= num){
                  document.layers["p" + i].visibility = "visible";
                  i++;
                }
                
          }
}


function validateNewCat(sender, form){

    sender.disabled = true;
    form.CMD.value = 'newCat'; 
    
   
    var fv = new FormValidator();
    
     
    
    fv.addValidator(new TextValidator('categoryName', jMessage['NewCategoryNameIsRequired']));
    fv.addValidator(new TextValidator('indexOrder', jMessage['IndexOrderNumberIsRequired']));
    
    var i = 1;
    while(i <= form.pricingPerItem.value){
        fv.addValidator(new TextValidator('pricing_' + i, jMessage['NameForItemSizePrice'] + i +  jMessage['IsRequired']));
        i++;
    }
    
    
    if(fv.validate()) {
        form.submit();
    } else {
        sender.disabled = false;
    }
    

}

function toggleStyleDisplay(divObj){
   if(document.getElementById(divObj).style.display != "block"){
    document.getElementById(divObj).style.display = "block";
    document.getElementById(divObj + "_IMG").src = "images/label/block.gif";
   }
   else{
    document.getElementById(divObj).style.display = "none";
    document.getElementById(divObj + "_IMG").src = "images/label/none.gif";
   }
   
}
