// common.js

// Character count
function updateCharacterCount( textareaId, messageElementId, maxChars )
{
	var textarea = document.getElementById( textareaId );
	var messageElement = document.getElementById( messageElementId );
	
	if( textarea != null && messageElement != null )
	{
		var chars = textarea.value.match(/[^\r\n]/g);
		var lineBreaks = textarea.value.match(/[\n]/g);
		
		if( chars != null ) maxChars -= chars.length;
		if( lineBreaks != null ) maxChars -= lineBreaks.length * 2;
		
		var charsLeft = maxChars;
		
		if( charsLeft <= 0 )
		{
			if( messageElement.className.indexOf(' error') == -1 )
			{
				messageElement.className = messageElement.className + ' error';
			}
				
			charsLeft = 0;
		}
		else
		{
			messageElement.className = messageElement.className.replace(' error', '');
		}
	
		messageElement.innerHTML = '(characters remaining: ' + charsLeft + ')';
	}
}