// JavaScript Document

function getElementsByClassWithScope(searchClass,node,tag) {
// borrowed from http://www.dustindiaz.com/getelementsbyclass/
	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 toggleDisplayMulti(id,inLine) {
  
 var show = 'block';
 if(inLine)
 {
  show = 'inline';
 }
// toggles visibility for multiple elements with class=<id>_hidden contained within a div with id=<id>
// relies on function: getElementsByClassWithScope
	var el_close = getElementsByClassWithScope(id+'_hidden',document.getElementById(id));
	var el_open = getElementsByClassWithScope(id+'_open',document.getElementById(id));

	for (var i=0; i < el_close.length; i++){
		if ((el_close[i].style.display == "none") || (el_close[i].style.display == "")){
			el_close[i].style.display = show;
		} else {
			el_close[i].style.display = "none";
		}
	}
	for (var i=0; i < el_open.length; i++){
		if ((el_open[i].style.display == show) || (el_open[i].style.display == "")){
			el_open[i].style.display = "none";
		} else {
			el_open[i].style.display = show;
		}
	}
	if(id == 'bib_list')
	{
	 initShowHideDivs(document.getElementById("resources_data_latestbibliography_slider"));
    }
}


function toggleDisplayMultiForLI(id) {
// toggles visibility for multiple elements with class=<id>_hidden contained within a div with id=<id>
// relies on function: getElementsByClassWithScope
	var el = getElementsByClassWithScope(id+'_hidden',document.getElementById(id));

	for (var i=0; i < el.length; i++){
		if ((el[i].style.display == "none") || (el[i].style.display == "")){
			el[i].style.display = "list-item";
		} else {
			el[i].style.display = "none";
		}
	}
}

// Image pop-up script
function showImg(img,cap)
	{
		var elem =  document.getElementById('bigimgpopup'); 
  		if(elem != null)
  		{
  		    elem.style.display = "block";
  		    var span  = document.createElement('span');
			var innerspan = document.createElement('span');
			var image = document.createElement('img');
	 		image.src  = "/assets/images/xl/" + img ;
			span.appendChild (image);
	         
	 	 	if(elem.innerHTML == "" || elem.innerHTML == null)
	 	 	{
	 	 	   var capNo = cap.parentNode.id.split('_');
	 	 		var caption = document.getElementById('cap'+capNo[1]);
				innerspan.innerHTML = caption.innerHTML;
				span.appendChild (innerspan) ;
	    		elem.innerHTML = span.innerHTML;
	    		elem.style.border = "1px solid #black";
	    		elem.style.backgroundColor='#white';
	    	}
			else 
	  		{
	  			elem.innerHTML = "";
	  			elem.style.backgroundColor="";
	  			elem.style.display="none";
	  		}
  		}
	}
//End:Image pop-up  script

function ShowAll(div,sum,ev)
{   
    var curDiv = div;
    if(div.tagName != 'DIV')
    {curDiv = div.parentNode;}
 	var inSpans = curDiv.getElementsByTagName('span');
	var limSum;
	var summary = inSpans[0].innerHTML;
	
	if(sum)
	{  
	    curDiv.style.display='block';
		if(!summary || summary.length > 500)
		  {
		   limSum = sum.substr(0,500);
		   if(sum.length > 500)
		   {
		   inSpans[1].style.display='block';
		   inSpans[2].style.display='none';
		   }
		   else{inSpans[1].style.display='none';
	       inSpans[2].style.display='none';}
		  }
		else if(summary.length > 1 && summary.length <= 500)
		  {
		   limSum = sum
		   if(sum.length > 500)
		   {
		 
		   inSpans[1].style.display='none';
		   inSpans[2].style.display='block';
		   }
		   else{inSpans[1].style.display='none';
	       inSpans[2].style.display='none';}
		  }  
		  else
		  {
		   limSum = sum.substr(0,500);
		   if(sum.length > 500)
		   {
		 
		   inSpans[1].style.display='block';
		   inSpans[2].style.display='none';
		   }
		   else{inSpans[1].style.display='none';
	       inSpans[2].style.display='none';}
	      }
		 
		inSpans[0].innerHTML = limSum;
	}
	else
	{
	 curDiv.style.display='none';
	}
}



