﻿// Ajax
function Ajax (callback) {
    callback.req = null;
    // listener
    callback.listener = function () {
        if (callback.req.readyState == 4) {
            if (callback.req.status == 200) {
                // right
                callback(callback.req.responseText);
            }
            else {
                // error
                callback('error');
            }
        }
    }
    callback.init = function () {
        if (window.XMLHttpRequest) {
            callback.req = new XMLHttpRequest();
        }
        else if (window.ActiveXObject) {
            // isIE = true;
            try {
                callback.req = new ActiveXObject("Msxml2.XMLHTTP");
            }
            catch (e) {
                try {
                    callback.req = new ActiveXObject("Microsoft.XMLHTTP");
                }
                catch(e) {
                    callback.req = false;
                }
            }
        }
        if (callback.req) {
            callback.req.onreadystatechange = function () {callback.listener()};
        }
    }
    // send 
    callback.send = function (url, content) {
        callback.req.open("post", url, true);
        callback.req.setRequestHeader('Connection', 'close');
        callback.req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        callback.req.send(content || '');
    }
}