﻿Wipfli.Event = function()
{
    var m_ddlIndustry;
    var m_ddlTopic;
    var m_ddlSpeaker;
    var m_ddlLocation;
    var m_FirstName;
    var m_LastName;
    var m_Title;
    var m_Company;
    var m_Address;
    var m_City;
    var m_State;
    var m_Zip;
    var m_Phone;
    var m_Fax;
    var m_Email;
    Ext.onReady(this.Initialize.createDelegate(this));
}

Ext.extend(Wipfli.Event, Ext.util.Observable,
{
    Initialize : function()
    {
        this.addEvents({"onData": true});
    
        this.m_ddlIndustry = document.getElementById("ddlIndustry"); 
        this.m_ddlTopic = document.getElementById("ddlTopic");
        this.m_ddlSpeaker = document.getElementById("ddlSpeaker");
        this.m_ddlLocation = document.getElementById("ddlLocation");
    },
    
    LoadCookies : function()
    {
        this.m_FirstName = CookieRead("FirstName");
        this.m_LastName = CookieRead("LastName");
        this.m_Title = CookieRead("Title");
        this.m_Company = CookieRead("Company");
        this.m_Address= CookieRead("Address");
        this.m_City = CookieRead("City");
        this.m_State = CookieRead("State");
        this.m_Zip = CookieRead("Zip");
        this.m_Phone = CookieRead("Phone");
        this.m_Phone = CookieRead("Fax");
        this.m_Email = CookieRead("Email");
    },
    
    SetCookieFields : function()
    {
        if (document.getElementById('efirstname'))
            document.getElementById('efirstname').value = this.m_FirstName;
        if (document.getElementById('elastname'))
            document.getElementById('elastname').value = this.m_LastName;
        if (document.getElementById('etitle'))
            document.getElementById('etitle').value = this.m_Title;
        if (document.getElementById('ecompany'))
            document.getElementById('ecompany').value = this.m_Company;
        if (document.getElementById('eaddress'))
            document.getElementById('eaddress').value = this.m_Address;
        if (document.getElementById('ecity'))
            document.getElementById('ecity').value = this.m_City;
        if (document.getElementById('estate'))
            document.getElementById('estate').value = this.m_State;
        if (document.getElementById('ezip'))
            document.getElementById('ezip').value = this.m_Zip;
        if (document.getElementById('ephone'))
            document.getElementById('ephone').value = this.m_Phone;    
        if (document.getElementById('efax'))
            document.getElementById('efax').value = this.m_Fax;    
        if (document.getElementById('eemail'))
            document.getElementById('eemail').value = this.m_Email;
    },
    
    SubmitEventsLandingSearch : function()
    {
        Wipfli.AjaxAPI.WipfliAjax.EventsLandingSearch(this.m_ddlIndustry.value, this.m_ddlTopic.value, this.m_ddlSpeaker.value, this.m_ddlLocation.value, this.SubmitEventsSearch_Process.createDelegate(this));
    },
    SubmitEventsSearch_Process : function(response)
    {
        if (response.error)
        {
            alert(response.error.Message);
        }
        else
        {
            var divMC = Ext.get("divEventsMC");
            var a = Ext.DomQuery.selectNode('data', response.value);
            divMC.update(a.firstChild.nodeValue);
        }    
    },
    
    RegisterDialog : function(eventID)
    {
        Wipfli.AjaxAPI.WipfliAjax.EventRegisterRetrieve(eventID, this.RegisterDialog_Process.createDelegate(this));
    },
    RegisterDialog_Process : function(response)
    {
        if (response.error)
        {
            alert(response.error.Message);
        }
        else
        {
            var divMC = Ext.get("divEventRegisterMC");
            var a = Ext.DomQuery.selectNode('data', response.value);
            divMC.update(a.firstChild.nodeValue);
            this.SetCookieFields();            
        }    
    },
    
    Register : function(eventID)
    {
        var msg = "";
        if (document.getElementById('efirstname').value == ""){msg += "-- First Name\n";}
        if (document.getElementById('elastname').value == ""){msg += "-- Last Name\n";}
        if (document.getElementById('ecompany').value == ""){msg += "-- Company\n";}
        if (document.getElementById('eaddress').value == ""){msg += "-- Address\n";}
        if (document.getElementById('ecity').value == ""){msg += "-- City\n";}
        if (document.getElementById('estate').value == ""){msg += "-- State\n";}
        if (document.getElementById('ezip').value == ""){msg += "-- Zip Code\n";}
        if (ValidateEmail(document.getElementById('eemail')) == false){msg += "-- E-mail Address\n";}             if (document.getElementById('ephone').value == ""){msg += "-- Phone Number\n";}
          
        
        if (msg != ""){
            alert("The following required field(s) are missing:\n\n" + msg + "\nPlease complete the form and resubmit.");            
        }else
        {
           //var x = getFormElementsXML("formfield", "eventReg");
                      
           //Wipfli.AjaxAPI.WipfliAjax.EventRegister(x, eventID.toString(), document.getElementById('efirstname').value,document.getElementById('elastname').value,document.getElementById('etitle').value,document.getElementById('ecompany').value,document.getElementById('eaddress').value,document.getElementById('ecity').value,document.getElementById('estate').value,document.getElementById('ezip').value,document.getElementById('eemail').value,document.getElementById('ephone').value,document.getElementById('efax').value,document.getElementById('ecost').value,document.getElementById('eregcode').value,this.Register_Process.createDelegate(this));
           Wipfli.AjaxAPI.WipfliAjax.EventRegister(eventID.toString(), document.getElementById('efirstname').value,document.getElementById('elastname').value,document.getElementById('etitle').value,document.getElementById('ecompany').value,document.getElementById('eaddress').value,document.getElementById('ecity').value,document.getElementById('estate').value,document.getElementById('ezip').value,document.getElementById('eemail').value,document.getElementById('ephone').value,document.getElementById('efax').value,document.getElementById('ecost').value,document.getElementById('eregcode').value,document.getElementById('eeventname').value,document.getElementById('edate').value,document.getElementById('elocation').value,document.getElementById('econtactemail').value,this.Register_Process.createDelegate(this));
        }
    },
    Register_Process : function(response)
    {
        if (response.error)
        {
            alert(response.error.Message);
        }
        else
        {
            //set cookies
            CookieSet("FirstName", document.getElementById('efirstname').value);
            CookieSet("LastName", document.getElementById('elastname').value);
            CookieSet("Title", document.getElementById('etitle').value);
            CookieSet("Company", document.getElementById('ecompany').value);
            CookieSet("Address", document.getElementById('eaddress').value);
            CookieSet("City", document.getElementById('ecity').value);
            CookieSet("State", document.getElementById('estate').value);
            CookieSet("Zip", document.getElementById('ezip').value);
            CookieSet("Phone", document.getElementById('ephone').value);
            CookieSet("Fax", document.getElementById('efax').value);
            CookieSet("Email", document.getElementById('eemail').value);
            this.LoadCookies();
            
            alert('Thank you for registering.');
            document.location.href='Events.aspx';
        }    
    }        
});