/**
 * Toggles content in .readtoggler DIVs, when H2 is clicked
 */
var ReadToggler = {

	/**
	 * UI texts
	 */
	showTxt: '[ anzeigen ]',
	hideTxt: '[ schlie&szlig;en ]',
	
	/**
	 * Initializes the read toggler
	 */
	init: function(){
		// find all readtoggle DIVs and add interaction
		$.each($(document.body).find('div.readtoggler'), function(i,n){
			if( $(n).hasClass('readtoggler-open') ){
				$(n).find('h2').toggle(
						function(evt){
							ReadToggler.hide(this);
						},
						function(evt){
							ReadToggler.show(this);
						}
					);
			} else {
				$(n).find('h2').toggle(
					function(evt){
						ReadToggler.show(this);
					},
					function(evt){
						ReadToggler.hide(this);
					}
				);
			}
		});
		
		// initial click
		//$(document.body).find('div.readtoggler h2').trigger('click');
		// click again to respect containers that should be opened by default
		//$(document.body).find('div.readtoggler-default-open h2').trigger('click');
	},

	/**
	 * Shows the toggable elements
	 */
	show: function(trigger){
		
		$(trigger).siblings('.toggle').slideDown('fast', function(){
			$(trigger).parents('.readtoggler').addClass('readtoggler-open');	
		});
		$(trigger).children('span').html(ReadToggler.hideTxt);
	},
	
	/**
	 * Hides the toggable elements
	 */
	hide: function(trigger){
		$(trigger).siblings('.toggle').hide('fast', function(){
			$(trigger).parents('.readtoggler').removeClass('readtoggler-open');			
		});
		$(trigger).children('span').html(ReadToggler.showTxt);
	}

}	

// init when document is ready
$(document).ready(function(e){
	ReadToggler.init();
});
