/* show/hide related - 24.06.2008 - DB */
function toggleRelated(oTrigger,toggleAdvanced)
{
	var sRelation = $(oTrigger).attr('rel');
	var idCount = 0;
	var oParents = '';
	if(toggleAdvanced == true){
		var oParents = toggleGetAllTriggers('.'+sRelation);
	}else{
		var oParents = $("input[rel='"+sRelation+"'], option[rel='"+sRelation+"'], textarea[rel='"+sRelation+"']");
	}
	$('.'+sRelation).each(function(){
		var oDepend = this;
		if(this.id == ''){
			$(this).attr('id',sRelation+'-tgl'+idCount);
			idCount++;
		}
		if(!toggleGetAttribute(oTrigger) == $(oDepend).hasClass('triggerReverse')){
			$('#'+oDepend.id+':hidden').slideDown();
		}else{
			var bParentActive = false;
			if(oParents.length > 1){

				$(oParents).each(function(){
					if(!toggleGetAttribute(this) == $(oDepend).hasClass('triggerReverse')){
						bParentActive = true;
						return false;
					}
				});
			}
			if(!bParentActive){
				$('#'+oDepend.id+':visible').slideUp();
			}
		}
	});
}

function toggleGetAttribute(obj){
	if(obj.tagName.toLowerCase() == 'option'){
		return $(obj).attr('selected');
	}
	if(obj.tagName.toLowerCase() == 'textarea'){
	    if($(obj).val()!=''){
	        return true;
	    }
	    return false;
    }else{
		return $(obj).attr('checked');
	}
	return false;
}

$(document).ready(function(){

	if(typeof toggleAdvanced == 'undefined'){
		toggleAdvanced = false;
	}else{
		alert('Abhängigkeiten: Sorry, toggleAdvanced ist noch nicht umgesetzt.');
		toggleAdvanced = false;
	}

	$("input[type='checkbox'][rel]").each(function(){
		toggleRelated(this, toggleAdvanced);
		$(this).click(function(){
			toggleRelated(this, toggleAdvanced);
		});
	});

	$("input[type='radio'][rel]").each(function(){
		var obj = this;
		toggleRelated(this, toggleAdvanced);
		$("input[name='"+$(this).attr('name')+"']").click(function(){
			toggleRelated(obj, toggleAdvanced);
		});
	});

	$("option[rel]").each(function(){
		var obj = this;
		toggleRelated(this, toggleAdvanced);
		$(this).parent().change(function(){
			toggleRelated(obj, toggleAdvanced);
		});
	});
	
	$("textarea").each(function(){
		var obj = this;
		toggleRelated(obj, toggleAdvanced);
		$(this).bind('keyup',function(){
			toggleRelated(obj, toggleAdvanced);
		});
	});
});