﻿// ------------------------------------ //
// ---- Ajax -------------------------- //
// ------------------------------------ //

var ajaxdirectory = "http://www.tripleoptics.net";
var xmlhttp
var xmlhttp1
var xmlhttp2

// used on admin section to retrieve the category list
function populateByCategory(catId) {
    var returnText = "<option>Select</option>";
    xmlhttp = GetXmlHttpObject();
    if (xmlhttp == null) {
        document.getElementById("directoryId").innerHTML = returnText;
    }
    var url = ajaxdirectory + "/ajax/admin/admin_list_categories.php";
    url = url + "?c=" + catId;
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4) {
            document.getElementById("directoryId").innerHTML = xmlhttp.responseText;
            /*
            if (document.getElementById("directoryId").selectedIndex > 0) {
                document.getElementById("directory").value = document.getElementById("directoryId").options[document.getElementById("directoryId").selectedIndex].text;
                var catValue = document.getElementById("directoryId").options[document.getElementById("directoryId").selectedIndex].value
             
                var catArray = catValue.split("/");
                document.getElementById("parentCatId").value = catArray[1];
                document.getElementById("catId").value = catArray[0];
            }
            */
        }
    }
    xmlhttp.open("GET", url, true);
    xmlhttp.send(null);
}

function getImages(type, tagtype, cat, img) {
    try {
        var returnText = "";
        xmlhttp = GetXmlHttpObject();
        if (xmlhttp == null) {
            alert("Your browser does not support XMLHTTP!");
            return;
        }
        var url = "/ajax/getNextImage.php";
        url = url + "?type=" + type + "&tagtype=" + tagtype + "&id=" + img + "&cat=" + cat;
        xmlhttp.onreadystatechange = function() {
            if (xmlhttp.readyState == 4) {
                var btnHolder = document.getElementById("nextPrevImageLinks")
                //alert(btnHolder)
                var imgArray = xmlhttp.responseText.split("|")
                // alert(imgArray[0].length)

                //alert(imgArray[1].length + " --------------- " + imgArray[2].length)
                
                if (imgArray[1].length <= 1) {
                    // do nothing - start of category
                }
                else {	// previous image
                    //alert("previous")
                    var image1Array = imgArray[1].split(":")
                    var image1Id = image1Array[0]
                    var image1cat = image1Array[1]
                    var image1Url = image1Array[2]
                    var image1Title = image1Array[3]
                    btnHolder.appendChild(buildButton('prev', type, cat, image1Id, image1cat, image1Url, image1Title));
                    //alert("previous Image : "+image1Array[2])
                }
                if (imgArray[2].length <= 1) {
                    // do nothing - end of category
                }
                else { 	// next image
                    //alert("next")
                    var image2Array = imgArray[2].split(":")
                    var image2Id = image2Array[0]
                    var image2cat = image2Array[1]
                    var image2Url = image2Array[2]
                    var image2Title = image2Array[3]
                    btnHolder.appendChild(buildButton('next', type, cat, image2Id, image2cat, image2Url, image2Title));
                    //alert("next Image : "+image2Array[2])
                }

                //alert(btnHolder.innerHTML)
                ///alert(imgArray[0])
                //alert(imgArray[1])				 
                //document.getElementById("updateResponse").innerHTML = 
            }
        }
        xmlhttp.open("GET", url, true);
        xmlhttp.send(null);
    }
    catch (e) {
        // no image can be displayed
    }
}


function getAjaxResponse1(query_attributes, targetElement, source, db) {
    //alert("getAjaxResponse")
    xmlhttp1 = GetXmlHttpObject();

    var url = ajaxdirectory + "/ajax/admin/" + source + ".php";
    url = url + "?attr=" + query_attributes +"&db="+db;
    xmlhttp1.onreadystatechange = function() {
    if (xmlhttp1.readyState == 4) { 
            document.getElementById(targetElement).innerHTML = xmlhttp1.responseText;
            xmlResponseTrue(source);
        }
    }
    xmlhttp1.open("GET", url, true);
    xmlhttp1.send(null);
}

function getAjaxResponse2(query_attributes, targetElement, source, db) {
    //alert("getAjaxResponse")
    xmlhttp2 = GetXmlHttpObject();

    var url = ajaxdirectory + "/ajax/admin/" + source + ".php";
    url = url + "?attr=" + query_attributes + "&db=" + db;
    xmlhttp2.onreadystatechange = function() {
        if (xmlhttp2.readyState == 4) {
            document.getElementById(targetElement).innerHTML = xmlhttp2.responseText;
            xmlResponseTrue(source);
        }
    }
    xmlhttp2.open("GET", url, true);
    xmlhttp2.send(null);
}


function xmlResponseTrue(source) {
    if (source == "admin_list_categories") {
        if (document.getElementById("directoryId").selectedIndex > 0) {
            document.getElementById("directory").value = document.getElementById("directoryId").options[document.getElementById("directoryId").selectedIndex].text;
            var catValue = document.getElementById("directoryId").options[document.getElementById("directoryId").selectedIndex].value
            var catArray = catValue.split("/");
            document.getElementById("parentCatId").value = catArray[1];
            document.getElementById("catId").value = catArray[0];
        }
    }
}


// -----------------------------------------------------------------------------------------------
function stateChanged() {
    if (xmlhttp.readyState == 4) {
        document.getElementById("updateResponse").innerHTML = xmlhttp.responseText;
    }
}

function GetXmlHttpObject() {
    if (window.XMLHttpRequest) {
        return new XMLHttpRequest();
    }
    if (window.ActiveXObject) {
        return new ActiveXObject("Microsoft.XMLHTTP");
    }
    return null;
}
// -----------------------------------------------------------------------------------------------

