﻿<!--
//Disable right click script III- By Renigade (renigade@mediaone.net)
//For full source code, visit http://www.dynamicdrive.com
var message="";
///////////////////////////////////
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if 
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message);return false;}}}
if (document.layers) 
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;}
document.oncontextmenu=new Function("return false")
// --> 

var m_comment, m_name, m_email, m_website, m_xmlHttp;

function InitAJAX()
{
    try {
        m_xmlHttp=new XMLHttpRequest();
    }
    catch (e) {
        try {
            m_xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e) {
            try {
                m_xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e) {
                alert("Your browser does not support AJAX!. Viewing/Posting comments will not work. Please use at least Internet Explorer 7 or Firefox 3 or higher versions of these browsers.");
                return false;
            }
        }
    }
    return m_xmlHttp;
}

function Trim(sString) {
    while(sString.substring(0,1) == ' ') {
        sString = sString.substring(1, sString.length);
    }
    while(sString.substring(sString.length-1, sString.length) == ' ') {
        sString = sString.substring(0,sString.length-1);
    }
    return sString;
}

function TextCount(element) {
    if (element.value.length > 512) {
        element.value = element.value.substring(0,5);
    }
}

function ResetErrMsgs() {
    document.getElementById("CommentErrMsg").innerHTML = document.getElementById("NameErrMsg").innerHTML = document.getElementById("EmailErrMsg").innerHTML = document.getElementById("WebsiteErrMsg").innerHTML = '';
}

function Validate() {
    ResetErrMsgs();
    var m_valid = true;
    m_comment = Trim(document.getElementById("Comment").value);
    m_name = Trim(document.getElementById("Name").value);
    m_email = Trim(document.getElementById("Email").value);
    m_website = Trim(document.getElementById("Website").value);

    if (m_comment.length == 0 || !m_comment.match(/^[\w\r@\$\-{}\[\]\&\(\)\s!@#%'"~^|\*\/\\\?\+=.\,<>:;]*$/)) {
        document.getElementById("CommentErrMsg").innerHTML = "Missing Comment or invalid character(s) are used.";
        m_valid = false;
    }
    if (!m_name.match(/^[A-Za-z]+(\s*[A-Za-z\-.'])*$/)) {
        document.getElementById("NameErrMsg").innerHTML = "Missing Name or invalid character(s) are used.";
        m_valid = false;
    }
    if (!m_email.match(/^(([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@((\w+\-+)|(\w+\.))*\w{1,63}\.[a-zA-Z]{2,6}$/)) {
        document.getElementById("EmailErrMsg").innerHTML = "Invalid/Missing Email.";
        m_valid = false;
    }
    if (m_website.length > 0 && !m_website.match(/^[\w\-\&~\/\?%\+=.\,:\*]*$/)) {
        document.getElementById("WebsiteErrMsg").innerHTML = "Invalid Website/URL.";
        m_valid = false;
    }
    return m_valid;
}

function EncodeXML(input) {
    input = input.replace(/&/g,"µ");
    input = input.replace(/>/g,"¥");
    input = input.replace(/</g,"Ѱ");
    return input;
}

function DecodeXML(input) {
    input = input.replace(/µ/g,"&");
    input = input.replace(/¥/g,">");
    input = input.replace(/Ѱ/g,"<");
    return input;
}

function PostComments() {
    if (Validate()) {
        m_xmlHttp= InitAJAX();
        m_xmlHttp.onreadystatechange=function() {
            if(m_xmlHttp.readyState==4) {
                document.getElementById("labComments").innerHTML = "Comments (" + m_xmlHttp.responseText + ")";
                document.getElementById("comment_count").innerHTML = m_xmlHttp.responseText + " Comments";
                document.getElementById("comment_msg").innerHTML = "Comment posted. Thanks!";
                document.getElementById("recent_comments").innerHTML = '';
                CloseComments();
            }
        }
        m_xmlHttp.open("POST","Handler.ashx",true);
        m_xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        m_xmlHttp.send("ImageID=" + document.getElementById("iImageID").value + "&Comment=" + EncodeXML(m_comment) +"&Name=" + m_name + "&Email=" + m_email + "&Website=" + EncodeXML(m_website));
    }
}

function GetComments() {
    if (document.getElementById("recent_comments").innerHTML == '') {    
        m_xmlHttp= InitAJAX();
        m_xmlHttp.onreadystatechange=function() {
            if(m_xmlHttp.readyState==4) {
                document.getElementById("recent_comments").innerHTML= DecodeXML(m_xmlHttp.responseText);
            }
        }
        var m_imageID = document.getElementById("iImageID").value;
	    var time = new Date().getTime();
        m_xmlHttp.open("GET","Handler.ashx?ImageID=" + m_imageID + "&Time=" + time,true);
        m_xmlHttp.send(null);
    }
}