/*
--------------------------------------------------------------------------------
 JavaScript: Tabs Library v2.0.0.
 Requires: JQuery
--------------------------------------------------------------------------------
*/

var Tabs = Class.extend( {

tabOptionLinks : null,
tabPanes : null,
lastTabOptionIndex : null,

// Initialize the tabs.
//
init : function( my_container ) {

	this.tabOptionLinks = $( '#' + my_container + ' ul.tabOptions li a' );
	this.tabPanes = $( '#' + my_container + ' .tabPane' );

	var thisTabObj = this;
	this.tabOptionLinks.each( function( i ) {

		$( this ).click( function( e ) {
			thisTabObj.selectTab( i );
		} );

	});

	this.tabOptionLinks.each(
		function( i ) {

			var optionLink = $( this );

			optionLink.removeClass( 'tabOption_on' );
			optionLink.addClass( 'tabOption_off' );

		} // End function.
	);

	this.tabPanes.each(
		function( i ) {

			var pane = $( this );

			pane.removeClass( 'tabPane_on' );
			pane.addClass( 'tabPane_off' );

		} // End function.
	);

	this.selectTab( 0 );

}, // End init().

// Selects a tab with a specified index.
//
selectTab : function( tabOptionIndex ) {

	if ( tabOptionIndex == this.lastTabOptionIndex ) return;

	if ( this.lastTabOptionIndex != null ) {

		var lastOptionLink = $( this.tabOptionLinks[ this.lastTabOptionIndex ] );
		lastOptionLink.removeClass( 'tabOption_on' );
		lastOptionLink.addClass( 'tabOption_off' );

		var lastPane = $( this.tabPanes[ this.lastTabOptionIndex ] );
		lastPane.removeClass( 'tabPane_on' );
		lastPane.addClass( 'tabPane_off' );

	} // End if.

	var nextOptionLink = $( this.tabOptionLinks[ tabOptionIndex ] );
	nextOptionLink.removeClass( 'tabOption_off' );
	nextOptionLink.addClass( 'tabOption_on' );

	var nextPane = $( this.tabPanes[ tabOptionIndex ] );
	nextPane.removeClass( 'tabPane_off' );
	nextPane.addClass( 'tabPane_on' );

	this.lastTabOptionIndex = tabOptionIndex;

} // End selectTab().


} );
