Vertica = {
	"settings": {
		"basePath": "/",
		"siteURL": "http://www.vertica.ca/57charles",
		"googleanalytics":
		{
			"UA": "UA-9982964-1",
			"trackOutgoing": 1,
			"trackMailto": 1,
			"trackDownload": 1,
			"trackDownloadExtensions": "7z|aac|avi|csv|doc|exe|flv|gif|gz|jpe?g|js|mp(3|4|e?g)|mov|pdf|phps|png|ppt|rar|sit|tar|torrent|txt|wma|wmv|xls|xml|zip"
		}
	}
}

ga = Vertica.settings.googleanalytics;
$.fn.track.defaults.debug = true;
$.trackPage(ga.UA);

$(document).ready(function() {

	// Attach onclick event to all links.
  $('a').click( function() {
    // Expression to check for absolute internal links.
    var isInternal = new RegExp("^(https?):\/\/" + window.location.host, "i");
    // Expression to check for special links like gotwo.module /go/* links.
    var isInternalSpecial = new RegExp("(\/go\/.*)$", "i");
    // Expression to check for download links.
    var isDownload = new RegExp("\\.(" + ga.trackDownloadExtensions + ")$", "i");
    try {
      // Is the clicked URL internal?
      if (isInternal.test(this.href)) {
        // Is download tracking activated and the file extension configured for download tracking?
        if (ga.trackDownload && isDownload.test(this.href)) {
          // Download link clicked.
          var extension = isDownload.exec(this.href);
          $.trackEvent("Downloads", extension[1].toUpperCase(), this.href.replace(isInternal, ''));
          $.trackPageview(this.href.replace(isInternal, ''));
        }
        else if (isInternalSpecial.test(this.href)) {
          // Keep the internal URL for Google Analytics website overlay intact.
          $.trackPageview(this.href.replace(isInternal, ''));
        }
      }
      else {
        if (ga.trackMailto && $(this).is("a[href^=mailto:]")) {
          // Mailto link clicked.
          $.trackPageview('/email/'+this.href.substring(7));
          $.trackEvent("Mails", "Click", this.href.substring(7));
        }
        else if (ga.trackOutgoing) {
        	if (this.href != 'javascript:void(0);' &&
        			substr(0,Vertica.settings.siteURL.length()) != Vertica.settings.siteURL) 
        	{
						// External link clicked.
	          $.trackEvent("Outgoing links", "Click", this.href);
        	}
        }
      }
    } catch(err) {}
  });
});

function trackContactForm() {
	
	$.trackPageview('/contact-page-success/'+$('input[name="area_code"]').val()+"-"+$('input[name="phone1"]').val()+"-"+$('input[name="phone2"]').val());

	var trackValues = {};
	
	trackValues = $.extend(trackValues, { "Full-Name": $('input[name="first_name"]').val()+" "+$('input[name="last_name"]').val() });
	trackValues = $.extend(trackValues, { "Phone": $('input[name="area_code"]').val()+"-"+$('input[name="phone1"]').val()+"-"+$('input[name="phone2"]').val() });
	trackValues = $.extend(trackValues, { "Email": $('input[name="contact_email"]').val() });
	trackValues = $.extend(trackValues, { "Postal-Code": $('input[name="zip"]').val() });
	trackValues = $.extend(trackValues, { "Age": $('select[name="age"]').val() });
	trackValues = $.extend(trackValues, { "Annual-Household-Income": $('select[name="annual_household_income"]').val() });
	trackValues = $.extend(trackValues, { "Suite-Type": $('select[name="type_of_suite"]').val() });
	trackValues = $.extend(trackValues, { "How-Hear": $('select[name="how_do_u_hear_us"]').val() });
	
	return gaTrackValues(trackValues);
}

String.prototype.trim = function () {
    return this.replace(/^\s*/, "").replace(/\s*$/, "");
}
