function xvReadMore(obj, show){
  var container = obj.parentNode.parentNode.parentNode;
  
  var children = container.childNodes;
  
  var moreStuff = new Array;
  var readMoreCtrls = new Array;
  
  for(var i=0;i< children.length;i++){
  
    if(children[i].className=='moreStuff'){
      moreStuff.push(children[i]);
    }else if(children[i].className=='readMoreCtrl'){
      readMoreCtrls.push(children[i]);
    }else{
    }
    
  }
  
  moreStuff = moreStuff[0];

  var readMoreSpans = new Array;
  var readLessSpans = new Array;
  
  for(var i=0;i<readMoreCtrls.length;i++){
    readMoreSpans.push(getElementsByClass('readMore',readMoreCtrls[i])[0]);
    readLessSpans.push(getElementsByClass('readLess',readMoreCtrls[i])[0]);    
  }
  
  
  var readMoreSpan = readMoreSpans[0];

  if(show){
    var readMoreDisp = 'none';
    var readLessDisp = 'inline';
    var moreStuffDisp = 'block';
  }else{
    var readMoreDisp = 'inline';
    var readLessDisp = 'none';
    var moreStuffDisp = 'none';  
  }
  
  readMoreSpan.style.display = readMoreDisp;
  
  for(var i=0;i<readLessSpans.length;i++){
    readLessSpans[i].style.display = readLessDisp;
  }
  moreStuff.style.display=moreStuffDisp; 
}


function expandFromLink(myid){
  var el = document.getElementById(myid);
  
  if(el.parentNode.className=='moreStuff'){
    var readMoreContainer = el.parentNode.parentNode;
  }else if(el.parentNode.parentNode.className=='moreStuff'){
    var readMoreContainer = el.parentNode.parentNode.parentNode;
  }
  
  if(readMoreContainer){
    var ctrl = getElementsByClass('readMoreCtrl',readMoreContainer)[0];
    var ch = ctrl.getElementsByTagName("a");
    
    xvReadMore(ch[0], true);
    
  }
}

function expandAll(show){
  var spans = getElementsByClass('readMore',document);
  for(var i=0;i<spans.length;i++){
    var a=spans[i].getElementsByTagName('a')[0];
    xvReadMore(a, show);
  }
}

function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

function debug(str, clear) {
  if (document.getElementById('debug')) {
    if (clear) {
      document.getElementById('debug').value = str;
    } else {
      document.getElementById('debug').value += str;
    }
  } else {
    alert('str');
  }
}