﻿/// <reference name="MicrosoftAjax.js"/>
/// <reference name="Pacem.Web.Extensions.Tween.Tween.js" assembly="Pacem.Web.Extensions" />
// WCF
var txtAddress, pResponse, ajaxLoaderSource, originalSource, btnAddRecipient;
var recipientActualCulture;
function doRegisterNewsLetterRecipient(evt) {
    evt.preventDefault();
    evt.stopPropagation();
    btnAddRecipient = evt.target;
    btnAddRecipient.src = ajaxLoaderSource;
    pacem.it.services.RegisterNewsLetterRecipient(txtAddress.value, recipientActualCulture, onRegisterNewsLetterRecipientSuccess);
}
function onRegisterNewsLetterRecipientSuccess(result) {
    var success = result.Success;
    pResponse.innerHTML = result.Message;
    var cssToSet = success ? "NewsSuccess" : "NewsEmphasized";
    var cssToRemove = !success ? "NewsSuccess" : "NewsEmphasized";
    Sys.UI.DomElement.addCssClass(pResponse, cssToSet);
    Sys.UI.DomElement.removeCssClass(pResponse, cssToRemove);
    var bounds = Sys.UI.DomElement.getBounds(pResponse);
    if (result.Success) {
        $create(Pacem.UI.Tween,
            { 'isCssProperty': true, 'easingFunc': Pacem.UI.Easing.Sine.easeOut, 'property': 'height', 'unit': Pacem.UI.Unit.pixels, 'start': 0, 'finish': bounds.height + 10, 'duration': .5 }
            , { 'motionFinished': function() { btnAddRecipient.src = originalSource; } }, null, pResponse.parentNode
            );

    } else {
        $create(Pacem.UI.Tween,
            { 'isCssProperty': true, 'easingFunc': Pacem.UI.Easing.Sine.easeOut, 'property': 'height', 'unit': Pacem.UI.Unit.pixels, 'start': 0, 'finish': bounds.height + 10, 'duration': .5 }
            , { 'motionFinished': function() { btnAddRecipient.src = originalSource; } }, null, pResponse.parentNode
            );
    }
}