var currentTarget = 255;

$(document).observe('dom:loaded', function() {
	
	//$(document.body).block();
	
	var checkImage = $(new Image());
	checkImage.src = imageRoot + '/checkbox_img.gif';
	checkImage.width  = 15;
	checkImage.height = 15;
	checkImage.setStyle({ position: 'absolute', display: 'none', cursor: 'pointer' });
	
	$$('.category_checkbox').each(function(link) {
	    
	    link = $(link);
		
		var image = $(checkImage.cloneNode(true));
		image.id  = link.id + '_actv_img';
		document.body.appendChild(image);
		image.setStyle({ position: 'absolute' });
		
		//new Position.clone(link, image, { setWidth: false, setHeight: false });
		image.clonePosition(link, {setWidth: false, setHeight: false });
		
		
		image.onclick = link.onclick = checkboxClicked;
		link.checkedImage = image;
	});
	
	//$(document.body).unblock();
});

//------------------------------------------------------------------------------

function checkboxClicked(event) {
	
	// IE SUX!
	if(!event)
	event = window.event;
	
	var clicked = $(Event.element(event));
	
	var catId      = clicked.id.split('_')[1];
	var element    = $('category_' + catId);
    var checkImage = $(element.id + '_actv_img');
 
    if($A(element.classNames()).contains('actv')) {
    	//new Effect.Fade(checkImage, { duration: .5 })
    	element.removeClassName('actv');

    	currentTarget ^= $F('cat_value_' + catId);
    	
    } else {
    	//new Effect.Appear(checkImage, { duration: .5 });
    	element.addClassName('actv');

    	currentTarget |= $F('cat_value_' + catId);
    }
    
    $$('div.projectSet').each(function(section) {
    	var id       = section.id.split('_')[1];
    	var catValue = $F('projekt_' + id + '_cat_value');
    	
    	if(((catValue & currentTarget) > 0) && !section.visible()) {
    		new Effect.BlindDown(section, {duration: 1});
    		
    	} else if(((catValue & currentTarget) == 0) && section.visible()) {
    		new Effect.BlindUp(section, {duration: 1});
    	}
    	
    });
}


