(function() {
  
  function getElementByTagAndClassName(node,tagName,className) {
    var els = node.getElementsByTagName(tagName);
    for (var i=0; i<els.length; i++) {
      var el = els[i];
      if (el.className && 
	  el.className.toLowerCase().indexOf(className.toLowerCase()) > -1) {
	return el;
      }
    }
    return null;
  }

  function getCommentInput(node,type) {
    var els = node.getElementsByTagName('input');
    for (var i=0; i<els.length; i++) {
      var el = els[i];
      if (el.value == 'Comment' && el.type == type) {
	return el;
      }
    }
    return null;
  }

  function getFirstName(el) {
    var str = el.innerHTML;
    var parts = str.split(' ');
    return parts[0];
  }

  function main() {
    var h6s = document.getElementsByTagName("h6");
    for (var i=0; i<h6s.length; i++) {
      var h6 = h6s[i];
      if (h6.className == 'uiStreamMessage') {
	var nameEl = h6.getElementsByTagName('a')[0];
	if (!nameEl) continue;
	var firstName = getFirstName(nameEl);
	var msgEl = getElementByTagAndClassName(h6,'span','messageBody');
	var msg = msgEl.innerHTML;
	if (!(msg.match(/happy/i) || msg.match(/birthday/i))) {
	  continue;
	}
	var commentForm = h6.nextSibling;
	var commentInput = getCommentInput(commentForm,'button');
	commentInput.click();
	var textArea = commentForm.getElementsByTagName('textarea')[0];
	textArea.innerHTML = 'Thanks a lot for the birthday wishes, ' 
	  + firstName;
	var commentSubmit = getCommentInput(commentForm,'submit');
	commentSubmit.click();
      }
    }
  }

  main();

})();
