
// jQuery_Auto 0.9
// Automatic functions for webpages (using the wonderful jQuery library)

// Copyright: (c) 2006, Michal Tatarynowicz (tatarynowicz@gmail.com)
// Licenced as Public Domain (http://creativecommons.org/licenses/publicdomain/)
// $Id: jquery_auto.js 426 2006-05-06 19:54:39Z Michał $


// Initialization

$.auto = {
	init: function() {
		for (module in $.auto) {
			if ($.auto[module].init)
				$.auto[module].init();
		}
	}
};

$(document).ready($.auto.init);


// Auto-hidden elements

$.auto.hide = {
	init: function() {
		$('.Hide').hide();
	}
};


// Mouse hover

/*$.auto.hover = {

	init: function() {
		$('IMG.Hover')
			.bind('mouseover', this.enter)
			.bind('mouseout', this.exit)
			.each(this.preload);
	},

	preload: function() {
		this.preloaded = new Image;
		this.preloaded.src = this.src.replace(/^(.+)(\.[a-z]+)$/, "$1_on$2");
	},

	enter: function() {
		this.src = this.src.replace(/^(.+)(\.[a-z]+)$/, "$1_on$2");
	},

	exit: function() {
		this.src = this.src.replace(/^(.+)_on(\.[a-z]+)$/, "$1$2");
	}
};


// Auto-submitting SELECTs

$.auto.submit = {
	init: function() {
		$('SELECT.Submit').bind('change', this.on_change);
	},

	on_change: function() {
		if (this.value) this.form.submit();
	}
};


// Auto-selected text in text fields after a label click

$.auto.select = {
	init: function() {
		$('LABEL.Select').each(this.label_action);
		$('INPUT.Select').bind('click', function(){ this.select(); });
	},

	label_action: function() {
		var field = $('#'+this.htmlFor).get(0);
		if (field && field.focus && field.select) {
			$(this).bind('click', function(){ field.focus(); field.select(); });
		}
	}
};
*/

// Switches tabs on click
// rewrite [man'age 2008-08-03]

$.auto.tabs = {

	init: function() {

		$('.Tabs').each(function(){
			var f = $.auto.tabs.click;
			var group = this;
			$('.tab_wrap', group).each(function(){
				this.group = group;
				$('h2 a').click(f);
				$('#'+this.id).css('background','none');
				$('.list_wrap').hide();
			}).filter(':first')
				.addClass('Active')
				.removeAttr('style')
			});
		$('.Active .list_wrap').show('fast');
	},

	click: function() {
		$('.tab_wrap', this.group).each(function(){
			$(this).removeClass('Active');
			$(this).css('background','none');
			$('.list_wrap').hide();
		});

		$(this.parentNode.parentNode).addClass('Active');
		$(this.parentNode.parentNode).removeAttr('style');

		$('.Active .list_wrap').show('fast');

		return false;
	}

};


/*$.auto.scroll = {

	init: function() {
		$('#totop a')
			.bind('click', this.totop)
			.filter(x > 0 || y > 0);
	},

	totop: function() {
			var x1 = x2 = x3 = 0;
			var y1 = y2 = y3 = 0;
			if (document.documentElement) {
					x1 = document.documentElement.scrollLeft || 0;
					y1 = document.documentElement.scrollTop || 0;
			}
			if (document.body) {
					x2 = document.body.scrollLeft || 0;
					y2 = document.body.scrollTop || 0;
			}
			x3 = window.scrollX || 0;
			y3 = window.scrollY || 0;
			var x = Math.max(x1, Math.max(x2, x3));
			var y = Math.max(y1, Math.max(y2, y3));
			window.scrollTo(Math.floor(x / 2), Math.floor(y / 2));
			
			window.setTimeout(this, 25);

		}
/*		var reg = this.href.match(/#/);
		var xy = RegExp.rightContext;
		//alert("#"+xy);
		var topY = $('#'+xy).top();
		var topX = $('#'+xy).left();
		//var top = $(this).position();
		var tag = $(this).get();
		var topY = $(tag).top();
		var topX = $(tag).left();
		for(x=top; x>0; x--){
		window.scrollTo(x,x);
		}*/
//	}
//}
