//function detects which object to use
// XMLHttpRequest                  = Firefox, Opera, Safari, etc
// ActiveXObject Microsoft.XMLHttp = IE5.5+, ActiveX browsers
function detectAjax() {
    var xmlHttp;
    
        try { xmlHttp = new XMLHttpRequest(); }
        catch (error) {   

            try { xmlHttp = new ActiveXObject("Microsoft.XMLHttp"); }
            catch (error) { alert("Your browser doesn't support Ajax, please make an upgrade.");
             return false;
            }
        }
        
 return xmlHttp;
}   //END detectAjax()


//check if manager is selected
function checkManagerStatus(checkStatus, AccManager, type){

    if ( type == "d" ) { tmpValue = "d" } else { tmpValue = "u" }
    if(checkStatus){ tmpValue = "m"; } 
    if ( AccManager ) { tmpValue = "e"; }

return tmpValue;
}

//parses the data from ajaxData()
function ajaxDataReturned(val, val2, obj) {

    if (val == 0) {
        if (val2 != "") { location = val2; }
    }
    else if (val == 1) {
        var tmp = val2.split("||");

        if (tmp[0] == "False") {
            window.location = "/wz/index.asp?PAGE=step2&ID=" + tmp[1]
        }

    }
    else if (val == 2) {
    var mode = val2.split("|||"); 
        var tmp = mode[0].split("||");
        if (tmp[0] == "False" && mode[1] != "edit") { window.location = "/wz/index.asp?PAGE=step2&ID=" + tmp[1] } else { window.location = "/wz/index.asp?PAGE=step2&ID=" + tmp[1] + "&MODE=edit" }
    }
    else if (val == 3) { location.reload(); }
    else if (val == 4) { location.reload(); }
    else if (val == 5) {
        var tmp = val2.split("||");
        if (tmp[0] == "False") {
            if (tmp[2] == "1") {
                window.location = "/wz/index.asp?PAGE=step3&ID=" + tmp[1] + "&MODE=edit";
            } else {
                window.location = "/wz/index.asp?PAGE=step3&ID=" + tmp[1]
            }
        }
    }
    else if (val == 6) { document.getElementById("tmp").value = val2 }

    else if (val == 8) {

        var tmp = val2.split(":::");

        $$('agentTitle').value = tmp[0];
        $$('agentEmail').value = tmp[1];
        $$('agentLifeSpan3').disabled = "disabled";
        $$('agentLifeSpan6').disabled = "disabled";
        if (tmp[2] == 3) { $$('agentLifeSpan3').checked = "checked"; } else { $$('agentLifeSpan6').checked = "checked"; }
        $$('agentKEYWORDS').value = tmp[3];
        $$('agentJOB_COMPANY').value = tmp[4];
        $$('agentJOB_STATE_PROVINCE').value = tmp[5];
        $$('agentCATEGORY').value = tmp[6];
        $$('agentJOB_TYPE').value = tmp[7];

        $$('Title').innerHTML = tmp[0];
        $$('Email').innerHTML = tmp[1];
        if (tmp[2] == 3) { $$('Duration').innerHTML = "3 months"; } else { $$('Duration').innerHTML = "6 months"; }
        $$('key').innerHTML = tmp[3];
        $$('Company').innerHTML = tmp[4];
        $$('State').innerHTML = tmp[5];
        $$('Category').innerHTML = tmp[6];
        $$('Type').innerHTML = tmp[7];



        $$("submitAgent").value = "Update Job Agent";
        $$("submitAgent").onclick = function() {
            ajaxData(10, '', 'positionDetailsMsg', $$('agentTitle').value, $$('agentEmail').value, $$('agentLifeSpan3').checked, $$('agentLifeSpan6').checked, $$('agentKEYWORDS').value, $$('agentJOB_COMPANY').value, $$('agentJOB_STATE_PROVINCE').value, $$('agentCATEGORY').value, $$('agentJOB_TYPE').value, tmp[8])
        }

    }
    else if (val == 11) {

        if (val2 == 1) {
            window.location = "/wz/index.asp?PAGE=logIn"
        }
    }


    else { alert("An error has occurred, please retry your action or contact the site administrator. Error Code JS100"); }
}   //END function ajaxReturnedDa(val, val2, obj)



