/* PRobleme mit Prototype, wenn überhaupt dann direkt nach dem JQueryPlugin einbinden
 * var j = jQuery.noConflict();*/

jQuery(document).ready(function() {

    checkInitialState();
	jQuery("#tbRwUStVA").change(function(){
		showHiddenDivUstVa();
	});

	jQuery("#taxBoxAccordion").accordion({ autoHeight: false });
/*
	jQuery("#taxboxTestimonials").accordion({ autoHeight: false, clearStyle: true, header: 'blockquote' });
*/
	jQuery('#taxboxTestimonials blockquote p span').sfTruncate();

	jQuery("#taxboxtabs").tabs();

	jQuery('#slider').nivoSlider({
		effect:			'fade',
		animSpeed:		500,
		pauseTime:		5000
	});

  	jQuery('#tbRwIncomeTaxReturn').click(function() {
    	jQuery("#tbRwIncomeTaxReturnMore").toggle(this.checked);
	});

  	jQuery('#tbRwRemarks').change(function() {
    	jQuery("#tbRwRemarksMore").toggle(jQuery(this).attr('checked'));
	});

	jQuery('#tbRwSonstiges').click(function() {
		if (jQuery("#tbRwSonstiges").attr('checked')) {
			jQuery("#tbRwSonstigesLabel").hide();
			jQuery("#tbRwSonstigesMore").show();
		} else {
			jQuery("#tbRwSonstigesLabel").show();
			jQuery("#tbRwSonstigesMore").hide();
		}
	});

	jQuery("#tbRwLegalForm").change(function() {
		if (jQuery(this).val() == 'tbRwEU' || jQuery(this).val() == '0') {
			jQuery("#tbRwLegalFormMore").hide();
		} else {
			jQuery("#tbRwLegalFormMore").show();
		}
	});

	jQuery("#tbRwLegalForm").change();

});



function showHiddenDivUstVa() {
	if (jQuery("#tbRwUStVA").attr('checked')) {
		jQuery("#tbRwUStVAmore").show();
	} else {
		jQuery("#tbRwUStVAmore").hide();
	}

	if (jQuery("#tbRwSonstiges").attr('checked')) {
		jQuery("#tbRwSonstigesLabel").hide();
		jQuery("#tbRwSonstigesMore").show();
	} else {
		jQuery("#tbRwSonstigesLabel").show();
		jQuery("#tbRwSonstigesMore").hide();
	}

	jQuery("#tbRwRemarksMore").toggle(jQuery('#tbRwRemarks').attr('checked'));
	jQuery("#tbRwIncomeTaxReturnMore").toggle(jQuery('#tbRwIncomeTaxReturn').attr('checked'));
	return true;
}

function checkInitialState() {
    jQuery("#tbRwUStVAmore").hide();
    showHiddenDivUstVa();
    return true;
}

//Zeige die Private Einkommenssteuererklaerung Box
function showHiddenDivIncomeTaxReturnMore()
{
	jQuery('#tbRwIncomeTaxReturn').click(function() {
	    jQuery("#tbRwIncomeTaxReturnMore").toggle(this.checked);
	});
}

function showHiddenDivLegalFormMore()
{
	jQuery('#tbRwLegalForm').click(function() {
	    jQuery("#tbRwLegalFormMore").toggle(this.checked);
	});
}

function showRentalIncomeOptions(obj) {
	if (parseInt(obj.val()) != 0) {
		jQuery('#tbRwRentalOptions').show();
	} else {
		jQuery('#tbRwRentalOptions').hide();
	}
}

function showRentalIncomeAmount(obj) {
	if (obj.is(':checked')) {
		jQuery('.tbRwRentalIncomeOptions').show();
	} else {
		jQuery('.tbRwRentalIncomeOptions').hide();
	}
}

function hideOrShow(conf) {
	switch (conf.mode) {
		case 'checkbox':
			if (jQuery(conf.triggerSel).is(':checked')) {
				jQuery(conf.targetSel).show();
			} else {
				jQuery(conf.targetSel).hide();
			}
			break;
		case 'value':
		default:
			if (conf.inverse) {
				valid = (jQuery(conf.triggerSel).val() != conf.value)
			} else {
				valid = (jQuery(conf.triggerSel).val() == conf.value)
			}

			if (valid) {
				jQuery(conf.targetSel).show();
			} else {
				jQuery(conf.targetSel).hide();
			}
			break;
	}

	if (conf.event != undefined) {
		jQuery(conf.triggerSel).bind(conf.event, function(){
			hideOrShow(conf);
		});
	}
}

jQuery(document).ready(function () {
	hideOrShow({
		triggerSel: '#tbRwFinanzbuchhaltung',
		targetSel: '#tbRwUmsatzVoranmeldOption',
		mode: 'checkbox',
		event: 'change'
	});

	hideOrShow({
		triggerSel: '#tbRwUmsatzVoranmeld',
		targetSel: '#tbRwRadioList',
		mode: 'checkbox',
		event: 'change'
	});

	hideOrShow({
		triggerSel: '#tbRwLohnbuchhaltung',
		targetSel: '#tbRwAnzahlArbeitnehmerOption',
		mode: 'checkbox',
		event: 'change'
	});

	showRentalIncomeOptions(jQuery('#rentalIncome'));
	showRentalIncomeAmount(jQuery('#tBrWtaxforrent'));

	jQuery('#rentalIncome').change(function(){
		showRentalIncomeOptions(jQuery(this));
	});

	jQuery('#tBrWtaxforrent').change(function(){
		showRentalIncomeAmount(jQuery(this));
	});

	jQuery('img#tbRwAngebotErstellt').hide();
	jQuery("#tbRwAngebotAnfordern").click(function() {
		jQuery("#tbRwAngebotAnfordern").hide();
		jQuery("#tbRwAngebotErstellt").show();
		return false;
	});
});
