
function cfhcXMLGetNodeText(el)
{
	if (el)
{
		var hasInnerText =
    (el.textContent != undefined) ? true : false;
    
    if(!hasInnerText){
		return el.text;
    }else{
    return el.textContent;
	
    }
  }
  else
  	{
  		return '';
  	}

}

function cfhcXMLGetFirstNode(cXPathString,xNode,xDocu)
{
	return cfhcXMLGetFirstNode(cXPathString,xNode,xDocu,0);
	
}

function cfhcXMLGetFirstNode(cXPathString,xNode,xDocu,pos)
{
	var finalResult;
		
		if( document.implementation.hasFeature("XPath", "3.0") )				
		{	// Mozilla - mc
		
      if( !xNode ) { xNode = this; } 
      var oNSResolver = xDocu.createNSResolver(xDocu.documentElement)
      var aItems = xDocu.evaluate(cXPathString, xNode, oNSResolver, 
                   XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null)
      var aResult = [];
      for( var i = 0; i < aItems.snapshotLength; i++)
      {      		
         finalResult =  aItems.snapshotItem(i);
         if(i == pos)
         {
         	break;
        }
      }      
   }
	else
	{
		// MSXML/IE - mc
		finalResult = xNode.selectSingleNode(cXPathString);
	}
	return finalResult;
}
  		