﻿var Event = YAHOO.util.Event;
var Dom = YAHOO.util.Dom;
var $ = Dom.get;

ajax_request = function() {

    this.success = null;
    this.failure = null;
    this.scope = null;
    this.cache = null;

    if (arguments[0] != null)
        this.success = arguments[0];

    if (arguments[1] != null)
        this.failure = arguments[1];

    if (arguments[2] != null)
        this.scope = arguments[2];

    if (arguments[3] != null)
        this.cache = arguments[3];

    this.call = function(u) {

        var _callback = {
            success: this.success,
            failure: this.failure,
            scope: this.scope,
            cache: this.cache
        };

        YAHOO.util.Connect.asyncRequest('GET', u, _callback, null);

    };
}

var pollerId = 0;

requestManager = {

    genericFailure: function(o) {

        alert('Failed to communicate with server. Please refresh the page.');
    },

    sendContact: function(pageId, title, firstName, lastName, companyName, postCode, email, question) {

        var url = '/pages/_Contact.aspx';

        url += '?pageId=' + pageId;
        url += '&title=' + title;
        url += '&firstName=' + firstName;
        url += '&lastName=' + lastName;
        url += '&companyName=' + companyName;
        url += '&postCode=' + postCode;
        url += '&email=' + email;
        url += '&question=' + question;

        var request = new ajax_request();
        request.success = this.sendContactSuccess;
        request.failure = this.genericFailure;
        request.cache = false;
        request.scope = this;

        request.call(url);
    },

    sendContactSuccess: function(o) {

        $('contactUs_form').style.display = 'none';
        $('contactUs_done').style.display = 'block';
        $('contactUs_done').innerHTML = o.responseText;
    }
};
