function bookmarkthis(title,url) {
  if (window.sidebar) { // firefox
     window.sidebar.addPanel(title, url, "");
  } else if (document.all) { // IE
     window.external.AddFavorite(url, title);
  } else if (window.opera && window.print) { // opera
     var elem = document.createElement('a');
     elem.setAttribute('href',url);
     elem.setAttribute('title',title);
     elem.setAttribute('rel','sidebar');
     elem.click();
  }
}


function getXmlVar() {
    var xmlHttp;

    try {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    } catch (e) {            
        // Internet Explorer
        try {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {
                alert("Your browser does not support AJAX!\nPlease enable Java Support in your browser or visit http://www.mozilla.com/en-US/firefox/ to download Firefox");
                return false;
            }
        }
    }
    
    return xmlHttp;
}

function getFormString(fn) {
    var queryString = 'rand=' + Math.random();
    
    for (i = 0; i < document.forms[fn].elements.length; i++) {
        switch (document.forms[fn].elements[i].type) {
            case 'radio':
                if (document.forms[fn].elements[i].checked == true) {
                    queryString = queryString + "&" + document.forms[fn].elements[i].name + "=" + document.forms[fn].elements[i].value;
                } 
                break;
            case 'checkbox':
                if (document.forms[fn].elements[i].checked == true) {
                    queryString = queryString + "&" + document.forms[fn].elements[i].name + "=" + document.forms[fn].elements[i].value;
                }                
                break;
            default:
                queryString = queryString + "&" + document.forms[fn].elements[i].name + "=" + document.forms[fn].elements[i].value;
                break;
        }
    }
    
    return queryString;
}

function ajaxMirrors(fid) {
    var xmlHttp = getXmlVar();
    url = './getmirrors.php?id=' + fid;
    xmlHttp.onreadystatechange = function() {
        if (xmlHttp.readyState == 4) { // request complete
            var output = xmlHttp.responseText;
            document.getElementById('loading').style.display = "none";
            document.getElementById('more-mirrors').innerHTML = output;
        } else if (xmlHttp.readyState == 0) { // not initialized
        } else if (xmlHttp.readyState == 1) { // request has been set-up
            document.getElementById('loading').style.display = "inline";
        } else if (xmlHttp.readyState == 2) { // request sent
            document.getElementById('loading').style.display = "inline";
        } else if (xmlHttp.readyState == 3) { // request in process
            document.getElementById('loading').style.display = "inline";
        }
    }
    
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);    
}

var screenshot_number = 1;

function ajaxScreenshot(fid, total_sc) {
    var xmlHttp = getXmlVar();
    if (screenshot_number == total_sc) {
        screenshot_number = 1;
    } else {
        screenshot_number++;
    }
    url = './screenshot.php?id=' + fid + '&scno=' + screenshot_number;
    
    xmlHttp.onreadystatechange = function() {
        if (xmlHttp.readyState == 4) { // request complete
            var output = xmlHttp.responseText;
            document.getElementById('screenshot-container').innerHTML = output;
            document.getElementById('screenshot-loading').style.display = "none";
            document.getElementById('screenshot-container').style.display = "block";
        } else if (xmlHttp.readyState == 0) { // not initialized
        } else if (xmlHttp.readyState == 1) { // request has been set-up
            document.getElementById('screenshot-container').style.display = "none";
            document.getElementById('screenshot-loading').style.display = "block";
        } else if (xmlHttp.readyState == 2) { // request sent
        } else if (xmlHttp.readyState == 3) { // request in process
        }
    }
    
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);    
}

function ajaxPost(fn, url) {
    var xmlHttp = getXmlVar();
    var queryString = getFormString(fn);
    
    xmlHttp.onreadystatechange = function() {
        if (xmlHttp.readyState == 4) { // request complete
            document.getElementById('loading').style.display = "none";
            var output = xmlHttp.responseText;
            if (output != 'Your message has been sent successfully.') {
                document.getElementById('submit-button').disabled = false;
            }
            document.getElementById('form-container').innerHTML = output;
        } else if (xmlHttp.readyState == 0) { // not initialized
        } else if (xmlHttp.readyState == 1) { // request has been set-up
            document.getElementById('submit-button').disabled = true;
            document.getElementById('loading').style.display = "block";
        } else if (xmlHttp.readyState == 2) { // request sent
        } else if (xmlHttp.readyState == 3) { // request in process

        }
    }
    
    xmlHttp.open("GET", url + "?fn=" + fn + "&" + queryString, true);
    xmlHttp.send(null);
    
    return false;
}

