// JavaScript Document
<!--


function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_callSearchSalesReps(page,x,y) { //v3.0
  if(page=='contact'){
        self.location = '/portal/page/portal/home/contact?product_line='+x+'&state='+y;
  }else{
      self.location = '/portal/page/portal/home/contact/sales_reps?product_line='+x+'&state='+y;
  }
}

/*
Derived from a script by Alejandro Gervasio.
Modified to work in FireFox by Stefan Mischook for Killersites.com
How it works: just apply the CSS class of 'column' to your pages' main columns.
*/
matchColumns=function(){
     var divs,contDivs,maxHeight,divHeight,d;
     // get all <div> elements in the document
     divs=document.getElementsByTagName('div');
     contDivs=[];
     // initialize maximum height value
     maxHeight=0;
     // iterate over all <div> elements in the document
     for(var i=0;i<divs.length;i++){
          // make collection with <div> elements with class attribute 'container'
          if(/\bcolumn\b/.test(divs[i].className)){
                d=divs[i];
                contDivs[contDivs.length]=d;
                // determine height for <div> element
                if(d.offsetHeight){
                     divHeight=d.offsetHeight;
                }
                else if(d.style.pixelHeight){
                     divHeight=d.style.pixelHeight;
                }
                // calculate maximum height
                maxHeight=Math.max(maxHeight,divHeight);
          }
     }
     // assign maximum height value to all of container <div> elements
     for(var i=0;i<contDivs.length;i++){
          contDivs[i].style.height=maxHeight + "px";
     }
}

// Runs the script when page loads
window.onload=function(){
     if(document.getElementsByTagName){
          matchColumns();
     }
}

function getTextFieldValue(inputType,inputName)
{
        var inputNodes = document.getElementsByTagName('input');
        var inputValue = "";
        var i = 0;
        var inputFound = false;
        while ((i < inputNodes.length) && !inputFound)
        {
                if ((inputNodes[i].type==inputType) && (inputNodes[i].name==inputName))
                {
                        try{
                                inputValue = inputNodes[i].value;
                        }catch(Err){
                                inputValue = "Error";
                        }
                        inputFound = true;
                }
                i++;
        }
        return inputValue;
}

function makeSearch(){
        //alert('make search');
        var searchTermNode = document.getElementsByTagName('input');
        var searchTerm = "temp";
        searchTerm = getTextFieldValue('text','searchboxepson')
        //alert('SearchTerm:'+searchTerm);

        var searchboxOptionsNode = document.getElementsByTagName('select');
        var searchCat="ALL";
        var searchCatIndex = 0;
        for(var i=0; i < searchboxOptionsNode.length; i++)
        {
                //alert('dropdown boxes found');
                if (searchboxOptionsNode[i].name == "search")
                {
                        //alert('found search dropdown box');
                        try{
                                searchCatIndex = searchboxOptionsNode[i].selectedIndex;
                        }catch(Err){
                                searchCatIndex = 0;
                        }
                        //alert('SearchCatIndex:'+searchCatIndex);
                        try{
                                searchCat = searchboxOptionsNode[i].options[searchCatIndex].value;
                        }catch(Err){
                                searchCat = 'Error';
                        }
                        //alert('SearchCategory:'+searchCat);
                }
        }
        //var searchCatIndex = document.searchForm.search.selectedIndex;
        //var searchCat=document.searchForm.search.options[searchCatIndex].value;
        var searchUrl = '/portal/page/portal/home/search?searchCategory='+searchCat
+'&searchTerm='+searchTerm;
        //alert('SearchUrl:'+searchUrl);
        self.location =searchUrl;
}

function swapClass(){
 var i,x,tB,j=0,tA=new Array(),arg=swapClass.arguments;
if(document.getElementsByTagName){for(i=4;i<arg.length;i++){tB=document.getElementsByTagName(arg[i]);
for(x=0;x<tB.length;x++){tA[j]=tB[x];j++;}}for(i=0;i<tA.length;i++){
if(tA[i].className){if(tA[i].id==arg[1]){if(arg[0]==1){
tA[i].className=(tA[i].className==arg[3])?arg[2]:arg[3];}else{tA[i].className=arg[2];
}
}else if(arg[0]==1 && arg[1]=='none'){if(tA[i].className==arg[2] ||
tA[i].className==arg[3]){
tA[i].className=(tA[i].className==arg[3])?arg[2]:arg[3];}
}else if(tA[i].className==arg[2]){tA[i].className=arg[3];}}}}
}

function writeStyles(a){
 var tS="<sty"+"le type=\"text/css\">";
 tS+="\n"+a+"\n<"+"/sty"+"le>";document.write(tS);
}
writeStyles('.closed ul{display:none;}.open ul{display:block;}.closed2 ul{display:none;}.open2 ul{display:block;}.closed3 ul {display:none;}.open3 ul{display:block;}');

var xmlDoc;
var prodGroupStyle;

function backToTopOfPage()
{
        //alert('backtoTopOfPage function');
        var currentPageUrl = location.href.replace('#top','');
        currentPageUrl = currentPageUrl.replace('#resources','');
        //alert('CurrentPage:'+currentPageUrl);
        self.location = currentPageUrl+"#top";
}

function moveToResources()
{
        //alert('backtoTopOfPage function');
        var currentPageUrl = location.href.replace('#resources','');
        currentPageUrl = currentPageUrl.replace('#top','');
        //alert('CurrentPage:'+currentPageUrl);
        self.location = currentPageUrl+"#resources";
}

function ReRequest(urltemp1)
{
        url=urltemp1;
        //alert("URLNow:"+url);
        MakeRequest();
}
function ReRequestSort()
{
        //alert("ReRequestSortURL:"+urltemp);
        ReRequest(urltemp);
}

//tofilter
function Filter()
{
        filterColumnsStr = "";
        //alert('Filter');

        var checkelements = document.getElementsByTagName("input");
        for(var i=0;i<checkelements.length;i++){
                if(checkelements[i].type=="checkbox" && checkelements[i].checked && (checkelements[i].name.indexOf("filterCB")!=-1)){
                                //alert(checkelements[i].name+" ("+i+") is clicked");
                                //hiddenColumnsStr = hiddenColumnsStr + checkelements[i].name+" ";
                                filterColumnsStr  = filterColumnsStr  + checkelements[i].value + ";";

                }
        }

        var urltemp = "/EpsonSeriesModelsPortlet/getSeriesModelsServlet?fromSession=true&seriesName="+series+"&filterCriteria="+filterColumnsStr;

        //alert("url:"+urltemp);
        ReRequest(urltemp);
}

function ClearFilter()
{
        filterColumnsStr = "";
        //alert('Filter');

        var checkelements = document.getElementsByTagName("input");
        for(var i=0;i<checkelements.length;i++){
                if(checkelements[i].type=="checkbox" && checkelements[i].checked && (checkelements[i].name.indexOf("filterCB")!=-1)){
                                //alert(checkelements[i].name+" ("+i+") is clicked");
                                //hiddenColumnsStr = hiddenColumnsStr + checkelements[i].name+" ";
                                checkelements[i].checked = false;
                }
        }

        var urltemp = "/EpsonSeriesModelsPortlet/getSeriesModelsServlet?fromSession=true&seriesName="+series;

        //alert("url:"+urltemp);
        ReRequest(urltemp);
}

//To get hidden columns list.
function CheckBoxClickedEventHandler()
{
        hiddenColumnsStr = "";
        count = 0;
        var checkelements = document.getElementsByTagName("input");
        /*for(i=0;i<document.Form1.length;i++){
                if(document.Form1[i].type=="checkbox" && document.Form1[i].checked){
                                //alert(document.Form1[i].name+" ("+i+") is clicked");
                                hiddenColumnsStr = hiddenColumnsStr + document.Form1[i].name+" ";
                }
        }*/
        for(var i=0;i<checkelements.length;i++){
                if(checkelements[i].type=="checkbox" && checkelements[i].checked && (checkelements[i].name.indexOf("cbox")!=-1)){
                                //alert(checkelements[i].name+" ("+i+") is clicked");
                                hiddenColumnsStr = hiddenColumnsStr + checkelements[i].name+" ";
                }
        }
        //document.Form1.hiddenColumns.value = hiddenColumnsStr;
        //alert("hiddenColumns:"+hiddenColumnsStr);
}

