function shouldPostToTwitter(el) {
  if (el.checked) {
    postToTwitter = true;
    initTextPrayerBody();
  } else {
    postToTwitter = false;
    field = $('text-prayer-body');
    field.value = field.value.sub(" #jhop", "");
    setSelRange(field, field.value.length, field.value.length);
    textCounter(field);
  }
}
      
function checkData() {
  if (($('text-prayer-body').value.length == 0) || ($('text-prayer-body').value == " #jhop")) {
    $('error-field').show();
    return false;
  } else {
    return true;
  }
}

function setSelRange(inputEl, selStart, selEnd) { 
 if (inputEl.setSelectionRange) { 
  inputEl.focus(); 
  inputEl.setSelectionRange(selStart, selEnd); 
 } else if (inputEl.createTextRange) { 
  var range = inputEl.createTextRange(); 
  range.collapse(true); 
  range.moveEnd('character', selEnd); 
  range.moveStart('character', selStart); 
  range.select(); 
 } 
}

function textCounter(field) {

var counter = document.getElementById('character-counter');
var maxlimit = 140;

  if (postToTwitter ) {
    if ((field.value.endsWith(" #jhop") != true) || (field.value.length > maxlimit)) {
      if (field.value.length > maxlimit) {
        field.value = field.value.truncate(length = 140, suffix = ' #jhop');
      } else {
        field.value = field.value.slice(0, -5) + " #jhop";
      }
    }
  }
  
  if(field.value.length > maxlimit) {
    field.value = field.value.substring(0, maxlimit);

  } else { 
    counter.innerHTML = maxlimit - field.value.length;
  }
}

function initTextPrayerBody() {
  if (twitterAuthorized == true) {
    $('text-prayer-body').value += ' #jhop'
    size = $('text-prayer-body').value.length - 6
    setSelRange($('text-prayer-body'), size, size)
  }
  $('text-prayer-body').focus()
  textCounter($('text-prayer-body'));
}