var AlreadyProcessing = false;
var ProcessQueue = new Array();
var ProcessQueueObj = new Array();
var ProcessQueueMsg = new Array();

    //main ajax function
    function ajaxData(ajax, obj, msg, a, b, c, d, e, f, g, h, i, j) {

        var URL = 'ajax='+ escape(ajax) +'&obj='+ escape(obj) +'&a='+ escape(a) +'&b='+ escape(b) +'&c='+ escape(c) +'&d='+ escape(d) +'&e='+ escape(e) +'&f='+ escape(f) +'&g='+ escape(g) +'&h=' + escape(h) +'&i=' + escape(i) +'&j=' + escape(j);
//alert(URL);
            objXMLHttp = detectAjax();
            ((document.location.href.indexOf('https') != -1) ? 'https' : 'http')
            if (objXMLHttp.overrideMimeType) { objXMLHttp.overrideMimeType('text/html'); }

                objXMLHttp.open("POST", ((document.location.href.indexOf('https') != -1) ? 'https' : 'http') +"://www.cpwa.net/wz/includes/scripts/ajaxData.asp", true);
                objXMLHttp.onreadystatechange = function() { displayMsg(obj,msg) };
                objXMLHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
                objXMLHttp.send(URL);
                
    }   //END ajaxData(e, ajax, id, tId, val1, val3, val4)

            //function to display the ajax msg
            function displayMsg(obj,msg) {
                var tmpObj = $$(obj);

                   if (objXMLHttp.readyState == 1) { ShowLoading = true; AjaxLoader.init(FindEvent); }
                   if (objXMLHttp.readyState == 2) { AjaxLoader.End($$(AjaxLoaderId)); }
                   if (objXMLHttp.readyState == 4) {

                       if (objXMLHttp.status == 200) {
                          
                            var tmpVar = objXMLHttp.responseText.split("0|-<]:");

                                if ($$(msg)) { if ($$(msg).style.display != 'none') { $$(msg).className = 'SiteMsg'; }}
                                
                                if (tmpVar[0] != 'error' && tmpVar[1] != 'error-new') {  

                                        if (tmpVar[1].match(/sitemsg/) == 'sitemsg') {
                                                var SiteMsg = tmpVar[1].split("::");

                                                    $$(msg +'Text').innerHTML = SiteMsg[2];
                                  
                                                         if (SiteMsg[1] == "g") { $$(msg).className = 'SiteMsg SiteMsgGrn'; }
                                                    else if (SiteMsg[1] == "r") { $$(msg).className = 'SiteMsg SiteMsgRed'; }
                                                    else if (SiteMsg[1] == "y") { $$(msg).className = 'SiteMsg SiteMsgYlw'; }
                                                
                                                    tmpVar[1] = tmpVar[1].replace(/[[\d\D]*?]/,"")
                                        }
                                         if (tmpVar[0] == '0' ) { ajaxDataReturned(0, tmpVar[1]     ); }    
                                    else if (tmpVar[0] == '1' ) { ajaxDataReturned(1, tmpVar[1]     ); }
									else if (tmpVar[0] == '2' ) { ajaxDataReturned(2, tmpVar[1]     ); }
									else if (tmpVar[0] == '3' ) { ajaxDataReturned(3, tmpVar[1]     ); }
									else if (tmpVar[0] == '4' ) { ajaxDataReturned(4, tmpVar[1]     ); }
									else if (tmpVar[0] == '5' ) { ajaxDataReturned(5, tmpVar[1]     ); }
									else if (tmpVar[0] == '6' ) { ajaxDataReturned(6, tmpVar[1]     ); }
									//else if (tmpVar[0] == '7') {if (SiteMsg[1] == "g") { location.reload(); }  }
									else if (tmpVar[0] == '8')  { ajaxDataReturned(8, tmpVar[1]     ); }
									else if (tmpVar[0] == '9')  { location.reload();                   }
									else if (tmpVar[0] == '10') { location.reload();                   }
									//else if (tmpVar[0] == '11') { ajaxDataReturned(11, tmpVar[1]);     }
									else if (tmpVar[0] == '12') { location.reload(); }

                                    
                                }
                        
                        }   //### end .status == 200
                        else { alert("Error: " + objXMLHttp.status + objXMLHttp.responseText); }  // *** CHANGE THIS BEFORE RELEASE ***
                    }
            }   //END displayMsg()
            
function isArray(obj) {
   if (obj.constructor.toString().indexOf("Array") == -1)
      return false;
   else
      return true;
}            