function ChangeColumnVisibility(strVisibility, intColumnNumber)
{
        var tableId = prodGroupStyle+"_table_header";
        //alert('tableId:'+tableId);
        if(navigator.product == "Gecko" && navigator.productSub && navigator.productSub > "20041010" && (navigator.userAgent.indexOf("rv:1.8") != -1 || navigator.userAgent.indexOf("rv:1.9") != -1))
        // Mozilla 1.8alpha; see bug 76497 and bug 242368; must be higher than 1.7.x
        {
                //alert('navigator gecko loop');
                var ColumnCollection = document.getElementById(tableId).getElementsByTagName("col");
                ColumnCollection[intColumnNumber].style.visibility = strVisibility;
        }
        else if(document.all) //&& !window.opera && document.compatMode && document.compatMode == "CSS1Compat")
        {
                //alert('document all');
                var ColumnCollection = document.getElementById(tableId).getElementsByTagName("col");
                if(strVisibility == "visible")
                {
                        ColumnCollection[intColumnNumber].style.display = "block";
                }
                else if(strVisibility == "collapse")
                {
                        ColumnCollection[intColumnNumber].style.display = "none";
                };
        }
        else if(document.addEventListener) // Mozilla and Opera 7.x
        {
                //alert('document addeventlistener changed loop');
                var TDCollection = document.getElementById(tableId).getElementsByTagName("td");
                for(var CellIterator = 0; CellIterator < TDCollection.length; CellIterator += 1)
                {
                        var tempNode= TDCollection[CellIterator];
                        var rootNode = tempNode.parentNode.parentNode.parentNode;
                        if (rootNode.id==tableId)
                        {
                                //alert('CellIterator:'+CellIterator);
                                if (tempNode.getAttribute('columnNumber')==intColumnNumber)
                                {
                                        if(strVisibility == "visible")
                                        {
                                                tempNode.style.display = "table-cell";
                                        }
                                        else if(strVisibility == "collapse")
                                        {
                                                tempNode.style.display = "none";
                                        }
                                }
                        }
                        //else
                                //alert('CellIterator:'+CellIterator+'root node is:'+rootNode.id);
                }
        }
}

//function to hide columns
function HideColumns()
{
        //alert("HideColumns");
        //var hidcols="";
        //alert("hiddenColumns in HideColumns:"+hiddenColumnsStr);
        if ((hiddenColumnsStr != null) && (hiddenColumnsStr != ""))
        {
                var temp = hiddenColumnsStr.split(' ');
                //alert('Length:'+(temp.length-1));
                var colnumber;
                //colnumber[1] represents the column number
                for(var k = 0;k < temp.length-1; k++)
                {
                        //alert("item:"+k+":"+temp[k]);
                        colnumber = temp[k].split('_');
                        //alert('ColumnNumber:'+colnumber[1]);
                        ChangeColumnVisibility('collapse',colnumber[1]);
                        //alert("Column invisiblity item:"+k+":"+temp[k]);
                }
        }
}

function Hide()
{
       //alert("Hide");
        CheckBoxClickedEventHandler();
        HideColumns();
        //alert('Finish Hide');
}

function UnHideColumns()
{
        var temp = hiddenColumnsStr.split(' ');
        //alert('length:'+(temp.length-1));
        //alert('unhide columns');
        var colnumber;
        var cbox;
        var i;
        for (i =0; i < temp.length-1; i++)
        {
                colnumber = temp[i].split('_');
                //alert(colnumber);
                //colnumber[1] represents the column number
                ChangeColumnVisibility('visible',colnumber[1]);
        }
        var checkelements = document.getElementsByTagName("input");
        for(i=0;i<checkelements.length;i++){
                if(checkelements[i].type=="checkbox" && checkelements[i].checked && (checkelements[i].name.indexOf("cbox")!=-1)){
                                //alert(checkelements[i].name+" ("+i+") is clicked");
                                checkelements[i].checked = false;
                }
        }


        /*for(i=0;i<document.Form1.length;i++){
                if(document.Form1[i].type=="checkbox"){
                                document.Form1[i].checked=false;
                }
        }*/

        hiddenColumnsStr = "";
}

//Create image Node
function CreateImageNode(psrc,palt,ptitle,palign,pvspace)
{
        var imgNode = document.createElement('IMG');
        /*imgNode.setAttribute('src',"images/carrot.orange.png");
        imgNode.setAttribute('alt',"sortAlt");
        imgNode.setAttribute('title',"sort");
        imgNode.setAttribute('align',"left");
        imgNode.setAttribute('vspace',"7");*/
        if (psrc != null){
                imgNode.src = psrc;
                //imgNode.setAttribute('src',psrc);
        }
        if (palt != null){
                imgNode.alt = palt;
                //imgNode.setAttribute('alt',palt);
        }
        if (ptitle != null){
                imgNode.title = ptitle;
                //imgNode.setAttribute('title',ptitle);
        }
        if (palign != null){
                imgNode.align = palign;
                //imgNode.setAttribute('align',palign);
        }
        if (pvspace != null){
                imgNode.vspace = pvspace;
                //imgNode.setAttribute('vspace',pvspace);
        }

        return imgNode;
}

function writebuttonHoverHide()
{
 MM_swapImage("hide","","/epson_images/button.hide.o.png",1);
}
function writebuttonHoverUnHide()
{
 MM_swapImage("unhide","","/epson_images/button.show.o.png",1);
}
//write buttons region
function WriteButtonRegion()
{
        //alert("Begin ButtonRegion");
        var divcontainer,anchor,image;

        divcontainer = document.createElement('div');
        divcontainer.className = "margin10";

        var buttonsTable = document.createElement('table');
        //alert('no buttonsback class yet');
        buttonsTable.className = "buttonsback";

        var tbody = document.createElement('tbody');
        var trow=document.createElement('tr');
        var tcol=document.createElement('td');
        tcol.align = "left";

        //divcontainer.setAttribute('class',"margin10");
        anchor = document.createElement('a');
        //anchor.onClick = "HideColumns();";
        //anchor.setAttribute('href',"javascript:Hide();");
        //anchor.setAttribute('href',"#");
        //anchor.setAttribute('onMouseOut',"MM_swapImgRestore();return false");
        anchor.onmouseout = MM_swapImgRestore;
        anchor.onmouseover = writebuttonHoverHide;
        anchor.onclick = Hide;
      //anchor.setAttribute('onMouseOver',"MM_swapImage(\'hide\',\'\',\'/epson_images/button.hide.o.png\',1);return false");
        //anchor.setAttribute('onClick',"Hide();return false");

        image = CreateImageNode("/epson_images/button.hide.png","hide selected columns","hide selected columns",null,null);
        image.name = "hide";
        image.width = "130";
        image.height = "19";
        image.border = "0";
        image.id = "hide";
        //image.setAttribute('name',"hide");
        //image.setAttribute('width',"130");
        //image.setAttribute('height',"19");
        //image.setAttribute('border',"0");
        //image.setAttribute('id',"hide");
        //image.setAttribute('onClick',"HideColumns();");
        anchor.appendChild(image);
        //divcontainer.appendChild(anchor);
        tcol.appendChild(anchor);


        image = CreateImageNode("/epson_images/spacer.png","spacer","spacer",null,null);
        image.width="20";
        //divcontainer.appendChild(image);
        tcol.appendChild(image);

        anchor = document.createElement('a');
        //anchor.onClick = "HideColumns();";
        //anchor.setAttribute('href',"javascript:void(0);");
        anchor.onmouseout = MM_swapImgRestore;
        anchor.onmouseover = writebuttonHoverUnHide;
        anchor.onclick = UnHideColumns;
        //anchor2.setAttribute('onMouseOut',"MM_swapImgRestore();return false");
        //anchor2.setAttribute('onMouseOver',"MM_swapImage(\'hide\',\'\',\'/epson_images/button.hide.o.png\',1);return false");
        //anchor2.setAttribute('onClick',"UnHideColumns();return false");

        image = CreateImageNode("/epson_images/button.show.png","unhide columns","unhide columns",null,null);
        image.name = "unhide";
        image.width = "130";
        image.height = "19";
        image.border = "0";
        image.id = "unhide";
        //image2.setAttribute('name',"unhide");
        //image2.setAttribute('width',"130");
        //image2.setAttribute('height',"19");
        //image2.setAttribute('border',"0");
        //image2.setAttribute('id',"unhide");
        anchor.appendChild(image);
        //divcontainer.appendChild(anchor);
        tcol.appendChild(anchor);


        image = CreateImageNode("/epson_images/spacer.png","spacer","spacer",null,null);
        image.width="20";
        tcol.appendChild(image);


        anchor = document.createElement('a');
        anchor.href = "javascript:moveToResources();";
        var data_Node = document.createTextNode('Go To Resources Section');
        anchor.appendChild(data_Node);

        var spanClass = document.createElement('span');
        spanClass.className = "t7";
        spanClass.appendChild(anchor);
        tcol.appendChild(spanClass);

        trow.appendChild(tcol);
        tbody.appendChild(trow);
        buttonsTable.appendChild(tbody);

        //newEl.appendChild(divcontainer);
        newEl.appendChild(buttonsTable);
        //alert("End of WriteButton Region");
}

