﻿/// <reference name="MicrosoftAjax.js"/>

Type.registerNamespace("GraceEvangelisticMinistries");

GraceEvangelisticMinistries.newsletterSignup = function(element) {
    GraceEvangelisticMinistries.newsletterSignup.initializeBase(this, [element]);
}

GraceEvangelisticMinistries.newsletterSignup.prototype = {
    initialize: function() {
        GraceEvangelisticMinistries.newsletterSignup.callBaseMethod(this, 'initialize');

        // Add custom initialization here

        $addHandlers(this._signUpButton, {
            'click': this.onsignUpButton_Click
        }, this);
    },
    dispose: function() {
        $clearHandlers(this._signUpButton);
        //Add custom dispose actions here
        GraceEvangelisticMinistries.newsletterSignup.callBaseMethod(this, 'dispose');
    },

    onsignUpButton_Click: function(object, sender) {
        if (this._emailAddress.value != "") {
            newsletterSignup.SendMail(this._emailAddress.value, this.onSuccess, this.onFailure, this);
        }
        else {
            alert("Email address box cannot be left empty.");
        }
    },

    onSuccess: function(result, context, methodName) {
        if (result == "SUCCESS") {
            alert("Thank you for signing up to recieve updateds from G.E.M.");
        } else {
            alert(result);
        }
    },

    onFaiure: function(error, context, methodName) {
        alert(error.get_message());
    }
}

GraceEvangelisticMinistries.newsletterSignup.createProperty("emailAddress");
GraceEvangelisticMinistries.newsletterSignup.createProperty("signUpButton");

GraceEvangelisticMinistries.newsletterSignup.registerClass('GraceEvangelisticMinistries.newsletterSignup', Sys.UI.Control);

if (typeof(Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();
