﻿// <copyright file="Offers.js" company="Fuse Digital">
// Copyright (c) 2011 All Right Reserved
// </copyright>
// <author>Sean Greasley</author>
// <email>sean.greasley@fusedigital.com</email>
// <summary>Supports the offers section and user registration process for offers</summary>

// Init JQuery registration dialog
$(function () {

	$(".download-offer-link").click(function () {
		var href = $(this).attr("href");
		if (typeof (href) != "undefined")
			trackOfferDownload(href);
	});

	$("#dialog:ui-dialog").dialog("destroy");

	$("#dialog-modal").dialog({
		width: 400,
		modal: true,
		resizable: false,
		autoOpen: false,
		buttons: { "Get Voucher": RegisterForDownload }
	});

});


// Displays a popup to take in user info
function DisplayRegistrationPopup() {
	$("#dialog-modal").dialog("open");
}

// Register user details
function RegisterForDownload() {

	// Client validate
	if (Page_ClientValidate("vgRegister")) {

		var offerID = $("[id$='hdnOfferID']").val();
		var firstname = $("[id$='txtFirstName']").val();
		var surname = $("[id$='txtSurname']").val();
		var emailAddress = $("[id$='txtEmailAddress']").val();
		var referringPage = $("[id$='hdnReferringPage']").val();
		var rememberMe = $("[id$='chkRememberMe']").is(':checked');
		var keepMeUpdated = $("[id$='chkKeepMeUpdated']").is(':checked');
		var dataString = "{offerID: '{0}', email: '{1}', firstname: '{2}', surname: '{3}', rememberMe: {4}, keepMeUpdated: {5}, referringPage: '{6}'}".format(offerID, emailAddress, firstname, surname, rememberMe, keepMeUpdated, referringPage);

		$.ajax({
			type: "POST",
			url: "services/Service.asmx/GetDownloadOfferForUser",
			data: dataString,
			contentType: "application/json; charset=utf-8",
			dataType: "json",
			success: function (data) {

				if (data != null && data.d != null) {

					// Display summary
					$('#dialog-modal-info').hide();
					$('#dialog-modal-confirm').show();
					$('#hypDownloadLink').attr('href', data.d);
					$("[id$='lnkDownload']").attr('href', data.d);
					$("[id$='lnkDownload']").removeAttr('onClick');
					$('#dialog-modal').dialog('removebutton', 'Get Voucher');
					$('.ui-dialog-buttonpane').hide();

					// Open PDF in new window
					setTimeout(function () { openWindow(data.d); data.d = null }, 3000);

					trackOfferDownload(data.d);
				}
			}
		});
	}
}

function trackOfferDownload(url) {
	var rnd = Math.round(Math.random() * 1000000);
	var u = '';
	var r = '';
	try { u = encodeURIComponent(url); r = encodeURIComponent(document.referrer); } catch (e) { }
	var html = "<iframe src='http://dp2.specificclick.net?nwk=3&y=2&t=h&tp=4&clid=3192&pixid=330111510&u=" + u + "&r=" + r + "&rnd=" + rnd + "' width='0' height='0' frameborder='0' leftmargin='0' topmargin='0'></iframe>";
	var $html = $(html);
	$html.appendTo("body");
}


// Open offer in new window
function openWindow(link)
{
	var newWindow = window.open(link, '_blank');
	newWindow.focus();
	return false;
}

// String.format extension for easy formatting
String.prototype.format = function () {
	var s = this,
        i = arguments.length;

	while (i--) {
		s = s.replace(new RegExp('\\{' + i + '\\}', 'gm'), arguments[i]);
	}
	return s;
};