function CreateTableBody()
{
        //alert("this is new JS loaded with Files Nodes alert");
        var i,j,k;
        var baseFilePath ="/portal/pls/portal/docs/1/";
        var subTable,subTableBody,subTableRow,subTableCol,subTableRowAscending,subTableRowDescending;
        var navigationName = encodeURIComponent(getTextFieldValue('hidden','navigationNameField'));

        //create the table region
        table = document.createElement('TABLE');
        table.cellPadding = "3";
        //table.setAttribute('cellpadding',"3");
        table.cellSpacing = "0";
        //table.setAttribute('cellspacing',"0");
        //table.setAttribute('width',"580");
        //table.style.width = "580px";
        //table.height = "100%";
        table.className = prodGroupStyle+"_tableborder";
        //table.className = "td_tableborder";
        var tableId = prodGroupStyle+"_table_header";
        //table.id = "ModelsTable";
        table.id = tableId;
        //table.border = "1";
        //table.setAttribute('id',"ModelsTable");
        //table.setAttribute('class',"ic_tableborder");
        var printDivSection = document.createElement('div');
        printDivSection.id = "printSectionDiv";
        printDivSection.appendChild(table);
        newEl.appendChild(printDivSection);

        var x = xmlDoc.getElementsByTagName('DisplayField');
        //alert("DisplayFieldCount:"+x.length);
        colgroup = document.createElement('COLGROUP');
        for (j=0;j<x.length+1;j++){
                colNode = document.createElement('COL');
                colgroup.appendChild(colNode);
        }
        table.appendChild(colgroup);

        var tbody = document.createElement('TBODY');

        //var colNames = new Array();
        var colDisplayNames = new Array();

        table.appendChild(tbody);

        //declarations.
        var trow_Node,tcol_Node,anchor_Node,image_Node,chbox_Node,data_Node,trow_ascending_Node,trow_descending_Node,sortIconTable,sortIconTableBody,tcol_sort_Node;
        var sortFieldName,sortFieldType,urltemp;

        //Create a header....first row having checkbox, sort icon.
        //alert("Create Table Header");
        try{
                        trow_Node= document.createElement('TR');

                        //common first column
                        tcol_Node = document.createElement('TD');
                        //tcol_Node.setAttribute('align',"right");
                        tcol_Node.align = "right";
                        tcol_Node.setAttribute('columnNumber',"0");//columnNumber attribute used for hiding columns
                        sortFieldName = "Image";
                        sortFieldType = "text";
                        chbox_Node = document.createElement('INPUT');
                        //chbox_Node.setAttribute('name',"cbox_"+0+"_"+sortFieldName+"_"+sortFieldType);
                        chbox_Node.name = "cbox_"+0+"_"+sortFieldName+"_"+sortFieldType;
                        chbox_Node.type = "checkbox";
                        chbox_Node.value = "";
                        chbox_Node.title = "Check on to Hide";
                        //chbox_Node.setAttribute('type',"checkbox");
                        //chbox_Node.setAttribute('value',"");
                        //chbox_Node.setAttribute('title', "Check on to Hide");
                        //chbox_Node.setAttribute('onClick', "CheckBoxClickedEventHandler();");

                        subTable = document.createElement('table');
                        subTable.cellpadding = "0";
                        subTable.cellspacing = "1";
                        //subTable.className = prodGroupStyle+"_dotborder";
                        subTable.className = "td_dotborder";
                        subTable.border = "0";
                        subTableBody = document.createElement('tbody');
                        subTableRowAscending = document.createElement('tr');
                        subTableRowDescending = document.createElement('tr');

                        subTableCol = document.createElement('td');
                        img = CreateImageNode("/epson_images/spacer.png","spacer","spacer",null,null);
                        img.height = "10";
                        subTableCol.appendChild(img);
                        subTableRowAscending.appendChild(subTableCol);

                        subTableCol = document.createElement('td');
                        subTableCol.appendChild(chbox_Node);
                        subTableRowDescending.appendChild(subTableCol);
                        subTableBody.appendChild(subTableRowAscending);
                        subTableBody.appendChild(subTableRowDescending);
                        subTable.appendChild(subTableBody);


                        tcol_Node.appendChild(subTable);
                        trow_Node.appendChild(tcol_Node);
                        //var subColumnCount = 0;
                        for (j=0;j<x.length;j++){
                                var subColumns = x[j].getElementsByTagName('SubField');
                                colDisplayNameNode = x[j].getElementsByTagName('DisplayName');
                                var displayName = colDisplayNameNode[0].firstChild.nodeValue;
                                //alert("displayName:"+displayName);
                                colDisplayNames[j] = displayName;
                                tcol_Node = document.createElement('TD');
                                if(j==(x.length-1))
                                {
                                        //tcol_Node.className = prodGroupStyle+"_tableborder2";
                                        tcol_Node.className = "td_tableborder2";
                                }
                                //tcol_Node.setAttribute('align',"right");
                                tcol_Node.align = "right";
                                tcol_Node.setAttribute('columnNumber',j+1);//used for hding columns in netscape

                                subTable = document.createElement('table');
                                subTable.cellpadding = "0";
                                subTable.cellspacing = "1";
                                //subTable.className = prodGroupStyle+"_dotborder";
                                subTable.className = "td_dotborder";
                                subTable.border = "0";
                                subTableBody = document.createElement('tbody');
                                subTableRowAscending = document.createElement('tr');
                                subTableRowDescending = document.createElement('tr');
                                for (scindex=0;scindex < subColumns.length;scindex++)
                                {
                                        var sortNameNode = subColumns[scindex].getElementsByTagName('SortFieldName');
                                        var sortTypeNode = subColumns[scindex].getElementsByTagName('SortFieldType');
                                        //var colNameNode = subColumns[scindex].getElementsByTagName('Name');
                                        //var colDisplayNameNode = subColumns[scindex].getElementsByTagName('SortFieldDisplayName');
                                        //var colDisplayName = colDisplayNameNode[0].firstChild.nodeValue;
                                        //alert(sortNameNode.length);
                                        //alert(sortTypeNode.length);

                                        sortFieldName = sortNameNode[0].firstChild.nodeValue;
                                        sortFieldType = sortTypeNode[0].firstChild.nodeValue;
                                        //colDisplayNames[j] = colDisplayNameNode[0].firstChild.nodeValue;
                                        //colNames[subColumnCount] = colNameNode[0].firstChild.nodeValue;
                                        //subColumnCount++;
                                        //alert("SortField:"+sortFieldName+":SortType:"+sortFieldType);
                                        anchor_Node = document.createElement('a');
                                        urltemp = "/EpsonSeriesModelsPortlet/getSeriesModelsServlet?fromSession=true&seriesName="+series+"&filterCriteria="+filterColumnsStr+"&sortFieldName="+sortFieldName+"&sortFieldType="+sortFieldType+"&sortOrder=Descending";
                                        anchor_Node.href = "javascript:ReRequest(\""+urltemp+"\")";
                                        //anchor_Node.setAttribute('onClick',"ReRequest(\""+urltemp+"\");return false");
                                        var imgsource;
                                        if (prodGroupStyle == "td")
                                                imgsource = "/epson_images/carrot.blue";
                                        else
                                                imgsource = "/epson_images/carrot.orange";

                                        image_Node = CreateImageNode(imgsource+".png","sortAlt","sort Descending","left","7");
                                        anchor_Node.appendChild(image_Node);
                                        subTableCol = document.createElement('td');
                                        subTableCol.align = "center";
                                        subTableCol.appendChild(anchor_Node);
                                        subTableRowDescending.appendChild(subTableCol);

                                        anchor_Node = document.createElement('a');
                                        urltemp = "/EpsonSeriesModelsPortlet/getSeriesModelsServlet?fromSession=true&seriesName="+series+"&filterCriteria="+filterColumnsStr+"&sortFieldName="+sortFieldName+"&sortFieldType="+sortFieldType+"&sortOrder=Ascending";
                                        anchor_Node.href = "javascript:ReRequest(\""+urltemp+"\")";

                                        //anchor_Node.setAttribute('onClick',"ReRequest(\""+urltemp+"\");return false");

                                        image_Node = CreateImageNode(imgsource+".up.png","sortAlt","sort Ascending","left","7");

                                        anchor_Node.appendChild(image_Node);
                                        subTableCol = document.createElement('td');
                                        subTableCol.align = "center";
                                        subTableCol.appendChild(anchor_Node);
                                        subTableRowAscending.appendChild(subTableCol);

                                }
                                chbox_Node = document.createElement('INPUT');
                                //chbox_Node.setAttribute('id',sortFieldName);

                                //chbox_Node.setAttribute('name',"cbox_"+(j+1));
                                chbox_Node.name = "cbox_"+(j+1);
                                //+"_"+displayName.replace(' ','_'));
                                chbox_Node.type = "checkbox";
                                chbox_Node.value = "";
                                chbox_Node.title = "Check on to Hide "+displayName;
                                //chbox_Node.setAttribute('type',"checkbox");
                                //chbox_Node.setAttribute('value',"");
                                //chbox_Node.setAttribute('title', "Check on to Hide "+displayName);
                                //chbox_Node.setAttribute('onClick',"CheckBoxClicked();");
                                subTableCol = document.createElement('td');
                                subTableCol.align = "center";
                                subTableCol.rowspan = "2";
                                subTableCol.appendChild(chbox_Node);
                                subTableRowDescending.appendChild(subTableCol);
                                subTableBody.appendChild(subTableRowAscending);
                                subTableBody.appendChild(subTableRowDescending);
                                subTable.appendChild(subTableBody);
                                tcol_Node.appendChild(subTable);
                                trow_Node.appendChild(tcol_Node);
                }
        }catch(Err)
        {
                alert("Error:"+Err);
        }

        tbody.appendChild(trow_Node);

        trow_Node= document.createElement('TR');
        if (prodGroupStyle == "td")
                trow_Node.className = "t9";
        else
                trow_Node.className = "t8";
        //trow_Node.setAttribute('class',"t8");

        //common display column1
        tcol_Node = document.createElement('TD');
        tcol_Node.setAttribute('columnNumber',"0");
        //20090128 line changed here to display new header name for image to include key features.
        //data_Node = document.createTextNode("Image");
       data_Node = document.createTextNode("Key Features Image");
      
        tcol_Node.appendChild(data_Node);
    //new line of code added by Aruna
    tcol_Node.align = "center";
        trow_Node.appendChild(tcol_Node);

        //create the table column names.
        //alert("Create Table ColumnNames Row");
        for (j=0;j<x.length;j++){
                //      j=0;
                        tcol_Node = document.createElement('TD');
                        if(j==(x.length-1))
                        {
                                //tcol_Node.className = prodGroupStyle+"_tableborder2";
                                tcol_Node.className = "td_tableborder2";
                        }
                        tcol_Node.setAttribute('columnNumber',j+1);//used for hiding columns
                        data_Node = document.createTextNode(colDisplayNames[j]);
                        tcol_Node.appendChild(data_Node);
            //new line of code added here by aruna
            tcol_Node.align = "center";
                        trow_Node.appendChild(tcol_Node);
                }
        tbody.appendChild(trow_Node);

        //alert("Create Table Data rows-nowrap class with length < 15");

        y = xmlDoc.getElementsByTagName('ResultRecord');
        //alert("ResultSetCount:"+y.length);
        var attrib_value;
        var itemidNode;
        var itemid;
        var modelPageURL;
        var FilesNode;
        var files;
        var fileindex;
        var filerow,filecol;
        var fileType,fileDisplayName,filePath;
        //create the body of the table.
        try{
                for (j=0;j<y.length;j++){
                        trow_Node= document.createElement('TR');
                        trow_Node.className = "t2";
                        //trow_Node.setAttribute('class',"t2");
                        //trow_Node.setAttribute('id',"td_products");
                        //trow_Node.id = prodGroupStyle+"_products";
                        trow_Node.id = "td_products";

                        //first column.
                        tcol_Node= document.createElement('TD');
                        tcol_Node.setAttribute('columnNumber',"0");//used for hiding columns

                        imgDiv1 = document.createElement("div");
                        imgDiv1.className = "thum";
                        //imgDiv1.setAttribute('class',"thum");

                        //Model Image Modifications.
                        var modelimgNode = y[j].getElementsByTagName('ModelImage');
                        var modelImage;
                        try{
                                modelImage = modelimgNode[0].firstChild.nodeValue;
                        }catch(Err)
                        {
                                modelImage = "";
                        }
                        var imgsource;
                        var modelName;
                        var modelNameNode;

                        if (prodGroupStyle == 'td')
                                modelNameNode = y[j].getElementsByTagName('TP_Model');
                        else
                                modelNameNode = y[j].getElementsByTagName('IC_Model');

                        try{
                                modelName = modelNameNode[0].firstChild.nodeValue;
                        }catch(Err){
                                modelName = '';
                        }

                        if (modelImage == "")
                          imgsource = "/epson_images/image.product.ic.jpg";
                        else
                          imgsource = baseFilePath+modelImage;

                        //create the product image with width and height.
                        img = CreateImageNode(imgsource,modelName+" product image",modelName+" product image",null,null);
                        img.width = "75";
                        img.height = "75";

                        itemidNode = y[j].getElementsByTagName('ItemId');
                        itemid;
                        try{
                                itemid = itemidNode[0].firstChild.nodeValue;
                        }catch(Err){
                                itemid = 0;
                        }
                        modelPageURL = "/portal/page/portal/home/products/integrated_circuits/Model?itemid="+itemid+"&navigationName="+navigationName;

                        if (prodGroupStyle == "ic")
                        {
                                anchor_Node = document.createElement('a');
                                anchor_Node.href = modelPageURL;
                                anchor_Node.appendChild(img);
                                imgDiv1.appendChild(anchor_Node);
                        }
                        else
                        {
                                try{
                                        var dataSheetNode = y[j].getElementsByTagName('TPR_DataSheet');//hardcoded
                                        filePath = dataSheetNode[0].firstChild.nodeValue;
                                }catch(Err)
                                {
                                        filePath = '';
                                }
                                if (filePath != '')
                                {
                                        anchor_Node = document.createElement('a');
                                        anchor_Node.href = baseFilePath+filePath;
                                        img.title = modelName+' Product DataSheet';
                                        anchor_Node.appendChild(img);
                                        imgDiv1.appendChild(anchor_Node);

                                }else{
                                        imgDiv1.appendChild(img);
                                }
                        }

                        iconsDiv2 = document.createElement("div");
                        iconsDiv2.className = "icons";

                        // new code lines added to order the special icons

                        iconsDiv3 = document.createElement("div");
                        iconsDiv3.className = "t2";

                        // end add new code

			//start new lines added December 5 for url link at model level
                     
                        //iconsDiv4 = document.createElement("div");
                        //iconsDiv4.className = "t2";

                        //end new lines added December 5 for urllink at model level

                        //iconsTable = document.createElement("Table");
                        //iconsTable.cellSpacing = "0";
                        //iconsTable.setAttribute('cellspacing',"0");
                        //iconsTable.setAttribute('height',"150");
                        //iconsTable.cellPadding = "0";
                        //iconsTable.setAttribute('cellpadding',"0");
                        //iconsTable.setAttribute('border',"0");
                        //iconsTable.border = "0";
                        //iconsTable.height = "150";

                        try{
                                FilesNode = y[j].getElementsByTagName('Files');
                                files = FilesNode[0].getElementsByTagName('File');
                        }catch(Err)
                        {
                                alert('Error in getting Files:'+Err);
                                files = null;
                        }

                        //var imgsource="/epson_images/image.product.ic.jpg";
                        if ((files!=null) && (files.length !=0))
                        {
                                for(fileindex=0;fileindex < files.length; fileindex++)
                                {
                                        try{
                                                fileType = files[fileindex].getElementsByTagName('FileType')[0].firstChild.nodeValue;
                                        }catch(Err){
                                                fileType = "pdf";

                                        }

                                        try{
                                                fileDisplayName = files[fileindex].getElementsByTagName('FileDisplayName')[0].firstChild.nodeValue;
                                        }catch(Err){
                                                fileDisplayName = "Resource";
                                        }

                                        try{
                                                filePath = files[fileindex].getElementsByTagName('FilePath')[0].firstChild.nodeValue;
                                        }catch(Err){
                                                filePath = "";
                                        }
					//original line of code commented on December 3
                                        //if (fileType!="image")

					//start new line of code added December 3

                                        if ( (fileType!="image") && (fileType!="url") )
					//end new line of code added December 3
                                        {
                                        anc = document.createElement('a');
                                        anc.href = baseFilePath+filePath;
                                        anc.target="_blank";
                                        img = CreateImageNode("/epson_images/icon."+fileType.toLowerCase()+".png",fileDisplayName,fileDisplayName,null,null);
                                        anc.appendChild(img);
                                        iconsDiv2.appendChild(anc);
                                        }

					//new code added December 3 for URL links at model level
                                        if (fileType =="url")
                                        {
                                        anc = document.createElement('a');
                                        anc.href = filePath;
                                        anc.target="_blank";
                                    img = CreateImageNode("/epson_images/icon.urlnew.png",fileDisplayName,fileDisplayName,null,null);
                                    //img = CreateImageNode("/epson_images/icon.url.png",fileDisplayName,fileDisplayName,null,null);
                                        anc.appendChild(img);
                                        iconsDiv2.appendChild(anc);
                                      }
				      //end new code added December 2 for URL links at model level


                                }
                        }

                        if (prodGroupStyle == "ic")
                        {
                                //alert('MACROS ICON');
                                var macrosNode = y[j].getElementsByTagName('Macros');
                                var packagesNode = y[j].getElementsByTagName('Packages');
                                var macrosString = "";
                                var packagesString = "";
                                try{
                                        macrosString = macrosNode[0].firstChild.nodeValue;
                                }catch(Err){
                                        macrosString = "";
                                }
                                try{
                                        packagesString = packagesNode[0].firstChild.nodeValue;
                                }catch(Err){
                                        packagesString = "";
                                }

                                if (macrosString != "")
                                {
                                        anc = document.createElement('a');
                                        anc.href = modelPageURL;
                                        img = CreateImageNode("/epson_images/icon.ic_macros.png",modelName+" Macros",modelName+" Macros",null,null);
                                        anc.appendChild(img);
                                        iconsDiv2.appendChild(anc);
                                }
                                if (packagesString != "")
                                {
                                        anc = document.createElement('a');
                                        anc.href = modelPageURL;
                                        img = CreateImageNode("/epson_images/icon.ic_packages.png",modelName+" Packages",modelName+" Packages",null,null);
                                        anc.appendChild(img);
                                        iconsDiv2.appendChild(anc);
                                }
                        }else if (prodGroupStyle == "td"){
                                try{
                                        FilesNode = y[j].getElementsByTagName('SpecialFiles');
                                        files = FilesNode[0].getElementsByTagName('File');
                                }catch(Err)
                                {
                                        files = null;
                                }
                                if ((files!=null) && (files.length !=0))
                                {
                                        //alert('Special files count:'+files.length);
                                        for(fileindex=0;fileindex < files.length; fileindex++)
                                        {
                                                try{
                                                        fileType = files[fileindex].getElementsByTagName('FileType')[0].firstChild.nodeValue;
                                                }catch(Err){
                                                        fileType = "";

                                                }

                                                try{
                                                        fileDisplayName = files[fileindex].getElementsByTagName('FileDisplayName')[0].firstChild.nodeValue;
                                                }catch(Err){
                                                        //fileDisplayName = "Error in Javascript Resource DisplayName";
                                                          fileDisplayName = "RoHS";
                                                }

                                                try{
                                                        filePath = files[fileindex].getElementsByTagName('FilePath')[0].firstChild.nodeValue;
                                                }catch(Err){
                                                        filePath = "";
                                                }

                                                // code edited here to remove the href reference for rohs, leadfree and automotive


                                                if ((fileType != "tp_rohs")&&(fileType!="tp_pb_free")&&(fileType!="tp_automotive"))
                                                {
                                                        //filecol = document.createElement('TD');
                                                        anc = document.createElement('a');
                                                        //anc.setAttribute('href',"/portal/pls/portal/docs/1/"+filePath);
                                                        // start of sri code change
                                                        anc.href = baseFilePath+filePath;
                                                        anc.target = "new_window";
                                                        img = CreateImageNode("/epson_images/icon."+fileType.toLowerCase()+".png",fileDisplayName,fileDisplayName,null,null);
                                                        anc.appendChild(img);
                                                        //filecol.setAttribute('height',"150");
                                                        iconsDiv2.appendChild(anc);
                                                        //filecol.appendChild(anc);
                                                        //filerow.appendChild(filecol);
                                                }

                                                if (fileType == "tp_rohs")
                                                {
                                                        anc = document.createElement('a');
                                                        // start of sri code change
                                                        //start code change to open file for rohs icon 1-24-07
                                                        anc.href = "/epson_images/Pb-RoHS.pdf";
                                                        anc.target = "new_window";
                                                        //end code change to open file for rohs icon 1-24-07
                                                        img = CreateImageNode("/epson_images/icon."+fileType.toLowerCase()+".png","Rohs Compliant","Rohs Compliant",null,null);
                                                        anc.appendChild(img);

                                                        //old code
                                                        //iconsDiv2.appendChild(anc);
                                                        //new code
                                                        iconsDiv3.appendChild(anc);
                                                }

                                                if (fileType == "tp_pb_free")
                                                {
                                                        anc = document.createElement('a');
                                                        //img = CreateImageNode("/epson_images/icon."+fileType.toLowerCase()+".png",fileDisplayName,fileDisplayName,null,null);
                                                        //start code change to open file for pb free icon 1-24-07
                                                        anc.href = "/epson_images/Pb-RoHS.pdf";
                                                        anc.target = "new_window";
                                                        //end code change to open file for pb free icon 1-24-07
                                                        img = CreateImageNode("/epson_images/icon."+fileType.toLowerCase()+".png","LeadFree","LeadFree",null,null);
                                                        anc.appendChild(img);
                                                        //old code
                                                        //iconsDiv2.appendChild(anc);
                                                        //new code
                                                        iconsDiv3.appendChild(anc);
                                                }

                                                if (fileType == "tp_automotive")
                                                {
                                                        anc = document.createElement('a');
                                                        img = CreateImageNode("/epson_images/icon."+fileType.toLowerCase()+".png","AutomotiveReady","AutomotiveReady",null,null);
                                                        anc.appendChild(img);
                                                        //old code
                                                        //iconsDiv2.appendChild(anc);
                                                        //new code
                                                        iconsDiv3.appendChild(anc);
                                                }




                                        }
                                }
                        }else{

                        }

                        //iconsDiv2.appendChild(iconsTable);
                        tcol_Node.appendChild(imgDiv1);
                        tcol_Node.appendChild(iconsDiv2);
                        //new code
                        tcol_Node.appendChild(iconsDiv3);
                        //end new code
			//start new code December 5
                        //tcol_Node.appendChild(iconsDiv4);
                        //end new code December 5
                        trow_Node.appendChild(tcol_Node);

                        //rest of the display columns
                        x = xmlDoc.getElementsByTagName('DisplayField');
                        var displayfieldindex;
                        for (displayFieldIndex = 0; displayFieldIndex < x.length; displayFieldIndex++)
                        {
                                tcol_Node = document.createElement('TD');
                                tcol_Node.className = "div_ver_dots";
                                tcol_Node.align = "center";
                                tcol_Node.setAttribute('columnNumber',displayFieldIndex+1);//used for hiding columns
                                //tcol_Node.setAttribute('class',"div_ver_dots");
                                var subColumns = x[displayFieldIndex].getElementsByTagName('SubField');
                                subTable = document.createElement('table');
                                subTable.cellpadding = "0";
                                subTable.cellspacing = "2";
                                subTable.border = "0";
                                subTableBody = document.createElement('tbody');
                                subTableRow = document.createElement('tr');
                                for(scindex=0; scindex < subColumns.length; scindex++)
                                {
                                        subTableCol = document.createElement('td');
                                        var attribNameNode = subColumns[scindex].getElementsByTagName('SortFieldName');
                                        var attribName = attribNameNode[0].firstChild.nodeValue;
                                        var atrrib_value;

                                        try{
                                             attrib_value = y[j].getElementsByTagName(attribName)[0].firstChild.nodeValue;
                                        }catch(Err){
                                                attrib_value = "";
                                        }
                                        var spanIt = 'false';
                                        if ((attrib_value.indexOf('&nbsp;') || attrib_value.indexOf('-')) && (attrib_value.length <= 20))
                                        {
                                                spanIt = 'true';
                                        }
//--new code sri
                                        if (attribName.indexOf('TP_Package_Height')>=0)

                                        {
                                                  if(parseFloat(attrib_value)>=0)
                                                  {
                                                        attrib_value = parseFloat(attrib_value).toFixed(2);
                                                  }

                                        }
                                        if (attribName.indexOf('TP_Package_Length')>=0)
                                        {
                                                if(parseFloat(attrib_value)>=0)
                                                  {
                                                        attrib_value = parseFloat(attrib_value).toFixed(2);
                                                  }
                                        }
                                        if (attribName.indexOf('TP_Package_Width')>=0)
                                        {
                                                if(parseFloat(attrib_value)>=0)
                                                  {
                                                        attrib_value = parseFloat(attrib_value).toFixed(2);
                                                  }
                                        }
                                        if(attribName.indexOf('TP_Max_Operating_Temperature')>=0)
                                        {
                                                if(parseFloat(attrib_value)>=0)
                                                {
                                                  attrib_value = '+' + attrib_value;
                                                }

                                        }
                                        if(attribName.indexOf('TP_Min_Operating_Temperature')>=0)
                                        {
                                                if(parseFloat(attrib_value)>=0)
                                                {
                                                  attrib_value = '+' + attrib_value;
                                                }

                                        }
                                         if (attribName.indexOf('TP_Max_Frequency')>=0)
                                        {
                                           if(parseFloat(attrib_value) <=0 )
                                                {
                                                  attrib_value =  "";
                                                }
                                         }

//--end new code sri

                                        var text = document.createTextNode(" "+attrib_value.replace("&nbsp;"," ")+" ");

                                        var spanClass = document.createElement('span');
                                        if (spanIt == 'true')
                                        {
                                                spanClass.className = 'nowrap';
                                                spanClass.appendChild(text);
                                                subTableCol.appendChild(spanClass);

                                        }else{
                                                spanClass.className = 'justifytext';
                                                spanClass.appendChild(text);
                                                subTableCol.appendChild(spanClass);
                                        }
                                        subTableRow.appendChild(subTableCol);
                                        if (scindex <= subColumns.length-1)
                                        {
                                                subTableCol = document.createElement('td');
                                                img = CreateImageNode("/epson_images/div.hor.grey.dots.png","Spacer","Spacer",null,null);
                                                subTableCol.appendChild(img);
                                                subTableRow.appendChild(subTableCol);
                                        }
                                }
                                subTableBody.appendChild(subTableRow);
                                subTable.appendChild(subTableBody);
                                tcol_Node.appendChild(subTable);
                                trow_Node.appendChild(tcol_Node);
                        }

                        tbody.appendChild(trow_Node);

                        //formatting between rows
                        trow_Node= document.createElement('TR');
                        //trow_Node.setAttribute('id',"td_products");
                        //trow_Node.id = prodGroupStyle+"_products";
                        trow_Node.id = "td_products";
                        tcol_Node = document.createElement('TD');
                        //tcol_Node.setAttribute('height',"1");
                        tcol_Node.height = "1";
                        tcol_Node.colSpan = colDisplayNames.length+1;
                        //tcol_Node.setAttribute('colspan',colDisplayNames.length+1);
                        tcol_Node.className="div_dots";
                        //tcol_Node.setAttribute('class',"div_dots");
                        trow_Node.appendChild(tcol_Node);
                        tbody.appendChild(trow_Node);
                }
        }catch(Err)
        {
                alert("Error:"+Err);
        }

        //alert("New Element:"+newEl.documentElement.xml);

        /*divEl = document.createElement('div');
        divEl.setAttribute('id',"ic_table_header");
        divEl.appendChild(newEl);*/
        //alert("End Create TableBody");
        //document.getElementById('ic_table_header').innerHTML = "";
        //document.getElementById('ic_table_header').appendChild(newEl);

        //create back to top and product inquiry link.
        //backtotop link
        var table = document.createElement('table');
        table.width = "570";
        table.cellpadding = "0";
        table.cellspacing = "0";
        tbody = document.createElement('tbody');
        trow_Node = document.createElement('tr');
        tcol_Node = document.createElement('td');
        tcol_Node.height = "25";
        tcol_Node.className = "t3";
        var ul_Node = document.createElement('ul');
        var li_Node = document.createElement('li');
        anchor_Node = document.createElement('a');
        anchor_Node.href = "javascript:backToTopOfPage();";
        data_Node = document.createTextNode('back to top');

        anchor_Node.appendChild(data_Node);
        li_Node.appendChild(anchor_Node);
        ul_Node.appendChild(li_Node);
        tcol_Node.appendChild(ul_Node);
        trow_Node.appendChild(tcol_Node);
        tbody.appendChild(trow_Node);
        table.appendChild(tbody);
        newEl.appendChild(table);

        //product inquiry region
        var prodInquiryDiv = document.createElement('div');
        prodInquiryDiv.id = "product_inquiry";
        prodInquiryDiv.className = "t7";
        data_Node = document.createTextNode("Can't find what you are looking for? ");
        prodInquiryDiv.appendChild(data_Node);
        anchor_Node = document.createElement('a');
        anchor_Node.href = "/portal/page/portal/home/products/product%20inquiry";
        img = CreateImageNode("/epson_images/icon.chip.png","Chip","Chip","absmiddle",null);
        data_Node = document.createTextNode(' product inquiry');
        anchor_Node.appendChild(img);
        anchor_Node.appendChild(data_Node);
        prodInquiryDiv.appendChild(anchor_Node);
        newEl.appendChild(prodInquiryDiv);
}

