﻿function ShowSignUp()
{
    var e = $('#fSignupEmail').val();
    if (ValidateEmail(e) == true)
        $('#emailAddress').val(e);
        
    showModal('jackpack');
}

function SubmitSignUp()
{
    var errMsg = '';
    
    //validate the form
    if ($('#firstName').val().length == 0) errMsg += "First Name\r\n";
    if ($('#lastName').val().length == 0) errMsg += "Last Name\r\n";
    if ($('#zipCode').val().length == 0) errMsg += "Zip Code\r\n";
    if ($('#emailAddress').val().length == 0) errMsg += "Email Address\r\n";
    if ($('#sendinfo').attr('checked') == false)  errMsg += "Send Me Info Checkbox\r\n";
    
    if(errMsg.length > 0)
    {
        alert("The following required fields are missing\r\n\r\n" + errMsg);
    }
    else
    {
        //submit
        var x = BuildFormXml("SignUp");
        JackLinks.Form.SignUpSubmit(x, formSubmit_callback);
    }
}

function SubmitContactUs()
{
    var errMsg = '';

    //validate the form
    if ($('#cu_firstName').val().length == 0) errMsg += "First Name\r\n";
    if ($('#cu_lastName').val().length == 0) errMsg += "Last Name\r\n";
    if ($('#cu_address').val().length == 0) errMsg += "Address\r\n";
    if ($('#cu_city').val().length == 0) errMsg += "City\r\n";
    
    var country = $("#cu_country").val();
    switch(country)
    {
		case "US":
			if ($('#cu_state').val().length == 0) errMsg += "State\r\n";
			break;
		case "CA":
			if ($('#cu_CA_province').val().length == 0) errMsg += "Province\r\n";
			break;
    }
    
    
    if ($('#cu_phone').val().length == 0) errMsg += "Phone\r\n";
    if ($('#cu_zipCode').val().length == 0) errMsg += "Zip Code\r\n";
    
    //Validate and confirm e-mail
    if ($('#cu_email').val().length == 0)
    {
		errMsg += "Email\r\n";
	}
	else
	{
		var eMail1 = $('#cu_email').val();
		var eMail2 = $('#cu_emailConfirm').val();
	    
		if(eMail1 != eMail2 || !ValidateEmail(eMail1))
		{
			errMsg += "Please confirm your e-mail address\r\n";
		}	
	}	
	
    if ($('#cu_emailConfirm').val().length == 0) errMsg += "Email Confirm\r\n";
    if ($('#cu_contactReason').val().length == 0) errMsg += "Reason for Contact\r\n";
    if ($('#cu_comments').val().length == 0) errMsg += "Questions/Comments\r\n";
    
    if(errMsg.length > 0)
    {
        alert("The following required fields are missing\r\n\r\n" + errMsg);
    }
    else {
        //submit
        //JackLinks.SignUp.SignUpSubmit(GetSubChannel(), GetPage_callback);
        var x = BuildFormXml("ContactUs");
        JackLinks.Form.ContactUsSubmit(x, contactSubmit_callback);
    }
}
function formSubmit_callback(res) {

    alert("starting formSubmit_callback(res)");

    if (res.error && res.error.Message != 'Unknown')
	{
		alert($(res.error).attr("Message"));
	}
	else
	{
	    $('.jackpackFields').hide();
	    $('#sendinfo').hide();
	    $('#jackpack_notation').hide();
	    $('#jackpack_success').show();
	}
}
function contactSubmit_callback(res) {
    if (res.error && res.error.Message != 'Unknown') {
        alert($(res.error).attr("Message"));
    }
    else {
        // push popup overlay down
        var br = navigator.userAgent.toLowerCase();
        if (br.indexOf("msie 6.") != -1) {
            $('.PageOverlay').css('position', 'absolute');
        }
        else {
            $('.PageOverlay').css('position', 'fixed');
        }
        $('.PageOverlay').css('margin-left', '-370px');
        $('.PageOverlay').css('margin-top', '50px');
        $('.PageOverlay').css('left', '50%');

        $('#mainForm').hide();
        $('#thankyou').show();   
    }
}
function SignUpReset()
{
    $('#firstName').val('');
    $('#lastName').val('');
    $('#zipCode').val('');
    $('#emailAddress').val('');
    $('#sendinfo').attr('checked', 'checked');
    
    $('.jackpackFields').show();
    $('#sendinfo').show();
    $('#jackpack_success').hide();
    $('#jackpack_notation').show();
}

function ContactReset()
{
    $('#cu_firstName').val('');
    $('#cu_lastName').val('');
    $('#cu_address').val('');
    $('#cu_city').val('');
    $('#cu_state').val('');
    $('#cu_zipCode').val('');
    $('#cu_phone').val('');
    $('#cu_email').val('');
    $('#cu_emailConfirm').val('');
    $('#cu_contactReason').val('');
    $('#cu_comments').val('');
    $('#cu_product').val('');
    $('#cu_productCategory').val('');
    $('#cu_upc').val('');
    $('#cu_upc2').val('');
    $('#cu_mfgcode').val('');
    $('#cu_bestbydate').val('');
    $('#cu_storename').val('');
    $('#cu_storeaddress').val('');
    $('#cu_storecity').val('');
    $('#cu_storestate').val('');
    $('#cu_sendinfo').attr('checked', 'checked');
    
    $('#sendinfo').show();
    $('#contactus_success').hide();
    $('#ContactUs2').hide();
    $('#ContactUs3').hide();
}

function cu_contactReason_onChange(event) {

    //alert($('#cu_contactReason').find(':selected').val());

    $('#ContactUs2').hide();
    $('#ContactUs3').hide();

    switch ($('#cu_contactReason').find(':selected').val())
    {
        case "question":  
        case "nutrition":
        case "allergen":
            //display div id ContactUs2 (product drop down)
            $('#ContactUs2').show();
            break;
        case "issue":
            //display div id ContactUs3 (upc, etc)
            $('#ContactUs3').show();
            break;
        default:
            $('#ContactUs2').hide();
            $('#ContactUs3').hide();
            break;
    }
}

function SignUpCheckbox_onChange(c)
{
    if ($(c).attr('checked') == false)
    {
        alert($('#errCheckboxDeselect').val());
    }
}

function BuildFormXml(ff)
{
    var xml = '<r>';
    var element = '';
    
    var oFields = $("*[formField='" + ff + "']");   
    
    for(var i = 0; i < oFields.length; i++)
    {
        element = '';
        
        var controlType = ($(oFields[i]).attr("type"));
        switch (controlType)
        {
            case 'text':
            case 'textarea':
            case 'password':
            case 'select-one':
                element = '<' + oFields[i].id + '><![CDATA[' + oFields[i].value + ']]></' + oFields[i].id + '>';
            break;            
            case 'radio':
            case 'checkbox':
                element = '<' + oFields[i].id + '><![CDATA[' + oFields[i].checked + ']]></' + oFields[i].id + '>';
            break;            
        }
        xml += element;
    }
    
    xml += '</r>';
    return xml;
}

function ValidateEmail(str)
{
    if (str == "")
        return false;
        
    var at="@";
    var dot=".";
    var lat=str.indexOf(at);
    var lstr=str.length;
    var ldot=str.indexOf(dot);
    if (str.indexOf(at)==-1){
       return false;
    }

    if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
       return false;
    }

    if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
        return false;
    }

     if (str.indexOf(at,(lat+1))!=-1){
        return false;
     }

     if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
        return false;
     }

     if (str.indexOf(dot,(lat+2))==-1){
        return false;
     }

     if (str.indexOf(" ")!=-1){
        return false;
     }

     return true;
}
