var KEYUP_TIMEOUT = 500; var request = null; var error_handler = ''; var AJAX_OP_COMPLETED = 0; var AJAX_ERROR = 1; var AJAX_CRITICAL_ERROR = 2; var AJAX_POST_SUBJECT_EDITED = 3; var AJAX_POST_TEXT_EDITED = 4; var AJAX_POLL_RESULT = 5; var AJAX_WATCH_TOPIC = 6; var AJAX_LOCK_TOPIC = 7; var AJAX_MARK_TOPIC = 8; var AJAX_MARK_FORUM = 9; var AJAX_PM_USERNAME_FOUND = 10; var AJAX_PM_USERNAME_SELECT = 11; var AJAX_PM_USERNAME_ERROR = 12; var AJAX_PREVIEW = 13; var AJAX_DEBUG_RESULTS = 0; var AJAX_DEBUG_REQUEST_ERRORS = 0; var AJAX_DEBUG_HTML_ERRORS = 0; if (window.XMLHttpRequest)
{ var tempvar = new XMLHttpRequest(); ajax_core_defined = (tempvar == null) ? 0 : 1; delete(tempvar);}
else if (window.ActiveXObject)
{ var tempvar= new ActiveXObject("Microsoft.XMLHTTP"); ajax_core_defined = (tempvar == null) ? 0 : 1; delete(tempvar);}
else
{ ajax_core_defined = 0;}
function loadXMLDoc(url, params, submitmethod, changehandler)
{ if ((submitmethod != 'GET') && (submitmethod != 'POST'))
{ submitmethod = 'GET';}
var request_url = phpbb_root_path + ((submitmethod == 'GET') ? url + '?' + params : url); var request_params = (submitmethod == 'GET') ? null : params; if (window.XMLHttpRequest)
{ request = new XMLHttpRequest(); var is_activex = false;}
else if (window.ActiveXObject)
{ request = new ActiveXObject("Microsoft.XMLHTTP"); var is_activex = true;}
if (!request)
{ return false;}
eval("request.onreadystatechange = "+changehandler); request.open(submitmethod, request_url, true); if (submitmethod == 'POST')
{ request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');}
if ((request_params == null) && is_activex)
{ request.send();}
else
{ request.send(request_params);}
return true;}
function getTagValues(tagname, haystack)
{ var tag_array = haystack.getElementsByTagName(tagname); var result_array = Array(); for (i = 0; i < tag_array.length; i++)
{ result_array[i] = (tag_array[i].firstChild && tag_array[i].firstChild.data) ? tag_array[i].firstChild.data : '';}
return result_array;}
function getFirstTagValue(tagname, haystack)
{ var tag_array = haystack.getElementsByTagName(tagname); if ((tag_array.length > 0) && (tag_array[0].firstChild))
{ return (tag_array[0].firstChild.data) ? tag_array[0].firstChild.data : '';}
return '';}
function error_req_change()
{ if (request.readyState == 4)
{ var result_code = AJAX_OP_COMPLETED; var error_msg = ''; if (request.status == 200)
{ var response = request.responseXML.documentElement; if (AJAX_DEBUG_RESULTS)
{ alert(request.responseText);}
if (response != null)
{ result_code = getFirstTagValue('result', response); error_msg = getFirstTagValue('error_msg', response);}
}
eval(error_handler+"(result_code, error_msg);"); delete request;}
}
function sprintf(text, replacements)
{ var i = 0; if ((typeof replacements) != 'object')
{ var repl = Array(1); repl[0] = replacements;}
else
{ var repl = replacements;}
while (((charindex = text.indexOf('%s')) >= 0) && (i < repl.length))
{ var temptext = text.substr(0, charindex); text = temptext + repl[i] + text.substr(charindex+2, text.length); i++;}
return text;}
function getElementById(ElementId)
{ if (document.documentElement)
{ return document.getElementById(ElementId);}
else
{ return document.all[ElementId];}
}
function rtrim(text)
{ if (text == '')
{ return '';}
var part = ''; var i = text.length; do
{ part = text.substring(i-1, i); i--;} while ((part == ' ') || (part == '\n') || (part == '\r')); text = text.substring(0, i+1); return text;}
function ltrim(text)
{ if (text == '')
{ return '';}
var part = ''; var i = 0; do
{ part = text.substring(i, i+1); i++;} while ((part == ' ') || (part == '\n') || (part == '\r')); text = text.substring(i-1, text.length); return text;}
function trim(text)
{ return ltrim(rtrim(text));}
function setClickEventHandler(obj, handler)
{ if (obj.onclick)
{ eval('obj.onclick = function() { '+handler+' }');}
else
{ obj.setAttribute('onclick', handler, 'false');}
}
function setInnerText(obj, newtext)
{ if (newtext == '')
{ newtext = '&nbsp;';}
if (obj.innerText)
{ obj.innerText = newtext;}
else if (obj.firstChild)
{ obj.firstChild.nodeValue = newtext;}
else
{ obj.innerHTML = newtext;}
}
