public function GetDataGridHtml()
{
// Array-ify Node Hierarchy
$objNodeArray = array();
$objNodeArray[] = $this;
while ($objNodeArray[count($objNodeArray) - 1]->objParentNode) {
$objNodeArray[] = $objNodeArray[count($objNodeArray) - 1]->objParentNode;
}
$objNodeArray = array_reverse($objNodeArray, false);
// Go through the objNodeArray to build out the DataGridHtml
// Error Behavior
if (count($objNodeArray) < 2) {
throw new Exception('Invalid QQNode to GetDataGridHtml on');
} else {
if (count($objNodeArray) == 2) {
return $this->GetDataGridHtmlHelper('$_ITEM->' . $objNodeArray[1]->strPropertyName, $objNodeArray[1]->strType, $this->strClassName);
} else {
$strNodeLabelArray[0] = '$_ITEM->' . $objNodeArray[1]->strPropertyName;
for ($intIndex = 2; $intIndex < count($objNodeArray); $intIndex++) {
$strNodeLabelArray[$intIndex - 1] = $strNodeLabelArray[$intIndex - 2] . '->' . $objNodeArray[$intIndex]->strPropertyName;
}
$strNodeTypeArray[0] = $objNodeArray[1]->strType;
for ($intIndex = 2; $intIndex < count($objNodeArray); $intIndex++) {
$strNodeTypeArray[$intIndex - 1] = $objNodeArray[$intIndex]->strType;
}
$strToReturn = $this->GetDataGridHtmlComplexHelper($strNodeLabelArray, $strNodeTypeArray, 0);
}
}
return $strToReturn;
}