var defaultCounterText;
$(document).ready(function(){
	$('.lib-cat-items').hide();
	defaultCounterText = $('.lib-listview .download-count:first').text();
	
	$('.lib-cat-head').bind({
		'click': function(){
			$(this).next('.lib-cat-items').toggle();
    		$(this).parent().toggleClass('open');
		}
	});
	
	$('.lib-cat-item').live('click', function(){
		$this = jQuery(this);
		if ($this.parents('.lib-listview').hasClass('nodevices')) return;
		$this.toggleClass('selected');
		
		$globalCount = $('.lib-listview .download-count');
		$categoryCount = $this.parents('.lib-category').find('.cat-count');
		
		$currentGlobalSelected = $('.lib-listview .lib-cat-item.selected').length;
		$currentCategorySelected = $this.parents('.lib-category').find('.lib-cat-item.selected').length;
		
		if ( $currentGlobalSelected == 0 ) {
			$globalCount.text(defaultCounterText);
			$('.list-head .submit, .list-foot .submit').addClass('disabled');
		} else {
			$globalCount.text($currentGlobalSelected + ' Titel laden');
			$('.list-head .submit, .list-foot .submit').removeClass('disabled');
		}
		( $currentCategorySelected == 0 ) ? $categoryCount.text(defaultCounterText) : $categoryCount.text($currentCategorySelected + ' Titel laden');
		
		$this.find('input').attr('checked', $this.hasClass('selected'));
	});
	
	$('.device').bind({
		'click': function(){
			$this = $(this);
			$this.toggleClass('selected');
			$this.find('input').attr('checked', $this.hasClass('selected'));
			if ( $('.device-selection input:checked').length > 0 ) {
				$('.device-selection .download').removeClass('disabled');
			} else {
				$('.device-selection .download').addClass('disabled');
			}
		}
	});
	
	$('.list-head .submit, .list-foot .submit').bind({
		'click': function(e){
			e.preventDefault();
			
			if ( !$(this).hasClass('disabled') ) {
				var buttonPos = $(this).offset();
				var formPos = $('.lib-listview').offset();
				var modalPos = {
					'top': buttonPos.top + 29,
					'left': formPos.left + 5
				}
				$('.device-selection input').attr('checked', false);
				$('.device-selection .device').removeClass('selected');
				$('.device-selection .download').addClass('disabled');
				$('.device-selection')
					.css(modalPos)
					.appendTo('body')
					.show();
			}
		}
	});

	$('.device-selection .download').bind({
		'click': function(e){
			e.preventDefault();
			
			if ( $('.device-selection input:checked').length > 0 && !$(this).hasClass('disabled') ) {
				$('.device-selection')
					.hide()
					.appendTo('form.lib-listview');
				$('form.lib-listview').submit();
			}
		}
	});
	
	$('.device-selection .device-close').bind({
		'click': function(e){
			e.preventDefault();
			$('.device-selection').hide();
			$('.device-selection').prependTo('.lib-listview');
		}
	});
});
