function IPGridViewData(strGridId, strCallerId, strContainerId, strHiddenRowsFieldId, intRowCount, strRowStyle, strAlternatingRowStyle, intOrderColumn,
strRowUpIcon, strRowDownIcon, strRowIconH2, strRowIconH9, blnFooterRowVisible, recordCountLabelId, serverSidePaging, clientPager, clientPagerDivId,
pageSize, pageIndex, lockedRowCount, maxRowCount, callbackHandlerID, totalRecordCount, callbackOnReorder, waitPanelID, maxHeight, scrollingPanelID)
{
this.gridId=strGridId;
this.name = strGridId + '_Data';
this.callerId=strCallerId;
this.containerId=strContainerId;
this.hiddenRowsFieldId=strHiddenRowsFieldId;
this.rowStyle=strRowStyle;
this.alternatingRowStyle=strAlternatingRowStyle;
this.rowReferences=new Array();
this.controlReferences=new Array();
this.orderColumn=intOrderColumn;
this.rowUpIcon=strRowUpIcon;
this.rowDownIcon=strRowDownIcon;
this.rowIconH2=strRowIconH2;
this.rowIconH9=strRowIconH9;
this.footerRowVisible=blnFooterRowVisible;
this.recordCountLabelId=recordCountLabelId;
var objTable=document.getElementById(strGridId);
this.gridTable=objTable;
this.templateRowId=objTable.rows[1].id;
this.templateRowCells=new Array();
this.serverSidePaging=serverSidePaging;
this.pageSize=pageSize;
this.pageIndex=pageIndex;
this.lockedRowCount=lockedRowCount;
this.maxRowCount=maxRowCount;
this.cellInfo=new Array();
this.cellInfo[0]=new Array();
this.callbackHandlerID=callbackHandlerID;
this.totalRecordCount=totalRecordCount;
this.callbackOnReorder=callbackOnReorder;
this.waitPanelID=waitPanelID;
this.maxHeight=maxHeight;
this.scrollingPanelID=scrollingPanelID;
for (var i=0; i<objTable.rows[1].cells.length; i++)
{
this.templateRowCells.push(objTable.rows[1].cells[i].cloneNode(true));
var inputArray = objTable.rows[1].cells[i].getElementsByTagName('input');
if (!inputArray || !inputArray[0])
inputArray = objTable.rows[1].cells[i].getElementsByTagName('textarea');
var editControlID = '';
if (inputArray && inputArray[0])
editControlID=inputArray[0].id;
this.cellInfo[0][i]=new IPGridCell(this, editControlID);
if (ipjIsIE)
{
if (objTable.rows[1].cells[i].children.length>0)
{
var ctlChild=objTable.rows[1].cells[i].children[0];
if (ctlChild.tagName == 'SELECT')
{
for (var j=0; j<ctlChild.children.length; j++)
{
if (this.templateRowCells[i].children[0].children[j].tagName == 'OPTION')
{
this.templateRowCells[i].children[0].children[j].selected=ctlChild.children[j].selected;
}
}
}
}
}
}
if (!serverSidePaging || intRowCount==0)
{
objTable.deleteRow(1);
this.rowReferences.push(0);
this.controlReferences.push(0);
for (var i=1; i<=intRowCount; i++)
{
this.rowReferences.push(i);
this.cellInfo[i]=new Array();
for (var j=0; j<objTable.rows[i].cells.length; j++)
{
var inputArray = objTable.rows[i].cells[j].getElementsByTagName('input');
if (!inputArray || !inputArray[0])
inputArray = objTable.rows[i].cells[j].getElementsByTagName('textarea');
var editControlID = '';
if (inputArray && inputArray[0])
editControlID=inputArray[0].id;
this.cellInfo[i][j]=new IPGridCell(this, editControlID);
}
this.controlReferences.push(i);
if (i % 2 !=0)
objTable.rows[i].className=strRowStyle;
else
objTable.rows[i].className=strAlternatingRowStyle;
}
}
else
{
this.rowReferences.push(0);
this.controlReferences.push(0);
for (var i=1; i<=intRowCount; i++)
{
this.rowReferences.push(i);
this.cellInfo[i]=new Array();
for (var j=0; j<objTable.rows[i].cells.length; j++)
{
var inputArray = objTable.rows[i].cells[j].getElementsByTagName('input');
if (!inputArray || !inputArray[0])
inputArray = objTable.rows[i].cells[j].getElementsByTagName('textarea');
var editControlID = '';
if (inputArray && inputArray[0])
editControlID=inputArray[0].id;
this.cellInfo[i][j]=new IPGridCell(this, editControlID);
}
this.controlReferences.push(i);
if (i % 2==0)
objTable.rows[i].className=strRowStyle;
else
objTable.rows[i].className=strAlternatingRowStyle;
}
}
IPSetHiddenRowsControl(this);
this.recordCount=intRowCount;
reorderRows(this);
if (clientPager !=null)
{
clientPager.init(blnFooterRowVisible, recordCountLabelId);
clientPager.showPageNav(strGridId + '_Pager', clientPagerDivId);
clientPager.showPage(1);
}
}
function IPGridViewGetRowIndex(gridData,cellControl)
{
var objElement=cellControl;
while (objElement && objElement.tagName.toLowerCase() != 'tr')
{
objElement=objElement.parentNode;
}
if (objElement)
return objElement.rowIndex;
return-1;
}
function IPSetHiddenRowsControl(gridData)
{
var objRowArray=null;
if (gridData.serverSidePaging && gridData.totalRecordCount>0)
{
objRowArray=new Array();
objRowArray.push(0);
for (var i=0; i<gridData.pageIndex; i++)
{
for (var j=0; j<gridData.pageSize; j++)
{
if (i>0 || j>0)
objRowArray.push(j+(i*gridData.pageSize));
}
}
for (var i=1; i<gridData.controlReferences.length; i++)
{
if (gridData.controlReferences[i]>0)
{
if (gridData.pageIndex>0)
objRowArray.push(gridData.controlReferences[i]+(gridData.pageSize*gridData.pageIndex)-1);
else
objRowArray.push(gridData.controlReferences[i]);
}
else
objRowArray.push(0);
}
for (var i=objRowArray.length; i<gridData.totalRecordCount-1; i++)
{
objRowArray.push(i);
}
}
else
{
objRowArray=gridData.controlReferences;
}
document.getElementById(gridData.hiddenRowsFieldId).value = objRowArray.join(',');
}
function IPGridCell(gridData, editControlID)
{
this.gridData=gridData;
this.editControlID=editControlID;
this.updateCellText=function(value)
{
if (gridData.callbackHandlerID)
{
var objReturnFunc=function(objXMLHTTP)
{
if (objXMLHTTP.responseText.charAt(0) == 's')
{
document.getElementById(editControlID).value=objXMLHTTP.responseText.substring(1);
}
}
ipjDoXmlHttpRequest(gridData.callbackHandlerID, document.forms['IronPointForm'].action,'UpdateCellValue=' + value, objReturnFunc);
}
}
}
function IPGridViewOptionButtonClick(controlArray, clickedIndex)
{
for (var i=0; i<controlArray.length; i++)
{
if (i !=clickedIndex)
{
controlArray[i].checked=false;
}
}
}
function IPGridViewAddRow(gridData)
{
if (gridData.maxRowCount>0)
{
if (gridData.footerRowVisible)
{
if (gridData.gridTable.rows.length-2>=gridData.maxRowCount)
{
alert('Maximum row limit has been reached');
return;
}
}
else
{
if (gridData.gridTable.rows.length-1>=gridData.maxRowCount)
{
alert('Maximum row limit has been reached');
return;
}
}
}
var newRow;
if (gridData.footerRowVisible)
newRow=gridData.gridTable.insertRow(gridData.gridTable.rows.length-1);
else
newRow=gridData.gridTable.insertRow(gridData.gridTable.rows.length);
var previousRow=null;
if (newRow.rowIndex>1)
previousRow=gridData.gridTable.rows[newRow.rowIndex-1];
for (var i=gridData.templateRowCells.length-1; i>=0; i--)
{
var objCell=newRow.insertCell(0);
objCell.innerHTML=gridData.templateRowCells[i].innerHTML.replace(/GridViewRowIndex/g,gridData.rowReferences.length);
if (gridData.templateRowCells[i].innerHTML.indexOf('ColorPicker') > -1)
{
allcolorboxes[allcolorboxes.length] = 'cbx_' + objCell.getElementsByTagName('input')[0].id;
var templateColorBox = document.getElementById('cbx_' + gridData.templateRowCells[i].getElementsByTagName('input')[0].id);
var previousColorBox=null;
if (previousRow !=null)
previousColorBox = document.getElementById('cbx_' + previousRow.cells[i].getElementsByTagName('input')[0].id);
var newColorBox=templateColorBox.cloneNode(false);
newColorBox.id=allcolorboxes[allcolorboxes.length-1];
var strHTML=templateColorBox.innerHTML;
newColorBox.innerHTML=strHTML.replace(/intDataIndex/g,gridData.rowReferences.length-1).replace(/intRowIndex/,gridData.rowReferences.length).replace(/GridViewRowIndex/g,gridData.rowReferences.length);
if (previousColorBox !=null)
previousColorBox.parentNode.insertBefore(newColorBox,previousColorBox.nextSibling);
else
templateColorBox.parentNode.insertBefore(newColorBox,templateColorBox.nextSibling);
}
var objInputs = objCell.getElementsByTagName('input');
if (objInputs && objInputs.length > 0 && objInputs[0].type == 'radio')
{
var objArrayName = objInputs[0].parentNode.attributes['arrayName'];
if (objArrayName)
{
var objArray=eval(objArrayName.nodeValue);
if (objArray)
{
objArray[gridData.rowReferences.length]=objInputs[0];
}
}
}
}
for (var i=gridData.templateRowCells.length-1; i>=0; i--)
{
newRow.cells[i].style.display=gridData.templateRowCells[i].style.display;
newRow.cells[i].style.width=gridData.templateRowCells[i].style.width;
}
newRow.id=gridData.templateRowId.replace(/GridViewRowIndex/g,gridData.rowReferences.length);
if (newRow.rowIndex % 2==0)
newRow.className=gridData.alternatingRowStyle;
else
newRow.className=gridData.rowStyle;
gridData.controlReferences.push(gridData.rowReferences.length);
gridData.rowReferences.push(newRow.rowIndex);
gridData.cellInfo[gridData.rowReferences.length-1]=new Array();
for (var j=0; j<newRow.cells.length; j++)
{
var inputArray = newRow.cells[j].getElementsByTagName('input');
if (!inputArray || !inputArray[0])
inputArray = newRow.cells[j].getElementsByTagName('textarea');
var editControlID = '';
if (inputArray && inputArray[0])
editControlID=inputArray[0].id;
gridData.cellInfo[gridData.rowReferences.length-1][j]=new IPGridCell(gridData, editControlID);
}
IPSetHiddenRowsControl(gridData);
gridData.recordCount=gridData.recordCount+1;
reorderRows(gridData);
return newRow;
}
function IPGridViewToggleRowCount(gridData, newCount)
{
newCount=Number(newCount);
var intDiff=newCount-gridData.recordCount;
if (intDiff>0)
{
for (var i=0; i<intDiff; i++)
{
IPGridViewAddRow(gridData);
}
}
if (intDiff<0)
{
intDiff=intDiff*-1;
for (var i=0; i<intDiff; i++)
{
var intIndex=0;
for (var j=0; j<gridData.rowReferences.length; j++)
{
if (gridData.rowReferences[j]==gridData.recordCount)
{
intIndex=j;
}
}
IPGridViewDeleteRow(gridData, intIndex);
}
}
}
function IPGridViewMoveRow(gridData, rowIndexFrom, rowIndexTo)
{
if (rowIndexFrom>rowIndexTo)
{
for (var i=rowIndexFrom; i>rowIndexTo; i--)
{
swapRows(gridData.gridTable, i, i-1);
var index1;
var index2;
for (var j=0; j<gridData.rowReferences.length; j++)
{
if (gridData.rowReferences[j]==i)
index1=j;
if (gridData.rowReferences[j]==i-1)
index2=j;
}
var temp=gridData.rowReferences[index1];
gridData.rowReferences[index1]=gridData.rowReferences[index2];
gridData.rowReferences[index2]=temp;
temp=gridData.controlReferences[i];
gridData.controlReferences[i]=gridData.controlReferences[i-1];
gridData.controlReferences[i-1]=temp;
}
}
else
{
for (var i=rowIndexFrom; i<rowIndexTo; i++)
{
swapRows(gridData.gridTable, i, i+1);
var index1;
var index2;
for (var j=0; j<gridData.rowReferences.length; j++)
{
if (gridData.rowReferences[j]==i)
index1=j;
if (gridData.rowReferences[j]==i+1)
index2=j;
}
var temp=gridData.rowReferences[index1];
gridData.rowReferences[index1]=gridData.rowReferences[index2];
gridData.rowReferences[index2]=temp;
temp=gridData.controlReferences[i];
gridData.controlReferences[i]=gridData.controlReferences[i+1];
gridData.controlReferences[i+1]=temp;
}
}
IPSetHiddenRowsControl(gridData);
reorderRows(gridData);
if (gridData.callbackOnReorder)
{
IPGridViewCallback(gridData.callerId, gridData.containerId, "RowReorder", gridData.waitPanelID);
}
}
function IPGridViewDeleteRow(gridData, rowIndex)
{
var intDeletedIndex=gridData.rowReferences[rowIndex];
gridData.gridTable.deleteRow(gridData.rowReferences[rowIndex]);
gridData.rowReferences[rowIndex]=0;
var objControlReferences=gridData.controlReferences;
gridData.controlReferences=new Array();
for (var i=0; i<intDeletedIndex; i++)
gridData.controlReferences.push(objControlReferences[i]);
for (var i=intDeletedIndex+1; i<objControlReferences.length; i++)
gridData.controlReferences.push(objControlReferences[i]);
for (var i=0; i<gridData.rowReferences.length; i++)
{
if (gridData.rowReferences[i]>intDeletedIndex)
{
gridData.rowReferences[i]=gridData.rowReferences[i]-1;
var objRow=gridData.gridTable.rows[gridData.rowReferences[i]];
if (objRow.className==gridData.rowStyle)
objRow.className=gridData.alternatingRowStyle;
else
objRow.className=gridData.rowStyle;
}
}
IPSetHiddenRowsControl(gridData);
gridData.recordCount=gridData.recordCount-1;
reorderRows(gridData);
}
function IPGridViewSelectDeselectColumn(gridData, columnIndex, childColumns)
{
var rowRefs=gridData.rowReferences;
var blnAllSelected=true;
for (var i=1; i<rowRefs.length; i++)
{
if (rowRefs[i]>0)
{
var objRow=gridData.gridTable.rows[rowRefs[i]];
var objCell=objRow.cells[columnIndex];
var objCheckBox = objCell.getElementsByTagName('input')[0];
if (objCheckBox && !objCheckBox.checked && !objCheckBox.disabled)
{
blnAllSelected=false;
break;
}
}
}
for (var i=1; i<rowRefs.length; i++)
{
if (rowRefs[i]>0)
{
var objRow=gridData.gridTable.rows[rowRefs[i]];
var objCell=objRow.cells[columnIndex];
var objCheckBox = objCell.getElementsByTagName('input')[0];
if (objCheckBox && !objCheckBox.disabled)
{
objCheckBox.checked=!blnAllSelected;
IPGridViewToggleChildColumns(gridData, i, childColumns, objCheckBox.checked)
}
}
}
}
function IPGridViewToggleChildColumns(gridData, rowIndex, childColumns, checked)
{
if (childColumns)
{
var rowRefs=gridData.rowReferences;
var objRow=gridData.gridTable.rows[rowRefs[rowIndex]];
for (var i=0; i<childColumns.length; i++)
{
var objCell=objRow.cells[Number(childColumns[i])];
var objCheckBox = objCell.getElementsByTagName('input')[0];
if (objCheckBox)
{
objCheckBox.disabled=!checked;
if (!checked) objCheckBox.checked=false;
}
}
}
}
function reorderRows(gridData)
{
if (gridData.orderColumn>0)
{
var rowRefs=gridData.rowReferences;
for (var i=1; i<rowRefs.length; i++)
{
if (rowRefs[i]>0)
{
var objRow=gridData.gridTable.rows[rowRefs[i]];
var objCell=objRow.cells[0];
if (gridData.orderColumn==1)
{
if (gridData.serverSidePaging)
objCell.innerHTML = '' + (objRow.rowIndex + (gridData.pageSize * gridData.pageIndex));
else
objCell.innerHTML = '' + objRow.rowIndex;
}
else
objCell.innerHTML=getRowOrderHTML(gridData,objRow.rowIndex,gridData.recordCount,gridData.lockedRowCount);
}
}
}
if (ipjIsIE && gridData.maxHeight>0)
{
setTimeout("setPanelSize(" + gridData.name + ")",0);
}
}
function setPanelSize(gridData)
{
var objContainer=document.getElementById(gridData.scrollingPanelID);
var objPaddingCell = document.getElementById(gridData.scrollingPanelID.replace('_ScrollingPanel','_PaddingCell'));
if (objContainer.scrollHeight>gridData.maxHeight)
{
objContainer.style.height = '' + gridData.maxHeight + 'px';
objPaddingCell.style.display = '';
}
else
{
objContainer.style.height = 'auto';
objPaddingCell.style.display = 'none';
}
}
function getRowOrderHTML(gridData, rowIndex, count, lockedRowCount)
{
var intUpArrowTo=rowIndex-1;
var intOrder=rowIndex;
var intDownArrowTo=rowIndex+1;
rowIndex--;
var strLead = '<table class="ipb-no" cellspacing="0" cellpadding="0"><tr><td><table class="ipb-no" cellSpacing="0" cellPadding="0" width="10">';
var strMidRow = '<tr><td>' + gridData.rowIconH2 + '</td></tr>';
var strOrderNumLink = '<input type=\"text\" ALT=\"Click to edit\"  TITLE=\"Click to edit\" onkeypress=\"return lockField(event);\"'
+ 'onblur=\"return indexOnBlur(' + gridData.name + ', this,' + intOrder + ',' + count + ',' + lockedRowCount + ');\"'
+ 'onmouseover=\"indexOnMouseOver(this);\" onclick=\"indexOnClick(this);\" style=\"background-color:Transparent;border-width:0px;border-style:None;width:20px;\" value=\"' + intOrder + '\">';
var strDisabledOrderNumLink = '<input type=\"text\"'
+ 'onmouseover=\"indexOnMouseOver(this);\" style=\"background-color:Transparent;border-width:0px;border-style:None;width:20px;\" value=\"' + intOrder + '\" READONLY>';
var strTail = '</td></tr></table>';
count--;
if((rowIndex==0 || rowIndex==lockedRowCount) && (rowIndex!=count) && (rowIndex>lockedRowCount-1))
{
return strLead+
'<tr><td>' + gridData.rowIconH9 + '</td></tr>' +
strMidRow+
"<tr><td><A class=\"ipb\" href=\"javascript:IPGridViewMoveRow(" + gridData.name + ", " + intOrder + ", " + intDownArrowTo + ");\">" + gridData.rowDownIcon + "</A></td></tr>" +
"</table></td><td width=\"8\">&nbsp;</td><td>" + strOrderNumLink + strTail;
}
else
{
if((rowIndex!=0) && (rowIndex!=count) && (rowIndex>lockedRowCount-1))
{
return strLead+
"<tr><td><A class=\"ipb\" href=\"javascript:IPGridViewMoveRow(" + gridData.name + ", " + intOrder + ", " + intUpArrowTo + ");\">" + gridData.rowUpIcon + "</td></tr>" +
strMidRow+
"<tr><td><A class=\"ipb\" href=\"javascript:IPGridViewMoveRow(" + gridData.name + ", " + intOrder + ", " + intDownArrowTo + ");\">" + gridData.rowDownIcon + "</td></tr>" +
"</table></td><td width=\"8\">&nbsp;</td><td>" + strOrderNumLink + strTail;
}
else
{
if((rowIndex!=0) && (rowIndex==count) && (rowIndex>lockedRowCount))
{
return strLead+
"<tr><td><A class=\"ipb\" href=\"javascript:IPGridViewMoveRow(" + gridData.name + ", " + intOrder + ", " + intUpArrowTo + ");\">" + gridData.rowUpIcon + "</td></tr>" +
strMidRow+
"<tr><td>&nbsp;</td></tr>" +
"</table></td><td width=\"8\">&nbsp;</td><td>" + strOrderNumLink + strTail;
}
else
{
return strLead+
'<tr><td></td></tr>' + strMidRow +
"<tr><td></td></tr>" + "</table></td><td width=\"8\">&nbsp;</td><td>" + strDisabledOrderNumLink + strTail;
}
}
}
}
function indexOnMouseOver(textBox)
{
textBox.style.cursor='pointer';
}
function limitToNumbers(e)
{
return ipKeyRestrict(e, '1234567890', true, this);
}
function lockField(e)
{
return false;
}
function indexOnClick(textBox)
{
textBox.style.backgroundColor='white';
textBox.select();
textBox.onkeypress=limitToNumbers;
}
function indexOnBlur(gridData, textBox, originalIndex, rowCount, lockedRowCount)
{
textBox.style.backgroundColor='Transparent';
textBox.onkeypress=lockField;
var intValue=Number(textBox.value);
if (intValue<=0 || intValue>rowCount || intValue<=lockedRowCount)
{
alert('Invalid index.');
textBox.value=originalIndex;
return false;
}
if (intValue !=originalIndex)
{
IPGridViewMoveRow(gridData, originalIndex, intValue);
}
return true;
}
function swapRows(table, rowIndex1, rowIndex2)
{
if (table && table.rows && rowIndex1 !=rowIndex2)
{
if (ipjIsIE)
{
rowIndex1=Number(rowIndex1);
rowIndex2=Number(rowIndex2);
var row1=table.rows[rowIndex1];
var row2=table.rows[rowIndex2];
for (var i=0; i<row1.cells.length; i++)
{
var tempHTML=row1.cells[i].innerHTML
row1.cells[i].innerHTML=row2.cells[i].innerHTML;
row2.cells[i].innerHTML=tempHTML;
}
}
else
{
var i=Number(rowIndex1);
var j=Number(rowIndex2);
if (i>j)
{
var iTemp=i;
i=j;
j=iTemp;
}
var trs=table.rows;
if(i==j+1)
table.tBodies[0].insertBefore(trs[i], trs[j]);
else if(j==i+1)
table.tBodies[0].insertBefore(trs[j], trs[i]);
else
{
var tmpNode=table.tBodies[0].replaceChild(trs[i], trs[j]);
if(typeof(trs[i]) != "undefined")
table.tBodies[0].insertBefore(tmpNode, trs[i]);
else
table.appendChild(tmpNode);
}
}
}
}
function IPGridPager(tableName, itemsPerPage, recordLabelText, prevLabelText, nextLabelText)
{
this.inited=false;
this.tableName=tableName;
this.itemsPerPage=itemsPerPage;
this.currentPage=1;
this.pages=0;
if ((prevLabelText==null) || (prevLabelText.length==0)){
this.prevText = 'Prev';
}else{
this.prevText=prevLabelText;
}
if ((nextLabelText==null) || (nextLabelText.length==0)){
this.nextText = 'Next';
}else{
this.nextText=nextLabelText;
}
this.showRecords=function(from, to){
var rows=document.getElementById(tableName).rows;
var intLength=rows.length;
if (this.footerRowVisible)
intLength--;
for (var i=1; i<intLength; i++){
if (i<from || i>to)
rows[i].style.display = 'none';
else
rows[i].style.display = '';
}
}
this.showPage=function(pageNumber){
if (! this.inited){
alert("not inited");
return;
}
var oldPageAnchor = document.getElementById('pg'+this.currentPage);
oldPageAnchor.className = 'pg-normal';
this.currentPage=pageNumber;
var newPageAnchor = document.getElementById('pg'+this.currentPage);
newPageAnchor.className = 'pg-selected';
var from=(pageNumber-1) * itemsPerPage+1;
var to=from+itemsPerPage-1;
if (to>this.recordCount)
to=this.recordCount;
this.showRecords(from, to);
var recordCountLabel=document.getElementById(this.recordCountLabelId);
if (recordCountLabel !=null){
if ((recordLabelText==null) || (recordLabelText.length==0)){
recordLabelText = 'Records {0} to {1} of {2}';
}
recordCountLabel.innerHTML = recordLabelText.replace('{0}', from).replace('{1}', to).replace('{2}', this.recordCount);
}
this.showPageNav(this.pagerName, this.pagerPositionId);
}
this.prev=function(){
if (this.currentPage>1)
this.showPage(this.currentPage-1);
}
this.next=function(){
if (this.currentPage<this.pages){
this.showPage(this.currentPage+1);
}
}
this.init=function(footerVisible, recordCountLabelId){
var rows=document.getElementById(tableName).rows;
this.recordCount=(rows.length-1);
if (footerVisible)
this.recordCount=this.recordCount-1;
this.pages=Math.ceil(this.recordCount/itemsPerPage);
this.recordCountLabelId=recordCountLabelId;
this.footerRowVisible=footerVisible;
this.inited=true;
}
this.showPageNav=function(pagerName, positionId){
if (! this.inited){
alert("not inited");
return;
}
this.pagerName=pagerName;
this.pagerPositionId=positionId;
var element=document.getElementById(positionId);
var pagerHtml;
if (this.currentPage>1)
pagerHtml = '<a href="javascript:void(0);" onclick="' + pagerName + '.prev();"> &#171 ' + this.prevText + ' </a> | ';
else
pagerHtml = '<span> &#171 ' + this.prevText + ' </span> | ';
for (var page=1; page<=this.pages; page++){
if (page !=this.currentPage)
pagerHtml += '<a href="javascript:void(0);" id="pg' + page + '" onclick="' + pagerName + '.showPage(' + page + ');">' + page + '</a> | ';
else
pagerHtml += '<span id="pg' + page + '">' + page + '</span> | ';
}
if (this.currentPage<this.pages)
pagerHtml += '<a href="javascript:void(0);" onclick="'+pagerName+'.next();" class="pg-normal"> ' + this.nextText + ' &#187;</a>';
else
pagerHtml += '<span> ' + this.nextText + ' &#187;</span>';
element.innerHTML=pagerHtml;
}
}
function IPGridViewGetAddButton(gridID){
var inputElms=document.getElementById(gridID+"_ctlIPGridView").getElementsByTagName("INPUT");
for (var i=0; i<inputElms.length; i++){
if (inputElms[i].type=="submit" && inputElms[i].value=="Add") {
return inputElms[i];
break;
}
}
return null;
}
function IPGridViewGetTableRows(gridID){
return document.getElementById(gridID+"_ctlIPGridView").getElementsByTagName("TR");
}
function IPGridViewGetCellInput(tableRow,columnName){
var columnRegExp=new RegExp(columnName+"_","gi");
var rowInputElms=tableRow.getElementsByTagName("INPUT");
for (var i=0; i<rowInputElms.length; i++){
if (rowInputElms[i].id.match(columnRegExp)){
return rowInputElms[i];
}
}
return null;
}
function IPGridViewDisableDelete(tableRow){
var cellElms=tableRow.getElementsByTagName("TD");
cellElms[cellElms.length-1].innerHTML=""; //assumes the last column is the "Delete" column
}
function IPGridViewCallback(callerID, containerID, args, waitPanelID)
{
var updatePanel=document.getElementById(containerID);
var waitPanel=document.getElementById(waitPanelID);
waitPanel.style.width=updatePanel.offsetWidth;
waitPanel.style.height=updatePanel.offsetHeight;
updatePanel.style.display = 'none';
if (ipjIsIE)
waitPanel.style.display = '';
else
waitPanel.style.display = 'table';
var onServerResponse=function(objXMLHTTP)
{
if (objXMLHTTP.responseText.charAt(0) == 's')
{
var divider = objXMLHTTP.responseText.indexOf('[break]');
updatePanel.innerHTML=objXMLHTTP.responseText.substring(1, divider);
updatePanel.style.display = 'none';
var scriptToRun=objXMLHTTP.responseText.substring(divider+7);
if (scriptToRun && scriptToRun.length>0)
window.setTimeout(scriptToRun, 0);
window.setTimeout('document.getElementById(\'' + waitPanelID + '\').style.display = \'none\';', 1);
window.setTimeout('document.getElementById(\'' + containerID + '\').style.display = \'\';', 2);
}
}
ipjDoXmlHttpRequest(callerID, document.forms['IronPointForm'].action, args, onServerResponse);
}