/**
 * @author John Schneider
 * @copyright 2010 John Schneider
 */
/**
 * Does AJAX requests in the least complex way possible using prototype.
 */
function Crajax() {

    /**
     * Gets text from a url using the given parameters.  Uses POST.
     * @param {String} url The url string.
     * @param {Object} paramarray The array of parameters as a key-value pair array.
     * @param {String} paramString If this is defined, it will be used instead of the array.
     */
    this.GetText = function(url, paramarray, paramString) {
        if (paramString) {
            return (new Ajax.Response(new Ajax.Request(url, { parameters: paramString, asynchronous: false }))).responseText;
        }
		else if (paramarray) {
			var paramString = "";
			for (var i in paramarray) {
                if (typeof(paramarray[i]) != "function") {
                    paramString += (i + "=" + paramarray[i] + "&");
                }
            }
            paramString = paramString.substr(0, paramString.length - 1);
			return (new Ajax.Response(new Ajax.Request(url, { parameters: paramString, asynchronous: false }))).responseText;
		}
		else {
			return (new Ajax.Response(new Ajax.Request(url, { asynchronous: false }))).responseText;
		}
	}
}

//now create a new object.
var cajax = new Crajax();

