/*
 * Manage Lightbox Email Signup for HomeSense Homepage
 */

jq().ready(function() {
    //jq('#subscribeWidgetForm input:text').val('');
    jq('#subscribeWidgetForm input#firstname').val('First Name..');
    jq('#subscribeWidgetForm input#email').val('Email..');
    jq('#subscribeWidgetForm input#postcode').val('Postal Code..');
    
    jq('#firstname').focus(function() {
        if (jq(this).val() == "First Name.."){
            jq(this).val('');
        }
    });
    jq('#email').focus(function() {
        if (jq(this).val() == "Email.."){
            jq(this).val('');
        }
    });
    jq('#postcode').focus(function() {
        if (jq(this).val() == "Postal Code.."){
            jq(this).val('');
        }
    });

    var source = "";
    var currentURL = location.href;
    if (currentURL.indexOf("index.asp") >= 0){
        source = "lightbox_homepage_en";
    } else {
        source = "unknown";
    }
    //alert("source = " + source);
	jq('#subscribeWidgetForm').validate({
		rules:  {
			firstname: {
				minlength: 2,
				maxlength: 50,
				required: true
			},
			email: {
				minlength: 6,
				maxlength: 64,
				required: true,
				email: true
			},
			postcode: {
				minlength: 6,
				maxlength: 6,
				required: true
			}		
		},
		messages: {
			firstname: {
				required: "Please enter your first name.",
				minlength: "Your first name must consist of at least 2 characters.",
				maxlength: "Your first name must not exceed 50 characters."
			}, 
			email: {
				required: "Please enter your email address.",
				email: "Please enter a valid email address.",
				minlength: "Please enter at least 6 characters."		
			},
			postcode: {
				required: "Please enter your postcode.",
				minlength: "Your postcode must be 6 characters long."			
			}
		},
		errorPlacement: function(error, element) {
		
				error.insertAfter( element.parent());
		
		},
		submitHandler: function() { 
			//alert("submitted!");	
			var result;
			var beacon;
			// hide form
			jq('#email-signup-form').hide();
			jq('.lightBoxFooter').hide();
			// get data from email field
			var firstname = jq('input[name=firstname]');
			var email = jq('input[name=email]');
			var postcode = jq('input[name=postcode]');
			// organize data
			var data = 'firstname=' + firstname.val() + '&email=' + email.val() + '&postcode=' + postcode.val();
			
			// send email
			jq.ajax({
				cache: false,
				type: 'GET',
				url: 'lightbox-signup-handler.asp',
				data: data,
				dataType: 'html',
				async: false,
				timeout: 60000,
				success: function(data) {
					if (data == "success") {
						jq('#email-signup-confirmed').show();	
						beacon = "e=" + email.val() + "&fname=" + firstname.val() + "&lname=&addr=&city=&state=&zipcode=" + postcode.val() + "&phone=&age=yes&optin=Y&lc=EN&b=" + source + "&random=" + Math.random() * 99999;
						
						jq('#myIframe').attr("src", "https://secure.ed4.net/homesense/dualpost/?"+beacon);
						 
						var s1 = s_gi("tjxhomesense");
						//var s1 = s_gi("tjxdev");
						s1.eVar1 = "Lightbox on EN Home Page";
						s1.prop3 = "en"
						s1.linkTrackVars="events,eVar1,prop3";
						s1.linkTrackEvents = "event2";
						s1.events = "event2";
						var s_code1=s1.tl();
						if(s_code1) document.write(s_code1);						
					} else {
						result = "<strong>Sorry!</strong><br /><br />There's been an " + data + " error signing up<br />for HomeSense E-lert Email.<br /><br />We apologize for any inconvenience this may cause.<br /><br />"
						jq('#email-signup-failed')
						    .empty()
							.append(result)
							.append('<div id="backlink">Go back</div>')
							.show(); 
							
					    jq('#email-signup-failed #backlink').click(function() {
                            jq('#email-signup-failed').hide();
                            jq('#email-signup-form').show();
                            jq('#subscribeWidgetForm input#firstname').val('First Name..');
                            jq('#subscribeWidgetForm input#email').val('Email..');
                            jq('#subscribeWidgetForm input#postcode').val('Postal Code..');
                        });
    						
					};	
				},
				error: function (xhr, ajaxOptions, thrownError){
                    //alert("xhr.statusText: " + xhr.statusText);
				    //alert("ajaxOptions: " + ajaxOptions);
                    //alert("thrownError: " +thrownError);;		
					result = "<strong>Sorry!</strong><br /><br />There's been an error signing up for HomeSense E-lert Email. <br> We apologize for any inconvenience this may cause.<br /><br />"
						jq('#email-signup-failed')
						    .empty()
							.append(result)
							.show(); 	
				}
			});
		}
	});
});




