var cache = {},
	lastXhr;
$("#lookupwords").autocomplete({
	source: function (request, response) {
		var term = request.term;
		if (term in cache) {
			response(cache[term]);
			return;
		}
		var term = request.term;
		if (term in cache) {
			response(cache[term]);
			return;
		}
		lastXhr = $.getJSON("/ajax/search.php", request, function (data, status, xhr) {
			cache[term] = data;
			if (xhr === lastXhr) {
				response(data);
			}
		});
	},
	minLength: 2,
	focus: function (event, ui) {
		event.preventDefault();
		return false;
	},
	select: function (event, ui) {
		var url = "/manga/";
		if (ui.item[2] == '') {
			url = url + '?series_id=' + ui.item[0];
		} else {
			url = url + ui.item[2] + '/';
		}
		document.location.href = url;
	},
	position: {
		offset: "0 5"
	}
}).data("autocomplete")._renderItem = function (ul, item) {
	var term = this.term.split(' ').join('|');
	var re = new RegExp("(" + term + ")", "gi");
	var t = item[1].replace(re, "<u>$1</u>");
	if (item[4] != '') {
		t += '<span class="s"> by ' + item[4] + "</span>";
	}
	var url = "/manga/";
	if (item[2] == '') {
		url = url + '?series_id=' + item[0];
	} else {
		url = url + item[2] + '/';
	}
	return $("<li></li>").data("item.autocomplete", item).append("<a href=\"" + url + "\"><img src=\"http://www.mangafox.com/icon/" + item[0] + ".jpg\" width=\"28\"/><div>" + t + "</div><div class=\"s\">" + item[3] + "</div></a>").appendTo(ul);
};
$("#lookupwords").focus(function () {
	if (this.value == this.defaultValue) {
		this.value = '';
		this.style.color = '#333';
	}
	if (this.value.length > 1) $('.ui-autocomplete').show();
});
$("#lookupwords").focusout(function () {
	if (this.value == '') {
		this.value = this.defaultValue;
		this.style.color = '#909090';
	}
});

function popUp(URL, w, h) {
	day = new Date();
	id = day.getTime();
	window.open(URL, id, 'toolbar=0,scrollbars=1,location=0,statusbar=1,menubar=0,resizable=0,width=' + w + ',height=' + h);
}

function popupinfo(data) {
	if (!data) return "Information Not Available";

	var html = '', w = 'f';

	if (data[5] != '') html += '<h5 class="rank">' + data[5] + '</h5>';
	if (data[10] != '') {
		w = 'w';
		html += '<div class="cover"><div><img src="' + data[10] + '" border="0" width="150"/></div></div>';
	}
	if (data[1] != '') html += '<div class="above aka ' + w + '">' + data[1] + '</div>';
	html += '<div class="above basic ' + w + '">';
	if (data[8] != '') html += '<span><b>Released:</b> ' + data[8] + '</span>';
	if (data[3] != '') html += '<span><b>Author:</b> ' + data[3] + '</span>';
	if (data[4] != '') html += '<span><b>Artist:</b> ' + data[4] + '</span>';
	if (data[2] != '') html += '<span class="above nowrap"><b>Genres:</b> ' + data[2] + '</span>';
	html += '</div>';

	if (data[9] != '') html += '<hr class="above ' + w + '" /><p class="above">' + data[9] + '</p>';

	$('#tooltip.preview').removeClass("load");
	$('#tooltip.preview h3').html('<span class="stars star' + data[6] + '"></span>' + data[0]);
	$('#tooltip.preview div.body').html(html);
	$('#tooltip h3').show();

	return html;
}

