(function() { var xmlHttp; var anchor; function getXmlHttpObject() { var xmlHttp = null; try { xmlHttp = new XMLHttpRequest(); } catch(e) { try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } } return xmlHttp; } function change(wpurl, navigation) { xmlHttp = getXmlHttpObject(); if (xmlHttp == null) { alert ("Oop! Browser does not support HTTP Request."); return; } if (!$('cp_post_id')) { window.location = wpurl; return; } var postId = $('cp_post_id').innerHTML var commentPage = 1; if (/comment-page-/i.test(wpurl)) { commentPage = wpurl.split(/^.*comment-page-/)[1].split(/(\/|#|&).*$/)[0]; } else if (/cpage=/i.test(wpurl)) { commentPage = wpurl.split(/^.*cpage=/)[1].split(/(\/|#|&).*$/)[0]; } var url = wpurl.split(/#.*$/)[0]; url += /\?/i.test(wpurl) ? '&' : '?'; url += 'action=cpage_ajax&post=' + postId + '&page=' + commentPage; if (!anchor) { anchor = wpurl.split(/^.*#/)[1]; } xmlHttp.onreadystatechange = function(){runChange(anchor, navigation)}; xmlHttp.open("GET", url, true); xmlHttp.send(null); } function runChange(anchor, navigation) { var comments = $(ajaxCommnetsPagerCommentsId); if (xmlHttp.readyState < 4 && !$('ajax-comment-loader')) { document.body.style.cursor = 'wait'; navigation.innerHTML = '' + ajaxCommnetsPagerAjaxLoader + ''; var opacity = 0.5; setStyle(comments, 'opacity', opacity); setStyle(comments, 'MozOpacity', opacity); setStyle(comments, 'KhtmlOpacity', opacity); setStyle(comments, 'filter', 'alpha(opacity=' + opacity * 100 + ')'); } else if (xmlHttp.readyState == 4 || xmlHttp.readyState=="complete") { responses = xmlHttp.responseText.split(''); comments.innerHTML = responses[0]; var opacity = 1; setStyle(comments, 'opacity', opacity); setStyle(comments, 'MozOpacity', opacity); setStyle(comments, 'KhtmlOpacity', opacity); setStyle(comments, 'filter', 'alpha(opacity=' + opacity * 100 + ')'); gotoAnchor(anchor); navigation.innerHTML = responses[1]; init(); document.body.style.cursor = 'auto'; } } function init() { var pagerList = getElementsByClassName('page-numbers', 'a', document); if (pagerList.length <= 0) { return; } var navigation = pagerList[0].parentNode; if (navigation) { for (var i = 0; i < pagerList.length; i++) { addEvent(pagerList[i], 'click', function(W3CEvent) { change(this.href.split(/(\?|&)action=cpage_ajax.*$/)[0], navigation); preventDefault(W3CEvent); }); } } } function $(id) { return document.getElementById(id); } function setStyle(element, key, value) { element.style[key] = value; } function cumulativeOffset(element) { var valueT = 0, valueL = 0; do { valueT += element.offsetTop || 0; valueL += element.offsetLeft || 0; element = element.offsetParent; } while (element); return [valueL, valueT]; } function gotoAnchor(id) { var pos = cumulativeOffset($(id)); var left = pos[0]; var top = pos[1]; window.scrollTo(left, top); } function isCompatible(other) { if( other===false || !Array.prototype.push || !Object.hasOwnProperty || !document.createElement || !document.getElementsByTagName ) { alert('TR- if you see this message isCompatible is failing incorrectly.'); return false; } return true; } function getElementsByClassName(className, tag, parent){ parent = parent || document; var allTags = (tag == "*" && parent.all) ? parent.all : parent.getElementsByTagName(tag); var matchingElements = new Array(); className = className.replace(/\-/g, "\\-"); var regex = new RegExp("(^|\\s)" + className + "(\\s|$)"); var element; for(var i=0; i match.index) s.lastIndex--; if (s.lastIndex > lastLastIndex) { if (match.length > 1) { match[0].replace(s2, function () { for (var j = 1; j < arguments.length - 2; j++) { if (arguments[j] === undefined) match[j] = undefined; } }); } output = output.concat(this.slice(lastLastIndex, match.index)); if (1 < match.length && match.index < this.length) output = output.concat(match.slice(1)); lastLength = match[0].length; lastLastIndex = s.lastIndex; } if (emptyMatch) s.lastIndex++; } output = lastLastIndex === this.length ? (s.test("") && !lastLength ? output : output.concat("")) : (limit ? output : output.concat(this.slice(lastLastIndex))); s.lastIndex = origLastIndex; return output; }; if (document.addEventListener) { document.addEventListener("DOMContentLoaded", init, false); } else if (/MSIE/i.test(navigator.userAgent)) { document.write(''); var script = $('__ie_onload_for_ajax_comment_pager'); script.onreadystatechange = function() { if (this.readyState == 'complete') { init(); } } } else if (/WebKit/i.test(navigator.userAgent)) { var _timer = setInterval( function() { if (/loaded|complete/.test(document.readyState)) { clearInterval(_timer); init(); } }, 10); } else { window.onload = function(e) { init(); } } })();