function CreateTable()
{
        //alert("Begin Create Table");
        //create div container
      //var styleSheet = document.createElement('style');
      //styleSheet.addImport('/epson_css/epson.css');
        //--newEl = document.createElement('form');
        //--newEl.name = "Form1";
        var groupNode = xmlDoc.getElementsByTagName('Product_Group');
        var group = groupNode[0].firstChild.nodeValue;
        var recordCountNode = xmlDoc.getElementsByTagName('ResultRecord');
        var recordCount;
        try{
                recordCount = recordCountNode[0].firstChild.nodeValue;
        }catch(Err){
                recordCount = 0;
        }
        if (group == 'Epson Toyocom Timing Products')
        {
                prodGroupStyle = "td";
        }else if (group == 'Integrated Circuits'){
                prodGroupStyle = "ic";
        }else{
                prodGroupStyle = "ic";
        }

        newEl = document.createElement('div');
        //newEl.id = prodGroupStyle+"_table_header";
        newEl.className = "margin10x";
        newEl.id = "modelstablediv";
        //newEl.setAttribute('name',"Form1");
        //create the button region containing hide columns
        try{
                if (recordCount != 0)
                {
                        WriteButtonRegion();
                }
        }catch(Err){
                alert("Error in Writing Button Region"+Err);
        }
        //scrollbarDiv = document.createElement('div');
        //scrollbarDiv.style = "width:580;height:100%;overflow:auto;";


        //create the table header with checkboxes and sort images.
        try{
                if (recordCount != 0)
                {
                        CreateTableBody();
                }else{
                        //alert('Zero records');
                        var spanEl = document.createElement('span');
                        spanEl.className = "t3";
                        var data = document.createTextNode('No products match this inquiry');
                        spanEl.appendChild(data);
                        newEl.appendChild(spanEl);
                }
        }catch(Err)
        {
                alert("Error in CreatingTableHeader:"+Err);
        }
       document.getElementById('SeriesResultsDiv').innerHTML = "";

 var d = document;
 if (d.styleSheets && d.styleSheets[0].addImport) {
   var s = d.createElement("STYLE");
   //document.getElementById('ic_table_header').appendChild(s);
   //d.styleSheets[0].addImport('/epson_css/epson.css');

 } else {
   var s = d.createElement("STYLE");
   var t = d.createTextNode("@import url('/epson_css/epson.css');");
   s.appendChild(t);
   //document.getElementById('ic_table_header').appendChild(s);
   document.getElementById('SeriesResultsDiv').appendChild(s);
   //d.body.appendChild(s);
 }
        //document.getElementById('ic_table_header').appendChild(newEl);
        document.getElementById('SeriesResultsDiv').appendChild(newEl);
        //alert("End Create Table");

        if (recordCount != 0)
                HideColumns();
}

