initCommentJavaScript(); var timeoutID; function initCommentJavaScript() { document.forms['chatFormP'].elements['chatbarText'].setAttribute('autocomplete','off'); //this non standard attribute prevents firefox' autofill function to clash with this script checkStatus(''); //sets the initial value and state of the input comment checkName(); //checks the initial value of the input name receiveChatText('1'); //initiates the first data query } function addEvent(obj, evType, fn){ if (obj.addEventListener){ obj.addEventListener(evType, fn, false); return true; } else if (obj.attachEvent){ var r = obj.attachEvent("on"+evType, fn); return r; } else { return false; } } //initiates the first data query function receiveChatText(pageno) { AjaxRequest.get( { 'url':'/servlet/acomment?page=' + pageno + '&articleid=' + articleID// + '&rand='+Math.floor(Math.random() * 1000000) ,'onSuccess':function(req){ document.getElementById("outputList").innerHTML = req.responseText;} ,'onError':function(req){ } } ) if (pageno == '1') { timeoutID = setTimeout("receiveChatText('1')", 30000); //executes the next data query in 30 seconds } else { clearInterval(timeoutID); } } //stores a new comment on the server function sendComment(theForm) { currentChatText = document.forms['chatFormP'].elements['chatbarText'].value; if (Trim(currentChatText) != '') { document.forms['chatFormP'].elements['cmd'].value = 'save'; document.forms['chatFormP'].action.value = '/servlet/acomment'; var status = AjaxRequest.submit( theForm ,{ 'onSuccess':function(req){ document.forms['chatFormP'].elements['cmd'].value = 'list'; document.getElementById("outputList").innerHTML = req.responseText; document.forms['chatFormP'].elements['chatbarText'].focus();} } ); document.forms['chatFormP'].elements['chatbarText'].value = ''; } else { ////// ??? setTimeout('sendComment();',1000); } } //does celver things to the input and submit function checkStatus(focusState) { currentChatText = document.forms['chatFormP'].elements['chatbarText']; oSubmit = document.forms['chatFormP'].elements['submit']; if (currentChatText.value != '') { // || focusState == 'active') { oSubmit.disabled = false; } else { oSubmit.disabled = true; } } //autoasigns a random name to a new user function checkName() { //currentName = document.forms['chatFormP'].elements['nickname']; currentName = getCookie ('usernamep') if (""+currentName == "null") { document.forms['chatFormP'].elements['nickname'].value = 'Posjetitelj_'+ Math.floor(Math.random() * 100000); var now = new Date(); fixDate(now); now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000); setCookie ('usernamep', document.forms['chatFormP'].elements['nickname'].value, now); } else { document.forms['chatFormP'].elements['nickname'].value = currentName; } } function changeNickName() { var now = new Date(); fixDate(now); now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000); username = document.forms['chatFormP'].elements['nickname'].value setCookie("usernamep", username, now); } function setCookie(name, value, expires, path, domain, secure) { var curCookie = name + "=" + escape(value) + ((expires) ? "; expires=" + expires.toGMTString() : "") + "; path=/ " + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : ""); document.cookie = curCookie; } function getCookie(name) { var dc = document.cookie; var prefix = name + "="; var begin = dc.indexOf(prefix); if (begin == -1) return null; var end = document.cookie.indexOf(";", begin); if (end == -1) end = dc.length; return unescape(dc.substring(begin + prefix.length, end)); } function deleteCookie(name, path, domain) { if (getCookie(name)) { document.cookie = name + "=" + "; path=/ " + ((domain) ? "; domain=" + domain : "") + "; expires=Thu, 01-Jan-70 00:00:01 GMT"; } } function fixDate(date) { var base = new Date(0); var skew = base.getTime(); if (skew > 0) date.setTime(date.getTime() - skew); } function Trim(trim_value){ if(trim_value.length < 1){ return""; } trim_value = RTrim(trim_value); trim_value = LTrim(trim_value); if(trim_value==""){ return ""; } else{ return trim_value; } } function RTrim(VALUE){ var w_space = String.fromCharCode(32); var v_length = VALUE.length; var strTemp = ""; if(v_length < 0){ return""; } var iTemp = v_length -1; while(iTemp > -1){ if(VALUE.charAt(iTemp) == w_space){ } else{ strTemp = VALUE.substring(0,iTemp +1); break; } iTemp = iTemp-1; } return strTemp; } function LTrim(VALUE){ var w_space = String.fromCharCode(32); if(v_length < 1){ return""; } var v_length = VALUE.length; var strTemp = ""; var iTemp = 0; while(iTemp < v_length){ if(VALUE.charAt(iTemp) == w_space){ } else{ strTemp = VALUE.substring(iTemp,v_length); break; } iTemp = iTemp + 1; } //End While return strTemp; } //End Function