function check(obj, id){
	c = $('counter_items');
	c2 = $('counter_items2');
	c_items = $('counter_total_items')
	c_items2 = $('counter_total_items2');

	if(obj.checked){
		c.innerHTML++;
		c2.innerHTML++;
		c_items.innerHTML++;
		c_items2.innerHTML++;
	} else {
		c.innerHTML--;
		c2.innerHTML--;
		c_items.innerHTML--;
		c_items2.innerHTML--;
	}

	listaction = $('listaction_items');
	listaction2 = $('listaction_items2');
	
	if(c.innerHTML != '0'){
		if(listaction.style.display != ''){
			new Effect.Appear(listaction, {duration: 0.5});
			new Effect.Appear(listaction2, {duration: 0.5});
		}
	} else {
		if(listaction.style.display == '' && paginateitemcount() == 0){
			new Effect.Fade(listaction, {duration: 0.5});
			new Effect.Fade(listaction2, {duration: 0.5});
		}
	}
}

function checkall(obj){
	boxes = document.getElementsByClassName('items');
	
	if(boxes.length == 0){
		alert('Er zijn geen items aanwezig in de lijst.');
		obj.checked = false;
		return false;
	}
	
	counter = getElement('counter_items');
	oldtotal = counter.innerHTML;
	total = getElement('counter_total_items');
	total.innerHTML = total.innerHTML - oldtotal;
	
	counter.innerHTML = 0;
	
	counter2 = getElement('counter_items2');
	counter2.innerHTML = 0;
	
	for(i=0; i<boxes.length; i++){
		boxes[i].checked = obj.checked;
		
		if(obj.checked){
			counter.innerHTML++;
			counter2.innerHTML++;	
			total.innerHTML++;		
		}
	}
	
	listaction = getElement('listaction_items');
	listaction2 = getElement('listaction_items2');
	
	if(obj.checked){
		if(listaction.style.display != ''){
			new Effect.Appear(listaction, {duration: 0.5});
			new Effect.Appear(listaction2, {duration: 0.5});
		}
	} else {
		if(listaction.style.display == '' && paginateitemcount() == 0){
			new Effect.Fade(listaction, {duration: 0.5});
			new Effect.Fade(listaction2, {duration: 0.5});
		}
	}
}

function listcheckall(obj){
	boxes = document.getElementsByClassName('items');
	
	if(boxes.length == 0){
		alert('Er zijn geen items aanwezig in de lijst.');
		obj.checked = false;
		return false;
	}
	
	for(i=0; i<boxes.length; i++){
		boxes[i].checked = obj.checked;
	}
}

function in_array(needle, haystack, search){
	if(!search) search = false;

	for(x=0; x<haystack.length; x++){
		if(search){
			if(haystack[x].indexOf(needle) != -1)
				return haystack[x];
		} else {
			if(needle == haystack[x])
				return haystack[x];
		}
	}
	
	return false;
}

/* LIST FUNCTIONS */
function initorder(){
	url = new URL();

	if(url.iskey('order') && url.iskey('orderby')){
		objects = document.getElementsByTagName('TH');
		
		order = url.getkey('order');
		orderby = url.getkey('orderby');
		
		order2 = url.getkey('order2');
		orderby2 = url.getkey('orderby2');

		for(i=0; i<objects.length; i++){
			unset = true;
			if(orderby == objects[i].abbr){
				if(order == '1'){
					objects[i].className = 'asc';
				} else {
					objects[i].className = 'desc';
				}
				
				unset = false;
			}
			
			if(url.iskey('order2')){
				if(orderby2 == objects[i].abbr){
					if(order2 == '1'){
						objects[i].className = 'asc';
					} else {
						objects[i].className = 'desc';
					}
					
					unset = false;
				}
			}
			
			if(unset == true) {
				//objects[i].className = '';
			}
		}
	}
}

function orderlist(th){
	url = new URL(false, true);

	if(!url.iskey('order')){
		setorder('', url, th);
	}	else if(url.iskey('order') && !url.iskey('order2')){
		if(url.getkey('orderby') == th.abbr || !confirm('Gebruik de kolom "' + th.innerHTML + '" als een tweede order?')){
			setorder('', url, th);
		} else {
			setorder(2, url, th);
		}
	} else if(url.iskey('order') && url.iskey('order2')){
		if(url.getkey('orderby') != th.abbr && url.getkey('orderby2') != th.abbr){
			setorder('', url, th);
			url.replacekey('order2', '');
			url.replacekey('orderby2', '');
			url.location = url.location.replace('&order2=', '');
			url.location = url.location.replace('&orderby2=', '');
		}
	
		if(url.getkey('orderby') == th.abbr){
			setorder('', url, th);
		} else if(url.getkey('orderby2') != th.abbr) {
			setorder(2, url, th);
		}

		if(url.getkey('orderby2') == th.abbr){
			setorder(2, url, th);
		} else if(url.getkey('orderby') != th.abbr) {
			setorder('', url, th);
		}
	}
	
	url.go();
}

function setorder(order, url, th){
	if(url.getkey('orderby' + order) == th.abbr){
		if(url.getkey('order' + order) == '1'){
			url.replacekey('order' + order, '2',true);
		} else {
			url.replacekey('order' + order, '1',true);
		}
	} else {
		url.replacekey('order' + order, '1',true);
	}
	
	url.replacekey('orderby' + order, th.abbr, true);
}

/* PAGINATE FUNCTIONS */
var listitems;

function getlistitems(url){
	if(url){
		url = new URL(url);
	} else {
		url = new URL();
	}

	listitems = '';
	if(url.iskey('items')){
		listitems = url.getkey('items');
	}
	
	citems = listitems.split('-');
	boxes = document.getElementsByClassName('items');
	
	for(i=0; i<boxes.length; i++){
		if(boxes[i].checked && !in_array(boxes[i].value, citems)){
			listitems += boxes[i].value + '-';
		}
		
		if(!boxes[i].checked && in_array(boxes[i].value, citems)){
			listitems = listitems.replace(boxes[i].value+'-', '');
		}
	}
	
	return listitems;
}

var postitems = '';

function paginate(url){
	items = getlistitems(url);
	
	url = new URL(url);
	
	if(items != ''){
		url.replacekey('items', '', true);
	}
	
	url.location = url.location.replace('&items=', '');
	
	if(document.getElementById('selected_items')){
		$('selected_items').value = items;
		
		$('resultsform').action = url.location;
		$('resultsform').submit();
	} else {
		url.go()
	}
}

function initpaginate(){
	url = new URL();
	if(getElement('paginate') && url.iskey('items')){	
		items = url.getkey('items').split('-');
		
		if(items.length > 0){
			new Effect.Appear('listaction_items');
			new Effect.Appear('listaction_items2');
			
			boxes = document.getElementsByClassName('items');
			for(z=0; z<boxes.length; z++){
				if(in_array(boxes[z].value, items)){
					boxes[z].checked = true;
					
					getElement('counter_items').innerHTML++;
					getElement('counter_items2').innerHTML++;
				}
			}
			
			for(z=0; z<items.length; z++){
				if(items[z] != ''){
					getElement('counter_total_items').innerHTML++;
					getElement('counter_total_items2').innerHTML++;
				}
			}
		}
	}
}

function paginateitemcount(){
	if(getElement('paginate')){
		return getElement('counter_total_items').innerHTML;
	}
	
	return 0;
}