function RenderOutput()
{
        //alert("Begin renderoutput");
        if (window.ActiveXObject)
        {
                //alert("InternetExplorer Loading XML");
                xmlDoc.loadXML(xmlMessage);
                //xmlDoc.load("test.xml");
        }
        // code for Mozilla, etc.
        else if (document.implementation &&     document.implementation.createDocument)
        {
                //alert("Mozilla Loading XML");
                var parser = new DOMParser();
                //alert("Created Mozilla DOMparser");
                //alert("XMlmessage in renderoutput:"+xmlMessage);
                xmlDoc = parser.parseFromString(xmlMessage,"text/xml");
        }
        //WriteButtonRegion();
             CreateTable();

        //alert("End of RenderOutput");

}

//create the XML DOM.
function CreateXmlDOM()
{
        //load xml file
        // code for IE
        //alert('Begin Creating XML DOM');
        if (window.ActiveXObject)
        {
                xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
                xmlDoc.async=false;
                //alert('Internet Explorer');
        }
        // code for Mozilla, etc.
        else if (document.implementation &&     document.implementation.createDocument)
        {
                //xmlDoc= document.implementation.createDocument("","emperors",null);
                //alert('Mozilla');
        }
        else
        {
                alert('Your browser cannot handle this script');
        }
        //alert('Finished Creating XML DOM');
}


