/**
 * @author brian.milton
 *
 * Javascript to retrieve pages using ajax.
 *
 */
// Set variables
var xmlhttp
var url
var cpage

//initial function to get required page
function getpage(page){
    xmlhttp = GetXmlHttpObject();
    if (xmlhttp == null) {
        alert("Your browser does not support XMLHTTP!");
        return;
    }
    //Clear current page
    document.getElementById('row_1').innerHTML = "<div class='indent_row1'><center><br />Please wait. Loading....</center></div>";
    document.getElementById('row_2').innerHTML = "";
    
    //construct url to send to server
    var randomnumber = Math.floor(Math.random() * 1000001)
    url = "lib/getpages.php";
    url = url + "?page=" + page + "&dummy=" + randomnumber;
    
    //Set up ready state and send page request to server
    
    xmlhttp.open("POST", url, true);
    xmlhttp.onreadystatechange = stateChanged;
    xmlhttp.setRequestHeader("Cache-Control", "no-cache")
    xmlhttp.send(null);
}

// function to change the page style layout
function getlayout(page){
    document.body.id = page;
    cpage = page;
}

// check what the current page is from body tag and get it.
function currentpage(){
    if (cpage != "") {
        var thispage = document.body.id;
        getpage(thispage);
    }
    else {
        getpage(cpage);
    }
}

function getservice(part){
    xmlhttp = GetXmlHttpObject();
    if (xmlhttp == null) {
        alert("Your browser does not support XMLHTTP!");
        return;
    }
    
    //Clear current section of page
    document.getElementById('r1_c2').innerHTML = "<center><br />Please wait. Loading....</center></div>";
    
    //construct url to send to server
    var randomnumber = Math.floor(Math.random() * 1000001)
    url = "lib/getservice.php";
    url = url + "?part=" + part + "&dummy=" + randomnumber;
    
    //Set up ready state and send page request to server
    xmlhttp.open("POST", url, true);
    xmlhttp.onreadystatechange = stateChangeService;
    xmlhttp.setRequestHeader("Cache-Control", "no-cache")
    xmlhttp.send(null);
}

//function to perform server request depending on browser type
function GetXmlHttpObject(){
    if (window.XMLHttpRequest) {
        //code for IE7+, Firefox, Chrome, Opera & Safari
        return new XMLHttpRequest();
    }
    if (window.ActiveXObject) {
        //Code for IE5 & IE6
        return new ActiveXObject("Microsoft.XMLHTTP");
    }
    return null;
}

// Function to deal with reply from server
function stateChanged(){
    if (xmlhttp.readyState == 4) {
    
        var response = xmlhttp.responseText;
        var responseArray = response.split("**break**");
        
        //insert new page content to top and bottom row's of page.
        document.getElementById('row_1').innerHTML = responseArray[0];
        document.getElementById('row_2').innerHTML = responseArray[1];
    }
}

function stateChangeService(){
    if (xmlhttp.readyState == 4) {
    
        var response = xmlhttp.responseText;
        
        //insert new page content to top and bottom row's of page.
        document.getElementById('r1_c2').innerHTML = response;
    }
}


