$(function (){
	$("#navigation").pagination($("#numresults").attr('value'), {
		items_per_page:10,
		callback:loadContents
	});
});

function loadContents(page_id, jq) {
	var min = page_id*10;
	var max = 10;
	var el_year = document.getElementById("year");
	var mow_year = el_year.value;
	if (this.timer) clearTimeout(this.timer);
	this.timer = setTimeout(function () {
     	$.ajax({
     		url: 'http://myoneword.org/jesse_dev/wp-content/themes/mowv3/ajax.php',
     		data: 'action=pagination&year='+mow_year+'&min=' + min + '&max=' + max,
     		dataType: 'html',
     		type: 'post',
     		success: function (j) {
     			if (j!="" && $("#commentlist2")) {
     				var words = $("#commentlist2").children();
     				words.remove();
     			}
     			$("#commentlist2").html(j);
     			sIFR.replace(dirtyoneword, {
	selector: "#content h3 .red,#content h3,.blog h3,.date,.month,#commentform h3,.word_box h3,.vid_box h3",
	css: [
		'.sIFR-root { text-transform:uppercase; color: #000000; }',
		'.blog h3 { font-weight:normal; font-size:25px; }',
		'.blog h3 a { font-weight:normal; color: #000000; text-decoration: none; }',
		'.blog h3 a:hover { font-weight:normal; font-size:25px; color: #620000; }',
		'#commentform h3 { font-size:30px; font-weight:normal; }',
		'#content h3 { font-size:25px; font-weight:normal; }',
		'.day { font-size:25px; color: #ffffff; textAlign: center; }',
		'.month { font-size:9px; color: #ffffff; textAlign: center; }',
		'.vid_box h3 { font-size:25px; font-weight:normal; }',
		'.word_box h3 { font-size:25px; font-weight:normal; }',
		'.profile_box h5 { font-size:20px; font-weight:normal; }',
		'.profile_box h3 { font-size:25px; font-weight:normal; } ',
		'#content h3 .red { color: #620000; }'
	],
	wmode: 'transparent'
});

     		}
     	});
     }, 200);
}

var xmlHttp;
var requestType = "";
var auto_id;
var name;
var word;
var reason;