function RenderResponse()
{
                xmlDoc = null;
                try{
         CreateXmlDOM();

      }catch(Err){
        alert("Error in Creating XmlDom:"+Err);
      }
      try{
      RenderOutput();
      }catch(Err){
        alert("Error in Rendering Ouput:"+Err);
      }
}



function CreateSection(sectionName,classStyle)
{
        var table = document.createElement('TABLE');
        table.cellPadding = "0";
        table.cellSpacing = "0";
        table.summary = "title_and_print";
        var tbody = document.createElement('TBODY');
        var trow_Node = document.createElement('TR');
        var tcol_Node = document.createElement('TD');
        tcol_Node.width = "580";
        tcol_Node.height = "30";
        tcol_Node.valign = "top";
        tcol_Node.className = classStyle;
        var data_Node;
        data_Node = document.createTextNode(sectionName);
        tcol_Node.appendChild(data_Node);
        trow_Node.appendChild(tcol_Node);
        tbody.appendChild(trow_Node);
        table.appendChild(tbody);
        return table;
}


function CreatePackages()
{
        //alert("Creating Packages");
        var section = CreateSection('Packages',"t5");
        newEl_Model.appendChild(section);

        var packagesNode = xmlDoc_Model.getElementsByTagName('Packages');
        var packageNode = packagesNode[0].getElementsByTagName('Package');

        if (packageNode.length != 0)
        {
                var DisplayFieldNodes= packagesNode[0].getElementsByTagName('Field');
                //alert("count:"+DisplayFieldNodes.length);
                var nameNode;
                var valueNode;
                var name;
                var value;
                var colDisplayNames = new Array();

                var table = document.createElement('TABLE');
                table.border = "0";
                table.cellSpacing = "0";
                table.cellPadding = "3";
                table.width = "570";
                table.className = "ic_tableborder";
                table.id = "ic_table_header";
                var tbody = document.createElement('TBODY');
                var index;
                var trow_Node,tcol_Node,data_Node;

                trow_Node = document.createElement('TR');
                trow_Node.className = "t8";

                for(index=0; index < DisplayFieldNodes.length;index++)
                {
                        nameNode = DisplayFieldNodes[index].getElementsByTagName('Name');
                        valueNode = DisplayFieldNodes[index].getElementsByTagName('DisplayName');
                        try{
                                name = nameNode[0].firstChild.nodeValue;
                        }catch(Err){
                                name = "";
                        }
                        try{
                                value = valueNode[0].firstChild.nodeValue;
                        }catch(Err){
                                value = "";
                        }

                        colDisplayNames[index] = name;

                        tcol_Node = document.createElement('TD');
                        tcol_Node.width = "50";

                        //tcol_Node.align = "center";
                        data_Node = document.createTextNode(value);
                        tcol_Node.appendChild(data_Node);
                        trow_Node.appendChild(tcol_Node);
                }
                tbody.appendChild(trow_Node);

                var subIndex;
                var packages = packagesNode[0].getElementsByTagName('Package');
                for(index=0; index < packages.length; index++)
                {
                        trow_Node = document.createElement('TR');
                        trow_Node.className = "t2";
                        trow_Node.id = "td_products";
                        var packageFieldValues = packages[index].getElementsByTagName('PackageFieldValues');;
                        for(subIndex = 0; subIndex < colDisplayNames.length;subIndex++)
                        {
                                name = colDisplayNames[subIndex];
                                valueNode = packageFieldValues[0].getElementsByTagName(name);
                                try{
                                        value = valueNode[0].firstChild.nodeValue;
                                }catch(Err){
                                        value = "";
                                }
                                tcol_Node = document.createElement('TD');
                                tcol_Node.align = "center";
                                //tcol_Node.width = "50";
                                tcol_Node.className = "div_ver_dots";
                                data_Node = document.createTextNode(value);
                                tcol_Node.appendChild(data_Node);
                                trow_Node.appendChild(tcol_Node);
                        }
                        tbody.appendChild(trow_Node);

                        trow_Node = document.createElement('TR');
                        trow_Node.id = "td_products";
                        tcol_Node = document.createElement('TD');
                        tcol_Node.className = "div_dots";
                        tcol_Node.colSpan = colDisplayNames.length;
                        tcol_Node.height = "1";
                        trow_Node.appendChild(tcol_Node);
                        tbody.appendChild(trow_Node);
                }
                table.appendChild(tbody);
                newEl_Model.appendChild(table);
        }else{
                //alert('packages size:'+packagesNode.length);
                var spanEl = document.createElement('span');
                spanEl.className = "t3";
                var data = document.createTextNode('There are no packages for this product');
                spanEl.appendChild(data);
                newEl_Model.appendChild(spanEl);
        }

}

