// JavaScript Document
function preview_text(e)	{
	var touche = e.keyCode;
	if(touche == 13) {
		addRows();
	}	else	{
		print_text();
	}
}

function preview_title(e)	{
	var text = document.getElementById("keyboard").value;
	var nbRows = text.split("<br/>");
	var maxRows = getMaxRows();
	var title = noHTMLTags(document.getElementById("keyboardh1").value,false);
	if(nbRows.length < maxRows)	{
		if(noHTMLTags(title,true).length < 20)	{
			document.getElementById("viewh1").innerHTML = title;
			document.getElementById("tit").innerHTML = "";
		}	else	{
			document.getElementById("tit").innerHTML = "Title are limited to 19 characters, or 17 if title is in uppercase. ";
		}
	}	else	{
		document.getElementById("tit").innerHTML = "You can't add a title. Too much text... ";	
		document.getElementById("viewh1").innerHTML = "";
	}
}

function noHTMLTags(str,allTags)	{
	var tags = /<\/{0,1}[a|div|span|p|h1|h2|h3|h4|h5]{1,4}>{1}/gi; 
	if(allTags) tags = /<\/{0,1}\w{1,6}>{1}/gi;
	return str.replace(tags,"");	
}

function checkNbRows(str)	{
	var bool = false;
	var maxRows = getMaxRows();
	var nbRows = str.split("<br/>");
	if(nbRows.length < maxRows)	{
		bool = true;
	}
	return bool;
}

function print_text()	{
	document.getElementById("tex").innerHTML = "";
	var text = document.getElementById("keyboard").value;
	document.getElementById("view").innerHTML = noHTMLTags(text,false);
}

function addRows()	{
	var text = document.getElementById("keyboard").value;
	var youcanadd = checkNbRows(text) && getMaxCharAllowed(text);
	if(youcanadd)	{
		document.getElementById("keyboard").value += "<br/>";
	}	else	{
		document.getElementById("tex").innerHTML = "You can't add more rows !";
	}	
}

function getMaxRows()	{
	var title = document.getElementById("viewh1").innerHTML.length > 0;
	var maxRows = 12;
	if(title)	{
		maxRows = 9;
	}	
	return maxRows;
}

function getMaxCharAllowed(str)	{
	var maxRows = getMaxRows();
	maxRows -= 5;
	var maxCharAllowed = 5*68 + maxRows*33;
	return str.length < maxCharAllowed;
}