String.prototype.reverse = function() {
  return this.split('').reverse().join('');
};

function limitText(limitField, limitCount, limitNumChars, limitNumLines) {
  dents = limitField.value.replace(/[^\r\n]/g, '').replace(/(\r|\n)/g, '#').length;
  ents = limitField.value.replace(/[^\r\n]/g, '').replace(/(\r\n|\r|\n)/g, '#').length;
  if (limitField.value.length - dents + ents > limitNumChars) {
    limitField.value = limitField.value.substring(0, limitNumChars + dents - ents);
    if (limitField.value.charCodeAt(limitField.value.length - 1) == 10) {
      limitField.value = limitField.value.substring(0, limitNumChars + dents - ents - 1);
    }
  } else {
  }

  ans = limitField.value.replace(/[^\r\n]/g, '').replace(/(\r\n|\r|\n)/g, '#').length + 1;

  if (ans > limitNumLines)
  {
    limitField.value = limitField.value.reverse().replace(/\n/, '').replace(/\r/, '').reverse();
  }
  else
  {
    document.getElementById(limitCount).innerHTML = limitNumLines - ans;
  }
}


