$.fn.jqSelectList = function(){
	var $this = $(this),
		target_element = 'div.details',
		tooltips = 'Click to select',
		$items = $('.jqSelectList', $(this));
	
	return this.each(function(){
		
		$items.each(function(){
			var $item = $(this);
			
			if ($('input[type=checkbox]', $item).attr('checked') == true)
				AddSelected();
			addRemoveClickEvent($item);
			
			function addRemoveClickEvent(element)
			{
				if(element.children().length > 0){
					element
						.children()
						.filter(target_element)
						.css({cursor: 'pointer'})
						.attr({title: tooltips})
						.andSelf()
						.click(function(){
							AddSelected();
						});
				}
			}
			
			function AddSelected()
			{
				if($item.hasClass('selected')){
					$item.removeClass('selected');
					$('input[type=checkbox]', $item).attr({'checked': false});
				} else {
					$item.addClass('selected');
					$('input[type=checkbox]', $item).attr({'checked': true});
				}
			}
			
		});
		
	});
	
};
