function spanButton(color, size, text) {
	return "<span class=\""+color+"\"><span><span><span class=\""+size+"\">"+text+"</span></span></span></span>";
}

// if specified, roundCorners will be applied to subElements only
function roundCorners (jqueryExpression) {
	// CSS based on the following articles
	// http://www.456bereastreet.com/archive/200705/creating_bulletproof_graphic_link_buttons_with_css/
	// http://particletree.com/features/rediscovering-the-button-element/
	
	var start = '';
	if (jqueryExpression) {
			start = jqueryExpression+' ';
	}
	
	// add rounded corners to all .button links and buttons
	$(start+'a.button, '+start+'button.button').wrapInner('<span><span><span><span></span></span></span></span>');
	if ($.browser.msie && parseInt(jQuery.browser.version) == 6) {
		$(start+'a.button').hover(function() {
			$(this).removeClass('nohover');
			$(this).removeClass('nohoverdark');
		}, function() {
			if ($(this).parent().hasClass('dark')) {
				$(this).addClass('nohoverdark');
			} else {
				$(this).addClass('nohover');
			}
		});
		$(start+'a.newButton').hover(function() {
			$(this).removeClass('newNohover');
		}, function() {
			$(this).addClass('newNohover');
		});
		$(start+'a.maxButton').hover(function() {
			$(this).removeClass('maxNohover');
		}, function() {
			$(this).addClass('maxNohover');
		});
		$(start+'a.niceButton').hover(function() {
			$(this).removeClass('niceNohover');
		}, function() {
			$(this).addClass('niceNohover');
		});
		$(start+'button.button').hover(function() {
			if ($(this).parent().hasClass('dark')) {
				$(this).addClass('hoverdark');
			} else {
				$(this).addClass('hover');
			}
		}, function() {
			$(this).removeClass('hover');
			$(this).removeClass('hoverdark');
		});
		$(start+'button.newButton').hover(function() {
			$(this).addClass('newHover');
		}, function() {
			$(this).removeClass('newHover');
		});
		$(start+'button.niceButton').hover(function() {
			$(this).addClass('niceHover');
		}, function() {
			$(this).removeClass('niceHover');
		});
	}

	// HTML
	// <a class="button" href="#">
	// 	<span>
	// 		<span>
	// 			<span>
	// 				<span>MY BUTTON</span>
	// 			</span>
	// 		</span>
	// 	</span>
	// </a>

	// add rounded corners to all .rounded blocs
	$(start+'div.rounded, '+start+'li.rounded').prepend('<div class="notopgap"></div>').append('<div class="nobottomgap"></div>').wrapInner('<div class="inside"></div>').prepend('<div class="top-left"></div><div class="top-right"></div>').append('<div class="bottom-left"></div><div class="bottom-right"></div>');
	// HTML
	// <div class="rounded">
	// 	<div class="top-left"></div><div class="top-right"></div>
	// 	<div class="inside">
	// 		<div class="notopgap"></div>
	//		MY CONTENT
	// 		<div class="nobottomgap"></div>
	// 	</div>
	// 	<div class="bottom-left"></div><div class="bottom-right"></div>
	// </div>
};

var buttonImgs = new Array(
	"/images/layout/btn-dark-hover.gif",
	"/images/layout/btn-light-hover.gif",
	"/images/layout/btn-light-hover-orange.gif",
	"/images/layout/btn-light-hover-grey.gif",
	"/images/layout/btn-light-hover-pink.gif",
	"/images/layout/btn-inset-hover-orange.gif",
	"/images/layout/btn-inset-hover-grey.gif",
	"/images/layout/btn-inset-hover-pink.gif"
);
// On DOM ready
$(document).ready(function() {
	// preload button hover images

	for(var i=0; i<buttonImgs.length; i++){
		buttonImgs[i] = $("<img>").attr("src", buttonImgs[i]);
	}

	roundCorners();

});

$(document).ready(function() {
// disable possible multiple submit
	$("form").submit( function() {
		if (!$(this).attr("target")) {
			alreadySubmited = $(this).attr("alreadySubmited");
			$("form").attr("alreadySubmited",true);
			return !alreadySubmited;
		} else {
			return true;
		}
	});
});

//textarea remainings chars
var maxChars = Array();

$(document).ready(function() {
	$("textarea").each( function() { 
		if ($(this).attr('id') && $(this).attr('id').length>0 && $("#"+$(this).attr('id')+"RemainingChars").length > 0) {
			maxChars[$(this).attr('id')]=$("#"+$(this).attr('id')+"RemainingChars").html();
			remainingChars($(this));
			$(this).keyup( function() { 
				remainingChars($(this)); 
			});
		}
	});
});

function remainingChars(textarea) {
	var max = 0 + maxChars[textarea.attr('id')];
	var remaining = 0 + maxChars[textarea.attr('id')] - textarea.val().length;
	if(remaining <= 0) {
		textarea.val(textarea.val().substring(0, max));
		remaining = 0;
	}
	$("#"+textarea.attr('id')+"RemainingChars").html(""+remaining);
}

$(document).ready(function() {
	$("a.submit").attr("href","#");
	$("a.submit").click(function() {
		$(this).parents().filter('form').submit();
	});
	
	$("a.footerPopup").click(function() {
		window.open($(this).attr("href"),"footerPopup","menubar=no, status=no, scrollbars=yes, menubar=no, width=550, height=550");
		return false;
	});
});