function tabs(args) {
	var index;

	build();

	function build() {
		if ($.browser.msie) {
			/* IE bug fix. see http://stackoverflow.com/questions/208471#1080243 */
			$("input[name='" + args.name + "']").click(function() {
				this.blur();
				this.focus();
			});
		}

		$("input[name='" + args.name + "']").change(function() {
			go(this.className);
		});
		if (args.prev) {
			$(args.prev).click(function() {
				if (index > 1)
					go(index - 1);
			});
		}
		if (args.next) {
			$(args.next).click(function() {
				if (index < args.labels.length)
					go(index + 1);
			});
		}

		var input = $(args.labels).find("input:checked");

		index = Number(input.attr("class"));
		input.parent().addClass("selected");

		if (args.tabs[index-1])
			$(args.tabs[index-1]).show();

	}
	function go(i) {
		i = Number(i);

		if (args.functions) {
			if (args.tabs[index-1])
				args.functions.hide($(args.tabs[index-1]));
			if (args.tabs[i-1])
				args.functions.show($(args.tabs[i-1]));
		}
		else {
			if (args.tabs[index-1])
				$(args.tabs[index-1]).hide();
			if (args.tabs[i-1])
				$(args.tabs[i-1]).show();
		}

		$(args.labels[index-1]).removeClass("selected");
		$(args.labels[i-1]).addClass("selected");

		index = i;
	}
}
