(function( $ ){

	$.fn.jToggle = function( options ) {
		
		var defaults = $.extend( {
			'autoToggle' : true,
			'initView'   : -1,
			'linkClass'  : '.toggle-link',
			'bodyClass'  : '.toggle-body',
			'currClass'  : 'current'
		
		}, options);
		
		return this.each(function() {

			var $this = $(this), $curr = -1, $prev = -1;
			
			$this.find(defaults.bodyClass).hide();
			
			if(defaults.initView != -1) {
				$prev = $curr;
				$curr = $this.find(defaults.linkClass+':eq('+defaults.initView+')');
				$curr.addClass(defaults.currClass);
				$curr.next(defaults.bodyClass).slideDown();
			}

			$this.find(defaults.linkClass).click( function(e) {
				
            	
				e.preventDefault();
				$prev = $curr;
				$curr = $(this);
				$curr.blur();
				
				if($curr[0] != $prev[0] & defaults.autoToggle & $curr.next(defaults.bodyClass).length & $prev[0] != -1) {
					$curr.addClass(defaults.currClass);
					$curr.next(defaults.bodyClass).slideDown();
					$prev.removeClass(defaults.currClass);
					$prev.next(defaults.bodyClass).slideUp();
				}
				else {
					if( $curr.next(defaults.bodyClass).length ) {
						$curr.toggleClass(defaults.currClass);
						$curr.next(defaults.bodyClass).slideToggle();
					}
				}
			});
		});
	};
})( jQuery );