function CreateMacros()
{
        //alert("Creating Macros");

        var section = CreateSection("Macro Cells","t5");
        newEl_Model.appendChild(section);

        var macrosNodes = xmlDoc_Model.getElementsByTagName('Macros');

        if (macrosNodes.length != 0)
        {
                var nameNode;
                var valueNode;
                var imgNode;
                var pNode;
                var name;
                var value;
                var index,propIndex;
                var macrosCellTable;
                var trow_Node,tcol_Node,data_Node;
                for(index=0; index < macrosNodes.length;index++)
                {
                        macrosCellTable = document.createElement('TABLE');
                        macrosCellTable.border = "0";
                        macrosCellTable.cellSpacing = "0";
                        macrosCellTable.cellPadding = "3";
                        macrosCellTable.className = "ic_tableborder";
                        macrosCellTable.id = "ic_table_header";
                        var tbody = document.createElement('TBODY');

                        trow_Node = document.createElement('TR');
                        trow_Node.className = "t8";

                        tcol_Node = document.createElement('TD');
                        tcol_Node.width = "250";
                        tcol_Node.align = "center";
                        data_Node = document.createTextNode("Attribute Name");
                        tcol_Node.appendChild(data_Node);
                        trow_Node.appendChild(tcol_Node);

                        tcol_Node = document.createElement('TD');
                        tcol_Node.className = "ic_tableborder2";
                        tcol_Node.width = "300";
                        //tcol_Node.center = "center";
                        data_Node = document.createTextNode("Attribute Value");
                        tcol_Node.appendChild(data_Node);
                        trow_Node.appendChild(tcol_Node);

                        tbody.appendChild(trow_Node);


                        trow_Node = document.createElement('TR');
                        trow_Node.className = "t2";
                        trow_Node.id = "td_products";
                        tcol_Node = document.createElement('TD');
                        tcol_Node.align = "center";
                        tcol_Node.width = "250";
                        tcol_Node.className = "div_ver_dots";
                        pNode = document.createElement('span');
                        pNode.className = "t3";
                        data_Node = document.createTextNode("Macro Cell Name");
                        //tcol_Node.className = "t3";
                        pNode.appendChild(data_Node);
                        tcol_Node.appendChild(pNode);
                        trow_Node.appendChild(tcol_Node);


                        valueNode = macrosNodes[index].getElementsByTagName('DisplayName');
                        try{
                                value = valueNode[0].firstChild.nodeValue;
                        }catch(Err)
                        {
                                value = "";
                        }

                        var macrosName = value;
                        tcol_Node = document.createElement('TD');
                        tcol_Node.className = "div_ver_dots";
                        tcol_Node.width = "300";
                        data_Node = document.createTextNode(value);
                        tcol_Node.appendChild(data_Node);
                        trow_Node.appendChild(tcol_Node);
                        tbody.appendChild(trow_Node);

                        trow_Node = document.createElement('TR');
                        trow_Node.id = "td_products";
                        tcol_Node = document.createElement('TD');
                        //tcol_Node.width = "400";
                        tcol_Node.colSpan = "2";
                        tcol_Node.className = "div_dots";
                        tcol_Node.height="1";
                        trow_Node.appendChild(tcol_Node);
                        tbody.appendChild(trow_Node);

                        var propertiesNodes = macrosNodes[index].getElementsByTagName('Property');
                        for(propIndex = 0; propIndex < propertiesNodes.length;propIndex++)
                        {
                                nameNode = propertiesNodes[propIndex].getElementsByTagName('Name');
                                valueNode = propertiesNodes[propIndex].getElementsByTagName('Value');
                                try{
                                        name = nameNode[0].firstChild.nodeValue;
                                }catch(Err){
                                        name = "";
                                }
                                try{
                                        value = valueNode[0].firstChild.nodeValue;
                                }catch(Err){
                                        value = "";
                                }

                                trow_Node = document.createElement('TR');
                                trow_Node.className = "t2";
                                trow_Node.id = "td_products";

                                tcol_Node = document.createElement('TD');
                                tcol_Node.className = "div_ver_dots";
                                tcol_Node.align = "center";
                                tcol_Node.width = "250";
                                pNode = document.createElement('span');
                                pNode.className = "t3";
                                data_Node = document.createTextNode(name);
                                pNode.appendChild(data_Node);
                                tcol_Node.appendChild(pNode);
                                trow_Node.appendChild(tcol_Node);

                                tcol_Node = document.createElement('TD');
                                tcol_Node.className = "div_ver_dots";
                                tcol_Node.width = "300";
                                data_Node = document.createTextNode(value);
                                tcol_Node.appendChild(data_Node);
                                trow_Node.appendChild(tcol_Node);
                                tbody.appendChild(trow_Node);

                                trow_Node = document.createElement('TR');
                                trow_Node.id = "td_products";
                                tcol_Node = document.createElement('TD');
                                //tcol_Node.width = "400";
                                tcol_Node.colSpan = "2";
                                tcol_Node.className = "div_dots";
                                tcol_Node.height="1";
                                trow_Node.appendChild(tcol_Node);
                                tbody.appendChild(trow_Node);
                        }
                        macrosCellTable.appendChild(tbody);
                        section = CreateSection(macrosName,"t4");
                        newEl_Model.appendChild(section);
                        newEl_Model.appendChild(macrosCellTable);

                        imgNode = CreateImageNode("/epson_images/spacer.png","spacer","spacer",null,null);
                        imgNode.height="15";
                        newEl_Model.appendChild(imgNode);

                }
        }else{
                var spanEl = document.createElement('span');
                spanEl.className = "t3";
                var data = document.createTextNode('There are no macros for this product');
                spanEl.appendChild(data);
                newEl_Model.appendChild(spanEl);
        }
}