function createXMLHttpRequest() {
	if (window.ActiveXObject) {
		xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	else if (window.XMLHttpRequest) {
		xmlHttp = new XMLHttpRequest();
	}
}

function startRequest(type) {
	createXMLHttpRequest();
	requestType = type;
	xmlHttp.onreadystatechange = handleStateChange;
	xmlHttp.open("GET", "words.xml", true);
	xmlHttp.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
	xmlHttp.send(null);
}

function handleStateChange() {
	if(xmlHttp.readyState == 4) {
		if(xmlHttp.status == 200) {
			if (requestType == "words") {
				listwords(1, 0, 0);
			}
			else {
				details(requestType);
			}
		}
	}
}

function gotopage(page) {
	var xml = xmlHttp.responseXML;
	var words = xml.getElementsByTagName("oneword");
	var number = Math.ceil(words.length/45);
	var x = page * 45 - 45;
	var y = page * 45;
	if (number > page) {
		var length = x + 45;
		listwords(page, x, length);
	}
	else {
		listwords(page, x, words.length);
	}
}

function gotoset(set, position) {
	if(position) {
		var pagenum = (6*set) - 5;
	}
	else {
		var pagenum = (6*set);
	}
	gotopage(pagenum);
}

function showPages(current) {
	var countDiv = document.getElementById("count");
	if(countDiv.hasChildNodes()) {
		countDiv.removeChild(countDiv.childNodes[0]);
	}
	var xml = xmlHttp.responseXML;
	var words = xml.getElementsByTagName("oneword");
	
//Get number of result pages
	var pages = Math.ceil(words.length/45);
	var response = '';
	if(pages < 6) {
		var set = 1;
	}
	if(pages > 6) {
		if(current <= 6) {
			for (var i=1; i<=6; i++) {
				if (current == i) {
					response += i;
				}
				else {
					response += "<a href='#' onclick='javascript:gotopage(" + i + ")'>" + i + "</a>";
				}
				
				if (i != 6) {
					response += " - ";
				}
			}
			
			response += "&nbsp;<a href='#' onclick='javascript:gotoset(2, true)'>&#187;</a>";
		}
		else {
			var numsets = Math.ceil(pages/6);
			currentset = (Math.ceil(current/6));
			maxnumpages = 6*currentset;
			response += '<a href="#" onclick="javascript:gotoset(' + (currentset - 1) + ', false)">&#171;</a>&nbsp;';
			if(pages < maxnumpages) {
				var x = maxnumpages - 5;
				for (var i=x; i<=pages; i++) {
					if (current == i) {
						response += i;
					}
					else {
						response += "<a href='#' onclick='javascript:gotopage(" + i + ")'>" + i + "</a>";
					}
					
					if (i != pages) {
						response += " - ";
					}
				}
			}
			else if(pages > currentset) {
				var x = maxnumpages - 5;
				for (var i=x; i<=maxnumpages; i++) {
					if (current == i) {
						response += i;
					}
					else {
						response += "<a href='#' onclick='javascript:gotopage(" + i + ")'>" + i + "</a>";
					}
					
					if (i != maxnumpages) {
						response += " - ";
					}
				}
				response += "&nbsp;<a href='#' onclick='javascript:gotoset(" + (currentset + 1) + ", true)'>&#187;</a>";
			}
			//var prevset = current - 1;
			//var response = '<a href="#" onclick="javascript:gotoset(' + prevset + ')">&#171;</a>&nbsp;';
		}
	}
	else {
		for (var i=1; i<=pages; i++) {
			if (current == i) {
				response += i;
			}
			else {
				response += "<a href='#' onclick='javascript:gotopage(" + i + ")'>" + i + "</a>";
			}
			
			if (i != pages) {
				response += " - ";
			}
		}
	}
	//if(current != pages) {
		//var nextpage = current + 1;
		//response += '&nbsp;<a href="#" onclick="javascript:gotopage(' + nextpage + ')">&#187;</a>';
	//}
	//else {
		//response += '&nbsp;&#187;';
	//}
	countDiv.innerHTML = response;
}

function listwords(current, start, num_words) {
	var responseDiv = document.getElementById("righttile_wrap");
	if(responseDiv.hasChildNodes()) {
		responseDiv.removeChild(responseDiv.childNodes[0]);
	}
	var xml = xmlHttp.responseXML;
	var words = xml.getElementsByTagName("oneword");
	var responseText = "<div id='righttile'>";
	showPages(current);
	if (num_words == 0) {
		if (words.length < 45) {
			num_words = words.length;
		}
		else {
			num_words = 45;
		}
	}
	var last = num_words -1;
	for (var i=start; i<num_words; i++) {
		var oneword = words[i];
		auto_id = oneword.getElementsByTagName("auto_id")[0].firstChild.nodeValue;
		name = oneword.getElementsByTagName("name")[0].firstChild.nodeValue;
		word = oneword.getElementsByTagName("word")[0].firstChild.nodeValue;
		reason = oneword.getElementsByTagName("reason")[0].firstChild.nodeValue;
		if (i == last) {
			responseText += "<a href='#' onClick='show(" +	auto_id + ")'>" + word + "</a>";
		}
		else {
			responseText += "<a href='#' onClick='show(" +	auto_id + ")'>" + word + "</a> &#8212; ";
		}
	}
	responseText += "</div>";
	responseDiv.innerHTML = responseText;
}

function clear() {
	var responseDiv = document.getElementById("popup_wrap");
	if(responseDiv.hasChildNodes()) {
		responseDiv.removeChild(responseDiv.childNodes[0]);
	}
}
function details(id) {
	var responseDiv = document.getElementById("popup_wrap");
	var xml = xmlHttp.responseXML;
	var words = xml.getElementsByTagName("oneword");
	var responseText = "";
	for (var i = 0; i < words.length; i++) {
		oneword = words[i];
		auto_id = oneword.getElementsByTagName("auto_id")[0].firstChild.nodeValue;
		name = oneword.getElementsByTagName("name")[0].firstChild.nodeValue;
		word = oneword.getElementsByTagName("word")[0].firstChild.nodeValue;
		reason = oneword.getElementsByTagName("reason")[0].firstChild.nodeValue;
		if (auto_id == id) {
			responseText = "<div id='popup'><div id='popuphead'><a href='#' onClick='hide()'></a>" + name + "</div><div id='popupsubhead'>" + word + "</div><div id='popupbody'>" + reason + "</div></div>";
			break;
		}
	}			
	responseDiv.innerHTML = responseText;
}

