// UI HANDLING

function showDetails() {
   document.getElementById('details').style.display = 'block';
   document.getElementById('photoholder').style.padding = '0 0 0 19em';
   document.getElementById('footer').style.padding = '1em 0 0 19em';
}

function hideDetails() {
   document.getElementById('details').style.display = 'none';
   document.getElementById('photoholder').style.padding = '0';
   document.getElementById('footer').style.padding = '1em 0 0 0';
   detailsKeepOff();
}

function toggleDetails() {
   var detailsStyle = document.getElementById('details').style;
   var photoStyle = document.getElementById('photoholder').style;
   var footerStyle = document.getElementById('footer').style;
   if (detailsStyle.display == 'block'){
    hideDetails();
    }else{
    showDetails();
   }
}

function detailsKeepOn() {
    var now = new Date();
    fixDate(now);
    now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);
    now = now.toGMTString();
    setCookie('detailskeep', 1, now, '/', '', '');
    document.getElementById('lock-icon').src = '/images/locked.gif';
}

function detailsKeepOff() {
    deleteCookie('detailskeep', '/', '');
    document.getElementById('lock-icon').src = '/images/unlocked.gif';
}

function detailsKeepToggle(){
   if (getCookie("detailskeep")) {
    detailsKeepOff();
} else {
    detailsKeepOn();
}
}

function pageLoad(){
if (getCookie("detailskeep")) {
    showDetails();
    document.getElementById('lock-icon').src = '/images/locked.gif';
} else {
    hideDetails();
    document.getElementById('lock-icon').src = '/images/unlocked.gif';
    }
}


// AJAX

//from http://www.sistrall.it/archives/2005/05/17/ajax_enabled_comments_for_movabletype_explained.html

function trim(str) {
    if (str == null) return '';
    str = str.replace(/(^\s+)|(\s+$)/g,"");
    return str;
}
function checkEmail(email) {
    return (email.indexOf(".") > 2) && (email.indexOf("@") > 0);
}
function checkForm() {
    var s = false;
    var fields = document.getElementById("comments_form").elements;
    if (fields["author"].value == '') {
        window.alert("Author name required.");
        return s;
    }
    if (trim(fields["text"].value) == '') {
        window.alert("Comment text is empty...?");
        return s;
    }
    return true;
}

function initializeAjax() {
    var s = false;
    if (typeof XMLHttpRequest != 'undefined') {
        s = new XMLHttpRequest();
    } 
    else {
        try {
            s = new ActiveXObject("Msxml2.XMLHTTP");
        } 
        catch (e) {
            try {
                s = new ActiveXObject("Microsoft.XMLHTTP");
            } 
            catch (E) {
                s = false;
            }
        }
    }
    
    return s;
}

function sendComment(response_page) { //change response_page to a new individual archive template

    connection = initializeAjax();
    if (!connection) { 
        return true; 
    }

    var remember = "";
    var forget = "";
    
    var fields = document.getElementById("comments_form").elements;
    
    fields["post"].setAttribute("disabled", "true");
    fields["post"].setAttribute("value", "Processing...");
    document.getElementById("animicon").style.display='block';
    
    var requestText = '';
    requestText += "author="+encodeURIComponent(fields["author"].value);
    requestText += "&entry_id="+encodeURIComponent(fields["entry_id"].value);
    requestText += "&email="+encodeURIComponent(fields["email"].value);
    requestText += "&url="+encodeURIComponent(fields["url"].value);
    requestText += "&text="+encodeURIComponent(fields["text"].value);
    requestText += "&static="+encodeURIComponent(response_page);
    requestText += "&post="+encodeURIComponent('POST');
    if (fields["remember"] && fields["remember"].checked==true) requestText += "&remember="+encodeURIComponent(fields["remember"].value);
    if (fields["forget"] && fields["forget"].checked==true) requestText += "&forget="+encodeURIComponent(fields["forget"].value);

    connection.open("POST","http://www.i-gloo.org/cgi-bin/mt3/mt-ns-com.cgi",true);
    connection.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
    connection.setRequestHeader('Content-Length', requestText.length);

    connection.onreadystatechange = function() 
    {
        if (connection.readyState == 4) {
            response = connection.responseText;
            document.getElementById("animicon").style.display='none';
            if ( (connection.status == 200 && response != "invalid") && !response.match(/<html>.*<\/html>/) && !response.match(/<meta[^>]*>/)) {
                document.getElementById("comments").innerHTML = response;
                fields["post"].setAttribute("disabled", "true");
                fields["post"].setAttribute("value", " Done ");
            }
            else {
                window.alert("Processing error... Your email may be incorrect.");
                fields["post"].removeAttribute("disabled");
                fields["post"].setAttribute("value", " Post ");
            }
        } 
    }
    connection.send(requestText);
    return false;
}

