EmployeePager = Class.create({
	perpage: null,
	currentpage: null,
	totalrows: null,
	totalpages: null,
	initialize: function(perpage) {
		this.perpage = perpage;
		this.currentpage = 0;
		// determine number of elements, number of pages
		this.totalrows = $$("div.employees div.employee").length;
		this.totalpages = Math.ceil(this.totalrows / this.perpage);
		if (this.totalpages > 1) {
			this.refresh();
		}
	},
	showPage: function(p) {
		this.currentpage = p;
		this.refresh();
	},
	skipPage: function(p) {
		if (this.currentpage + p >= 0 && this.currentpage + p < this.totalpages) {
			this.currentpage += p;
			this.refresh();
		}
	},
	refresh: function() {
		var i=0;
		var context = this;
		$$('div.employees div.employee').each(function(element){
			if (i>=context.perpage*context.currentpage && i<context.perpage*(context.currentpage+1)) {
				element.removeClassName("hidden");
			} else {
				element.addClassName("hidden");
			}
			i++;
		});
		//TODO show/hide pager items accordingly
		
		var nav = "";
		if (this.currentpage > 0) {
			nav += "<a href=\"#\" onclick=\"empPager.showPage(0);return false;\">";
			nav += "<img src=\"/themes/locus/images/locus_articlelist_first_18x18.gif\" alt=\"F&oslash;rste\" /></a>";
			nav +=  "<a href=\"#\" onclick=\"empPager.skipPage(-1);return false;\">";
			nav += "<img src=\"/themes/locus/images/locus_articlelist_previous_18x18.gif\" alt=\"Forrige\" /></a>";
		}
		for(var i=0; i<this.totalpages; i++) {
			if (i != this.currentpage) {
				nav += "&nbsp;<a href=\"#\" onclick=\"empPager.showPage(" + i + ");return false;\">" + (i + 1) + "</a>&nbsp;";
			} else {
				nav += "&nbsp;" + (i + 1) + "&nbsp;";
			}
		}
		if (this.currentpage+1 < this.totalpages) {
			nav +=  "<a href=\"#\" onclick=\"empPager.skipPage(1);return false;\">";
			nav += "<img src=\"/themes/locus/images/locus_articlelist_next_18x18.gif\" alt=\"neste\" /></a>";
			nav += "<a href=\"#\" onclick=\"empPager.showPage(" + (this.totalpages - 1) + ");return false;\">";
			nav += "<img src=\"/themes/locus/images/locus_articlelist_last_18x18.gif\" alt=\"Siste\" /></a>";
		}
		$$("div.employees div.navigation").each(function(element){ element.update(nav); });
	}
});
var empPager;