function CreateModelAttributes()
{
        //alert("Creating Model Attributes");
        var modelNode = xmlDoc_Model.getElementsByTagName('Model');
        var DisplayFieldNodes= modelNode[0].getElementsByTagName('DisplayField');
        var nameNode;
        var valueNode;
        var pNode;
        var name;
        var value;
        var table = document.createElement('TABLE');
        table.border = "0";
        table.cellSpacing = "0";
        table.cellPadding = "3";

        table.className = "ic_tableborder";
        table.id = "ic_table_header";
        var tbody = document.createElement('TBODY');
        var index;
        var trow_Node,tcol_Node,data_Node;

        trow_Node = document.createElement('TR');
        trow_Node.className = "t8";

        tcol_Node = document.createElement('TD');
        tcol_Node.width = "250";
        tcol_Node.align = "center";
        data_Node = document.createTextNode("Attribute Name");
        tcol_Node.appendChild(data_Node);
        trow_Node.appendChild(tcol_Node);

        tcol_Node = document.createElement('TD');
        tcol_Node.className = "ic_tableborder2";
        tcol_Node.width = "300";
        //tcol_Node.center = "center";
        data_Node = document.createTextNode("Attribute Value");
        tcol_Node.appendChild(data_Node);
        trow_Node.appendChild(tcol_Node);

        tbody.appendChild(trow_Node);

        //alert('OK till before for loop');
        for(index = 0; index < DisplayFieldNodes.length;index++)
        {
                trow_Node = document.createElement('TR');
                trow_Node.className = "t2";
                trow_Node.id = "td_products";
                nameNode = DisplayFieldNodes[index].getElementsByTagName('Name');
                valueNode = DisplayFieldNodes[index].getElementsByTagName('Value');
                try{
                        name = nameNode[0].firstChild.nodeValue;
                }catch(Err){
                        name = "";
                }
                try{
                        value = valueNode[0].firstChild.nodeValue;
                }catch(Err){
                        value = "TBD";
                }
                tcol_Node = document.createElement('TD');
                tcol_Node.className = "div_ver_dots";
                tcol_Node.width = "250";
                tcol_Node.align = "center";
                pNode = document.createElement('span');
                pNode.className = "t3";
                data_Node = document.createTextNode(name);
                pNode.appendChild(data_Node);
                tcol_Node.appendChild(pNode);
                trow_Node.appendChild(tcol_Node);

                tcol_Node = document.createElement('TD');
                tcol_Node.width = "300";
                tcol_Node.className = "div_ver_dots";
                data_Node = document.createTextNode(value);
                tcol_Node.appendChild(data_Node);
                trow_Node.appendChild(tcol_Node);
                tbody.appendChild(trow_Node);

                trow_Node = document.createElement('TR');
                trow_Node.id = "td_products";
                tcol_Node = document.createElement('TD');
                //tcol_Node.width = "400";
                tcol_Node.colSpan = "2";
                tcol_Node.className = "div_dots";
                tcol_Node.height="1";
                trow_Node.appendChild(tcol_Node);
                tbody.appendChild(trow_Node);
        }
        //alert('OK till after for loop');
        table.appendChild(tbody);
        newEl_Model.appendChild(table);

        imgNode = CreateImageNode("/epson_images/spacer.png","spacer","spacer",null,null);
        imgNode.height="15";
        newEl_Model.appendChild(imgNode);

}

function RenderModelPage()
{
        //alert("Begin renderoutput");
        //alert("Presently under Development");
        if (window.ActiveXObject)
        {
                //alert("InternetExplorer Loading XML");
                xmlDoc_Model.loadXML(xmlMessage_Model);
                //xmlDoc.load("test.xml");
        }
        // code for Mozilla, etc.
        else if (document.implementation &&     document.implementation.createDocument)
        {
                //alert("Mozilla Loading XML");
                var parser = new DOMParser();
                //alert("Created Mozilla DOMparser");
                //alert("XMlmessage in renderoutput:"+xmlMessage);
                xmlDoc_Model = parser.parseFromString(xmlMessage_Model,"text/xml");
        }

        newEl_Model = document.createElement('div');
        //newEl_Model.className = "margin10";

        try{
           CreateModelAttributes();
        }catch(Err){
                alert('Error in Creating ModelPage:'+Err);
        }

        try{
           CreateMacros();
        }catch(Err){
                alert('Error in Creating Macros:'+Err);
        }


        try{
           CreatePackages();
        }catch(Err){
                alert('Error in Creating Packages:'+Err);
        }

        //var twoColumnDiv = document.createElement('div');
        //twoColumnDiv.id = "right_twocolumn";
        //twoColumnDiv.appendChild(newEl_Model);
        document.getElementById('ModelDiv').innerHTML = "";
        document.getElementById('ModelDiv').appendChild(newEl_Model);
        //alert("End of RenderModelPage");
}

//create the XML DOM for model page
function CreateXmlDOM_Model()
{
        //load xml file
        // code for IE
        //alert('begin Creating XmlDOM');
        if (window.ActiveXObject)
        {
                //alert('For InternetExplorer');
                xmlDoc_Model = new ActiveXObject("Microsoft.XMLDOM");
                //alert('begin Created ActiveX object XMLDOM');
                xmlDoc_Model.async=false;
        }
        // code for Mozilla, etc.
        else if (document.implementation &&     document.implementation.createDocument)
        {
                //xmlDoc= document.implementation.createDocument("","emperors",null);
                //alert('For Mozilla');
        }
        else
        {
                alert('Your browser cannot handle this script');
        }
        //alert("End of Creating XmlDOM");
}


function RenderModelPageResponse()
{
     xmlDoc_Model = null;
     try{
         CreateXmlDOM_Model();
      }catch(Err){
        alert("Error in Creating XmlDom:"+Err);
      }
     try{
      RenderModelPage();
      }catch(Err){
        alert("Error in Rendering Ouput:"+Err);
      }
}

function queryStringParams(paramNames) {
var qsParm = new Array();
for (var h=0; h<paramNames.length; h++){
   qsParm[paramNames[h]]=null;
}
var query = window.location.search.substring(1);
var parms = query.split('&');
for (var i=0; i<parms.length; i++) {
   var pos = parms[i].indexOf('=');
   if (pos > 0) {
      var key = parms[i].substring(0,pos);
      var val = parms[i].substring(pos+1);
      qsParm[key] = val;
      }
   }
return qsParm;
}

function viewprint() {
// V1.1
        var tag1 = "start" + "view";
        var tag2 = "end" + "view";
        var postag1 = 0;
        var postag2 = 0;
        var corps = "";
        var theader = "";
        var ico = '<a href="javascript:window.print();">Print</a>'
        var win_opt= "toolbar=0,location=0,directories=0,status=0,menubar=1,";
        win_opt += "scrollbars=1,resizable=1,copyhistory=0,width=750,height=800";
        // Create a new window
        NewWindow= window.open("","Title",win_opt);
        NewWindow.creator= self;
        // Nestcape doesn't support outerHTML property
        // specific DIV startview can't be used because it spans accross others tags
        // due to the way that Portal manages regions rendering
        // Get the head in order to retrieve css links
        theader = document.getElementsByTagName("head")[0].innerHTML;
        corps = document.getElementById('printSectionDiv').innerHTML;
        // Looks for delimiters
        //postag1 = corps.indexOf(tag1) + 16;
        //postag2 = corps.indexOf(tag2) - 9;
        // extracts useful part
        //corps = corps.substring(postag1,postag2);
        // displays in another window
        NewWindow.document.open();
        NewWindow.document.write("<HTML><HEAD>");
        NewWindow.document.write(theader);
        NewWindow.document.write("</HEAD><BODY>"+ico + "<BR>");
        NewWindow.document.write(corps);
        NewWindow.document.write("</BODY></HTML>");
        NewWindow.document.close();
}


