var sourceObj = null;
var typeWindow = null;
var backupText = document.getElementById('type_backup');
var message = '';
var typedPortion = '';
var cursorChar = '';
var cursorHTML = '<span class="cursorChar">@</span>';
var workHTML = '';
function initTypewriter(){
  sourceObj = document.getElementById('type_source');
  backupText = document.getElementById('type_backup');
  typeWindow = document.getElementById('feedtext');
  typeWindow.innerHTML = '';
  message = sourceObj.innerHTML;
  msgLength = message.length;
  HTMLstr = '';
  workChar = '';
  count = 0;
  speed = 120;
  typing = setInterval('typeText();', speed);
}
function typeText()
{
 if (count == msgLength)
 {
  clearInterval(typing);
  backupText.innerHTML = message;
  return;
 }
 else if (count == 0)
  typedPortion = '';
 else
  typedPortion = message.substring(0, count)
 cursorChar = message.charAt(count);
 if (/</.test(cursorChar))
 {
  var tag = message.substring(count).match(/<\/?[^>]+>/);
  if (tag)
  {
   typedPortion += tag[0];
   count += tag[0].length;
  }
 }
 else
 {
 workHTML = '';
 workHTML += typedPortion;
 if (count < msgLength)
  workHTML += cursorHTML.replace(/@/, cursorChar);
 typeWindow.innerHTML = workHTML;
 count++;
 }
}
function loadTypewriter(){
  var startDelay = 1;
  setTimeout('initTypewriter();', (startDelay * 1000));
}
function checkNewsFlash(){
  var backupText = document.getElementById('type_backup');
  var sourceObj = document.getElementById('type_source');
  if(backupText.innerHTML == ""){
    loadTypewriter();
  } else {
    if(backupText.innerHTML != sourceObj.innerHTML){
      loadTypewriter();
    }
  }
}

