// aimsIdentify.js
/*
*  JavaScript template file for ArcIMS HTML Viewer
*               dependent on aimsXML.js, ArcIMSparam.js, aimsCommon.js, aimsMap.js, and aimsLayers.js
*               To be interactive, dependent also on aimsDHTML.js, aimsClick.js, and aimsNavigation.js
*/

aimsIdentifyPresent=true;

// hyperlink variables
var currentHyperLinkLayer="";
var currentHyperLinkField="";
var currentHyperLinkPrefix="";
var currentHyperLinkSuffix="";
var hyperlinkWindowWidth=500;
var hyperlinkWindowHeight=400;

//Garder en note le contenue du dernier reply
var lastTheReplay="";

// variable for search tolerance... dynamically set in app
var searchTolerance=1/100;
// starting record position for returned records
var queryStartRecord=1;

if (imsQueryURL=="") {
        imsQueryURL= imsURL + "&CustomService=Query";
}
var canQuery=true;
var newSelectCount=0;
var selectPoints = new Array();

// can features be selected if invisible or not within layer scale threshholds?
var canSelectInvisible=false;

var ZoomToParc=false;
var CategorieParc="";

var garderieRendu =0;
var gardeTableau = new Array();

//max et min des points d'interets
var vmin=1;
var vmax=50;

var aGdNom = new Array();
var aGdAdd = new Array();
var aGdTel = new Array();
var aGdType = new Array();
var aGdX = new Array();
var aGdY = new Array();

var popo = false;
/*
***************************************************************************************

Identify functions 

***************************************************************************************
*/

// identify feature
function identify(e) {
        if (checkIfActiveLayerAvailable()) {
                highlightedOne="";
                var theX = mouseX;
                var theY = mouseY;
                getMapXY(theX,theY);
                searchTolerance = (xDistance/iWidth) * pixelTolerance;
                var tempWest = mapX - searchTolerance;
                var tempNorth = mapY + searchTolerance;
                var tempEast = mapX + searchTolerance;
                var tempSouth = mapY - searchTolerance;
                px = mapX;
                py = mapY;
                var theString = writeGetFeatures(tempWest,tempSouth,tempEast,tempNorth);
                showRetrieveData();
                //alert("aimsidentify ds identify(e) juste avnt le sendtoserver avec theString:    " + theString);
                //alert( "IE:   " + identifyXMLMode);
                sendToServer(imsQueryURL,theString,identifyXMLMode);
        }
}

function identifyRech() {
        if (checkIfActiveLayerAvailable()) {
                highlightedOne="";
                var theX = px;
                var theY = py;
                getMapXY(theX,theY);
                searchTolerance = (xDistance/iWidth) * pixelTolerance;
                var tempWest = mapX - searchTolerance;
                var tempNorth = mapY + searchTolerance;
                var tempEast = mapX + searchTolerance;
                var tempSouth = mapY - searchTolerance;
                var theString = writeGetFeatures(tempWest,tempSouth,tempEast,tempNorth);
                showRetrieveData();
                sendToServer(imsQueryURL,theString,identifyXMLMode);
        }
}

// hyperlink from feature in active layer
function hyperLink(e) {
        if (checkIfActiveLayerAvailable()) {
                if (currentHyperLinkLayer!="") {
                        highlightedOne="";
                        var theX = mouseX;
                        var theY = mouseY;
                        getMapXY(theX,theY);
                        searchTolerance = (xDistance/iWidth) * pixelTolerance;
                        var tempWest = mapX - searchTolerance;
                        var tempNorth = mapY + searchTolerance;
                        var tempEast = mapX + searchTolerance;
                        var tempSouth = mapY - searchTolerance;
                        var tempSwap = swapSelectFields;
                        swapSelectFields=false;
                        var tempSelect = selectFields;
                        selectFields = LayerIDField[ActiveLayerIndex] + " " + LayerShapeField[ActiveLayerIndex] + " " + currentHyperLinkField;
                        var theString = writeGetFeatures(tempWest,tempSouth,tempEast,tempNorth);
                        selectFields = tempSelect;
                        swapSelectFields=tempSwap;
                        showRetrieveData();
                        sendToServer(imsQueryURL,theString,hyperlinkXMLMode);
                } else {
                        alert(msgList[47]);
                }
        }
}


// write out XML request to identify features
function writeGetFeatures(west1,south1,east1,north1) {
        if (swapSelectFields) {
                selectFields=selFieldList[ActiveLayerIndex];
        }
        var useString = writeIdentifyXML(ActiveLayer,ActiveLayerType,selectFields,west1,south1,east1,north1,maxFeaturesReturned,useLimitExtent);
        hightlightedOne="";
        return useString;
}

function writeIdentifyXML(theLayer,theLayerType,theFields,leftX,bottomY,rightX,topY,maxReturned,hasLimit) {
        var theString = '<ARCXML version="1.1">\n<REQUEST>\n<GET_FEATURES outputmode="xml" envelope="false" geometry="false" featurelimit="' + maxReturned + '">\n';
        theString += '<LAYER id="' + theLayer + '" />';
        theString += '<SPATIALQUERY subfields="' + theFields + '">';
        theString += '<SPATIALFILTER relation="area_intersection" >';
        theString += '<ENVELOPE maxy="' + forceComma(topY) + '" maxx="' + forceComma(rightX) + '" miny="' + forceComma(bottomY) + '" minx="' + forceComma(leftX) + '" />';
        theString += '</SPATIALFILTER>';
        theString += '</SPATIALQUERY>';
        if (hasLimit) {
                // keep this within the limitExtent
                theString += '<SPATIALFILTER relation="area_intersection">\n';
                theString += '<ENVELOPE maxx="' + forceComma(limitRight) + '" maxy="' + forceComma(limitTop) + '" minx="' + forceComma(limitLeft) + '" miny="' + forceComma(limitBottom) + '" />\n';
                theString += '</SPATIALFILTER>\n';
        }
        theString += '</GET_FEATURES>';
        theString += '</REQUEST>';
        theString += '</ARCXML>';
        return theString;

}

function identifyAffiche(sX, sY) {
        px = sX;
        py = sY;
        clickFunction("IdentifyRech");  
        
}


// Fonction qui parse le résultat dans une autre fenêtre.
function afficherInfoItem(sColonne, sValeur) {
	//alert("Ds afficherInfoItem:    " + sColonne + " = " + sValeur);
        sendQueryStringMode2(sColonne + " = " + sValeur, 21);
}

//Fonction particulière pour Donnees anterieures
function afficherInfoItemLayer(sColonne, sValeur, sLayerAvant) {
        parent.TOC2Frame.TOCFrame.setActiveNomLayer(sLayerAvant);
        alert("Ds afficherInfoItemLayer:    " + sColonne + " = " + sValeur + "\nLayerName[ActiveLayerIndex]:    " + LayerName[ActiveLayerIndex]);
        sendQueryStringMode2(sColonne + " = " + sValeur, 1010);
}

function copierColler() {
        var theReply=lastTheReplay;
        var featureCount = justGetFeatureCount(theReply);
        var pos = 0;
        var endpos = 0;
        var stillMore = true
        var selectedData="";
        var inData="";
        var fCount = featureCount;
        var strValue = "";
        
        var Win1 = window.open("","CopyWindow","width=625,height=425,scrollbars=yes,resizable=yes");
        Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><title></title></head>');
        Win1.document.writeln('<HEAD>');
        Win1.document.writeln('<SCRIPT LANGUAGE="Javascript">');
        Win1.document.writeln('function ajouterText(str) {');
        Win1.document.writeln(' document.forms["formText"].champText.value=str;');
        Win1.document.writeln('}');
        Win1.document.writeln('</SCRIPT>');
        Win1.document.writeln('</HEAD>');
        Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
        Win1.document.writeln('<center>');
        Win1.document.writeln('<FONT  FACE="Arial" size=-1 color=red>');
        Win1.document.writeln("<p><B><I>Veuillez attendre que les données s'affichent</I></B></p>");
        Win1.document.writeln('</FONT>');
        Win1.document.writeln('</FONT>');
        Win1.document.writeln('</center>');
        Win1.document.writeln('<FONT  FACE="Arial" size=-1 color=white>');
        Win1.document.writeln('<p>Pour copier/coller le résultat...</p>');
        Win1.document.writeln('<OL>');
        Win1.document.writeln('<LI>Positionner votre curseur dans le champ des données.');
        Win1.document.writeln('<LI>Cliquer sur le bouton droit de la souris et "Sélectionner tout"');
        Win1.document.writeln('<LI>Cliquer sur le bouton droit de la souris et "Copier"');
        Win1.document.writeln('<LI>Coller dans votre application');
        Win1.document.writeln('</OL>');
        Win1.document.writeln('</FONT>');
        Win1.document.writeln('<center>');
        Win1.document.writeln('<FORM name=formText>');
        Win1.document.writeln('<TEXTAREA name=champText cols=70 rows=10 WRAP=off>');
        Win1.document.writeln('</TEXTAREA>');
        Win1.document.writeln('</FORM>');
        Win1.document.writeln ('<a href="javascript:window.close();" ><img src="' + appDir + 'images/fermer.gif" border=0></a>');
        Win1.document.writeln('</center>');
        Win1.document.writeln('</body>');
        Win1.document.writeln('</html>');
        Win1.document.close();

        selectCount = 0;
        var tempString="";
        if (featureCount > 0) {
                endpos = 1;
                
                var posID=0;
                for (var i=0;i<fCount;i++) {
                        if (toolMode!=4) {
                                var theXYs = getEnvelopeXYs(theReply, endpos)
                                selectLeft[selectCount] = theXYs[0];
                                selectBottom[selectCount] = theXYs[1];
                                selectRight[selectCount] = theXYs[2];
                                selectTop[selectCount] = theXYs[3];
                                endpos = xmlEndPos;
                        }

                        inData = parseRecordString(theReply, endpos);
                        endpos = xmlEndPos;
                        selectedData = inData;
                        
                        epos = theReply.indexOf("</FEATURE",endpos);
                        
                        var fName1 = getFieldNames(selectedData);
                        var fValue1 = getFieldValues(selectedData);
                        selectPoints[selectCount] = getIdValue(fName1, fValue1);
                        
                        var idFieldNum = -1;
                        var shapeFieldNum = -1;
                        if (hideIDFieldData) {
                                // hide ID column header
                                for (var f=0;f<fName1.length;f++) {
                                        if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
                                }
                        }
                        if (hideShapeFieldData) {
                                // hide Shape column header
                                for (var f=0;f<fName1.length;f++) {
                                        if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
                                }
                        }

                        //Écriture des entête de colonnes
                        if (selectCount==0) {
                                strValue += msgList[86];
                                for (var f=0;f<fName1.length;f++) {
                                        if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                var f2 = -1;
                                                var sAlias="";
                                                if (useFieldAlias) {
                                                        for (var f3=0;f3<AliasFieldName.length;f3++) {
                                                                if (AliasFieldName[f3]==fName1[f]) f2 = f3;
                                                        }
                                                }
                                                
                                                if (f2!=-1) {
                                                        sAlias = AliasFieldAlias[f2];
                                                } else {
                                                        sAlias = fName1[f];
                                                }
                                                
                                                if ((sAlias == "#ID#") || (sAlias.indexOf("OBJECTID")>=0) || (sAlias.indexOf("objectid")>=0))
                                                        posID=f;
                                                if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0))
                                                        strValue += '   ' + sAlias;
                                        }
                                }
                                strValue += "\r\n";
                        }

                        strValue += (selectCount+queryStartRecord);
                        for (var f=0;f<fName1.length;f++) {     
                                if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0))
                                        continue;
                                if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                        strValue += '   ';
                                        var s2 = -1;
                                        for (var s1=0;s1<LayerFields.length;s1++) {
                                                if (fName1[f]==LayerFields[s1]) s2=s1;
                                        }
                                        if (LayerFieldType[s2]=="91") {
                                                if (isNaN(fValue1[f])) {
                                                        var theDate = fValue1[f];
                                                } else {
                                                        var theDateObj = new Date(parseFloat(fValue1[f]));
                                                        var d = theDateObj.toUTCString();
                                                        var theDate = d.replace(/GMT|UTC/,"");
                                                }
                                                strValue += theDate;
                                                theDate=null;
                                        } else {
                                                strValue += fValue1[f].replace(/ /g, " ");
                                        }
                                }
                        }
                        strValue += "\r\n";
                        fName1 = null;
                        fValue1 = null;

                        selectCount += 1;
                }
        }

        Win1.ajouterText(strValue.replace("&nbsp;"," "));
}

// parse XML response for selected features
function displayAttributeData(theReply) {
        //alert("Dans displayAttributeData:    " + theReply);
        setLayerFields(ActiveLayerIndex);
        var theError = getXMLErrorMessage(theReply);
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var epos = 1;
        var spos = 1;
        var morePoints=true;
        var moreFeatures=true;
        var featureCount = justGetFeatureCount(theReply);
        var pos = 0;
        var startpos = 0;
        var endpos = xmlEndPos;
        var stillMore = false
        //Prendre en note le contenue du reply pour le copier/coller
        lastTheReplay=theReply;
        pos = theReply.indexOf('hasmore="true"',endpos);
        if (pos!=-1) stillMore = true;
        pos=0;
        var tempCount = 0;
        var selectedData="";
        var inData="";
        var xStr="";
        var yStr="";
        var tempString = "";
        var tempNo = "";
        var fCount = featureCount;
        selectCount = 0;
        var tempString="";
        var Win1 = parent.TextFrame;
        var theFrame = "parent.MapFrame";
        //alert("featureCount  dans displayAttributeData:      " + featureCount + "\nsetQueryString:    " + setQueryString + "\nLayerName[ActiveLayerIndex]:    " + LayerName[ActiveLayerIndex]);
        if (featureCount > 0) {
                newSelectCount += 1;

//alert("IE");

                if (showSelectedData) {
                        if ((useExternalWindow) || (!useTextFrame)) {
                                
                                Win1 = window.open("","QueryWindow","width=575,height=300,scrollbars=yes,resizable=yes");
                                theFrame = "opener";
                                if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
                        } else {
                                Win1 = parent.TextFrame;
                                Win1.document.open();
                        }
                        Win1.document.open();
                        Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><title>' + titleList[7] + '</title></head>');
                        Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
                        Win1.document.writeln('<center>');
                        Win1.document.writeln('<FONT FACE="Arial" color=white SIZE="-1"><b>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) + '</b></FONT>');
                        Win1.document.writeln('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
                }
                endpos = 1;
                
                var posID=0;
                for (var i=0;i<fCount;i++) {
                        if (toolMode!=4) {
                                var theXYs = getEnvelopeXYs(theReply, endpos)
                                selectLeft[selectCount] = theXYs[0];
                                selectBottom[selectCount] = theXYs[1];
                                selectRight[selectCount] = theXYs[2];
                                selectTop[selectCount] = theXYs[3];
                                endpos = xmlEndPos;
                        }
                        inData = parseRecordString(theReply, endpos);
                        endpos = xmlEndPos;
                        selectedData = inData;
                        
                        epos = theReply.indexOf("</FEATURE",endpos);
                        if (showSelectedData) {
                                var showHyper = false;
                                if (hyperLinkLayers!=null) {
                                        for (var s1=0;s1<hyperLinkLayers.length;s1++) {
                                                if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
                                        }
                                }
                                        
                                var fName1 = getFieldNames(selectedData);
                                var fValue1 = getFieldValues(selectedData);
                                selectPoints[selectCount] = getIdValue(fName1, fValue1);
                                
                                var idFieldNum = -1;
                                var shapeFieldNum = -1;
                                if (hideIDFieldData) {
                                        // hide ID column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
                                        }
                                }
                                if (hideShapeFieldData) {
                                        // hide Shape column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
                                        }
                                }
                                
                                //alert(fName1);
                                //alert(sAlias);
                                
                                if (selectCount==0) {
                                        Win1.document.write('<tr><th><FONT FACE="Arial" SIZE="-2">' + msgList[86] + '</FONT></a></th>');
                                        //Win1.document.writeln('<th>&nbsp;</th>');
                                        for (var f=0;f<fName1.length;f++) {
                                                if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                        var f2 = -1;
                                                        var sAlias="";
                                                        if (useFieldAlias) {
                                                                for (var f3=0;f3<AliasFieldName.length;f3++) {
                                                                        if (AliasFieldName[f3]==fName1[f]) f2 = f3;
                                                                }
                                                        }
                                                        
                                                        if (f2!=-1) {
                                                                sAlias = AliasFieldAlias[f2];
                                                        } else {
                                                                sAlias = fName1[f];
                                                        }
                                                                                                                
                                                        if ((sAlias == "#ID#") || (sAlias.indexOf("OBJECTID")>=0) || (sAlias.indexOf("objectid")>=0))
                                                                posID=f;
                                                        if ((sAlias.indexOf("ID_UNIQUE_IMS")>=0) && (LayerName[ActiveLayerIndex] == "Donnees anterieures"))
								posID=f;
                                                        if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0) && (sAlias != "ID_RELEVE_ARCHIVE") && (sAlias.indexOf("ID_UNIQUE_IMS")<0) && (sAlias.indexOf("ID_UNIQUE_IMS")<0))
                                                                Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + sAlias + '</FONT></a></th>');
                                                }
                                        }
                                        if(LayerName[ActiveLayerIndex] == "Qualite eau releve") {
                                                Win1.document.writeln('<th><FONT FACE="Arial" SIZE="-2">DONNÉES ANTÉRIEURES</FONT></th>');
                                        }
                                        Win1.document.writeln('</tr>');
                                }
                                Win1.document.write('<tr><td>');
                                if ((toolMode!=4)&&(LayerName[ActiveLayerIndex] != "Donnees anterieures")) Win1.document.write('<a href="javascript:' + theFrame + '.showHighlight(' + selectCount + ')">');
                                Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + (selectCount+queryStartRecord) + '</FONT>');
                                if ((toolMode!=4)&&(LayerName[ActiveLayerIndex] == "Donnees anterieures")) Win1.document.write('</a>');
                                Win1.document.writeln('</td>');
                                
                                //alert(LayerName[ActiveLayerIndex]);
                                if(LayerName[ActiveLayerIndex] == "Donnees anterieures") {
                                       // Win1.document.writeln('<td><A HREF="javascript:opener.parent.MapFrame.afficherInfoItemLayer(\'' + fName1[posID] + '\',\'' + fValue1[posID] + '\',\'Donnees anterieures\');"><IMG border=0 src="' + appDir + 'images/identify_1.gif"></A></td>');
                                } else {
                                        Win1.document.writeln('<td><A HREF="javascript:opener.parent.MapFrame.afficherInfoItem(\'' + fName1[posID] + '\',\'' + fValue1[posID] + '\');"><IMG border=0 src="' + appDir + 'images/identify_1.gif"></A></td>');
                                }
                                for (var f=0;f<fName1.length;f++) {     
                                        if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0) || (fName1[f].indexOf("ID_RELEVE_ARCHIVE")>=0) || (fName1[f].indexOf("ID_UNIQUE_IMS")>=0))
                                                continue;
                                        if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                Win1.document.write('<TD>');
                                                var isHyper=false;
                                                if (showHyper) {
                                                        for (var s1=0;s1<hyperLinkFields.length;s1++) {
                                                                if (hyperLinkFields[s1]==fName1[f]) {
                                                                        var theLinkURL = currentHyperLinkPrefix + fValue1[f] + currentHyperLinkSuffix;
                                                                        if (fValue1[f].toUpperCase().indexOf(".XLS") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/excel.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".DOC") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/word.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".PDF") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/acrobat.gif"></A>&nbsp;');
                                                                        }
                                                                        Win1.document.write('<a href="' + theLinkURL + '" target="_blank">');
                                                                        isHyper=true;
                                                                }
                                                        }
                                                }
                                                var s2 = -1;
                                                for (var s1=0;s1<LayerFields.length;s1++) {
                                                        if (fName1[f]==LayerFields[s1]) s2=s1;
                                                }
                                                if (LayerFieldType[s2]=="91") {
                                                        if (isNaN(fValue1[f])) {
                                                                var theDate = fValue1[f];
                                                        } else {
                                                                /*var theDateObj = new Date(parseFloat(fValue1[f]));
                                                                var theDate = theDateObj.getFullYear() + "-";
                                                                if((theDateObj.getMonth()+1) < 10)
                                                                        theDate += "0";
                                                                theDate += (theDateObj.getMonth()+1) + "-";
                                                                if((theDateObj.getDate() +1) < 10)
                                                                        theDate += "0";
                                                                 theDate += (theDateObj.getDate()+1);*/
                                                                 
                                                                 //alert(fValue1[f]);
								var longDate=parseFloat(fValue1[f]);
								longDate =longDate + (18000 * 1000); //07.25.03. Add 5 hours in milliseconds for GMT
								//var theDateObj = new Date(parseFloat(fValue1[f]));
								var theDateObj = new Date(longDate);
								var theDate = theDateObj.getFullYear() + "-";
								if((theDateObj.getMonth()+1) < 10)
									theDate += "0";
								theDate += (theDateObj.getMonth()+1) + "-";
								if((theDateObj.getDate() ) < 10)
									theDate += "0";
								 theDate += (theDateObj.getDate());
                                                                 
                                                        }
                                                        Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + theDate + '</FONT>');
                                                        theDate=null;
                                                } else {
                                                        // put html entity for spaces so display is correct - browsers trim extra spaces
                                                        if (isHyper) {
                                                                tempString=fValue1[f];
                                                                if (tempString.lastIndexOf("\\") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("\\")+1);
                                                                        tempString = tempString.replace(/ /g, "&nbsp;");
                                                                } else {
                                                                        tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
                                                                if (tempString.lastIndexOf("/") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("/")+1);
                                                                }
                                                        } else {
                                                                if((LayerName[ActiveLayerIndex] == "Qualite eau releve") && (fName1[f].indexOf("NO_STATION")>=0)) {
                                                                        tempNo = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
                                                                tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                        }
                                                        Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + tempString + '</FONT>');
                                                }
                                                if (isHyper) Win1.document.write('</a>');
                                                Win1.document.writeln('</td>');
                                        }
                                }
                                if(LayerName[ActiveLayerIndex] == "Qualite eau releve") {
                                        Win1.document.writeln('<td><A HREF="javascript:opener.clickFunctionParam(\'listeReleve\',\'' + tempNo + '\');"><FONT FACE="Arial" SIZE="-2">Liste</FONT></A></td>');
                                }

                                Win1.document.writeln('</tr>');
                                fName1 = null;
                                fValue1 = null;
                                
                        }
                        selectCount += 1;
                                        
                }
                if (showSelectedData) {
                        
                        Win1.document.writeln('</table><FONT FACE="Arial" SIZE="-2">');
                        if (toolMode!=25) {
                                if (queryStartRecord>1) {
                                        var prevRecord = queryStartRecord - maxFeaturesReturned;
                                        if (prevRecord<1) prevRecord=1;
                                        Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')"><FONT color=white>' + msgList[61] + maxFeaturesReturned + msgList[62] + '</FONT></a>&nbsp;&nbsp;&nbsp;');
                                }
                                if (stillMore) {
                                        var nextRecord=featureCount + queryStartRecord;
                                        Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')"><FONT color=white>' + msgList[63] + '</FONT></a>');
                                }
                        }
                        if ((toolMode!=4) && (toolMode!=25) && (selectCount>1)) {
                                Win1.document.writeln('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b><a href="javascript:' + theFrame + '.zoomToReturnedRecords()"><FONT color=white>Présenter les enregistrements sur la carte</FONT></A></b>');
                        }
                        
                        //Pour faire le copier/coller
                        Win1.document.writeln('<br>');
                        Win1.document.writeln('<b><a href="javascript:' + theFrame + '.copierColler()"><FONT color=white>Copier/coller le résultat</FONT></A></b>');
                        

                        Win1.document.writeln('</font>');
                        Win1.document.writeln ('<br><br><a href="javascript:window.close();" ><img src="' + appDir + 'images/fermer.gif" border=0></a>');
                        Win1.document.writeln('</center></body></html>');
                        Win1.document.close();
                }
                
                if ((queryStartRecord==1) && (toolMode!=4) && (selRefrechMap || (toolMode!=8)) && (selRefrechMap || (toolMode!=10)) && (toolMode!=25) && (LayerName[ActiveLayerIndex] != "Donnees anterieures")) {
                        if ((selectCount==1) && (zoomToSingleSelect)) {
                                var fWidth = selectRight[0] - selectLeft[0];
                                var fHeight = selectTop[0] - selectBottom[0];
                                var mWMargin = 0;
                                var mHMargin = 0;
                                if (selectType=="point") {                      
                                        mWMargin = fullWidth * selectPointMargin;
                                        mHMargin = fullHeight * selectPointMargin;
                                        if (mWMargin > xDistance/2) {
                                                mWMargin = xDistance/2;
                                                mHMargin = yDistance/2;
                                        }
                                } else {
                                        mWMargin = fWidth * selectMargin;
                                        mHMargin = fHeight * selectMargin; 
                                }
                                saveLastExtent();
                                eLeft = selectLeft[0] - mWMargin;
                                eRight = selectRight[0] + mWMargin;
                                eTop = selectTop[0] + mHMargin;
                                eBottom = selectBottom[0] - mHMargin;
                        }
                        sendMapXML();
                }
                
                
                        
        } else {
                Win1 = window.open("","QueryWindow2","width=300,height=300,scrollbars=yes,resizable=yes");
                
                Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                Win1.document.writeln(' <title>' + titleList[8] + '</title>');
                Win1.document.writeln('</head>');
                Win1.document.writeln('<body BGCOLOR="#1A599C" TEXT="Black" LEFTMARGIN=0 TOPMARGIN=0>');
                Win1.document.writeln('<FONT FACE="Arial"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Arial" size="-2">');
                Win1.document.writeln('<br>' + msgList[64]);
                /*if (debugOn>0) {
                        Win1.document.writeln('<p>' + msgList[65] + '<br>');
                        Win1.document.writeln(untag(theReply));
                } else {
                        if (theError!="") {
                                Win1.document.writeln('<p>' + msgList[66] + '<br>');
                                Win1.document.writeln(theError);
                        }
                }*/
                Win1.document.write ('<br><a href="javascript:window.close();" ><img src="' + appDir + 'images/fermer.gif" border=0></a>');
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('</body></html>');
                Win1.document.close();
        }
        if (toolMode==4) selectCount=0;
        Win1=null;
        hideRetrieveData();
}


// parse XML response for selected features
function ZoomGarderie(theReply) {
        
        //alert("Ds ZoomGarderie:  theReply:    " + theReply);
        
        setLayerFields(ActiveLayerIndex);
	var theError = getXMLErrorMessage(theReply);
	var fList="";
	var lpos1 = 1;
	var lpos2 = 1;
	var epos = 1;
	var spos = 1;
	var morePoints=true;
	var moreFeatures=true;
	var featureCount = justGetFeatureCount(theReply);
	toolMode = 1;	
	var pos = 0;
	var startpos = 0;
	var endpos = xmlEndPos;
	var stillMore = false
	
	//Prendre en note le contenue du reply pour le copier/coller
	lastTheReplay=theReply;
	
	pos = theReply.indexOf('hasmore="true"',endpos);
	pos=0;
	var tempCount = 0;
	var selectedData="";
	var inData="";
	var xStr="";
	var yStr="";
	var tempString = "";
	var fCount = featureCount;
	selectCount = 0;
	var tempString="";
	var theFrame = "parent.MapFrame";
	if (featureCount > 0) {
		newSelectCount += 1;

		if (showSelectedData) {
			if ((useExternalWindow) || (!useTextFrame)) {
				theFrame = "opener";
				if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
			} else {
			}
			
			if (featureCount == 1) {
				occurence = "Une occurence trouvée";
			} else if (featureCount <= maxFeaturesReturned) {
				occurence = featureCount + " occurences trouvées";
			}
		}
		endpos = 1;
		var posID=0;
		
		
		for (var i=0;i<fCount;i++) {
				var theXYs = getEnvelopeXYs(theReply, endpos)
				selectLeft[selectCount] = theXYs[0];
				selectBottom[selectCount] = theXYs[1];
				selectRight[selectCount] = theXYs[2];
				selectTop[selectCount] = theXYs[3];
				endpos = xmlEndPos;
			inData = parseRecordString(theReply, endpos);
			endpos = xmlEndPos;
			selectedData = inData;
			
			epos = theReply.indexOf("</FEATURE",endpos);
			if (showSelectedData) {
				var showHyper = false;
				if (hyperLinkLayers!=null) {
					for (var s1=0;s1<hyperLinkLayers.length;s1++) {
						if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
					}
				}
					
				var fName1 = getFieldNames(selectedData);
				var fValue1 = getFieldValues(selectedData);
				
				if (LayerName[ActiveLayerIndex] == "Zonage_contour_inf_15k"){
					SelZoneActive[i]=fValue1[2];
				}
				
				selectPoints[selectCount] = getIdValue(fName1, fValue1);
				
				var idFieldNum = -1;
				var shapeFieldNum = -1;
				if (hideIDFieldData) {
					// hide ID column header
					for (var f=0;f<fName1.length;f++) {
						if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
					}
				}
				if (hideShapeFieldData) {
					// hide Shape column header
					for (var f=0;f<fName1.length;f++) {
						if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
					}
				}
				
				if (selectCount==0) {
					for (var f=0;f<fName1.length;f++) {
						if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
							var f2 = -1;
							var sAlias="";
							if (useFieldAlias) {
								for (var f3=0;f3<AliasFieldName.length;f3++) {
									if (AliasFieldName[f3]==fName1[f]) f2 = f3;
								}
							}
							
							if (f2!=-1) {
								sAlias = AliasFieldAlias[f2];
							} else {
								sAlias = fName1[f];
							}
						}
					}
				}
				for (var f=0;f<fName1.length;f++) {
					if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0) || (fName1[f].indexOf("MATRICULE")>=0) || (fName1[f].indexOf("OBJECTID_1")>=0) || (fName1[f].indexOf("X")>=0) || (fName1[f].indexOf("Y")>=0) || (fName1[f].indexOf("CATEGORIE")>=0))
						continue;
					if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
					var isHyper=false;
						if (showHyper) {
							for (var s1=0;s1<hyperLinkFields.length;s1++) {
								if (hyperLinkFields[s1]==fName1[f]) {
									var theLinkURL = currentHyperLinkPrefix + fValue1[f] + currentHyperLinkSuffix;
									isHyper=true;
								}
							}
						}
						var s2 = -1;
						for (var s1=0;s1<LayerFields.length;s1++) {
							if (fName1[f]==LayerFields[s1]) s2=s1;
						}
						if (LayerFieldType[s2]=="91") {
							if (isNaN(fValue1[f])) {
								var theDate = fValue1[f];
							} else {
								var theDateObj = new Date(parseFloat(fValue1[f]));
								var d = theDateObj.toUTCString();
								var theDate = d.replace(/GMT|UTC/,"");
							}
							theDate=null;
						} else {
							// put html entity for spaces so display is correct - browsers trim extra spaces
							if (isHyper) {
								tempString=fValue1[f];
								if (tempString.lastIndexOf("\\") >= 0) {
									tempString = tempString.substring(tempString.lastIndexOf("\\")+1);
									tempString = tempString.replace(/ /g, "&nbsp;");
								} else {
									tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
								if (tempString.lastIndexOf("/") >= 0) {
									tempString = tempString.substring(tempString.lastIndexOf("/")+1);
								}
							} else {
								tempString = fValue1[f].replace(/ /g, "&nbsp;");
							}
						}
					}
				}
				fName1 = null;
				fValue1 = null;
				
			}
			selectCount += 1;
					
		}
		if (showSelectedData) {
			
			if (toolMode!=25) {
				if (queryStartRecord>1) {
					var prevRecord = queryStartRecord - maxFeaturesReturned;
					if (prevRecord<1) prevRecord=1;
				}
				if (stillMore) {
					var nextRecord=featureCount + queryStartRecord;
				}
			}

		}
		zoomToReturnedRecords();
		
		if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)) {
			if ((selectCount==1) && (zoomToSingleSelect)) {			
				var fWidth = selectRight[0] - selectLeft[0];
				var fHeight = selectTop[0] - selectBottom[0];
				var mWMargin = 0;
				var mHMargin = 0;
				if (selectType=="point") {			
					mWMargin = fullWidth * selectPointMargin;
					mHMargin = fullHeight * selectPointMargin;
					if (mWMargin > xDistance/2) {
						mWMargin = xDistance/2;
						mHMargin = yDistance/2;
					}
				} else {
					mWMargin = fWidth * selectMargin;
					mHMargin = fHeight * selectMargin; 
				}
				saveLastExtent();
				eLeft = selectLeft[0] - mWMargin;
				eRight = selectRight[0] + mWMargin;
				eTop = selectTop[0] + mHMargin;
				eBottom = selectBottom[0] - mHMargin;
				
				//alert("Avant sendMapXML");
				//sendMapXML();
			} else {
				if (toolMode != 1) {
					//alert("Avant le else sendMapXML");
					sendMapXML();
				}
			}
			
		}
		
		
		
			
	} else {
		if ((useExternalWindow) || (!useTextFrame)) {
			Win1 = window.open("","QueryWindow","width=575,height=120,scrollbars=yes,resizable=yes");
		} else {
			Win1 = parent.TextFrame;
			Win1.document.open();
		}
		Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
		Win1.document.writeln('	<title>' + titleList[8] + '</title>');
		Win1.document.writeln('</head>');
		Win1.document.writeln('<body BGCOLOR="White" TEXT="Black" LEFTMARGIN=0 TOPMARGIN=0>');
		Win1.document.writeln('<FONT FACE="Arial"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Arial" size="-2">');
		Win1.document.writeln('<br>' + msgList[64]);
		if (debugOn>0) {
			Win1.document.writeln('<p>' + msgList[65] + '<br>');
			Win1.document.writeln(untag(theReply));
		} else {
			if (theError!="") {
				Win1.document.writeln('<p>' + msgList[66] + '<br>');
				Win1.document.writeln(theError);
			}
		}
		Win1.document.writeln('</FONT>');
		Win1.document.writeln('</body></html>');
		Win1.document.close();
	}
	if (toolMode==4) selectCount=0;
	Win1=null;
	hideRetrieveData();
}

// parse XML response for selected features
function displayAttributeDataImage(theReply) {
        //alert("ici");
        setLayerFields(ActiveLayerIndex);
        var theError = getXMLErrorMessage(theReply);
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var epos = 1;
        var spos = 1;
        var morePoints=true;
        var moreFeatures=true;
        var featureCount = justGetFeatureCount(theReply);
        var pos = 0;
        var startpos = 0;
        var endpos = xmlEndPos;
        var stillMore = false
        
        //Prendre en note le contenue du reply pour le copier/coller
        lastTheReplay=theReply;
        
        pos = theReply.indexOf('hasmore="true"',endpos);
        if (pos!=-1) stillMore = true;
        pos=0;
        var tempCount = 0;
        var selectedData="";
        var inData="";
        var xStr="";
        var yStr="";
        var tempString = "";
        var fCount = featureCount;
        selectCount = 0;
        var tempString="";
        var Win1 = parent.TextFrame;
        var theFrame = "parent.MapFrame";
        if (featureCount > 0) {
                newSelectCount += 1;

                if (showSelectedData) {
                        if ((useExternalWindow) || (!useTextFrame)) {
                                
                                Win1 = window.open("","QueryWindow","width=575,height=300,scrollbars=yes,resizable=yes");
                                theFrame = "opener";
                                if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
                        } else {
                                Win1 = parent.TextFrame;
                                Win1.document.open();
                        }
                        Win1.document.open();
                        Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><title>' + titleList[7] + '</title></head>');
                        Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
                        Win1.document.writeln('<center>');
                        Win1.document.writeln('<FONT FACE="Arial" color=white SIZE="-1"><b>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) + '</b></FONT>');
                        Win1.document.writeln('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
                }
                endpos = 1;
                
                var posID=0;
                for (var i=0;i<fCount;i++) {
                        if (toolMode!=4) {
                                var theXYs = getEnvelopeXYs(theReply, endpos)
                                selectLeft[selectCount] = theXYs[0];
                                selectBottom[selectCount] = theXYs[1];
                                selectRight[selectCount] = theXYs[2];
                                selectTop[selectCount] = theXYs[3];
                                endpos = xmlEndPos;
                        }
                        inData = parseRecordString(theReply, endpos);
                        endpos = xmlEndPos;
                        selectedData = inData;
                        
                        epos = theReply.indexOf("</FEATURE",endpos);
                        if (showSelectedData) {
                                var showHyper = false;
                                if (hyperLinkLayers!=null) {
                                        for (var s1=0;s1<hyperLinkLayers.length;s1++) {
                                                if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
                                        }
                                }
                                        
                                var fName1 = getFieldNames(selectedData);
                                var fValue1 = getFieldValues(selectedData);
                                selectPoints[selectCount] = getIdValue(fName1, fValue1);
                                
                                var idFieldNum = -1;
                                var shapeFieldNum = -1;
                                if (hideIDFieldData) {
                                        // hide ID column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
                                        }
                                }
                                if (hideShapeFieldData) {
                                        // hide Shape column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
                                        }
                                }
                                
                                if (selectCount==0) {
                                        Win1.document.write('<tr><th><FONT FACE="Arial" SIZE="-2">' + msgList[86] + '</FONT></a></th>');
                                        Win1.document.writeln('<th>&nbsp;</th>');
                                        var txtMessage = "";
                                        for (var f=0;f<fName1.length;f++) {
                                                if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                        var f2 = -1;
                                                        var sAlias="";
                                                        if (useFieldAlias) {
                                                                for (var f3=0;f3<AliasFieldName.length;f3++) {
                                                                        if (AliasFieldName[f3]==fName1[f]) f2 = f3;
                                                                }
                                                        }
                                                        
                                                        if (f2!=-1) {
                                                                sAlias = AliasFieldAlias[f2];
                                                        } else {
                                                                sAlias = fName1[f];
                                                        }
                                                        
                                                        if ((sAlias == "#ID#") || (sAlias.indexOf("OBJECTID")>=0) || (sAlias.indexOf("objectid")>=0))
                                                                posID=f;
                                                        if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0))
                                                                txtMessage += sAlias + ' ';
                                                }
                                        }
                                        if (txtMessage != "")
                                                Win1.document.writeln('<th><IMG src="http://ville.laval.qc.ca/cgi/str2png.plx?str=' + txtMessage + '"></th>');
                                        Win1.document.writeln('</tr>');
                                }
                                Win1.document.write('<tr><td>');
                                if (toolMode!=4) Win1.document.write('<a href="javascript:' + theFrame + '.showHighlight(' + selectCount + ')">');
                                Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + (selectCount+queryStartRecord) + '</FONT>');
                                if (toolMode!=4) Win1.document.write('</a>');
                                Win1.document.writeln('</td>');
                                Win1.document.writeln('<td><A HREF="javascript:opener.parent.MapFrame.afficherInfoItem(\'' + fName1[posID] + '\',\'' + fValue1[posID] + '\');"><IMG border=0 alt="Identification" src="' + appDir + 'images/identify_1.gif"></A>');
                                
                                if(LayerName[ActiveLayerIndex] == "Role_evaluation_2.5k") {
                                        for (var f=0;f<fName1.length;f++) {     
                                                if (fName1[f].indexOf("MATRICULE") > 0) {
                                                        Win1.document.write('<a target=_blank href="/wlav2/geow.liengeo.print_taxes?p_matricule=' + fValue1[f] + '">');
                                                        //Win1.document.write('<a target=_blank href="/wlav2/geow.frame.show?p_matricule=' + fValue1[f] + '&p_type=taxe">');
                                                        Win1.document.write('<IMG border=0 alt="' + buttonList[67] + '" src="' + appDir + 'images/taxe.jpg"></A>&nbsp;');
                                                }
                                                if (fName1[f].indexOf("MATRICULE") > 0) {
                                                        Win1.document.write('<a target=_blank href="/wlav2/geow.liengeo.print_eval?p_matricule=' + fValue1[f] + '">');
                                                        //Win1.document.write('<a target=_blank href="/wlav2/geow.frame.show?p_matricule=' + fValue1[f] + '&p_type=eval">');
                                                        Win1.document.write('<IMG border=0 alt="' + buttonList[68] + '" src="' + appDir + 'images/eval.jpg"></A>&nbsp;');
                                                }
                                        }
                                }
                                Win1.document.writeln('</td>');
                                var txtMessage = "";
                                var txtTemp= "";
                                for (var f=0;f<fName1.length;f++) {     
                                        if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0))
                                                continue;
                                        if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                txtTemp = '<TD>';
                                                var isHyper=false;
                                                if (showHyper) {
                                                        for (var s1=0;s1<hyperLinkFields.length;s1++) {
                                                                if (hyperLinkFields[s1]==fName1[f]) {
                                                                        var theLinkURL = currentHyperLinkPrefix + fValue1[f] + currentHyperLinkSuffix;
                                                                        if (fValue1[f].toUpperCase().indexOf(".XLS") > 0) {
                                                                                txtTemp += '<a href="' + theLinkURL + '">';
                                                                                txtTemp += '<IMG border=0 src="' + appDir + 'images/excel.gif"></A>&nbsp;';
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".DOC") > 0) {
                                                                                txtTemp += '<a href="' + theLinkURL + '">';
                                                                                txtTemp += '<IMG border=0 src="' + appDir + 'images/word.gif"></A>&nbsp;';
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".PDF") > 0) {
                                                                                txtTemp += '<a href="' + theLinkURL + '">';
                                                                                txtTemp += '<IMG border=0 src="' + appDir + 'images/acrobat.gif"></A>&nbsp;';
                                                                        }
                                                                        txtTemp += '<a href="' + theLinkURL + '" target="_blank">';
                                                                        isHyper=true;
                                                                }
                                                        }
                                                }
                                                if (isHyper) Win1.document.write(txtTemp);
                                                var s2 = -1;
                                                for (var s1=0;s1<LayerFields.length;s1++) {
                                                        if (fName1[f]==LayerFields[s1]) s2=s1;
                                                }
                                                if (LayerFieldType[s2]=="91") {
                                                        if (isNaN(fValue1[f])) {
                                                                var theDate = fValue1[f];
                                                        } else {
                                                                var theDateObj = new Date(parseFloat(fValue1[f]));
                                                                var d = theDateObj.toUTCString();
                                                                var theDate = d.replace(/GMT|UTC/,"");
                                                        }
                                                        if (isHyper) {
                                                                Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + tempString + '</FONT>');
                                                        } else {
                                                                txtMessage += theDate + ' ';
                                                        }
                                                        theDate=null;
                                                } else {
                                                        // put html entity for spaces so display is correct - browsers trim extra spaces
                                                        if (isHyper) {
                                                                tempString=fValue1[f];
                                                                if (tempString.lastIndexOf("\\") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("\\")+1);
                                                                        tempString = tempString.replace(/ /g, "&nbsp;");
                                                                } else {
                                                                        tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
                                                                if (tempString.lastIndexOf("/") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("/")+1);
                                                                }
                                                        } else {
                                                                tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                        }
                                                        if (isHyper) {
                                                                Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + tempString + '</FONT>');
                                                        } else {
                                                                txtMessage += tempString + ' ';
                                                        }
                                                }
                                                if (isHyper) {
                                                        Win1.document.write('</a>');
                                                        Win1.document.writeln('</td>');
                                                }
                                        }
                                }
                                if (txtMessage != "") {
                                        Win1.document.writeln('<td>');
                                        Win1.document.writeln('<IMG src="http://ville.laval.qc.ca/cgi/str2png.plx?str=' + txtMessage + '">');
                                        Win1.document.writeln('</td>');
                                }
                                Win1.document.writeln('</tr>');
                                fName1 = null;
                                fValue1 = null;
                                
                        }
                        selectCount += 1;
                                        
                }
                if (showSelectedData) {
                        
                        Win1.document.writeln('</table><FONT FACE="Arial" SIZE="-2">');
                        if (toolMode!=25) {
                                if (queryStartRecord>1) {
                                        var prevRecord = queryStartRecord - maxFeaturesReturned;
                                        if (prevRecord<1) prevRecord=1;
                                        Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')"><FONT color=white>' + msgList[61] + maxFeaturesReturned + msgList[62] + '</FONT></a>&nbsp;&nbsp;&nbsp;');
                                }
                                if (stillMore) {
                                        var nextRecord=featureCount + queryStartRecord;
                                        Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')"><FONT color=white>' + msgList[63] + '</FONT></a>');
                                }
                        }
                        if ((toolMode!=4) && (toolMode!=25) && (selectCount>1)) {
                                Win1.document.writeln('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b><a href="javascript:' + theFrame + '.zoomToReturnedRecords()"><FONT color=white>Présenter les enregistrements sur la carte</FONT></A></b>');
                        }
                        
                        //Pour faire le copier/coller
                        Win1.document.writeln('<br>');
                        Win1.document.writeln('<b><a href="javascript:' + theFrame + '.copierColler()"><FONT color=white>Copier/coller le résultat</FONT></A></b>');
                        

                        Win1.document.writeln('</font></center></body></html>');
                        Win1.document.close();
                }
                if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)) {
                        if ((selectCount==1) && (zoomToSingleSelect)) {
                                var fWidth = selectRight[0] - selectLeft[0];
                                var fHeight = selectTop[0] - selectBottom[0];
                                var mWMargin = 0;
                                var mHMargin = 0;
                                if (selectType=="point") {                      
                                        mWMargin = fullWidth * selectPointMargin;
                                        mHMargin = fullHeight * selectPointMargin;
                                        if (mWMargin > xDistance/2) {
                                                mWMargin = xDistance/2;
                                                mHMargin = yDistance/2;
                                        }
                                } else {
                                        mWMargin = fWidth * selectMargin;
                                        mHMargin = fHeight * selectMargin; 
                                }
                                saveLastExtent();
                                eLeft = selectLeft[0] - mWMargin;
                                eRight = selectRight[0] + mWMargin;
                                eTop = selectTop[0] + mHMargin;
                                eBottom = selectBottom[0] - mHMargin;
                                
                                sendMapXML();
                        } else {
                                if (toolMode != 1) {
                                        sendMapXML();
                                }
                        }
                }
                        
        } else {
                if ((useExternalWindow) || (!useTextFrame)) {
                        Win1 = window.open("","QueryWindow","width=575,height=120,scrollbars=yes,resizable=yes");
                } else {
                        Win1 = parent.TextFrame;
                        Win1.document.open();
                }
                Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                Win1.document.writeln(' <title>' + titleList[8] + '</title>');
                Win1.document.writeln('</head>');
                Win1.document.writeln('<body BGCOLOR="White" TEXT="Black" LEFTMARGIN=0 TOPMARGIN=0>');
                Win1.document.writeln('<FONT FACE="Arial"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Arial" size="-2">');
                Win1.document.writeln('<br>' + msgList[64]);
                if (debugOn>0) {
                        Win1.document.writeln('<p>' + msgList[65] + '<br>');
                        Win1.document.writeln(untag(theReply));
                } else {
                        if (theError!="") {
                                Win1.document.writeln('<p>' + msgList[66] + '<br>');
                                Win1.document.writeln(theError);
                        }
                }
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('</body></html>');
                Win1.document.close();
        }
        if (toolMode==4) selectCount=0;
        Win1=null;
        hideRetrieveData();
}


function displayAttributeDataImagePointInteret(theReply) {
	//alert("theReply ds displayAttributeDataImagePointInteret    " + theReply);
	setLayerFields(ActiveLayerIndex);
	var theError = getXMLErrorMessage(theReply);
	var fList="";
	var lpos1 = 1;
	var lpos2 = 1;
	var epos = 1;
	var spos = 1;
	var morePoints=true;
	var moreFeatures=true;
	var featureCount = justGetFeatureCount(theReply);
	toolMode = 1;	
	var pos = 0;
	var startpos = 0;
	var endpos = xmlEndPos;
	var stillMore = false
	
	//Prendre en note le contenue du reply pour le copier/coller
	lastTheReplay=theReply;
	
	pos = theReply.indexOf('hasmore="true"',endpos);
	pos=0;
	var tempCount = 0;
	var selectedData="";
	var inData="";
	var xStr="";
	var yStr="";
	var tempString = "";
	var fCount = featureCount;
	selectCount = 0;
	var tempString="";
	var Win1 = parent.TextFrame;
	var theFrame = "parent.MapFrame";
	if (featureCount > 0) {
		newSelectCount += 1;

		if (showSelectedData) {
			if ((useExternalWindow) || (!useTextFrame)) {
				if ((LayerName[ActiveLayerIndex] == "Points_interet_25k") || (LayerName[ActiveLayerIndex] == "Garderie_25k") || (LayerName[ActiveLayerIndex] == "Points_interet_infos_2.5k")){
					Win1 = window.open("","QueryWindow","width=575,height=250,scrollbars=yes,resizable=yes");
				} else {
					Win1 = window.open("","QueryWindow","width=400,height=250,scrollbars=yes,resizable=yes");
				}
				theFrame = "opener";
				if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
			} else {
				Win1 = parent.TextFrame;
				Win1.document.open();
			}
			
			if (featureCount == 1) {
				occurrence = "Une occurrence trouvée";
			} else if (featureCount <= maxFeaturesReturned) {
				occurrence = featureCount + " occurrences trouvées";
			}
			
						
			Win1.document.open();
			Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><title>' + titleList[7] + '</title></head>');
			Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
			Win1.document.writeln('<center>');
			Win1.document.writeln('<FONT FACE="Arial" color=white SIZE="-1"><b>' + occurrence + '</b></FONT>');
			Win1.document.writeln('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
		}
		endpos = 1;
		var posID=0;
		for (var i=0;i<fCount;i++) {
			if (toolMode!=4) {
				var theXYs = getEnvelopeXYs(theReply, endpos)
				selectLeft[selectCount] = theXYs[0];
				selectBottom[selectCount] = theXYs[1];
				selectRight[selectCount] = theXYs[2];
				selectTop[selectCount] = theXYs[3];
				endpos = xmlEndPos;
			}
			inData = parseRecordString(theReply, endpos);
			endpos = xmlEndPos;
			selectedData = inData;
			
			epos = theReply.indexOf("</FEATURE",endpos);
			if (showSelectedData) {
				var showHyper = false;
				if (hyperLinkLayers!=null) {
					for (var s1=0;s1<hyperLinkLayers.length;s1++) {
						if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
					}
				}
					
				var fName1 = getFieldNames(selectedData);
				var fValue1 = getFieldValues(selectedData);
				
				selectPoints[selectCount] = getIdValue(fName1, fValue1);
				
				var idFieldNum = -1;
				var shapeFieldNum = -1;
				if (hideIDFieldData) {
					// hide ID column header
					for (var f=0;f<fName1.length;f++) {
						if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
					}
				}
				if (hideShapeFieldData) {
					// hide Shape column header
					for (var f=0;f<fName1.length;f++) {
						if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
					}
				}
				
				if (selectCount==0) {
					Win1.document.write('<tr><th><FONT FACE="Arial" SIZE="-2">' + msgList[86] + '</FONT></a></th>');
					if(LayerName[ActiveLayerIndex] == "Role_evaluation_2.5k") {
						Win1.document.writeln('<th>&nbsp;</th>');
					}
					for (var f=0;f<fName1.length;f++) {
						if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
							var f2 = -1;
							var sAlias="";
							if (useFieldAlias) {
								for (var f3=0;f3<AliasFieldName.length;f3++) {
									if (AliasFieldName[f3]==fName1[f]) f2 = f3;
								}
							}
							
							if (f2!=-1) {
								sAlias = AliasFieldAlias[f2];
							} else {
								sAlias = fName1[f];
							}
							
							if ((sAlias == "#ID#") || (sAlias.indexOf("OBJECTID")>=0) || (sAlias.indexOf("objectid")>=0))
								posID=f;
							
							if(LayerName[ActiveLayerIndex] == "Role_evaluation_2.5k") {
								if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0) && (fName1[f].indexOf("MATRICULE")<0) && (fName1[f].indexOf("PX")<0) && (fName1[f].indexOf("PY")<0)) {
									Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + sAlias + '</FONT></a></th>');
								}
							}else if ((LayerName[ActiveLayerIndex] == "Points_interet_25k") || (LayerName[ActiveLayerIndex] == "Points_interet_infos_2.5k")){
								if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<=0) && (sAlias.indexOf("objectid")<=0) && (fName1[f].indexOf("X")<=0) && (fName1[f].indexOf("Y")<=0) && (fName1[f].indexOf("CATEGORIE")<=0)) {
									Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + sAlias + '</FONT></a></th>');
								}
							}else if (LayerName[ActiveLayerIndex] == "Garderie_25k"){
								if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<=0) && (sAlias.indexOf("objectid")<=0) && (fName1[f].indexOf("X")<=0) && (fName1[f].indexOf("Y")<=0)) {
									Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + sAlias + '</FONT></a></th>');
								}
							} else {
								if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID_1")<0) && (sAlias.indexOf("objectid")<0) && (sAlias.indexOf("OBJECTID")<0) && (fName1[f].indexOf("MATRICULE")<0)) {
									Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + sAlias + '</FONT></a></th>');
								}
							}
						}
					}
					Win1.document.writeln('</tr>');
				}
				Win1.document.write('<tr><td>');
				if (toolMode!=4) Win1.document.write('<a href="javascript:' + theFrame + '.showHighlight(' + selectCount + ')">');
				Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + (selectCount+queryStartRecord) + '</FONT>');
				if (toolMode!=4) Win1.document.write('</a>');
				Win1.document.writeln('</td>');

				if(LayerName[ActiveLayerIndex] == "Role_evaluation_2.5k") {
					Win1.document.writeln('<td><A HREF="javascript:opener.parent.MapFrame.identifyAffiche(\'' + fValue1[6] + '\',\'' + fValue1[7] + '\');"><IMG border=0 alt="Identification" src="' + appDir + 'images/identify_1.gif"></A>');
				} else {
					//Win1.document.writeln('<td><A HREF="javascript:opener.parent.MapFrame.afficherInfoItem(\'' + fName1[posID] + '\',\'' + fValue1[posID] + '\');"><IMG border=0 alt="Identification" src="' + appDir + 'images/identify_1.gif"></A>');
				}
				
				Win1.document.writeln('</td>');
				
				for (var f=0;f<fName1.length;f++) {
					if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0) || (fName1[f].indexOf("MATRICULE")>=0) || (fName1[f].indexOf("OBJECTID_1")>=0) || (fName1[f].indexOf("X")>=0) || (fName1[f].indexOf("Y")>=0) || (fName1[f].indexOf("CATEGORIE")>=0))
						continue;
					if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
						Win1.document.write('<TD>');
						var isHyper=false;
						if (showHyper) {
							for (var s1=0;s1<hyperLinkFields.length;s1++) {
								if (hyperLinkFields[s1]==fName1[f]) {
									var theLinkURL = currentHyperLinkPrefix + fValue1[f] + currentHyperLinkSuffix;
									if (fValue1[f].toUpperCase().indexOf(".XLS") > 0) {
									        Win1.document.write('<a href="' + theLinkURL + '">');
										Win1.document.write('<IMG border=0 src="' + appDir + 'images/excel.gif"></A>&nbsp;');
									}
									if (fValue1[f].toUpperCase().indexOf(".DOC") > 0) {
									        Win1.document.write('<a href="' + theLinkURL + '">');
										Win1.document.write('<IMG border=0 src="' + appDir + 'images/word.gif"></A>&nbsp;');
									}
									if (fValue1[f].toUpperCase().indexOf(".PDF") > 0) {
									        Win1.document.write('<a href="' + theLinkURL + '">');
										Win1.document.write('<IMG border=0 src="' + appDir + 'images/acrobat.gif"></A>&nbsp;');
									}
									Win1.document.write('<a href="' + theLinkURL + '" target="_blank">');
									isHyper=true;
								}
							}
						}
						var s2 = -1;
						for (var s1=0;s1<LayerFields.length;s1++) {
							if (fName1[f]==LayerFields[s1]) s2=s1;
						}
						if (LayerFieldType[s2]=="91") {
							if (isNaN(fValue1[f])) {
								var theDate = fValue1[f];
							} else {
								var theDateObj = new Date(parseFloat(fValue1[f]));
								var d = theDateObj.toUTCString();
								var theDate = d.replace(/GMT|UTC/,"");
							}
							Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + theDate + '</FONT>');
							
							theDate=null;
						} else {
							// put html entity for spaces so display is correct - browsers trim extra spaces
							if (isHyper) {
								tempString=fValue1[f];
								if (tempString.lastIndexOf("\\") >= 0) {
									tempString = tempString.substring(tempString.lastIndexOf("\\")+1);
									tempString = tempString.replace(/ /g, "&nbsp;");
								} else {
									tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
								if (tempString.lastIndexOf("/") >= 0) {
									tempString = tempString.substring(tempString.lastIndexOf("/")+1);
								}
							} else {
								tempString = fValue1[f].replace(/ /g, "&nbsp;");
							}
							Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + tempString + '</FONT>');
						}
						if (isHyper) Win1.document.write('</a>');
						Win1.document.writeln('</td>');
					}
				}
				Win1.document.writeln('</tr>');
				fName1 = null;
				fValue1 = null;
				
			}
			selectCount += 1;
					
		}
		if ((LayerName[ActiveLayerIndex] == "Points_interet_25k") || (LayerName[ActiveLayerIndex] == "Garderie_25k") || (LayerName[ActiveLayerIndex] == "Points_interet_infos_2.5k")){
			Win1.document.writeln('<br><A HREF="javascript:opener.parent.MapFrame.zoomBack();"><FONT FACE="Arial" color=white SIZE="-1">Revenir à la vue précédente</font></A><br>');	
		}		
		if (showSelectedData) {
			
			Win1.document.writeln('</table><FONT FACE="Arial" SIZE="-2">');
			if (toolMode!=25) {
				if (queryStartRecord>1) {
					var prevRecord = queryStartRecord - maxFeaturesReturned;
					if (prevRecord<1) prevRecord=1;
					Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')"><FONT color=white>' + msgList[61] + maxFeaturesReturned + msgList[62] + '</FONT></a>&nbsp;&nbsp;&nbsp;');
				}
				if (stillMore) {
					var nextRecord=featureCount + queryStartRecord;
					Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')"><FONT color=white>' + msgList[63] + '</FONT></a>');
				}
			}

			Win1.document.writeln('</font></center></body></html>');
			Win1.document.close();
		}

		if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)) {
			if ((selectCount==1) && (zoomToSingleSelect)) {
				var fWidth = selectRight[0] - selectLeft[0];
				var fHeight = selectTop[0] - selectBottom[0];
				var mWMargin = 0;
				var mHMargin = 0;
				if (selectType=="point") {			
					mWMargin = fullWidth * selectPointMargin;
					mHMargin = fullHeight * selectPointMargin;
					if (mWMargin > xDistance/2) {
						mWMargin = xDistance/2;
						mHMargin = yDistance/2;
					}
				} else {
					mWMargin = fWidth * selectMargin;
					mHMargin = fHeight * selectMargin; 
				}
				saveLastExtent();
				eLeft = selectLeft[0] - mWMargin;
				eRight = selectRight[0] + mWMargin;
				eTop = selectTop[0] + mHMargin;
				eBottom = selectBottom[0] - mHMargin;
				//alert("1");
				sendMapXML();
			} else {
				if (toolMode != 1) {
					//alert("2");
					sendMapXML();
				}
			}
			
		}
			
	} else {
		if ((useExternalWindow) || (!useTextFrame)) {
			Win1 = window.open("","QueryWindow","width=575,height=120,scrollbars=yes,resizable=yes");
		} else {
			Win1 = parent.TextFrame;
			Win1.document.open();
		}
		Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
		Win1.document.writeln('	<title>' + titleList[8] + '</title>');
		Win1.document.writeln('</head>');
		Win1.document.writeln('<body BGCOLOR="White" TEXT="Black" LEFTMARGIN=0 TOPMARGIN=0>');
		Win1.document.writeln('<FONT FACE="Arial"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Arial" size="-2">');
		Win1.document.writeln('<br>' + msgList[64]);
		if (debugOn>0) {
			Win1.document.writeln('<p>' + msgList[65] + '<br>');
			Win1.document.writeln(untag(theReply));
		} else {
			if (theError!="") {
				Win1.document.writeln('<p>' + msgList[66] + '<br>');
				Win1.document.writeln(theError);
			}
		}
		Win1.document.writeln('</FONT>');
		Win1.document.writeln('</body></html>');
		Win1.document.close();
	}
	if (toolMode==4) selectCount=0;
	Win1=null;
	hideRetrieveData();
	
	if ((LayerName[ActiveLayerIndex] == "Points_interet_25k") || (LayerName[ActiveLayerIndex] == "Garderie_25k") || (LayerName[ActiveLayerIndex] == "Points_interet_infos_2.5k")){
		toolMode = 4;
	}
}


function displayAttributeDataGarderie(theReply) {
        setLayerFields(ActiveLayerIndex);
        var theError = getXMLErrorMessage(theReply);
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var epos = 1;
        var spos = 1;
        var morePoints=true;
        var moreFeatures=true;
        var featureCount = justGetFeatureCount(theReply);
        var pos = 0;
        var startpos = 0;
        var endpos = xmlEndPos;
        var stillMore = false
        //Prendre en note le contenue du reply pour le copier/coller
        lastTheReplay=theReply;
        pos = theReply.indexOf('hasmore="true"',endpos);
        pos=0;
        var tempCount = 0;
        var selectedData="";
        var inData="";
        var xStr="";
        var yStr="";
        var tempString = "";
        var fCount = featureCount;
        selectCount = 0;
        var tempString="";
        var Win1 = parent.TextFrame;
        var theFrame = "parent.MapFrame";
        if (featureCount > 0) {
                newSelectCount += 1;
                
                if (showSelectedData) {
                        if ((useExternalWindow) || (!useTextFrame)) {
                                Win1 = window.open("","ResultInteret","scrollbars=yes,resizable=yes");        
                                theFrame = "parent.MapFrame";
                                if (parent.MapFrame!=null) theFrame = "parent.parent.parent.parent.MapFrame";
                        } else {
                                Win1 = parent.TextFrame;
                                Win1.document.open();
                        }
                         
                        
                        if (featureCount == 1) {
                                occurrence = "Une occurrence trouvée";
                        } else {
                                occurrence = featureCount + " occurrences trouvées";
                        }
	                
                                                
                        Win1.document.open();
                        Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><link rel="stylesheet" type="text/css" href="normal.css"><title>' + titleList[7] + '</title></head>');
                        Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
                        Win1.document.writeln('<center>');
                        Win1.document.writeln('<FONT FACE="Tahoma" color="#FFFFCC" SIZE="-1"><b>' + occurrence + '</b></FONT>');
                        Win1.document.writeln('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
                }
                endpos = 1;
                var posID=0;
                for (var i=0;i<50;i++) {
                	garderieRendu=50;
                        if (toolMode!=4) {
                                var theXYs = getEnvelopeXYs(theReply, endpos)
                                selectLeft[selectCount] = theXYs[0];
                                selectBottom[selectCount] = theXYs[1];
                                selectRight[selectCount] = theXYs[2];
                                selectTop[selectCount] = theXYs[3];
                                endpos = xmlEndPos;
                        }
                        inData = parseRecordString(theReply, endpos);
                        endpos = xmlEndPos;
                        selectedData = inData;
                        
                        epos = theReply.indexOf("</FEATURE",endpos);
                        if (showSelectedData) {
                                var showHyper = false;
                                if (hyperLinkLayers!=null) {
                                        for (var s1=0;s1<hyperLinkLayers.length;s1++) {
                                                if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
                                        }
                                }
                                        
                                var fName1 = getFieldNames(selectedData);
                                var fValue1 = getFieldValues(selectedData);
                                
                                selectPoints[selectCount] = getIdValue(fName1, fValue1);
                                                                
                                var idFieldNum = -1;
                                var shapeFieldNum = -1;
                                if (hideIDFieldData) {
                                        // hide ID column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
                                        }
                                }
                                if (hideShapeFieldData) {
                                        // hide Shape column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
                                        }
                                }
                                
                                if (selectCount==0) {
                                        Win1.document.write('<tr><th><FONT FACE="Tahoma" SIZE="-2">' + msgList[86] + '</FONT></a></th>');
                                        for (var f=0;f<fName1.length;f++) {
                                                if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                        var f2 = -1;
                                                        var sAlias="";
                                                        if (useFieldAlias) {
                                                                for (var f3=0;f3<AliasFieldName.length;f3++) {
                                                                        if (AliasFieldName[f3]==fName1[f]) f2 = f3;
                                                                }
                                                        }
                                                        
                                                        if (f2!=-1) {
                                                                sAlias = AliasFieldAlias[f2];
                                                        } else {
                                                                sAlias = fName1[f];
                                                        }
                                                        
                                                        if ((sAlias == "#ID#") || (sAlias.indexOf("OBJECTID")>=0) || (sAlias.indexOf("objectid")>=0))
                                                                posID=f;
                                                        
                                                        if(LayerName[ActiveLayerIndex] == "Role_evaluation_2.5k") {
                                                                if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0) && (fName1[f].indexOf("MATRICULE")<0) && (fName1[f].indexOf("PX")<0) && (fName1[f].indexOf("PY")<0)) {
                                                                        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">' + sAlias + '</FONT></a></th>');
                                                                }
                                                        } else {
                                                                if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID_1")<0) && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("CATEGORIE")<0) && (sAlias.indexOf("X")<0) && (sAlias.indexOf("Y")<0)){
                                                                        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">' + sAlias + '</FONT></a></th>');
                                                                }
                                                        }
                                                }
                                        }
                                        Win1.document.writeln('</tr>');
                                }
                                Win1.document.write('<tr><td>');
                                if (toolMode!=4) Win1.document.write('<a href="javascript:' + theFrame + '.showHighlight(' + selectCount + ')">');
                                Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + (selectCount+queryStartRecord) + '</FONT>');
                                if (toolMode!=4) Win1.document.write('</a>');
                                Win1.document.writeln('</td>');
                                for (var f=0;f<fName1.length;f++) {
                                        if (parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) == "Zonage"){
                                                if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0))
                                                        continue;
                                        } else {
                                                if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0) || (fName1[f].indexOf("MATRICULE")>=0) || (fName1[f].indexOf("OBJECTID_1")>=0) || (fName1[f].indexOf("X")>=0) || (fName1[f].indexOf("Y")>=0) || (fName1[f].indexOf("CATEGORIE")>=0))
                                                        continue;
                                        }
					
					//gardeTableau[f]=fValue1[f];

                                        if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                Win1.document.write('<TD>');
                                                var isHyper=false;
                                                if (showHyper) {
                                                        for (var s1=0;s1<hyperLinkFields.length;s1++) {
                                                                if (hyperLinkFields[s1]==fName1[f]) {
                                                                        var theLinkURL = currentHyperLinkPrefix + fValue1[f] + currentHyperLinkSuffix;
                                                                        if (fValue1[f].toUpperCase().indexOf(".XLS") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/excel.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".DOC") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/word.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".PDF") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/acrobat.gif"></A>&nbsp;');
                                                                        }
                                                                        Win1.document.write('<a href="' + theLinkURL + '" target="_blank">');
                                                                        isHyper=true;
                                                                }
                                                        }
                                                }
                                                var s2 = -1;
                                                for (var s1=0;s1<LayerFields.length;s1++) {
                                                        if (fName1[f]==LayerFields[s1]) s2=s1;
                                                }
                                                if (LayerFieldType[s2]=="91") {
                                                        if (isNaN(fValue1[f])) {
                                                                var theDate = fValue1[f];
                                                        } else {
                                                                var theDateObj = new Date(parseFloat(fValue1[f]));
                                                                var d = theDateObj.toUTCString();
                                                                var theDate = d.replace(/GMT|UTC/,"");
                                                        }
                                                        Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + theDate + '</FONT>');
                                                        theDate=null;
                                                } else {
                                                        // put html entity for spaces so display is correct - browsers trim extra spaces
                                                        if (isHyper) {
                                                                tempString=fValue1[f];
                                                                if (tempString.lastIndexOf("\\") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("\\")+1);
                                                                        tempString = tempString.replace(/ /g, "&nbsp;");
                                                                } else {
                                                                        tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
                                                                if (tempString.lastIndexOf("/") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("/")+1);
                                                                }
                                                        } else {
                                                                tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                        }
                                                        Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + tempString + '</FONT>');
                                                }
                                                if (isHyper) Win1.document.write('</a>');
                                                Win1.document.writeln('</td>');
                                        }
                                }
                                Win1.document.writeln('</tr>');
                                fName1 = null;
                                fValue1 = null;
                                
                        }
                        selectCount += 1;
                                        
                }
                             
                if (showSelectedData) {
                        
                        Win1.document.writeln('</table><FONT FACE="Tahoma" SIZE="-2">');
                        if (toolMode!=25) {
                                if (queryStartRecord>1) {
                                        var prevRecord = queryStartRecord - maxFeaturesReturned;
                                        if (prevRecord<1) prevRecord=1;
                                        Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')"><FONT color=white>' + msgList[61] + maxFeaturesReturned + msgList[62] + '</FONT></a>&nbsp;&nbsp;&nbsp;');
                                }
                                if (stillMore) {
                                        var nextRecord=featureCount + queryStartRecord;
                                        Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')"><FONT color=white>' + msgList[63] + '</FONT></a>');
                                }
                        }

                        Win1.document.writeln('</font></center></body></html>');
                        Win1.document.close();
                }
                
                if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)){
			if ((selectCount==1) && (zoomToSingleSelect)) {
				var fWidth = selectRight[0] - selectLeft[0];
				var fHeight = selectTop[0] - selectBottom[0];
				var mWMargin = 0;
				var mHMargin = 0;
				if (selectType=="point") {			
					mWMargin = fullWidth * selectPointMargin;
					mHMargin = fullHeight * selectPointMargin;
					if (mWMargin > xDistance/2) {
						mWMargin = xDistance/2;
						mHMargin = yDistance/2;
					}
				} else {
					mWMargin = fWidth * selectMargin;
					mHMargin = fHeight * selectMargin; 
				}
				saveLastExtent();
				eLeft = selectLeft[0] - mWMargin;
				eRight = selectRight[0] + mWMargin;
				eTop = selectTop[0] + mHMargin;
				eBottom = selectBottom[0] - mHMargin;
				
				sendMapXML();
			} else {
				if (toolMode != 1) {
					sendMapXML();
				}
			}
			
		}
                        
        } else {
                alert(msgList[64]);
        }
        if (toolMode==4) selectCount=0;
        Win1=null;
        hideRetrieveData();
}



// parse XML response for selected features
function displayAttributeDataImage2(theReply) {
	
	//alert("Ds displayAttributeDataImage2       theReply:   " +  theReply );
	
        setLayerFields(ActiveLayerIndex);
        var theError = getXMLErrorMessage(theReply);
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var epos = 1;
        var spos = 1;
        var morePoints=true;
        var moreFeatures=true;
        var featureCount = justGetFeatureCount(theReply);
        var pos = 0;
        var startpos = 0;
        var endpos = xmlEndPos;
        var stillMore = false
        //Prendre en note le contenue du reply pour le copier/coller
        lastTheReplay=theReply;
        pos = theReply.indexOf('hasmore="true"',endpos);
        pos=0;
        var tempCount = 0;
        var selectedData="";
        var inData="";
        var xStr="";
        var yStr="";
        var tempString = "";
        var fCount = featureCount;
        selectCount = 0;
        var tempString="";
        var Win1 = parent.TextFrame;
        var theFrame = "parent.MapFrame";
        if (featureCount > 0) {
                newSelectCount += 1;
                
                if (showSelectedData) {
                        if ((useExternalWindow) || (!useTextFrame)) {
                                if(LayerName[ActiveLayerIndex] == "Role_evaluation_2.5k") {
                                        Win1 = window.open("","ResultMat","scrollbars=yes,resizable=yes");
                                } else if(LayerName[ActiveLayerIndex] == "Cadastre_10k") {
                                        Win1 = window.open("","ResultLot","scrollbars=yes,resizable=yes");
                                } else if(LayerName[ActiveLayerIndex] == "#Parc et berge_perma") {
                                        Win1 = window.open("","ResultParc","scrollbars=yes,resizable=yes");
                                } else if((LayerName[ActiveLayerIndex] == "Points_interet_25k") || (LayerName[ActiveLayerIndex] == "Points_interet_infos_2.5k")) {
                                        //alert("Points_interet_25k");
                                        Win1 = window.open("","ResultInteret","scrollbars=yes,resizable=yes");        
                                } else {
                                	Win1 = window.open("","QueryWindow","width=575,height=300,scrollbars=yes,resizable=yes");
                                	theFrame = "opener";
                                	if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
                                }
                                //theFrame = "opener";
                                //if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
                                theFrame = "parent.MapFrame";
                                if (parent.MapFrame!=null) theFrame = "parent.parent.parent.parent.MapFrame";
                        } else {
                                Win1 = parent.TextFrame;
                                Win1.document.open();
                        }
                         
                        
                        if (featureCount == 1) {
                                occurrence = "Une occurrence trouvée";
                        } else {
                                occurrence = featureCount + " occurrences trouvées";
                        }
	                
                                                
                        Win1.document.open();
                        Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><link rel="stylesheet" type="text/css" href="normal.css"><title>' + titleList[7] + '</title></head>');
                        Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
                        Win1.document.writeln('<center>');
                        if((popo)&&((LayerName[ActiveLayerIndex] == "Points_interet_25k") || (LayerName[ActiveLayerIndex] == "Points_interet_infos_2.5k"))){
				Win1.document.writeln('<FONT FACE="Tahoma" color="#FFFFCC" SIZE="-1">Note: en cas d\'urgence composer le 911</font><br>');
				popo=false;
			}
                        Win1.document.writeln('<FONT FACE="Tahoma" color="#FFFFCC" SIZE="-1"><b>' + occurrence + '</b></FONT>');
                        Win1.document.writeln('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
                }
                endpos = 1;
                var posID=0;
                for (var i=0;i<fCount;i++) {
                	//alert(toolMode);
                        //if (toolMode!=4) {
                        	
                                //Création de l'envelope
                                var theXYs = getEnvelopeXYs(theReply, endpos)
                                selectLeft[selectCount] = theXYs[0];
                                selectBottom[selectCount] = theXYs[1];
                                selectRight[selectCount] = theXYs[2];
                                selectTop[selectCount] = theXYs[3];
                                endpos = xmlEndPos;
                        //}
                        inData = parseRecordString(theReply, endpos);
                        endpos = xmlEndPos;
                        selectedData = inData;
                        
                        epos = theReply.indexOf("</FEATURE",endpos);
                        if (showSelectedData) {
                                var showHyper = false;
                                if (hyperLinkLayers!=null) {
                                        for (var s1=0;s1<hyperLinkLayers.length;s1++) {
                                                if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
                                        }
                                }
                                        
                                var fName1 = getFieldNames(selectedData);
                                var fValue1 = getFieldValues(selectedData);
                                
                                selectPoints[selectCount] = getIdValue(fName1, fValue1);
                                
                                var idFieldNum = -1;
                                var shapeFieldNum = -1;
                                if (hideIDFieldData) {
                                        // hide ID column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
                                        }
                                }
                                if (hideShapeFieldData) {
                                        // hide Shape column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
                                        }
                                }
                                
                                if (selectCount==0) {
                                        Win1.document.write('<tr><th><FONT FACE="Tahoma" SIZE="-2">' + msgList[86] + '</FONT></a></th>');
                                        for (var f=0;f<fName1.length;f++) {
                                                if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                        var f2 = -1;
                                                        var sAlias="";
                                                        if (useFieldAlias) {
                                                                for (var f3=0;f3<AliasFieldName.length;f3++) {
                                                                        if (AliasFieldName[f3]==fName1[f]) f2 = f3;
                                                                }
                                                        }
                                                        
                                                        if (f2!=-1) {
                                                                sAlias = AliasFieldAlias[f2];
                                                        } else {
                                                                sAlias = fName1[f];
                                                        }
                                                        
                                                        if ((sAlias == "#ID#") || (sAlias.indexOf("OBJECTID")>=0) || (sAlias.indexOf("objectid")>=0))
                                                                posID=f;
                                                        
                                                        if(LayerName[ActiveLayerIndex] == "Role_evaluation_2.5k") {
                                                                if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0) && (fName1[f].indexOf("MATRICULE")<0) && (fName1[f].indexOf("PX")<0) && (fName1[f].indexOf("PY")<0)) {
                                                                        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">' + sAlias + '</FONT></a></th>');
                                                                }
                                                        } else {
                                                                if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID_1")<0) && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("CATEGORIE")<0) && (sAlias.indexOf("X")<0) && (sAlias.indexOf("Y")<0) && (sAlias.indexOf("OID")<0)){
                                                                        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">' + sAlias + '</FONT></a></th>');
                                                                }
                                                        }
                                                }
                                        }
                                        Win1.document.writeln('</tr>');
                                }
                                //alert(parent.parent.parent.parent.parent.parent.parent.name);
                                Win1.document.write('<tr><td>');
                                //if (toolMode!=4) Win1.document.write('<a href="javascript:parent.parent.parent.MapFrame.showHighlight(' + selectCount + ');">');
                                //if (toolMode!=4) Win1.document.write('<a href="javascript:' + t + '.showHighlight(' + selectCount + ')">');
                                
                                //if (toolMode!=4) Win1.document.write('<a href="javascript:' + theFrame + '.showHighlight(' + selectCount + ')">');
                                Win1.document.write('<a href="javascript:' + theFrame + '.showHighlight(' + selectCount + ')">');
                                Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + (selectCount+queryStartRecord) + '</FONT>');
                                //if (toolMode!=4) Win1.document.write('</a>');
                                Win1.document.write('</a>');
                                
                                Win1.document.writeln('</td>');
                                for (var f=0;f<fName1.length;f++) {
                                        if (parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) == "Zonage"){
                                                //alert(f);
                                                if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("OID")>=0))
                                                        continue;
                                        } else {
                                                if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0) || (fName1[f].indexOf("MATRICULE")>=0) || (fName1[f].indexOf("OBJECTID_1")>=0) || (fName1[f].indexOf("X")>=0) || (fName1[f].indexOf("Y")>=0) || (fName1[f].indexOf("CATEGORIE")>=0) || (fName1[f].indexOf("OID")>=0))
                                                        continue;
                                        }

                                        if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                Win1.document.write('<TD>');
                                                var isHyper=false;
                                                if (showHyper) {
                                                        for (var s1=0;s1<hyperLinkFields.length;s1++) {
                                                                if (hyperLinkFields[s1]==fName1[f]) {
                                                                        var theLinkURL = currentHyperLinkPrefix + fValue1[f] + currentHyperLinkSuffix;
                                                                        if (fValue1[f].toUpperCase().indexOf(".XLS") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/excel.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".DOC") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/word.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".PDF") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/acrobat.gif"></A>&nbsp;');
                                                                        }
                                                                        Win1.document.write('<a href="' + theLinkURL + '" target="_blank">');
                                                                        isHyper=true;
                                                                }
                                                        }
                                                }
                                                var s2 = -1;
                                                for (var s1=0;s1<LayerFields.length;s1++) {
                                                        if (fName1[f]==LayerFields[s1]) s2=s1;
                                                }
                                                if (LayerFieldType[s2]=="91") {
                                                        if (isNaN(fValue1[f])) {
                                                                var theDate = fValue1[f];
                                                        } else {
                                                                var theDateObj = new Date(parseFloat(fValue1[f]));
                                                                var d = theDateObj.toUTCString();
                                                                var theDate = d.replace(/GMT|UTC/,"");
                                                        }
                                                        Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + theDate + '</FONT>');
                                                        theDate=null;
                                                } else {
                                                        // put html entity for spaces so display is correct - browsers trim extra spaces
                                                        if (isHyper) {
                                                                tempString=fValue1[f];
                                                                if (tempString.lastIndexOf("\\") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("\\")+1);
                                                                        tempString = tempString.replace(/ /g, "&nbsp;");
                                                                } else {
                                                                        tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
                                                                if (tempString.lastIndexOf("/") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("/")+1);
                                                                }
                                                        } else {
                                                                tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                        }
                                                        Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + tempString + '</FONT>');
                                                }
                                                if (isHyper) Win1.document.write('</a>');
                                                Win1.document.writeln('</td>');
                                        }
                                }
                                Win1.document.writeln('</tr>');
                                fName1 = null;
                                fValue1 = null;
                                
                        }
                        selectCount += 1;
                                        
                }
                /*if ((LayerName[ActiveLayerIndex] == "Points_interet_25k") || (LayerName[ActiveLayerIndex] == "Garderie_25k")){
                        Win1.document.writeln('<br><A HREF="javascript:opener.parent.MapFrame.zoomBack();"><FONT FACE="Tahoma" color=white SIZE="-1">Revenir à la vue précédente</font></A><br>');       
                } */              
                if (showSelectedData) {
                        
                        Win1.document.writeln('</table><FONT FACE="Tahoma" SIZE="-2">');
                        if (toolMode!=25) {
                                if (queryStartRecord>1) {
                                        var prevRecord = queryStartRecord - maxFeaturesReturned;
                                        if (prevRecord<1) prevRecord=1;
                                        Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')"><FONT color=white>' + msgList[61] + maxFeaturesReturned + msgList[62] + '</FONT></a>&nbsp;&nbsp;&nbsp;');
                                }
                                if (stillMore) {
                                        var nextRecord=featureCount + queryStartRecord;
                                        Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')"><FONT color=white>' + msgList[63] + '</FONT></a>');
                                }
                        }

                        Win1.document.writeln('</font></center></body></html>');
                        Win1.document.close();
                }
                
                //zoomToReturnedRecords();
                
                /*if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)) {
                        if ((selectCount==1) && (zoomToSingleSelect)) {
                                var fWidth = selectRight[0] - selectLeft[0];
                                var fHeight = selectTop[0] - selectBottom[0];
                                var mWMargin = 0;
                                var mHMargin = 0;
                                
                                
                                if (selectType=="point") {                      
                                        mWMargin = distancezoom;
                                        mHMargin = distancezoom;
                                
                                } else {
                                mWMargin = fWidth * selectMargin;
                                mHMargin = fHeight * selectMargin; 
                                        if (mWMargin < distancezoom) {mWMargin = distancezoom}
                                        if (mHMargin < distancezoom) {mHMargin = distancezoom}
                                }
                                saveLastExtent();
                                eLeft = selectLeft[0] - mWMargin;
                                eRight = selectRight[0] + mWMargin;
                                eTop = selectTop[0] + mHMargin;
                                eBottom = selectBottom[0] - mHMargin;
                                
                                sendMapXML();
                        } else {
                                if (toolMode != 1) {
                                        sendMapXML();
                                }
                        }
                        
                }*/
                
                if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)){
			if ((selectCount==1) && (zoomToSingleSelect)) {
				var fWidth = selectRight[0] - selectLeft[0];
				var fHeight = selectTop[0] - selectBottom[0];
				var mWMargin = 0;
				var mHMargin = 0;
				
				
				//La variable est le ratio de de zoom par rapport à l'enveloppe du feature sélectionné
				//elle est déclarée dans ArcIMSPAram.js  et réinitialisée dans la page ServiceParam.js
				
				//alert("selectType:   "   + selectType);
				//alert("xDistance:   "   + xDistance + "\nselectPointMargin:  " + selectPointMargin + "\nfullWidth:  " + fullWidth);
				if (selectType=="point") {			
					mWMargin = fullWidth * selectPointMargin;
					mHMargin = fullHeight * selectPointMargin;
					if (mWMargin > xDistance/2) {
						mWMargin = xDistance/2;
						mHMargin = yDistance/2;
					}
				} else {
					mWMargin = fWidth * selectMargin;
					mHMargin = fHeight * selectMargin; 
				}
				saveLastExtent();
				eLeft = selectLeft[0] - mWMargin;
				eRight = selectRight[0] + mWMargin;
				eTop = selectTop[0] + mHMargin;
				eBottom = selectBottom[0] - mHMargin;
				//alert("selectLeft[0]t:  " + selectLeft[0] + "\nselectRight[0]:   " + selectRight[0] +  "\nselectTop[0] :   "  + selectTop[0]  +  "\nselectBottom[0]:   "  + selectBottom[0]);
				//alert("mWMargin:  " + mWMargin + "\nmWMargin:   " + mWMargin);
				//alert("eLeft:  " + eLeft + "\neRight:   " + eRight +  "\neTop:   "  + eTop +  "\neBottom:   "  + eBottom);
				sendMapXML();
			} else {
				if (toolMode != 1) {
					//alert("2");
					sendMapXML();
				}
			}
			
		}
                        
        } else {
                //alert(msgList[64]);
                if ((useExternalWindow) || (!useTextFrame)) {
                        Win1 = window.open("","ErrorWindow","width=575,height=120,scrollbars=yes,resizable=yes");
                } else {
                        Win1 = parent.TextFrame;
                        Win1.document.open();
                }
                Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                Win1.document.writeln('<link rel="stylesheet" type="text/css" href="normal.css">');
                Win1.document.writeln(' <title>' + titleList[8] + '</title>');
                Win1.document.writeln('</head>');
                Win1.document.writeln('<body BGCOLOR="#1A599C" LEFTMARGIN=0 TOPMARGIN=0>');
                Win1.document.writeln('<FONT FACE="Tahoma"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Tahoma" size="-2">');
                Win1.document.writeln('<br>' + msgList[64]);
                if (debugOn>0) {
                        Win1.document.writeln('<p>' + msgList[65] + '<br>');
                        Win1.document.writeln(untag(theReply));
                } else {
                        if (theError!="") {
                                Win1.document.writeln('<p>' + msgList[66] + '<br>');
                                Win1.document.writeln(theError);
                        }
                }
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('<FONT FACE="Tahoma" SIZE="-2">');
                Win1.document.writeln('<CENTER><FORM name=fermer>');
                Win1.document.writeln('<INPUT type=button onclick="window.close();" value="' + buttonList[58] + '">');
                Win1.document.writeln('</FORM></CENTER>');
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('</body></html>');
                Win1.document.close();
        }
        if (toolMode==4) selectCount=0;
        Win1=null;
        hideRetrieveData();
}


// parse XML response for selected features
function displayAttributeParc(theReply) {
	//alert("Ds aimsIdentify.js   fct displayAttributeParc   \ntheReply: " + theReply);
	//alert("LayerName[ActiveLayerIndex]:    " + LayerName[ActiveLayerIndex]);
        setLayerFields(ActiveLayerIndex);
        var theError = getXMLErrorMessage(theReply);
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var epos = 1;
        var spos = 1;
        var morePoints=true;
        var moreFeatures=true;
        var featureCount = justGetFeatureCount(theReply);
        //alert("featureCount:   " + featureCount + "\nshowSelectedData:   " + showSelectedData);
        var pos = 0;
        var startpos = 0;
        var endpos = xmlEndPos;
        var stillMore = false
        //Prendre en note le contenue du reply pour le copier/coller
        lastTheReplay=theReply;
        pos = theReply.indexOf('hasmore="true"',endpos);
        pos=0;
        var tempCount = 0;
        var selectedData="";
        var inData="";
        var xStr="";
        var yStr="";
        var tempString = "";
        var fCount = featureCount;
        selectCount = 0;
        var tempString="";
        var Win1 = parent.TextFrame;
        var theFrame = "parent.MapFrame";
        
        
        //Si on affiche les résultats des parcs en distincts(NOM), on doit aller voir si le nom est deja ds le tableau (donne 171 enregistrements)
        //dans le showHighlightPARC, on va passer le NOM en paramètre
        
        //Si on veut tous les parcs (même les doublons (ex.: Parc Pontmain)), on va laisser faire le deja ds le tableau (donne 192 enregistrements)
        //dans le showHighlightPARC, on va passer le OID en paramètre
        
        //si la catégorie est Parc, on doit trier les résultats
	var TabValeurParc= new Array();
	var cptNbParc=0;
	var DejaDsTableau=false;
	
	if (featureCount > 0) {
		endpos = 1;
		for (var i=0;i<fCount;i++) {
			inData = parseRecordString(theReply, endpos);
			endpos = xmlEndPos;
			selectedData = inData;
			var fName1 = getFieldNames(selectedData);
			var fValue1 = getFieldValues(selectedData);
			
			//alert("fName1[0]=" + fValue1[0] + "\nfName1[2]:   " + fValue1[2])
			//TabValeurParc[cptNbParc]=new Array(fValue1[2],fValue1[3],fValue1[4],fValue1[0]);  
			//cptNbParc=cptNbParc+1;
			
			
			DejaDsTableau=false;
			
			//aller voir si le ID_REG est déjà dans le tableau, si oui, on la passe
			if (i==0){
				//alert("fName1[2]:   " +  fName1[2]);
				//on mets le ID_REG dans le tableau
				//alert("fValue1[2]:   " + fValue1);
				TabValeurParc[cptNbParc]=new Array(fValue1[2],fValue1[3],fValue1[4],fValue1[0]);   
				//TabValeurRue[cptNbRue]=new Array(714,"Chemin");
				
				//alert(TabValeurRue[cptNbRue][0]);
				//TabValeurRue[cptNbRue][0]=fValue1[2];
				//TabValeurRue[cptNbRue][1]=fValue1[3];
				cptNbParc=cptNbParc+1;
				//alert("fValue1[2]:   " + fValue1[2]);
				DejaDsTableau=false;
			}else{
				//aller voir si le TabValeurParc est deja dans le tableau, si non, on l'ajoute
				for (var k=0;k<TabValeurParc.length;k++) {
					if (TabValeurParc[k][0]==fValue1[2]){
						DejaDsTableau=true;	
						break;
					}
				}
				//alert(DejaDsTableau);
				if (DejaDsTableau==false){
					//TabValeurRue[cptNbRue]=fValue1[2];
					//TabValeurRue[cptNbRue][0]=fValue1[2];
					//TabValeurRue[cptNbRue][1]=fValue1[3];
					//TabThemeProfil[cptNbRue]=new Array(fValue1[2],fValue1[3]);  
					TabValeurParc[cptNbParc]=new Array(fValue1[2],fValue1[3],fValue1[4],fValue1[0]);  
					//alert("fValue1[2]:   " + fValue1[2]);
					cptNbParc=cptNbParc+1;	
				}
			}
			
			
			fName1 = null;
			fValue1 = null;
		}
	}
	
	//trier le tableau
    	var minpos=0;
	var intermed_0="";
	var intermed_1="";
	var intermed_2="";
	var intermed_3=0;
	
	for (var j=0; j<TabValeurParc.length; j++) {
	      	for (var i=j+1; i<TabValeurParc.length; i++) {
	      		if ((TabValeurParc[j][0]) > (TabValeurParc[i][0])){
	          		//minpos = i;
	          		intermed_0 = TabValeurParc[j][0];
	          		intermed_1 = TabValeurParc[j][1];
	          		intermed_2 = TabValeurParc[j][2];
	          		intermed_3 = TabValeurParc[j][3];
			      	TabValeurParc[j][0] = TabValeurParc[i][0];
			      	TabValeurParc[j][1] = TabValeurParc[i][1];
			      	TabValeurParc[j][2] = TabValeurParc[i][2];
			      	TabValeurParc[j][3] = TabValeurParc[i][3];
			      	TabValeurParc[i][0] = intermed_0;
			      	TabValeurParc[i][1] = intermed_1;
			      	TabValeurParc[i][2] = intermed_2;
			      	TabValeurParc[i][3] = intermed_3;
	          	}
	      	}
	}
       /* for (var j=0; j<TabValeurParc.length; j++) {
		      alert("Nom:   " + j +  "\n" +  TabValeurParc[j][0]);
		}*/
        
        
       if (featureCount > 0) {
		//alert("featureCount:   " + featureCount);
		OkNew = true;
		newSelectCount += 1;
		
		if (showSelectedData) {
			//alert("displayAttributeData()[opening html page]");
			if((LayerName[ActiveLayerIndex] == "Points_interet_25k") || (LayerName[ActiveLayerIndex] == "Points_interet_infos_2.5k")) {
                                //alert("Points_interet_25k");
                                Win1 = window.open("","ResultInteret","scrollbars=yes,resizable=yes");        
                        } else {
                        	Win1 = window.open("","QueryWindow","width=575,height=300,scrollbars=yes,resizable=yes");
                        	theFrame = "opener";
                        	if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
                        }
                        theFrame = "parent.MapFrame";
                        if (parent.MapFrame!=null) theFrame = "parent.parent.parent.parent.MapFrame";
                        
                        
			
			if (TabValeurParc.length == 1) {
				occurence = "Une occurence trouvée";
			} else  {
				occurence = TabValeurParc.length + " occurences trouvées";
			}
			
			Win1.document.open();
			Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><title>' + titleList[7] + '</title></head>');
			Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
			Win1.document.writeln('<center>');
			
			Win1.document.writeln('<FONT FACE="Arial" color=white SIZE="-1"><b>' + occurence + '</b></FONT>');
			if(featureCount>1){
				Win1.document.writeln('<td><table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
			} else {
				Win1.document.writeln('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
			}
		}
		endpos = 1;
		var posID=0;
	
		for (var j=0; j<TabValeurParc.length; j++) {
				
				endpos = 1;
			
				//for (var i=0;i<fCount;i++) {
					
						var theXYs = getEnvelopeXYs(theReply, endpos)
						selectLeft[selectCount] = theXYs[0];
						selectBottom[selectCount] = theXYs[1];
						selectRight[selectCount] = theXYs[2];
						selectTop[selectCount] = theXYs[3];
						endpos = xmlEndPos;
					inData = parseRecordString(theReply, endpos);
					endpos = xmlEndPos;
					selectedData = inData;
					
					epos = theReply.indexOf("</FEATURE",endpos);
					if (showSelectedData) {
						//alert("2\n" + selectedData);
						var showHyper = false;
						if (hyperLinkLayers!=null) {
							for (var s1=0;s1<hyperLinkLayers.length;s1++) {
								if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
							}
						}
							
						var fName1 = getFieldNames(selectedData);
						var fValue1 = getFieldValues(selectedData);
						
						
						
						
						var DejaDsTableau=false;

						selectPoints[selectCount] = getIdValue(fName1, fValue1);
						
						
						var idFieldNum = -1;
						var shapeFieldNum = -1;
						if (hideIDFieldData) {
							// hide ID column header
							for (var f=0;f<fName1.length;f++) {
								if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
							}
						}
						if (hideShapeFieldData) {
							// hide Shape column header
							for (var f=0;f<fName1.length;f++) {
								if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
							}
						}
						
						if (selectCount==0) {
							Win1.document.write('<tr><th><FONT FACE="Arial" SIZE="-2">' + msgList[86] + '</FONT></a></th>');
							//Win1.document.writeln('<th>&nbsp;</th>');
							for (var f=0;f<fName1.length;f++) {
								if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
									var f2 = -1;
									var sAlias="";
									if (useFieldAlias) {
										for (var f3=0;f3<AliasFieldName.length;f3++) {
											if (AliasFieldName[f3]==fName1[f]) f2 = f3;
										}
									}
									
									if (f2!=-1) {
										//Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + AliasFieldAlias[f2] + '</FONT></a></th>');
										sAlias = AliasFieldAlias[f2];
									} else {
										//Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + fName1[f] + '</FONT></a></th>');
										sAlias = fName1[f];
									}
									
									//alert("sAlias:   " + sAlias);
									
									if ((sAlias == "#ID#") || (sAlias.indexOf("OBJECTID")>=0) || (sAlias.indexOf("objectid")>=0))
										posID=f;
									if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0) && (sAlias.indexOf("MATRICU")<0) && (sAlias.indexOf("ID_DICT")<0) && (sAlias.indexOf("Y")<0) && (sAlias.indexOf("X")<0))
									//if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0) && (sAlias.indexOf("MATRICU")<0))
										//Win1.document.writeln('<th><IMG src="http://ville.laval.qc.ca/cgi/str2png.plx?str=' + sAlias + '"></th>');
										Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + sAlias + '</FONT></a></th>');
								}
							}
							Win1.document.writeln('</tr>');
						}
						
						//if (TabValeurParc[j][0]==fValue1[2]) {
							
							
							Win1.document.write('<tr><td>');
							//if (toolMode!=4) Win1.document.write('<a href="javascript:' + theFrame + '.showHighlight(' + fValue1[2] + ')">');
							//alert(TabValeurParc[j][0]);
							//if (toolMode!=4) Win1.document.write('<a href="javascript:' + theFrame + '.showHighlightPARC(' + TabValeurParc[j][3] + ')">');
							
							
							//alert("theFrame:   " + theFrame);
							if (toolMode!=4) Win1.document.write('<a href="javascript:' + theFrame + '.showHighlightPARC(\''   +  TabValeurParc[j][0]    + '\')">');
							//if (toolMode!=4) Win1.document.write(fValue1[2]);
							Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + (j+1) + '</FONT>');
							//Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + (fValue1[2]) + '</FONT>');
							if (toolMode!=4) Win1.document.write('</a>');
							Win1.document.writeln('</td>');
							
							
							//alert(TabValeurParc[j][0]);
								Win1.document.writeln('<td><FONT FACE="Arial" SIZE="-2">' + TabValeurParc[j][0] + '</FONT></td>');
								Win1.document.writeln('<td><FONT FACE="Arial" SIZE="-2">' + TabValeurParc[j][1] + '</FONT></td>');
								Win1.document.writeln('<td><FONT FACE="Arial" SIZE="-2">' + TabValeurParc[j][2] + '</FONT></td>');
								Win1.document.writeln('</tr>');	
						fName1 = null;
						fValue1 = null;
					}
					selectCount += 1;
		}
		if (showSelectedData) {
			
			Win1.document.writeln('</table></td><FONT FACE="Arial" SIZE="-2">');
			if (toolMode!=25) {
				if (queryStartRecord>1) {
					var prevRecord = queryStartRecord - maxFeaturesReturned;
					if (prevRecord<1) prevRecord=1;
					Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')"><FONT color=white>' + msgList[61] + maxFeaturesReturned + msgList[62] + '</FONT></a>&nbsp;&nbsp;&nbsp;');
				}
				if (stillMore) {
					var nextRecord=featureCount + queryStartRecord;
					Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')"><FONT color=white>' + msgList[63] + '</FONT></a>');
				}
			}
			Win1.document.writeln('</font></center></body></html>');
			Win1.document.close();
		}
		if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)) {
			if ((selectCount==1) && (zoomToSingleSelect)) {
				var fWidth = selectRight[0] - selectLeft[0];
				var fHeight = selectTop[0] - selectBottom[0];
				var mWMargin = 0;
				var mHMargin = 0;
				
				
				if (selectType=="point") {			
					mWMargin = distancezoom;
					mHMargin = distancezoom;
				
				} else {
				mWMargin = fWidth * selectMargin;
				mHMargin = fHeight * selectMargin; 
					if (mWMargin < distancezoom) {mWMargin = distancezoom}
					if (mHMargin < distancezoom) {mHMargin = distancezoom}
				}
				saveLastExtent();
				eLeft = selectLeft[0] - mWMargin;
				eRight = selectRight[0] + mWMargin;
				eTop = selectTop[0] + mHMargin;
				eBottom = selectBottom[0] - mHMargin;
				
				sendMapXML();
			} else {
				if (toolMode != 1) {
					sendMapXML();
				}
			}
		}
			
	} else {
		if(LayerName[ActiveLayerIndex] == "Role_evaluation_2.5k") {
			var nrue= ElementRue.toUpperCase();
			var theString='RC_NOMRUE LIKE \"' + nrue + '%\"';
			//alert(theString);
			parent.TOC2Frame.TOCFrame.setActiveNomLayer('Role_evaluation_2.5k'); 
        		sendQueryStringMode(theString,1015);
					
		} else {
			
			alert(msgList[64]);
		}
		
	}
	
	//alert("TabValeurRue:   " + TabValeurRue);
	
	if (toolMode==4) selectCount=0;
	Win1=null;
	hideRetrieveData(); 
        
        
}

function displayAttributeParc_ZOOMTO(theReply) {
	//alert("displayAttributeParc_ZOOMTO " + theReply);
	
	
	
	showSelectedData=false;
	
	setLayerFields(ActiveLayerIndex);
	var theError = getXMLErrorMessage(theReply);
	var fList="";
	var lpos1 = 1;
	var lpos2 = 1;
	var epos = 1;
	var spos = 1;
	var morePoints=true;
	var moreFeatures=true;
	var featureCount = justGetFeatureCount(theReply);
	var occurence="";
	toolMode=0;
	var pos = 0;
	var startpos = 0;
	var endpos = xmlEndPos;
	var stillMore = false
	
	//Prendre en note le contenue du reply pour le copier/coller
	lastTheReplay=theReply;
	
	pos = theReply.indexOf('hasmore="true"',endpos);
	//if (pos!=-1) stillMore = true;
	//if (pos!=-1) stillMore = false;
	pos=0;
	var tempCount = 0;
	var selectedData="";
	var inData="";
	var xStr="";
	var yStr="";
	var tempString = "";
	var fCount = featureCount;
	//alert("displayAttributeData()[featurecount=" + featureCount + "]");
	selectCount = 0;
	var tempString="";
	var Win1 = parent.TextFrame;
	var theFrame = "parent.MapFrame";
	if (featureCount > 0) {
		ElementCivique="";
		ElementRue="";
		ElementLot="";
		ElementMat="";
		ElementVoie="";
		ElementZone="";
		OkNew = true;
		newSelectCount += 1;

		if (showSelectedData) {
			//alert("displayAttributeData()[opening html page]");
			if ((useExternalWindow) || (!useTextFrame)) {
				if (LayerName[ActiveLayerIndex] == "Lots_renoves_2.5k"){
					Win1 = window.open("","QueryWindow","width=150,height=150,scrollbars=yes,resizable=yes");
				} else {
					Win1 = window.open("","QueryWindow","width=400,height=150,scrollbars=yes,resizable=yes");
				}
				theFrame = "opener";
				if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
			} else {
				Win1 = parent.TextFrame;
				Win1.document.open();
			}
			
			occurence = featureCount + " occurences trouvées";
			if (featureCount == 1) {
				occurence = "Une occurence trouvée";
			} else if (featureCount <= maxFeaturesReturned) {
				occurence = featureCount + " occurences trouvées";
			}
			
						
			Win1.document.open();
			Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><title>' + titleList[7] + '</title></head>');
			Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
			Win1.document.writeln('<center>');
			//Win1.document.writeln('<FONT FACE="Arial" color=white SIZE="-1"><b>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) + occurence + '</b></FONT>');
			Win1.document.writeln('<FONT FACE="Arial" color=white SIZE="-1">'+ occurence +'<b></b></FONT>');
			Win1.document.writeln('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
		}
		endpos = 1;
		var posID=0;
		for (var i=0;i<fCount;i++) {
			
			//alert(endpos);
			//if (toolMode!=4) {
				var theXYs = getEnvelopeXYs(theReply, endpos)
				selectLeft[selectCount] = theXYs[0];
				selectBottom[selectCount] = theXYs[1];
				selectRight[selectCount] = theXYs[2];
				selectTop[selectCount] = theXYs[3];
				endpos = xmlEndPos;
			//}
			//alert(endpos);
			inData = parseRecordString(theReply, endpos);
			endpos = xmlEndPos;
			//selectedData = clearLeadingSpace(inData);
			selectedData = inData;
			
			epos = theReply.indexOf("</FEATURE",endpos);
			if (showSelectedData) {
				//alert("2\n" + selectedData);
				var showHyper = false;
				if (hyperLinkLayers!=null) {
					for (var s1=0;s1<hyperLinkLayers.length;s1++) {
						if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
					}
				}
					
				var fName1 = getFieldNames(selectedData);
				var fValue1 = getFieldValues(selectedData);
				//alert(fValue1);
				selectPoints[selectCount] = getIdValue(fName1, fValue1);
				
				
				var idFieldNum = -1;
				var shapeFieldNum = -1;
				if (hideIDFieldData) {
					// hide ID column header
					for (var f=0;f<fName1.length;f++) {
						if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
					}
				}
				if (hideShapeFieldData) {
					// hide Shape column header
					for (var f=0;f<fName1.length;f++) {
						if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
					}
				}
				
				if (selectCount==0) {
					Win1.document.write('<tr><th><FONT FACE="Arial" SIZE="-2">' + msgList[86] + '</FONT></a></th>');
					//Win1.document.writeln('<th>&nbsp;</th>');
					for (var f=0;f<fName1.length;f++) {
						if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
							var f2 = -1;
							var sAlias="";
							if (useFieldAlias) {
								for (var f3=0;f3<AliasFieldName.length;f3++) {
									if (AliasFieldName[f3]==fName1[f]) f2 = f3;
								}
							}
							
							if (f2!=-1) {
								//Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + AliasFieldAlias[f2] + '</FONT></a></th>');
								sAlias = AliasFieldAlias[f2];
							} else {
								//Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + fName1[f] + '</FONT></a></th>');
								sAlias = fName1[f];
							}
							
							if ((sAlias == "#ID#") || (sAlias.indexOf("OBJECTID")>=0) || (sAlias.indexOf("objectid")>=0))
								posID=f;
							if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0) && (sAlias.indexOf("MATRICU")<=0) && (sAlias.indexOf("OID")<=0) && (sAlias.indexOf("ID_REG")<=0))
								//Win1.document.writeln('<th><IMG src="http://ville.laval.qc.ca/cgi/str2png.plx?str=' + sAlias + '"></th>');
								//alert("sAlias:   " + sAlias);
								Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + sAlias + '</FONT></a></th>');
						}
					}
					Win1.document.writeln('</tr>');
				}
				Win1.document.write('<tr><td>');
				//alert(fValue1);
				if (toolMode!=4) Win1.document.write('<a href="javascript:' + theFrame + '.showHighlight(' + selectCount + ')">');
				Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + (selectCount+queryStartRecord) + '</FONT>');
				if (toolMode!=4) Win1.document.write('</a>');
				Win1.document.writeln('</td>');
				for (var f=0;f<fName1.length;f++) {	
					if (fName1[f].indexOf("INCLUS_EXCLUS")>=0){
						if (fValue1[6] == 1) {
							//Win1.document.writeln('<TD><IMG border=0 alt="Secteur d`application" src="' + appDir + 'images/appl.gif"></TD>');	
							Win1.document.writeln('<TD align="center"><FONT FACE="Arial" SIZE="2" color=red><b>Oui</b></font></TD>');	
						} else if ((fValue1[6] == 0) || (fValue1[6] == 2)) {
							Win1.document.writeln('<TD align="center"><FONT FACE="Arial" SIZE="2"color=red><b>Non</b></font></TD>');
							//Win1.document.writeln('<TD><IMG border=0 alt="Secteur d`application" src="' + appDir + 'images/nonad.gif"></TD>');	
							//Win1.document.writeln('<td></td>');
						}
					} else {
					
					if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0) || (fName1[f].indexOf("MATRICU")>=0) || (fName1[f].indexOf("INCLUS_EXCLUS")>=0) || (fName1[f].indexOf("OID")>=0) || (fName1[f].indexOf("ID_REG")>=0))
						continue;
					if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
						
						Win1.document.write('<TD>');
						var isHyper=false;
						if (showHyper) {
							for (var s1=0;s1<hyperLinkFields.length;s1++) {
								if (hyperLinkFields[s1]==fName1[f]) {
									var theLinkURL = currentHyperLinkPrefix + fValue1[f] + currentHyperLinkSuffix;
									//alert("valeur du fichier : " + fValue1[f]);
									if (fValue1[f].toUpperCase().indexOf(".XLS") > 0) {
									        Win1.document.write('<a href="' + theLinkURL + '">');
										Win1.document.write('<IMG border=0 src="' + appDir + 'images/excel.gif"></A>&nbsp;');
									}
									if (fValue1[f].toUpperCase().indexOf(".DOC") > 0) {
									        Win1.document.write('<a href="' + theLinkURL + '">');
										Win1.document.write('<IMG border=0 src="' + appDir + 'images/word.gif"></A>&nbsp;');
									}
									if (fValue1[f].toUpperCase().indexOf(".PDF") > 0) {
									        Win1.document.write('<a href="' + theLinkURL + '">');
										Win1.document.write('<IMG border=0 src="' + appDir + 'images/acrobat.gif"></A>&nbsp;');
									}
									Win1.document.write('<a href="' + theLinkURL + '" target="_blank">');
									isHyper=true;
								}
							}
						}
						var s2 = -1;
						for (var s1=0;s1<LayerFields.length;s1++) {
							//alert(LayerFields[s1]);
							if (fName1[f]==LayerFields[s1]) s2=s1;
						}
						if (LayerFieldType[s2]=="91") {
							//alert(fName1[f]);
							if (isNaN(fValue1[f])) {
								var theDate = fValue1[f];
							} else {
								//var theDate = new Date(parseInt(fValue1[f]));
								var theDateObj = new Date(parseFloat(fValue1[f]));
								var d = theDateObj.toUTCString();
								var theDate = d.replace(/GMT|UTC/,"");
							}
							Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + theDate + '</FONT>');
							//Win1.document.writeln('<IMG src="http://ville.laval.qc.ca/cgi/str2png.plx?str=' + theDate+ '">');
							
							theDate=null;
						} else {
							// put html entity for spaces so display is correct - browsers trim extra spaces
							if (isHyper) {
								tempString=fValue1[f];
								if (tempString.lastIndexOf("\\") >= 0) {
									tempString = tempString.substring(tempString.lastIndexOf("\\")+1);
									tempString = tempString.replace(/ /g, "&nbsp;");
								} else {
									tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
								if (tempString.lastIndexOf("/") >= 0) {
									tempString = tempString.substring(tempString.lastIndexOf("/")+1);
								}
							} else {
								tempString = fValue1[f].replace(/ /g, "&nbsp;");
							}
							Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + tempString + '</FONT>');
							//Win1.document.writeln('<IMG src="http://ville.laval.qc.ca/cgi/str2png.plx?str=' + tempString + '">');
							//Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + fValue1[f] + '</FONT>');
						}
						if (isHyper) Win1.document.write('</a>');
						Win1.document.writeln('</td>');
					}
					}
				}
				
				Win1.document.writeln('</tr>');
				fName1 = null;
				fValue1 = null;
				
			}
			selectCount += 1;
					
		}
		if (showSelectedData) {
			
			Win1.document.writeln('</table><FONT FACE="Arial" SIZE="-2">');
			if (toolMode!=25) {
				if (queryStartRecord>1) {
					var prevRecord = queryStartRecord - maxFeaturesReturned;
					if (prevRecord<1) prevRecord=1;
					Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')"><FONT color=white>' + msgList[61] + maxFeaturesReturned + msgList[62] + '</FONT></a>&nbsp;&nbsp;&nbsp;');
				}
				if (stillMore) {
					var nextRecord=featureCount + queryStartRecord;
					Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')"><FONT color=white>' + msgList[63] + '</FONT></a>');
				}
			}
			

			Win1.document.writeln('</font></center></body></html>');
			Win1.document.close();
		}
		//alert("toolMode:" + toolMode);


			
	} else {
		
		if(LayerName[ActiveLayerIndex] == "Role_PAF_2006_2.5k") {
			var nrue= ElementRue.toUpperCase();
			var theString='RC_NOMRUE LIKE \"' + nrue + '%\"';
			//alert(theString);
			parent.TOC2Frame.TOCFrame.setActiveNomLayer('Role_PAF_2006_2.5k'); 
        		sendQueryStringMode(theString,1015);
					
		} else {
			
			alert(msgList[64]);
		}
		//alert(msgList[64]);
	}
	if (toolMode==4) selectCount=0;
	Win1=null;
	hideRetrieveData();
}



function RechercheGarderie(theReply) {
        setLayerFields(ActiveLayerIndex);
        var theError = getXMLErrorMessage(theReply);
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var epos = 1;
        var spos = 1;
        var morePoints=true;
        var moreFeatures=true;
        var featureCount = justGetFeatureCount(theReply);
        var pos = 0;
        var startpos = 0;
        var endpos = xmlEndPos;
        var stillMore = false
        //Prendre en note le contenue du reply pour le copier/coller
        lastTheReplay=theReply;
        pos = theReply.indexOf('hasmore="true"',endpos);
        pos=0;
        var tempCount = 0;
        var selectedData="";
        var inData="";
        var xStr="";
        var yStr="";
        var tempString = "";
        var fCount = featureCount;
        selectCount = 0;
        var tempString="";
        var Win1 = parent.TextFrame;
        var theFrame = "parent.MapFrame";
        if (featureCount > 0) {
                newSelectCount += 1;
                
                if (showSelectedData) {
                        if ((useExternalWindow) || (!useTextFrame)) {
                                Win1 = window.open("","ResultInteret","scrollbars=yes,resizable=yes");        
                                theFrame = "parent.MapFrame";
                                if (parent.MapFrame!=null) theFrame = "parent.parent.parent.parent.MapFrame";
                        } else {
                                Win1 = parent.TextFrame;
                                Win1.document.open();
                        }
                         
                        
                        if (featureCount == 1) {
                                occurrence = "Une occurrence trouvée";
                        } else {
                                occurrence = featureCount + " occurrences trouvées";
                        }
	                
                                                
                        Win1.document.open();
                        Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><link rel="stylesheet" type="text/css" href="normal.css"><title>' + titleList[7] + '</title></head>');
                        Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
                        Win1.document.writeln('<center>');
                        Win1.document.writeln('<FONT FACE="Tahoma" color="#FFFFCC" SIZE="-1"><b>' + occurrence + '</b></FONT>');
                        Win1.document.writeln('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
                }
                endpos = 1;
                var posID=0;
                
                for (var i=0;i<50;i++) {
                        if (toolMode!=4) {
                                var theXYs = getEnvelopeXYs(theReply, endpos)
                                selectLeft[selectCount] = theXYs[0];
                                selectBottom[selectCount] = theXYs[1];
                                selectRight[selectCount] = theXYs[2];
                                selectTop[selectCount] = theXYs[3];
                                endpos = xmlEndPos;
                        }
                        inData = parseRecordString(theReply, endpos);
                        endpos = xmlEndPos;
                        selectedData = inData;
                        
                        epos = theReply.indexOf("</FEATURE",endpos);
                        if (showSelectedData) {
                                var showHyper = false;
                                if (hyperLinkLayers!=null) {
                                        for (var s1=0;s1<hyperLinkLayers.length;s1++) {
                                                if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
                                        }
                                }
                                        
                                var fName1 = getFieldNames(selectedData);
                                var fValue1 = getFieldValues(selectedData);
                                
                                selectPoints[selectCount] = getIdValue(fName1, fValue1);
                                
                                var idFieldNum = -1;
                                var shapeFieldNum = -1;
                                if (hideIDFieldData) {
                                        // hide ID column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
                                        }
                                }
                                if (hideShapeFieldData) {
                                        // hide Shape column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
                                        }
                                }
                                
                                if (selectCount==0) {
                                        Win1.document.write('<tr><th><FONT FACE="Tahoma" SIZE="-2">' + msgList[86] + '</FONT></a></th>');
                                        for (var f=0;f<fName1.length;f++) {
                                                if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                        var f2 = -1;
                                                        var sAlias="";
                                                        if (useFieldAlias) {
                                                                for (var f3=0;f3<AliasFieldName.length;f3++) {
                                                                        if (AliasFieldName[f3]==fName1[f]) f2 = f3;
                                                                }
                                                        }
                                                        
                                                        if (f2!=-1) {
                                                                sAlias = AliasFieldAlias[f2];
                                                        } else {
                                                                sAlias = fName1[f];
                                                        }
                                                        
                                                        if ((sAlias == "#ID#") || (sAlias.indexOf("OBJECTID")>=0) || (sAlias.indexOf("objectid")>=0))
                                                                posID=f;
                                                        
                                                        if(LayerName[ActiveLayerIndex] == "Role_evaluation_2.5k") {
                                                                if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0) && (fName1[f].indexOf("MATRICULE")<0) && (fName1[f].indexOf("PX")<0) && (fName1[f].indexOf("PY")<0)) {
                                                                        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">' + sAlias + '</FONT></a></th>');
                                                                }
                                                        } else {
                                                                if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID_1")<0) && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("CATEGORIE")<0) && (sAlias.indexOf("X")<0) && (sAlias.indexOf("Y")<0)){
                                                                        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">' + sAlias + '</FONT></a></th>');
                                                                }
                                                        }
                                                }
                                        }
                                        Win1.document.writeln('</tr>');
                                }
                                Win1.document.write('<tr><td>');
                                Win1.document.write('<a href="javascript:' + theFrame + '.showHighlight(' + selectCount + ')">');
                                Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + (selectCount+queryStartRecord) + '</FONT>');
                                Win1.document.write('</a>');
                                
                                Win1.document.writeln('</td>');
                                for (var f=0;f<fName1.length;f++) {
                                        if (parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) == "Zonage"){
                                                if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0))
                                                        continue;
                                        } else {
                                                if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0) || (fName1[f].indexOf("MATRICULE")>=0) || (fName1[f].indexOf("OBJECTID_1")>=0) || (fName1[f].indexOf("X")>=0) || (fName1[f].indexOf("Y")>=0) || (fName1[f].indexOf("CATEGORIE")>=0))
                                                        continue;
                                        }

                                        if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                Win1.document.write('<TD>');
                                                var isHyper=false;
                                                if (showHyper) {
                                                        for (var s1=0;s1<hyperLinkFields.length;s1++) {
                                                                if (hyperLinkFields[s1]==fName1[f]) {
                                                                        var theLinkURL = currentHyperLinkPrefix + fValue1[f] + currentHyperLinkSuffix;
                                                                        if (fValue1[f].toUpperCase().indexOf(".XLS") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/excel.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".DOC") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/word.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".PDF") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/acrobat.gif"></A>&nbsp;');
                                                                        }
                                                                        Win1.document.write('<a href="' + theLinkURL + '" target="_blank">');
                                                                        isHyper=true;
                                                                }
                                                        }
                                                }
                                                var s2 = -1;
                                                for (var s1=0;s1<LayerFields.length;s1++) {
                                                        if (fName1[f]==LayerFields[s1]) s2=s1;
                                                }
                                                if (LayerFieldType[s2]=="91") {
                                                        if (isNaN(fValue1[f])) {
                                                                var theDate = fValue1[f];
                                                        } else {
                                                                var theDateObj = new Date(parseFloat(fValue1[f]));
                                                                var d = theDateObj.toUTCString();
                                                                var theDate = d.replace(/GMT|UTC/,"");
                                                        }
                                                        Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + theDate + '</FONT>');
                                                        theDate=null;
                                                } else {
                                                        // put html entity for spaces so display is correct - browsers trim extra spaces
                                                        if (isHyper) {
                                                                tempString=fValue1[f];
                                                                if (tempString.lastIndexOf("\\") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("\\")+1);
                                                                        tempString = tempString.replace(/ /g, "&nbsp;");
                                                                } else {
                                                                        tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
                                                                if (tempString.lastIndexOf("/") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("/")+1);
                                                                }
                                                        } else {
                                                                tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                        }
                                                        Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + tempString + '</FONT>');
                                                }
                                                if (isHyper) Win1.document.write('</a>');
                                                Win1.document.writeln('</td>');
                                        }
                                }
                                Win1.document.writeln('</tr>');
                                fName1 = null;
                                fValue1 = null;
                                
                        }
                        selectCount += 1;
                                        
                }
                
                Win1.document.write('<a href="javascript:' + theFrame + '.SuivantGarderie();">');
                Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">Suivant</FONT>');
                Win1.document.write('</a>');  
                if (showSelectedData) {
                        
                        Win1.document.writeln('</table><FONT FACE="Tahoma" SIZE="-2">');
                        if (toolMode!=25) {
                                if (queryStartRecord>1) {
                                        var prevRecord = queryStartRecord - maxFeaturesReturned;
                                        if (prevRecord<1) prevRecord=1;
                                        Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')"><FONT color=white>' + msgList[61] + maxFeaturesReturned + msgList[62] + '</FONT></a>&nbsp;&nbsp;&nbsp;');
                                }
                                if (stillMore) {
                                        var nextRecord=featureCount + queryStartRecord;
                                        Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')"><FONT color=white>' + msgList[63] + '</FONT></a>');
                                }
                        }

                        Win1.document.writeln('</font></center></body></html>');
                        Win1.document.close();
                }
                
                if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)){
			if ((selectCount==1) && (zoomToSingleSelect)) {
				var fWidth = selectRight[0] - selectLeft[0];
				var fHeight = selectTop[0] - selectBottom[0];
				var mWMargin = 0;
				var mHMargin = 0;
				if (selectType=="point") {			
					mWMargin = fullWidth * selectPointMargin;
					mHMargin = fullHeight * selectPointMargin;
					if (mWMargin > xDistance/2) {
						mWMargin = xDistance/2;
						mHMargin = yDistance/2;
					}
				} else {
					mWMargin = fWidth * selectMargin;
					mHMargin = fHeight * selectMargin; 
				}
				saveLastExtent();
				eLeft = selectLeft[0] - mWMargin;
				eRight = selectRight[0] + mWMargin;
				eTop = selectTop[0] + mHMargin;
				eBottom = selectBottom[0] - mHMargin;
				
				sendMapXML();
			} else {
				if (toolMode != 1) {
					sendMapXML();
				}
			}
			
		}
	   
        } else {
                if ((useExternalWindow) || (!useTextFrame)) {
                        Win1 = window.open("","ErrorWindow","width=575,height=120,scrollbars=yes,resizable=yes");
                } else {
                        Win1 = parent.TextFrame;
                        Win1.document.open();
                }
                Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                Win1.document.writeln('<link rel="stylesheet" type="text/css" href="normal.css">');
                Win1.document.writeln(' <title>' + titleList[8] + '</title>');
                Win1.document.writeln('</head>');
                Win1.document.writeln('<body BGCOLOR="#1A599C" LEFTMARGIN=0 TOPMARGIN=0>');
                Win1.document.writeln('<FONT FACE="Tahoma"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Tahoma" size="-2">');
                Win1.document.writeln('<br>' + msgList[64]);
                if (debugOn>0) {
                        Win1.document.writeln('<p>' + msgList[65] + '<br>');
                        Win1.document.writeln(untag(theReply));
                } else {
                        if (theError!="") {
                                Win1.document.writeln('<p>' + msgList[66] + '<br>');
                                Win1.document.writeln(theError);
                        }
                }
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('<FONT FACE="Tahoma" SIZE="-2">');
                Win1.document.writeln('<CENTER><FORM name=fermer>');
                Win1.document.writeln('<INPUT type=button onclick="window.close();" value="' + buttonList[58] + '">');
                Win1.document.writeln('</FORM></CENTER>');
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('</body></html>');
                Win1.document.close();
        }
        if (toolMode==4) selectCount=0;
        Win1=null;
        hideRetrieveData();
}

function RechercheGarderie2(theReply) {
	
	//alert("Ds RechercheGarderie2       theReply:   " +  theReply );
	
        setLayerFields(ActiveLayerIndex);
        var theError = getXMLErrorMessage(theReply);
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var epos = 1;
        var spos = 1;
        var morePoints=true;
        var moreFeatures=true;
        var featureCount = justGetFeatureCount(theReply);
        var pos = 0;
        var startpos = 0;
        var endpos = xmlEndPos;
        var stillMore = false
        //Prendre en note le contenue du reply pour le copier/coller
        lastTheReplay=theReply;
        pos = theReply.indexOf('hasmore="true"',endpos);
        pos=0;
        var tempCount = 0;
        var selectedData="";
        var inData="";
        var xStr="";
        var yStr="";
        var tempString = "";
        var fCount = featureCount;
        selectCount = 0;
        var tempString="";
        var Win1 = parent.TextFrame;
        var theFrame = "parent.MapFrame";
        if (featureCount > 0) {
                newSelectCount += 1;
                
                if (showSelectedData) {
                        if ((useExternalWindow) || (!useTextFrame)) {
                                Win1 = window.open("","ResultInteret","scrollbars=yes,resizable=yes");        
                                theFrame = "parent.MapFrame";
                                if (parent.MapFrame!=null) theFrame = "parent.parent.parent.parent.MapFrame";
                        } else {
                                Win1 = parent.TextFrame;
                                Win1.document.open();
                        }
                         
                        
                        if (featureCount == 1) {
                                occurrence = "Une occurrence trouvée";
                        } else {
                                occurrence = featureCount + " occurrences trouvées";
                        }
	                
                                                
                        Win1.document.open();
                        Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><link rel="stylesheet" type="text/css" href="normal.css"><title>' + titleList[7] + '</title></head>');
                        Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
                        Win1.document.writeln('<center>');
                        
                        Win1.document.writeln('<FONT FACE="Tahoma" color="#FFFFCC" SIZE="-1"><b>' + occurrence + '</b></FONT><br>');
                        
                        if((fCount>50) && (fCount<=100)){
	                        Win1.document.writeln('<tr>');
	                        
	                        Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(1,' + fCount + ');">');
	                        Win1.document.writeln('<img src="' + appDir + 'images/bouton_suivant2.gif" border=0 alt="Suivant"></a></td>');
	                        Win1.document.writeln('</tr>');
                	} else if(fCount>100){
	                	Win1.document.writeln('<tr>');
	                        
	                        Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(1,' + fCount + ');">');
	                        Win1.document.writeln('<img src="' + appDir + 'images/bouton_suivant2.gif" border=0 alt="Suivant"></a></td>');
	                        Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(3,' + fCount + ');">');
	                        Win1.document.writeln('<img src="' + appDir + 'images/bouton_fin.gif" border=0 alt="Dernière occurrence"></a></td>');
	                        Win1.document.writeln('</tr>');
                        }
                       
                	
                	
                }
                endpos = 1;
                var posID=0;
                
                aGdNom.splice(0,aGdNom.length);
                aGdAdd.splice(0,aGdAdd.length);
                aGdTel.splice(0,aGdTel.length);
                aGdType.splice(0,aGdType.length);
                aGdX.splice(0,aGdX.length);
                aGdY.splice(0,aGdY.length);
                
                for (var i=1;i<=fCount;i++) {
                        if (toolMode!=4) {
                                var theXYs = getEnvelopeXYs(theReply, endpos)
                                selectLeft[selectCount] = theXYs[0];
                                selectBottom[selectCount] = theXYs[1];
                                selectRight[selectCount] = theXYs[2];
                                selectTop[selectCount] = theXYs[3];
                                endpos = xmlEndPos;
                        }
                        inData = parseRecordString(theReply, endpos);
                        endpos = xmlEndPos;
                        selectedData = inData;
                        
                        epos = theReply.indexOf("</FEATURE",endpos);
                        if (showSelectedData) {
                                var showHyper = false;
                                if (hyperLinkLayers!=null) {
                                        for (var s1=0;s1<hyperLinkLayers.length;s1++) {
                                                if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
                                        }
                                }
                                        
                                var fName1 = getFieldNames(selectedData);
                                var fValue1 = getFieldValues(selectedData);
                                //alert(fValue1);

                                if(LayerName[ActiveLayerIndex] == "Garderie_25k") {
	                                aGdNom[i]=fValue1[2];
					aGdAdd[i]=fValue1[3]; 
					aGdTel[i]=fValue1[4];	
					aGdType[i]=fValue1[5];
					aGdX[i]=fValue1[6];
					aGdY[i]=fValue1[7];
				} else if((LayerName[ActiveLayerIndex] == "Points_interet_25k") || (LayerName[ActiveLayerIndex] == "Points_interet_infos_2.5k")) {
					aGdNom[i]=fValue1[3];
					aGdAdd[i]=fValue1[4]; 
					aGdTel[i]=fValue1[5];	
					aGdX[i]=fValue1[7];
					aGdY[i]=fValue1[8];	
				}
                                
                                selectPoints[selectCount] = getIdValue(fName1, fValue1);
                                
                                var idFieldNum = -1;
                                var shapeFieldNum = -1;
                                
                                fName1 = null;
                                fValue1 = null;
                                
                        }
                        selectCount += 1;
                                        
                }
                
                Win1.document.write('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
                Win1.document.write('<tr>');
                Win1.document.write('<th><FONT FACE="Tahoma" SIZE="1">No</FONT></th>');
                Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">Nom</FONT></th>');
                Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">Adresse</FONT></th>');
                Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">Téléphone</FONT></th>');
                if(LayerName[ActiveLayerIndex] == "Garderie_25k") {
                	Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">Type</FONT></th>');
                }
                Win1.document.write('</tr>');
                var tempNom ="";
                if(fCount<=50){
                	for (var i=1;i<=fCount;i++) {	
		                Win1.document.write('<tr>');
		                Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2"><a href="javascript:' + theFrame + '.RechercheZoomGarderie(' + aGdX[i] + ',' + aGdY[i] + ')">' + i + '</a></font></td>');
		                Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdNom[i] + '</font></td>');
		                Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdAdd[i] + '</font></td>');
		                Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdTel[i] + '</font></td>');
		         	if(LayerName[ActiveLayerIndex] == "Garderie_25k") {
		                	Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdType[i] + '</font></td>');
		                }
		                Win1.document.write('</tr>');
	        	}
                } else {
	                for (var i=1;i<=50;i++) {	
		                Win1.document.write('<tr>');
		                Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2"><a href="javascript:' + theFrame + '.RechercheZoomGarderie(' + aGdX[i] + ',' + aGdY[i] + ')">' + i + '</a></font></td>');
		                Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdNom[i] + '</font></td>');
		                Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdAdd[i] + '</font></td>');
		                Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdTel[i] + '</font></td>');
		         	if(LayerName[ActiveLayerIndex] == "Garderie_25k") {
		                	Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdType[i] + '</font></td>');
		                }
		                Win1.document.write('</tr>');
		        }
	        }        
                
                 
                if (showSelectedData) {
                        
                        Win1.document.writeln('</table><FONT FACE="Tahoma" SIZE="-2">');
                        if (toolMode!=25) {
                                if (queryStartRecord>1) {
                                        var prevRecord = queryStartRecord - maxFeaturesReturned;
                                        if (prevRecord<1) prevRecord=1;
                                        Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')"><FONT color=white>' + msgList[61] + maxFeaturesReturned + msgList[62] + '</FONT></a>&nbsp;&nbsp;&nbsp;');
                                }
                                if (stillMore) {
                                        var nextRecord=featureCount + queryStartRecord;
                                        Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')"><FONT color=white>' + msgList[63] + '</FONT></a>');
                                }
                        }
                        
                        Win1.document.writeln('</font><br>');
                        if((fCount>50) && (fCount<=100)){
	                        Win1.document.writeln('<tr>');
	                        
	                        Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(1,' + fCount + ');">');
	                        Win1.document.writeln('<img src="' + appDir + 'images/bouton_suivant2.gif" border=0 alt="Suivant"></a></td>');
	                         Win1.document.writeln('</tr>');
	                } else if(fCount>100){
	                	Win1.document.writeln('<tr>');
	                        
	                        Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(1,' + fCount + ');">');
	                        Win1.document.writeln('<img src="' + appDir + 'images/bouton_suivant2.gif" border=0 alt="Suivant"></a></td>');
	                        Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(3,' + fCount + ');">');
	                        Win1.document.writeln('<img src="' + appDir + 'images/bouton_fin.gif" border=0 alt="Dernière occurrence"></a></td>');
	                        Win1.document.writeln('</tr>');
	               }
	                
	                        //Win1.document.write('<tr><td align="center"><a href="javascript:' + theFrame + '.SPGarderie(1);">');
	                	//Win1.document.write('<img src="' + appDir + 'images/bouton_suivant2.gif" border=0 alt="Suivant">');
                	Win1.document.write('<br><br><a href="#top"><img src="' + appDir + 'images/top_blanc.gif" border=0 alt="Haut de page"></a></center></body></html>'); 
                      
                        Win1.document.close();
                }
                
                if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)){
			if ((selectCount==1) && (zoomToSingleSelect)) {
				var fWidth = selectRight[0] - selectLeft[0];
				var fHeight = selectTop[0] - selectBottom[0];
				var mWMargin = 0;
				var mHMargin = 0;
				if (selectType=="point") {			
					mWMargin = fullWidth * selectPointMargin;
					mHMargin = fullHeight * selectPointMargin;
					if (mWMargin > xDistance/2) {
						mWMargin = xDistance/2;
						mHMargin = yDistance/2;
					}
				} else {
					mWMargin = fWidth * selectMargin;
					mHMargin = fHeight * selectMargin; 
				}
				saveLastExtent();
				eLeft = selectLeft[0] - mWMargin;
				eRight = selectRight[0] + mWMargin;
				eTop = selectTop[0] + mHMargin;
				eBottom = selectBottom[0] - mHMargin;
				
				sendMapXML();
			} else {
				if (toolMode != 1) {
					sendMapXML();
				}
			}
			
		}
	   
        } else {
                if ((useExternalWindow) || (!useTextFrame)) {
                        Win1 = window.open("","ErrorWindow","width=575,height=120,scrollbars=yes,resizable=yes");
                } else {
                        Win1 = parent.TextFrame;
                        Win1.document.open();
                }
                Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                Win1.document.writeln('<link rel="stylesheet" type="text/css" href="normal.css">');
                Win1.document.writeln(' <title>' + titleList[8] + '</title>');
                Win1.document.writeln('</head>');
                Win1.document.writeln('<body BGCOLOR="#1A599C" LEFTMARGIN=0 TOPMARGIN=0>');
                Win1.document.writeln('<FONT FACE="Tahoma"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Tahoma" size="-2">');
                Win1.document.writeln('<br>' + msgList[64]);
                if (debugOn>0) {
                        Win1.document.writeln('<p>' + msgList[65] + '<br>');
                        Win1.document.writeln(untag(theReply));
                } else {
                        if (theError!="") {
                                Win1.document.writeln('<p>' + msgList[66] + '<br>');
                                Win1.document.writeln(theError);
                        }
                }
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('<FONT FACE="Tahoma" SIZE="-2">');
                Win1.document.writeln('<CENTER><FORM name=fermer>');
                Win1.document.writeln('<INPUT type=button onclick="window.close();" value="' + buttonList[58] + '">');
                Win1.document.writeln('</FORM></CENTER>');
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('</body></html>');
                Win1.document.close();
        }
        if (toolMode==4) selectCount=0;
        Win1=null;
        hideRetrieveData();
}

function SPGarderie(demande,nbTrouver) {
	//1 suivant     0 précédent     2 début      3 fin
	var temp = 0;
	//alert("demande:  " + demande + "\nnbTrouver:   " + nbTrouver);
	if (demande==1) {
		vmin=vmin+50;
		vmax=vmax+50;
	} else if (demande==0) {
		if (vmax % 50==0){
			vmin=vmin-50;
			vmax=vmax-50;			
		}else{
			//est sur la derniere page
			temp=Math.floor(nbTrouver / 50);
			vmax=temp*50;
			vmin=vmax-50+1;
			
		}
	} else if (demande==2) {
		vmin=1;
		vmax=50;
	} else if (demande==3) {
		//temp=ROUND(nbTrouver / 50,0,1);
		//temp=ROUND(101.010000, 2, 1) 
		temp=Math.floor(nbTrouver / 50);
		// temp est une variable avec des décimales, mais on doit pas en voir ???
		//alert("temp:   " + temp);
		//enlever les décimales à temp: truncate les décimales
		vmin=50 * temp + 1;
		vmax=nbTrouver;
		//vmin=501;
		//vmax=550;
	}	
	
	//alert("vmax:  " + vmax + "\nvmin:   " + vmin);
	if (((demande!=3)&&(vmax % 50!=0))||(vmin < 1)) {
		//alert("Avant opération annulée    vmax:  " + vmax + "\nvmin:   " + vmin);
		alert("Opération annulée");
		vmax=50;
		vmin=1;
	}
	Win1 = window.open("","ResultInteret","scrollbars=yes,resizable=yes");        
        theFrame = "parent.MapFrame";
        if (parent.MapFrame!=null) theFrame = "parent.parent.parent.parent.MapFrame";
        Win1.document.open();
        Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><link rel="stylesheet" type="text/css" href="normal.css"><title>' + titleList[7] + '</title></head>');
        Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
        Win1.document.writeln('<center>');
        Win1.document.writeln('<FONT FACE="Tahoma" color="#FFFFCC" SIZE="-1"><b>' + occurrence + '</b></FONT><br>');
        if(vmin==1){
        	Win1.document.writeln('<tr><td><a href="javascript:' + theFrame + '.SPGarderie(1,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_suivant2.gif" border=0 alt="Suivant"></a></td>');
        	Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(3,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_fin.gif" border=0 alt="Dernière occurrence"></a></td>');
        	Win1.document.writeln('</tr>');
	} else if(vmin==501) {
		Win1.document.writeln('<tr><td><a href="javascript:' + theFrame + '.SPGarderie(2,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_debut.gif" border=0 alt="Première occurrence"></a></td>');
		Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(0,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_previous2.gif" border=0 alt="Précédent"></a></td>');
        	Win1.document.writeln('</tr>');
	} else {
		Win1.document.writeln('<tr><td><a href="javascript:' + theFrame + '.SPGarderie(2,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_debut.gif" border=0 alt="Première occurrence"></a></td>');
		Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(0,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_previous2.gif" border=0 alt="Précédent"></a></td>');
        	Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(1,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_suivant2.gif" border=0 alt="Suivant"></a></td>');
        	Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(3,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_fin.gif" border=0 alt="Dernière occurrence"></a></td>');
        	Win1.document.writeln('</tr>');
	}
        
        Win1.document.write('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
        Win1.document.write('<tr>');
        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">No</FONT></th>');
        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">Nom</FONT></th>');
        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">Adresse</FONT></th>');
        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">Téléphone</FONT></th>');
        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">Type</FONT></th>');
        Win1.document.write('</tr>');
        for (var i=vmin;i<=vmax;i++) {	
		if (aGdNom[i]==null){
			break;
		} else {
                	Win1.document.write('<tr>');
                	Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2"><a href="javascript:' + theFrame + '.RechercheZoomGarderie(' + aGdX[i] + ',' + aGdY[i] + ');">' + i + '</a></font></td>');
                	Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdNom[i] + '</font></td>');
                	Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdAdd[i] + '</font></td>');
                	Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdTel[i] + '</font></td>');
                	Win1.document.write('<td><FONT FACE="Tahoma" SIZE="-2">' + aGdType[i] + '</font></td>');
                	Win1.document.write('</tr>');
                }
        }
        Win1.document.write('</table><br>');
     	if(vmin==1){
        	Win1.document.writeln('<tr><td><a href="javascript:' + theFrame + '.SPGarderie(1,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_suivant2.gif" border=0 alt="Suivant"></a></td>');
        	Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(3,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_fin.gif" border=0 alt="Dernière occurrence"></a></td>');
        	Win1.document.writeln('</tr>');
	} else if(vmin==501) {
		Win1.document.writeln('<tr><td><a href="javascript:' + theFrame + '.SPGarderie(2,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_debut.gif" border=0 alt="Première occurrence"></a></td>');
		Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(0,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_previous2.gif" border=0 alt="Précédent"></a></td>');
        	Win1.document.writeln('</tr>');
	} else {
		Win1.document.writeln('<tr><td><a href="javascript:' + theFrame + '.SPGarderie(2,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_debut.gif" border=0 alt="Première occurrence"></a></td>');
		Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(0,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_previous2.gif" border=0 alt="Précédent"></a></td>');
        	Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(1,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_suivant2.gif" border=0 alt="Suivant"></a></td>');
        	Win1.document.writeln('<td><a href="javascript:' + theFrame + '.SPGarderie(3,' + nbTrouver + ');">');
        	Win1.document.writeln('<img src="' + appDir + 'images/bouton_fin.gif" border=0 alt="Dernière occurrence"></a></td>');
        	Win1.document.writeln('</tr>');
	}
        Win1.document.write('<br><br><a href="#top"><img src="' + appDir + 'images/top_blanc.gif" border=0 alt="Haut de page"></a></font></center></body></html>');  
        Win1.document.close();
	
}

function RechercheZoomGarderie(x,y) {
        var theString = 'X = ' + x + ' AND Y = ' + y;
	parent.TOC2Frame.TOCFrame.setActiveNomLayer('Garderie_25k'); 
	//alert("RechercheZoomGarderie");
	sendQueryStringMode(theString,1015);		
}

function PlusMoinsGarderie(theReply) {
        setLayerFields(ActiveLayerIndex);
        var theError = getXMLErrorMessage(theReply);
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var epos = 1;
        var spos = 1;
        var morePoints=true;
        var moreFeatures=true;
        var featureCount = justGetFeatureCount(theReply);
        var pos = 0;
        var startpos = 0;
        var endpos = xmlEndPos;
        var stillMore = false
        //Prendre en note le contenue du reply pour le copier/coller
        lastTheReplay=theReply;
        pos = theReply.indexOf('hasmore="true"',endpos);
        pos=0;
        var tempCount = 0;
        var selectedData="";
        var inData="";
        var xStr="";
        var yStr="";
        var tempString = "";
        var fCount = featureCount;
        selectCount = 0;
        var tempString="";
        var Win1 = parent.TextFrame;
        var theFrame = "parent.MapFrame";
        alert(featureCount);
        if (featureCount > 0) {
                newSelectCount += 1;
                
                if (showSelectedData) {
                        if ((useExternalWindow) || (!useTextFrame)) {
                                Win1 = window.open("","ResultInteret","scrollbars=yes,resizable=yes");        
                                theFrame = "parent.MapFrame";
                                if (parent.MapFrame!=null) theFrame = "parent.parent.parent.parent.MapFrame";
                        } else {
                                Win1 = parent.TextFrame;
                                Win1.document.open();
                        }
                         
                        
                        if (featureCount == 1) {
                                occurrence = "Une occurrence trouvée";
                        } else {
                                occurrence = featureCount + " occurrences trouvées";
                        }
	                
                                                
                        Win1.document.open();
                        Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><link rel="stylesheet" type="text/css" href="normal.css"><title>' + titleList[7] + '</title></head>');
                        Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
                        Win1.document.writeln('<center>');
                        Win1.document.writeln('<FONT FACE="Tahoma" color="#FFFFCC" SIZE="-1"><b>' + occurrence + '</b></FONT>');
                        Win1.document.writeln('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
                }
                endpos = 1;
                var posID=0;
                
                for (var i=vmin;i<=vmax;i++) {
                        if (toolMode!=4) {
                                var theXYs = getEnvelopeXYs(theReply, endpos)
                                selectLeft[selectCount] = theXYs[0];
                                selectBottom[selectCount] = theXYs[1];
                                selectRight[selectCount] = theXYs[2];
                                selectTop[selectCount] = theXYs[3];
                                endpos = xmlEndPos;
                        }
                        inData = parseRecordString(theReply, endpos);
                        endpos = xmlEndPos;
                        selectedData = inData;
                        
                        epos = theReply.indexOf("</FEATURE",endpos);
                        if (showSelectedData) {
                                var showHyper = false;
                                if (hyperLinkLayers!=null) {
                                        for (var s1=0;s1<hyperLinkLayers.length;s1++) {
                                                if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
                                        }
                                }
                                        
                                var fName1 = getFieldNames(selectedData);
                                var fValue1 = getFieldValues(selectedData);
                                
                                selectPoints[selectCount] = getIdValue(fName1, fValue1);
                                
                                var idFieldNum = -1;
                                var shapeFieldNum = -1;
                                if (hideIDFieldData) {
                                        // hide ID column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
                                        }
                                }
                                if (hideShapeFieldData) {
                                        // hide Shape column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
                                        }
                                }
                                
                                if (selectCount==0) {
                                        Win1.document.write('<tr><th><FONT FACE="Tahoma" SIZE="-2">' + msgList[86] + '</FONT></a></th>');
                                        for (var f=0;f<fName1.length;f++) {
                                                if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                        var f2 = -1;
                                                        var sAlias="";
                                                        if (useFieldAlias) {
                                                                for (var f3=0;f3<AliasFieldName.length;f3++) {
                                                                        if (AliasFieldName[f3]==fName1[f]) f2 = f3;
                                                                }
                                                        }
                                                        
                                                        if (f2!=-1) {
                                                                sAlias = AliasFieldAlias[f2];
                                                        } else {
                                                                sAlias = fName1[f];
                                                        }
                                                        
                                                        if ((sAlias == "#ID#") || (sAlias.indexOf("OBJECTID")>=0) || (sAlias.indexOf("objectid")>=0))
                                                                posID=f;
                                                        
                                                        if(LayerName[ActiveLayerIndex] == "Role_evaluation_2.5k") {
                                                                if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("objectid")<0) && (fName1[f].indexOf("MATRICULE")<0) && (fName1[f].indexOf("PX")<0) && (fName1[f].indexOf("PY")<0)) {
                                                                        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">' + sAlias + '</FONT></a></th>');
                                                                }
                                                        } else {
                                                                if ((sAlias != "#SHAPE#") && (sAlias != "#ID#") && (sAlias.indexOf("OBJECTID_1")<0) && (sAlias.indexOf("OBJECTID")<0) && (sAlias.indexOf("CATEGORIE")<0) && (sAlias.indexOf("X")<0) && (sAlias.indexOf("Y")<0)){
                                                                        Win1.document.write('<th><FONT FACE="Tahoma" SIZE="-2">' + sAlias + '</FONT></a></th>');
                                                                }
                                                        }
                                                }
                                        }
                                        Win1.document.writeln('</tr>');
                                }
                                Win1.document.write('<tr><td>');
                                Win1.document.write('<a href="javascript:' + theFrame + '.showHighlight(' + selectCount + ')">');
                                //Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + (selectCount+queryStartRecord) + '</FONT>');
                                Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + i + '</FONT>');
                                Win1.document.write('</a>');
                                
                                Win1.document.writeln('</td>');
                                for (var f=0;f<fName1.length;f++) {
                                        if (parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) == "Zonage"){
                                                if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0))
                                                        continue;
                                        } else {
                                                if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0) || (fName1[f].indexOf("MATRICULE")>=0) || (fName1[f].indexOf("OBJECTID_1")>=0) || (fName1[f].indexOf("X")>=0) || (fName1[f].indexOf("Y")>=0) || (fName1[f].indexOf("CATEGORIE")>=0))
                                                        continue;
                                        }

                                        if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                Win1.document.write('<TD>');
                                                var isHyper=false;
                                                if (showHyper) {
                                                        for (var s1=0;s1<hyperLinkFields.length;s1++) {
                                                                if (hyperLinkFields[s1]==fName1[f]) {
                                                                        var theLinkURL = currentHyperLinkPrefix + fValue1[f] + currentHyperLinkSuffix;
                                                                        if (fValue1[f].toUpperCase().indexOf(".XLS") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/excel.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".DOC") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/word.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".PDF") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/acrobat.gif"></A>&nbsp;');
                                                                        }
                                                                        Win1.document.write('<a href="' + theLinkURL + '" target="_blank">');
                                                                        isHyper=true;
                                                                }
                                                        }
                                                }
                                                var s2 = -1;
                                                for (var s1=0;s1<LayerFields.length;s1++) {
                                                        if (fName1[f]==LayerFields[s1]) s2=s1;
                                                }
                                                if (LayerFieldType[s2]=="91") {
                                                        if (isNaN(fValue1[f])) {
                                                                var theDate = fValue1[f];
                                                        } else {
                                                                var theDateObj = new Date(parseFloat(fValue1[f]));
                                                                var d = theDateObj.toUTCString();
                                                                var theDate = d.replace(/GMT|UTC/,"");
                                                        }
                                                        Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + theDate + '</FONT>');
                                                        theDate=null;
                                                } else {
                                                        // put html entity for spaces so display is correct - browsers trim extra spaces
                                                        if (isHyper) {
                                                                tempString=fValue1[f];
                                                                if (tempString.lastIndexOf("\\") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("\\")+1);
                                                                        tempString = tempString.replace(/ /g, "&nbsp;");
                                                                } else {
                                                                        tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
                                                                if (tempString.lastIndexOf("/") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("/")+1);
                                                                }
                                                        } else {
                                                                tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                        }
                                                        Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">' + tempString + '</FONT>');
                                                }
                                                if (isHyper) Win1.document.write('</a>');
                                                Win1.document.writeln('</td>');
                                        }
                                }
                                Win1.document.writeln('</tr>');
                                fName1 = null;
                                fValue1 = null;
                                
                        }
                        selectCount += 1;
                                        
                }
                Win1.document.write('<a href="javascript:PrecedentGarderie();">');
                Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">Précédent</FONT>');
                Win1.document.write('</a>');    
                Win1.document.write('<a href="javascript:SuivantGarderie();">');
                Win1.document.write('<FONT FACE="Tahoma" SIZE="-2">Suivant</FONT>');
                Win1.document.write('</a>');    
                if (showSelectedData) {
                        
                        Win1.document.writeln('</table><FONT FACE="Tahoma" SIZE="-2">');
                        if (toolMode!=25) {
                                if (queryStartRecord>1) {
                                        var prevRecord = queryStartRecord - maxFeaturesReturned;
                                        if (prevRecord<1) prevRecord=1;
                                        Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')"><FONT color=white>' + msgList[61] + maxFeaturesReturned + msgList[62] + '</FONT></a>&nbsp;&nbsp;&nbsp;');
                                }
                                if (stillMore) {
                                        var nextRecord=featureCount + queryStartRecord;
                                        Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')"><FONT color=white>' + msgList[63] + '</FONT></a>');
                                }
                        }

                        Win1.document.writeln('</font></center></body></html>');
                        Win1.document.close();
                }
                
                if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)){
			if ((selectCount==1) && (zoomToSingleSelect)) {
				var fWidth = selectRight[0] - selectLeft[0];
				var fHeight = selectTop[0] - selectBottom[0];
				var mWMargin = 0;
				var mHMargin = 0;
				if (selectType=="point") {			
					mWMargin = fullWidth * selectPointMargin;
					mHMargin = fullHeight * selectPointMargin;
					if (mWMargin > xDistance/2) {
						mWMargin = xDistance/2;
						mHMargin = yDistance/2;
					}
				} else {
					mWMargin = fWidth * selectMargin;
					mHMargin = fHeight * selectMargin; 
				}
				saveLastExtent();
				eLeft = selectLeft[0] - mWMargin;
				eRight = selectRight[0] + mWMargin;
				eTop = selectTop[0] + mHMargin;
				eBottom = selectBottom[0] - mHMargin;
				
				sendMapXML();
			} else {
				if (toolMode != 1) {
					sendMapXML();
				}
			}
			
		}
        } else {
                if ((useExternalWindow) || (!useTextFrame)) {
                        Win1 = window.open("","ErrorWindow","width=575,height=120,scrollbars=yes,resizable=yes");
                } else {
                        Win1 = parent.TextFrame;
                        Win1.document.open();
                }
                Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                Win1.document.writeln('<link rel="stylesheet" type="text/css" href="normal.css">');
                Win1.document.writeln(' <title>' + titleList[8] + '</title>');
                Win1.document.writeln('</head>');
                Win1.document.writeln('<body BGCOLOR="#1A599C" LEFTMARGIN=0 TOPMARGIN=0>');
                Win1.document.writeln('<FONT FACE="Tahoma"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Tahoma" size="-2">');
                Win1.document.writeln('<br>' + msgList[64]);
                if (debugOn>0) {
                        Win1.document.writeln('<p>' + msgList[65] + '<br>');
                        Win1.document.writeln(untag(theReply));
                } else {
                        if (theError!="") {
                                Win1.document.writeln('<p>' + msgList[66] + '<br>');
                                Win1.document.writeln(theError);
                        }
                }
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('<FONT FACE="Tahoma" SIZE="-2">');
                Win1.document.writeln('<CENTER><FORM name=fermer>');
                Win1.document.writeln('<INPUT type=button onclick="window.close();" value="' + buttonList[58] + '">');
                Win1.document.writeln('</FORM></CENTER>');
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('</body></html>');
                Win1.document.close();
        }
        if (toolMode==4) selectCount=0;
        Win1=null;
        hideRetrieveData();
}

function displayAttributeProximiteGarderie(theReply) {
	//alert(theReply);
	setLayerFields(ActiveLayerIndex);
	var theError = getXMLErrorMessage(theReply);
	var fList="";
	var lpos1 = 1;
	var lpos2 = 1;
	var epos = 1;
	var spos = 1;
	var morePoints=true;
	var moreFeatures=true;
	var featureCount = justGetFeatureCount(theReply);		
	var pos = 0;
	var startpos = 0;
	var endpos = xmlEndPos;
	var stillMore = false;
	
	//Prendre en note le contenue du reply pour le copier/coller
	lastTheReplay=theReply;	
	pos = theReply.indexOf('hasmore="true"',endpos);
	pos=0;
	var tempCount = 0;
	var selectedData="";
	var inData="";
	var xStr="";
	var yStr="";
	var tempString = "";
	var fCount = featureCount;
	selectCount = 0;
	var tempString="";
	var Win1 = parent.TextFrame;
	var theFrame = "parent.MapFrame";
	if (featureCount > 0) {
		newSelectCount += 1;

		if (showSelectedData) {
			if ((useExternalWindow) || (!useTextFrame)) {
				theFrame = "opener";
				if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
			} else {
				Win1 = parent.TextFrame;
				Win1.document.open();
			}
		}
		endpos = 1;
		var posID=0;
		var dist = 0;
		var distMin = 0;
		var Xabs;
		var Yabs;
		var precedent = "";
		for (var i=0;i<fCount;i++) {
			if (toolMode!=4) {
				var theXYs = getEnvelopeXYs(theReply, endpos)
				selectLeft[selectCount] = theXYs[0];
				selectBottom[selectCount] = theXYs[1];
				selectRight[selectCount] = theXYs[2];
				selectTop[selectCount] = theXYs[3];
				endpos = xmlEndPos;
			}
			inData = parseRecordString(theReply, endpos);
			endpos = xmlEndPos;
			selectedData = inData;
			
			epos = theReply.indexOf("</FEATURE",endpos);
			if (showSelectedData) {
				var showHyper = false;
				if (hyperLinkLayers!=null) {
					for (var s1=0;s1<hyperLinkLayers.length;s1++) {
						if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
					}
				}	
				var fName1 = getFieldNames(selectedData);
				var fValue1 = getFieldValues(selectedData);
				tableIntX = fValue1[6];
				tableIntY = fValue1[7];
				if (featureCount == 1) {
					pfid =  fValue1[0];
				} else {
					  
					Xabs = Math.abs(tableIntX - px);
					Yabs = Math.abs(tableIntY - py);
					dist = Xabs + Yabs;	
					
					if (i==0){
					  distMin = dist;
					  pfid =  fValue1[0];
					}else{
					  if (dist < distMin){
					    distMin = dist;
					    pfid =  fValue1[0];
					  }
					}
				}
				selectPoints[selectCount] = getIdValue(fName1, fValue1);
				
				var idFieldNum = -1;
				var shapeFieldNum = -1;
				precedent = fValue1;
			}
		}
	}
	var theString = 'OBJECTID = ' + pfid;
        parent.TOC2Frame.TOCFrame.setActiveNomLayer('Garderie_25k'); 
        toolMode=4;
        sendQueryStringMode(theString,1006);	
        pfid =  0;       
        
        //Win1 = open("rechmat.htm","QueryWindow","width=425,height=175,scrollbars=yes,resizable=yes");
        //Win1.close();
}

function displayAttributeProximite(theReply) {
	//alert("theReply ds displayAttributeProximite   " + theReply);
	setLayerFields(ActiveLayerIndex);
	var theError = getXMLErrorMessage(theReply);
	var fList="";
	var lpos1 = 1;
	var lpos2 = 1;
	var epos = 1;
	var spos = 1;
	var morePoints=true;
	var moreFeatures=true;
	var featureCount = justGetFeatureCount(theReply);
		
	var pos = 0;
	var startpos = 0;
	var endpos = xmlEndPos;
	var stillMore = false;
	
	//Prendre en note le contenue du reply pour le copier/coller
	lastTheReplay=theReply;
	
	pos = theReply.indexOf('hasmore="true"',endpos);
	pos=0;
	var tempCount = 0;
	var selectedData="";
	var inData="";
	var xStr="";
	var yStr="";
	var tempString = "";
	var fCount = featureCount;
	selectCount = 0;
	var tempString="";
	var Win1 = parent.TextFrame;
	var theFrame = "parent.MapFrame";
	if (featureCount > 0) {
		newSelectCount += 1;

		if (showSelectedData) {
			if ((useExternalWindow) || (!useTextFrame)) {
				theFrame = "opener";
				if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
			} else {
				Win1 = parent.TextFrame;
				Win1.document.open();
			}
	
		}
		endpos = 1;
		var posID=0;
		var dist = 0;
		var distMin = 0;
		var Xabs;
		var Yabs;
		var precedent = "";
		for (var i=0;i<fCount;i++) {
			//alert("fCount:   " + fCount)// ex =9 sur les arenas car 9 arénas dans Laval
			if (toolMode!=4) {
				var theXYs = getEnvelopeXYs(theReply, endpos)
				selectLeft[selectCount] = theXYs[0];
				selectBottom[selectCount] = theXYs[1];
				selectRight[selectCount] = theXYs[2];
				selectTop[selectCount] = theXYs[3];
				endpos = xmlEndPos;
			}
			inData = parseRecordString(theReply, endpos);
			endpos = xmlEndPos;
			selectedData = inData;
			
			epos = theReply.indexOf("</FEATURE",endpos);
			if (showSelectedData) {
				var showHyper = false;
				if (hyperLinkLayers!=null) {
					for (var s1=0;s1<hyperLinkLayers.length;s1++) {
						if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
					}
				}	
				var fName1 = getFieldNames(selectedData);
				var fValue1 = getFieldValues(selectedData);
				
				for (var f=0;f<fName1.length;f++) {  
					if (fName1[f].indexOf("X")>=0) {
						tableIntX = fValue1[f];
					} else if (fName1[f].indexOf("Y")>=0) {
						tableIntY = fValue1[f];
					} else if (fName1[f].indexOf("OBJECTID")>=0) {
						var numObj = f;		
					}
					
				}
				//alert("fName1:  \n" +  fName1);
				//alert("fValue1:  \n" +  fValue1);
				//alert("fName1[5]:   " + fName1[5]);
				tableIntX = fValue1[5];
				tableIntY = fValue1[6];
				//alert("tableIntX:   " + tableIntX + "\ntableIntY:  " + tableIntY  +  "\npx:  " + px +  "\npy:  " +  py)
				//alert(fName1);
				if (featureCount == 1) {
					pfid =  fValue1[0];
				} else {
					  
					Xabs = Math.abs(tableIntX - px);
					Yabs = Math.abs(tableIntY - py);
					dist = Xabs + Yabs;	
					
					if (i==0){
					  distMin = dist;
					  pfid =  fValue1[numObj];
					  pfid =  fValue1[0];
					}else{
					  if (dist < distMin){
					    distMin = dist;
					    pfid =  fValue1[numObj];
					    pfid =  fValue1[0];
					  }
					}
				}
				selectPoints[selectCount] = getIdValue(fName1, fValue1);
				var idFieldNum = -1;
				var shapeFieldNum = -1;
				precedent = fValue1;
			}
		}
	}
	var theString = 'OBJECTID = ' + pfid;
        toolMode=4;
        //alert(theString);
        parent.MapFrame.pointInt = true;
        parent.TOC2Frame.TOCFrame.setActiveNomLayer('Points_interet_25k'); 
        sendQueryStringMode(theString,1006); 
	
        pfid = 0;
        
        //Win1 = open("rechmat.htm","QueryWindow","width=425,height=175,scrollbars=yes,resizable=yes");
        //Win1.close();
	
}

function displayAttributeDataNewWindow(theReply) {
	//alert("theReply ds NEW  Window " + theReply);
        var theError = getXMLErrorMessage(theReply);
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var epos = 1;
        var spos = 1;
        var morePoints=true;
        var moreFeatures=true;
        var featureCount = justGetFeatureCount(theReply);
        var pos = 0;
        var startpos = 0;
        var endpos = xmlEndPos;
        var stillMore = false
        pos = theReply.indexOf('hasmore="true"',endpos);
        if (pos!=-1) stillMore = true;
        pos=0;
        var tempCount = 0;
        var selectedData="";
        var inData="";
        var xStr="";
        var yStr="";
        var tempString = "";
        var tempNo = "";
        var fCount = featureCount;
        selectCount = 0;
        //alert("LayerName[ActiveLayerIndex]:    " + LayerName[ActiveLayerIndex]);
        if (LayerName[ActiveLayerIndex] == "Qualite eau releve"){
        	queryStartRecord=1;
        }
        var Win1 = parent.TextFrame;
        var theFrame = "parent.MapFrame";
        //alert("featureCount  dans displayAttributeDataNewWindow:      " + featureCount + "\nqueryStartRecord:   " + queryStartRecord);
        if (featureCount > 0) {
                newSelectCount += 1;
                if (showSelectedData) {
                        Win1 = window.open("","QueryWindow2","width=600,height=400,scrollbars=yes,resizable=yes");
                        theFrame = "opener";
                        if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
                        
                        Win1.document.open();
                        Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><title>' + titleList[7] + '</title></head>');
                        Win1.document.writeln('<body bgcolor="#1A599C" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
                        Win1.document.writeln('<center>');
                        Win1.document.writeln('<FONT FACE="Arial" color=white SIZE="-1"><b>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) + '</b></FONT>');
                        Win1.document.writeln('<table border="1" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');
                }
                endpos = 1;
                
                for (var i=0;i<fCount;i++) {
                        if (toolMode!=4) {
                                var theXYs = getEnvelopeXYs(theReply, endpos)
                                selectLeft[selectCount] = theXYs[0];
                                selectBottom[selectCount] = theXYs[1];
                                selectRight[selectCount] = theXYs[2];
                                selectTop[selectCount] = theXYs[3];
                                endpos = xmlEndPos;
                        }
                        inData = parseRecordString(theReply, endpos);
                        endpos = xmlEndPos;
                        selectedData = inData;
                        
                        epos = theReply.indexOf("</FEATURE",endpos);
                        if (showSelectedData) {
                                var showHyper = false;
                                if (hyperLinkLayers!=null) {
                                        for (var s1=0;s1<hyperLinkLayers.length;s1++) {
                                                if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
                                        }
                                }
                                        
                                var fName1 = getFieldNames(selectedData);
                                var fValue1 = getFieldValues(selectedData);
                                selectPoints[selectCount] = getIdValue(fName1, fValue1);
                             
                                var idFieldNum = -1;
                                var shapeFieldNum = -1;
                                if (hideIDFieldData) {
                                        // hide ID column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
                                        }
                                }
                                if (hideShapeFieldData) {
                                        // hide Shape column header
                                        for (var f=0;f<fName1.length;f++) {
                                                if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
                                        }
                                }
                                for (var f=0;f<fName1.length;f++) {     
                                        if ((fName1[f]== "#SHAPE#") || (fName1[f] == "#ID#") || (fName1[f].indexOf("OBJECTID")>=0) || (fName1[f].indexOf("objectid")>=0) || (fName1[f].indexOf("MATRICULE")>=0) || (fName1[f].indexOf("ID_UNIQUE_IMS")>=0) || (fName1[f].indexOf("ID_RELEVE_ARCHIVE")>=0))
                                                continue;
                                        if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                //Titre
                                                Win1.document.write('<tr>');
                                                if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                        var f2 = -1;
                                                        if (useFieldAlias) {
                                                                for (var f3=0;f3<AliasFieldName.length;f3++) {
                                                                        if (AliasFieldName[f3]==fName1[f]) f2 = f3;
                                                                }
                                                        }
                                                        if (f2!=-1) {
                                                                Win1.document.write('<td><FONT FACE="Arial" SIZE="-2">' + AliasFieldAlias[f2] + '</FONT></a></td>');
                                                        } else {
                                                                Win1.document.write('<td><FONT FACE="Arial" SIZE="-2">' + fName1[f] + '</FONT></a></td>');
                                                        }
                                                }
                                                //Champs
                                                Win1.document.write('<TD>');
                                                var isHyper=false;
                                                if (showHyper) {
                                                        for (var s1=0;s1<hyperLinkFields.length;s1++) {
                                                                if (hyperLinkFields[s1]==fName1[f]) {
                                                                        var theLinkURL = currentHyperLinkPrefix + fValue1[f] + currentHyperLinkSuffix;
                                                                        if (fValue1[f].toUpperCase().indexOf(".XLS") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/excel.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".DOC") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/word.gif"></A>&nbsp;');
                                                                        }
                                                                        if (fValue1[f].toUpperCase().indexOf(".PDF") > 0) {
                                                                                Win1.document.write('<a href="' + theLinkURL + '">');
                                                                                Win1.document.write('<IMG border=0 src="' + appDir + 'images/acrobat.gif"></A>&nbsp;');
                                                                        }
                                                                        Win1.document.write('<a href="' + theLinkURL + '" target="_blank">');
                                                                        isHyper=true;
                                                                }
                                                        }
                                                }
                                                var s2 = -1;
                                                for (var s1=0;s1<LayerFields.length;s1++) {
                                                        if (fName1[f]==LayerFields[s1]) s2=s1;
                                                }
                                                if (LayerFieldType[s2]=="91") {
                                                        if (isNaN(fValue1[f])) {
                                                                var theDate = fValue1[f];
                                                        } else {
                                                                var theDateObj = new Date(parseFloat(fValue1[f]));
                                                                var theDate = theDateObj.getFullYear() + "-";
                                                                if((theDateObj.getMonth()+1) < 10)
                                                                        theDate += "0";
                                                                theDate += (theDateObj.getMonth()+1) + "-";
                                                                if((theDateObj.getDate() +1) < 10)
                                                                        theDate += "0";
                                                                 theDate += (theDateObj.getDate()+1);
                                                        }
                                                        Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + theDate + '</FONT>');
                                                        theDate=null;
                                                } else {
                                                        // put html entity for spaces so display is correct - browsers trim extra spaces
                                                        if (isHyper) {
                                                                tempString=fValue1[f];
                                                                
                                                                if (tempString.lastIndexOf("\\") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("\\")+1);
                                                                        tempString = tempString.replace(/ /g, "&nbsp;");
                                                                } else {
                                                                        tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
                                                                if (tempString.lastIndexOf("/") >= 0) {
                                                                        tempString = tempString.substring(tempString.lastIndexOf("/")+1);
                                                                }
                                                        } else {
                                                                if((LayerName[ActiveLayerIndex] == "Qualite eau releve") && (fName1[f].indexOf("NO_STATION")>=0)) {
                                                                        tempNo = fValue1[f].replace(/ /g, "&nbsp;");
                                                                }
                                                                tempString = fValue1[f].replace(/ /g, "&nbsp;");
                                                        }
                                                        if ((((LayerName[ActiveLayerIndex] == "Egout_chambre_speciale_5k") || (LayerName[ActiveLayerIndex] == "#Egout_chambre_speciale_5k")) && (f==4)) ||
                                                        (((LayerName[ActiveLayerIndex] == "Aqueduc_chambre_speciale_5k") || (LayerName[ActiveLayerIndex] == "#Aqueduc_chambre_speciale_5k")) && (f==4))){
                                                                Win1.document.write('<FONT FACE="Arial" SIZE="-2"><a href="' + fValue1[4] + '" target="_new">Photo</a></FONT>'); 
                                                        } else {      
                                                                Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + tempString + '</FONT>');
                                                        }
                                                        
                                                }
                                                if (isHyper) Win1.document.write('</a>');
                                                Win1.document.writeln('</td>');
                                                Win1.document.writeln('</tr>');
                                        }
                                }
                                fName1 = null;
                                fValue1 = null;
                                
                                if(LayerName[ActiveLayerIndex] == "Qualite eau releve") {
		                        Win1.document.write('<TR>');
		                        Win1.document.write('<TD><FONT FACE="Arial" SIZE="-2">DONNÉES ANTÉRIEURES</FONT>');
		                        Win1.document.writeln('</td>');
		                        Win1.document.writeln('<td><A HREF="javascript:opener.clickFunctionParam(\'listeReleve\',\'' + tempNo + '\');"><FONT FACE="Arial" SIZE="-2">Liste</FONT></A></td>');
		                        Win1.document.writeln('</tr>');
		                }
                                
                        }
                        selectCount += 1;
                                        
                }
                
                

                if (showSelectedData) {
                        
                        Win1.document.writeln('</table><FONT FACE="Arial" SIZE="-2">');
                        if (toolMode!=25) {
                                if (queryStartRecord>1) {
                                        var prevRecord = queryStartRecord - maxFeaturesReturned;
                                        if (prevRecord<1) prevRecord=1;
                                        Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')">' + msgList[61] + maxFeaturesReturned + msgList[62] + '</a>&nbsp;&nbsp;&nbsp;');
                                }
                                if (stillMore) {
                                        var nextRecord=featureCount + queryStartRecord;
                                        Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')">' + msgList[63] + '</a>');
                                }
                        }
                        if ((toolMode!=4) && (toolMode!=25) && (selectCount>1)) {
                                Win1.document.writeln('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b><a href="javascript:' + theFrame + '.zoomToReturnedRecords()"><FONT color=white>Présenter les enregistrements sur la carte</FONT></A></b>');
                        }

                        Win1.document.writeln ('<br><a href="javascript:window.close();" ><img src="' + appDir + 'images/fermer.gif" border=0></a>');
                        Win1.document.writeln('</font></center></body></html>');
                        Win1.document.close();
                }
        
                if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25) && (LayerName[ActiveLayerIndex] != "Donnees anterieures")) {
                        if ((selectCount==1) && (zoomToSingleSelect)) {
                                var fWidth = selectRight[0] - selectLeft[0];
                                var fHeight = selectTop[0] - selectBottom[0];
                                var mWMargin = 0;
                                var mHMargin = 0;
                                if (selectType=="point") {                      
                                        mWMargin = fullWidth * selectPointMargin;
                                        mHMargin = fullHeight * selectPointMargin;
                                        if (mWMargin > xDistance/2) {
                                                mWMargin = xDistance/2;
                                                mHMargin = yDistance/2;
                                        }
                                } else {
                                        mWMargin = fWidth * selectMargin;
                                        mHMargin = fHeight * selectMargin; 
                                }
                                saveLastExtent();
                                eLeft = selectLeft[0] - mWMargin;
                                eRight = selectRight[0] + mWMargin;
                                eTop = selectTop[0] + mHMargin;
                                eBottom = selectBottom[0] - mHMargin;
                        }
                var distanceTemp = Math.abs(eRight-eLeft);
                var labelScale = (distanceTemp / iWidth) * 3780;
                if (labelScale >= 10050) {
                parent.TOC2Frame.TOCFrame.masquerEtiquetteTheme('Voie de communication');}
                else {
                parent.TOC2Frame.TOCFrame.afficherEtiquetteTheme('Voie de communication');}
                        
                        sendMapXML();
                }
                
                
                        
        } else {
                Win1 = window.open("","QueryWindow2","width=300,height=300,scrollbars=yes,resizable=yes");
                
                Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                Win1.document.writeln(' <title>' + titleList[8] + '</title>');
                Win1.document.writeln('</head>');
                Win1.document.writeln('<body BGCOLOR="#1A599C" TEXT="Black" LEFTMARGIN=0 TOPMARGIN=0>');
                Win1.document.writeln('<FONT FACE="Arial"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Arial" size="-2">');
                Win1.document.writeln('<br>' + msgList[64]);
                /*if (debugOn>0) {
                        Win1.document.writeln('<p>' + msgList[65] + '<br>');
                        Win1.document.writeln(untag(theReply));
                } else {
                        if (theError!="") {
                                Win1.document.writeln('<p>' + msgList[66] + '<br>');
                                Win1.document.writeln(theError);
                        }
                }*/
                Win1.document.write ('<br><a href="javascript:window.close();" ><img src="' + appDir + 'images/fermer.gif" border=0></a>');
                Win1.document.writeln('</FONT>');
                Win1.document.writeln('</body></html>');
                Win1.document.close();
        }
        if (toolMode==4) selectCount=0;
        Win1=null;
        hideRetrieveData();
}


function displayAttributeDataWindowRole(theReply) {
	//alert("ici");
	
	var theError = getXMLErrorMessage(theReply);
	var fList="";
	var lpos1 = 1;
	var lpos2 = 1;
	var epos = 1;
	var spos = 1;
	var morePoints=true;
	var moreFeatures=true;
	var featureCount = justGetFeatureCount(theReply);
	var pos = 0;
	var startpos = 0;
	var endpos = xmlEndPos;
	var stillMore = false
	pos = theReply.indexOf('hasmore="true"',endpos);
	if (pos!=-1) stillMore = true;
	pos=0;
	var tempCount = 0;
	var selectedData="";
	var inData="";
	var xStr="";
	var yStr="";
	var tempString = "";
	var fCount = featureCount;
	selectCount = 0;
	var tempString="";
	var Win1 = parent.TextFrame;
	var theFrame = "parent.MapFrame";
	if (featureCount > 0) {
		newSelectCount += 1;


		if (showSelectedData) {
			Win1 = window.open("","QueryWindow2","width=400,height=275,scrollbars=yes,resizable=yes");
			theFrame = "opener";
			if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
			
			Win1.document.open();
			Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head><title>' + titleList[7] + '</title>');
			
			Win1.document.writeln('<SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript">');
			
			Win1.document.writeln('catTab = new Array("Activite culturelle","Administration","Arena","Berge","Bibliotheque","Bureau municipal de loisirs",');
                        Win1.document.writeln('           "Caserne de pompier","Centre communautaire","Centre recreatif en general","Chambre de commerce",');
                        //Win1.document.writeln('           "Cosmodome","Cour municipale","Fourriere","Garderie","Hopital","Office municipal d`habitation","Palais de justice",');
                        Win1.document.writeln('           "Cosmodome","Cour municipale","Fourriere","Hopital","Office municipal d`habitation","Palais de justice",');
                        Win1.document.writeln('           "Parc","Police","Protection incendie","Terrain de golf","Tourisme","Transport en commun");');
		        Win1.document.writeln('var catprox = "";');
		        Win1.document.writeln('var t;');
		        Win1.document.writeln('if (opener) {');
		        Win1.document.writeln('		if (opener.name=="MapFrame") {');
		        Win1.document.writeln('                t = opener.parent.MapFrame;');
		        Win1.document.writeln('        } else {');
		        Win1.document.writeln('                t = opener;');
		        Win1.document.writeln('        }');
		        Win1.document.writeln('} else {');
		                
		        Win1.document.writeln('        if (parent.MapFrame) {');
		        Win1.document.writeln('                t = parent.MapFrame;'); 
		        Win1.document.writeln('        } else {');
		        Win1.document.writeln('                t=document;');
		        Win1.document.writeln('        }');
		        Win1.document.writeln('}');

			
			Win1.document.writeln('function voir_type(n){');
                        Win1.document.writeln('		catprox = catTab[n - 1];');
                	Win1.document.writeln('} ');
                
	                Win1.document.writeln('function rech(){');
	                Win1.document.writeln('        var dQuote = \'"\';');
	                Win1.document.writeln('        var temp = opener.parent.MapFrame.maxFeaturesReturned;');
	                Win1.document.writeln('        opener.parent.MapFrame.maxFeaturesReturned = 500;');
	                Win1.document.writeln('        if (catprox == "Garderie"){');
	                Win1.document.writeln('                var theString = \'X > \' + 0;');
	                Win1.document.writeln('                opener.parent.TOC2Frame.TOCFrame.setActiveNomLayer(\'Garderie_25k\');');
	                //Win1.document.writeln('		       alert(theString);');
	                Win1.document.writeln('                opener.parent.MapFrame.sendQueryStringMode(theString,1004);');
	                Win1.document.writeln('        } else {');
	                Win1.document.writeln('                var theString = \'CATEGORIE = \' + dQuote + catprox  + dQuote;');
	                //Win1.document.writeln('		       alert(theString);');
	                Win1.document.writeln('		       opener.parent.MapFrame.pointInt = true;');
	                Win1.document.writeln('                opener.parent.TOC2Frame.TOCFrame.setActiveNomLayer(\'Points_interet_25k\');');
	                Win1.document.writeln('                opener.parent.MapFrame.sendQueryStringMode(theString,1003); ');
	                
	                Win1.document.writeln('        }');
	                Win1.document.writeln('        opener.parent.MapFrame.maxFeaturesReturned = temp;');
	                Win1.document.writeln('        toolMode = 4;');
	                Win1.document.writeln('        window.close();');
	                Win1.document.writeln('}');
			
			Win1.document.writeln('</SCRIPT>');
			
			Win1.document.writeln('</head>');
			
			Win1.document.writeln('<body bgcolor="#1A599C" text="Black" link="Black" vlink="Black" LEFTMARGIN=0 onload="window.focus()">');
			Win1.document.writeln('<center>');
			Win1.document.writeln('<FONT FACE="Arial" color=white SIZE="-1"><b>Informations</b></FONT>');
			Win1.document.writeln('<table border="0">');
		}
		endpos = 1;
		
		for (var i=0;i<fCount;i++) {
			if (toolMode!=4) {
				var theXYs = getEnvelopeXYs(theReply, endpos)
				selectLeft[selectCount] = theXYs[0];
				selectBottom[selectCount] = theXYs[1];
				selectRight[selectCount] = theXYs[2];
				selectTop[selectCount] = theXYs[3];
				endpos = xmlEndPos;
			}
			inData = parseRecordString(theReply, endpos);
			endpos = xmlEndPos;
			selectedData = inData;
			
			epos = theReply.indexOf("</FEATURE",endpos);
			if (showSelectedData) {
				var showHyper = false;
				if (hyperLinkLayers!=null) {
					for (var s1=0;s1<hyperLinkLayers.length;s1++) {
						if (hyperLinkLayers[s1] == LayerName[ActiveLayerIndex]) showHyper=true;
					}
				}
					
				var fName1 = getFieldNames(selectedData);
				var fValue1 = getFieldValues(selectedData);
				selectPoints[selectCount] = getIdValue(fName1, fValue1);
				
				var idFieldNum = -1;
				var shapeFieldNum = -1;
				if (hideIDFieldData) {
					// hide ID column header
					for (var f=0;f<fName1.length;f++) {
						if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
					}
				}
				if (hideShapeFieldData) {
					// hide Shape column header
					for (var f=0;f<fName1.length;f++) {
						if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
					}
				}
				
				for (var f=0;f<fName1.length;f++) {	
					if (fName1[f].indexOf("MATRICULE")  <=0)
						continue;
					if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
						//Win1.document.write('<tr><td></td></tr>');
						Win1.document.write('<tr><td><FONT FACE="Arial" color=white SIZE="-1">Matricule </FONT></td><td><b><FONT FACE="Arial" color=white SIZE="-1">' + fValue1[5] + '</FONT></b></td></tr>');
						Win1.document.write('<tr><td><FONT FACE="Arial" color=white SIZE="-1">Numéro civique </FONT></td><td><b><FONT FACE="Arial" color=white SIZE="-1">' + fValue1[2] + '</FONT></b></td></tr>');
						Win1.document.write('<tr><td><FONT FACE="Arial" color=white SIZE="-1">Générique </FONT></td><td><b><FONT FACE="Arial" color=white SIZE="-1">' + fValue1[4] + '</FONT></b></td></tr>');	
						Win1.document.write('<tr><td><FONT FACE="Arial" color=white SIZE="-1">Nom de la rue </FONT></td><td><b><FONT FACE="Arial" color=white SIZE="-1">' + fValue1[3] + '</FONT></b></td></tr>');
						Win1.document.write('</table>');
						
						Win1.document.write('<table border="0" width=95%>');
						Win1.document.write('<HR>');
						Win1.document.write('</table>');
						
						Win1.document.write('<table border="0" width=95%>');
						Win1.document.write('<tr><td><FONT FACE="Arial" color=white SIZE="-1"><center><b>Recherche du lieu ou du service le plus près de cette unité d\'évaluation.</b></center></FONT></td></tr>');
						Win1.document.write('</table>');			
						
											
						Win1.document.write('<table border="0">');												
						Win1.document.write('<tr><td><FONT FACE="Arial" color=white SIZE="-1">');
						Win1.document.write('<b>Catégorie :   </b></FONT></td></tr><tr><td><font color="black" size="3" FACE="Tahoma"><select size="1" name="categorie" onchange="voir_type(this.selectedIndex)">');
				                Win1.document.write('<option>&lt; Catégorie &gt;');
				                Win1.document.write('<option>Activite culturelle');
				                Win1.document.write('<option>Administration');
				                Win1.document.write('<option>Arena');
				                Win1.document.write('<option>Berge');
				                Win1.document.write('<option>Bibliotheque');
				                Win1.document.write('<option>Bureau municipal de loisirs');
				                Win1.document.write('<option>Caserne de pompiers');
				                Win1.document.write('<option>Centre communautaire');
				                Win1.document.write('<option>Centre recreatif en general');
				                Win1.document.write('<option>Chambre de commerce');
				                Win1.document.write('<option>Cosmodome');
				                Win1.document.write('<option>Cour municipale');
				                Win1.document.write('<option>Fourriere');
				                //Win1.document.write('<option>Garderie');
				                Win1.document.write('<option>Hopital');
				                Win1.document.write('<option>Office municipal d\'habitation');
				                Win1.document.write('<option>Palais de justice');
				                Win1.document.write('<option>Parc');
				                Win1.document.write('<option>Police');
				                Win1.document.write('<option>Protection incendie');
				                Win1.document.write('<option>Terrain de golf');
				                Win1.document.write('<option>Tourisme');
				                Win1.document.write('<option>Transport en commun');
				                Win1.document.write('</select></font>');
						        
						        //Win1.document.write('<a href="javascript:opener.clickFunction(\'proximite\');">');
							//Win1.document.write('<FONT FACE="Arial" color="FBF49C" SIZE="-1"><b>' + buttonList[69] + '</b></FONT></A>&nbsp;');
						
						Win1.document.writeln('</td><td align="left"><input type="button" value="Rechercher" name="B3" onclick="rech();"></td></tr>'); 
						Win1.document.writeln('</center><br>');
					}
				}
				fName1 = null;
				fValue1 = null;
				
			}
			selectCount += 1;
					
		}
		if (showSelectedData) {
			
			Win1.document.writeln('</table><FONT FACE="Arial" SIZE="-2">');
			if (toolMode!=25) {
				if (queryStartRecord>1) {
					var prevRecord = queryStartRecord - maxFeaturesReturned;
					if (prevRecord<1) prevRecord=1;
					Win1.document.write('<a href="javascript:' + theFrame + '.getMoreData(' + prevRecord + ')">' + msgList[61] + maxFeaturesReturned + msgList[62] + '</a>&nbsp;&nbsp;&nbsp;');
				}
				if (stillMore) {
					var nextRecord=featureCount + queryStartRecord;
					Win1.document.writeln('<a href="javascript:' + theFrame + '.getMoreData(' + nextRecord + ')">' + msgList[63] + '</a>');
				}
			}
			if ((toolMode!=4) && (toolMode!=25) && (selectCount>1)) {
				Win1.document.writeln('&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b><a href="javascript:' + theFrame + '.zoomToReturnedRecords()"><FONT color=white>Présenter les enregistrements sur la carte</FONT></A></b>');
			}

			//Win1.document.writeln('<FORM>');
			//Win1.document.writeln('<center><INPUT type=button onclick="window.close();" value="' + buttonList[58] + '">');
			//Win1.document.writeln('</center></FORM>');
			Win1.document.writeln('</font></center></body></html>');
			Win1.document.close();
		}
		
		if ((queryStartRecord==1) && (toolMode!=4) && (toolMode!=25)) {
			if ((selectCount==1) && (zoomToSingleSelect)) {
				var fWidth = selectRight[0] - selectLeft[0];
				var fHeight = selectTop[0] - selectBottom[0];
				var mWMargin = 0;
				var mHMargin = 0;
				if (selectType=="point") {			
					mWMargin = fullWidth * selectPointMargin;
					mHMargin = fullHeight * selectPointMargin;
					if (mWMargin > xDistance/2) {
						mWMargin = xDistance/2;
						mHMargin = yDistance/2;
					}
				} else {
					mWMargin = fWidth * selectMargin;
					mHMargin = fHeight * selectMargin; 
				}
				saveLastExtent();
				eLeft = selectLeft[0] - mWMargin;
				eRight = selectRight[0] + mWMargin;
				eTop = selectTop[0] + mHMargin;
				eBottom = selectBottom[0] - mHMargin;
			}
		var distanceTemp = Math.abs(eRight-eLeft);
		var labelScale = (distanceTemp / iWidth) * 3780;
		if (labelScale >= 10050) {
		parent.TOC2Frame.TOCFrame.masquerEtiquetteTheme('Voie de communication');}
		else {
		parent.TOC2Frame.TOCFrame.afficherEtiquetteTheme('Voie de communication');}
			sendMapXML();
		}
		
		
			
	} else {
		Win1 = window.open("","QueryWindow2","width=300,height=300,scrollbars=yes,resizable=yes");
		
		Win1.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
		Win1.document.writeln('	<title>' + titleList[8] + '</title>');
		Win1.document.writeln('</head>');
		Win1.document.writeln('<body BGCOLOR="#1A599C" TEXT="Black" LEFTMARGIN=0 TOPMARGIN=0>');
		Win1.document.writeln('<FONT FACE="Arial"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Arial" size="-2">');
		Win1.document.writeln('<br>' + msgList[64]);
		if (debugOn>0) {
			Win1.document.writeln('<p>' + msgList[65] + '<br>');
			Win1.document.writeln(untag(theReply));
		} else {
			if (theError!="") {
				Win1.document.writeln('<p>' + msgList[66] + '<br>');
				Win1.document.writeln(theError);
			}
		}
		//Win1.document.writeln('<FORM>');
		//Win1.document.writeln('<INPUT type=button onclick="window.close();" value="' + buttonList[58] + '">');
		//Win1.document.writeln('</FORM>');
		
		Win1.document.write ('<br><a href="javascript:window.close();" ><img src="' + appDir + 'images/fermer.gif" border=0></a>');
		Win1.document.writeln('</FONT>');
		Win1.document.writeln('</body></html>');
		Win1.document.close();
	}
	if (toolMode==4) selectCount=0;
	Win1=null;
	hideRetrieveData();
}



function parseHyperLink(theReply) {
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var pos = 0;
        var startpos = 0;
        var endpos = 0;
        var fString = theReply.substring(startpos,endpos);
        var featureCount = justGetFeatureCount(theReply);
        var linkString = "width=" + hyperlinkWindowWidth + ",height=" + hyperlinkWindowHeight + ",scrollbars=yes,resizable=yes"
        var selectedData="";
        var fCount = featureCount;
        selectCount = 0;
        var tempString="";
        if (featureCount > 0) {
                var searchStr = currentHyperLinkField + "=";
                
                newSelectCount += 1;

                endpos = 1;
                pos = theReply.indexOf(searchStr,1);
                startpos = pos + searchStr.length + 1;
                endpos =theReply.indexOf(dQuote,startpos);
                inData = theReply.substring(startpos,endpos);
                var theLinkURL = currentHyperLinkPrefix + inData + currentHyperLinkSuffix;
                if (parent.TextFrame!=null) {
                        parent.TextFrame.document.open();
                        parent.TextFrame.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                        parent.TextFrame.document.writeln('     <title>' + titleList[9] + 's</title>');
                        parent.TextFrame.document.writeln('</head>');
                        parent.TextFrame.document.writeln('<body BGCOLOR="White" TEXT="Black" LEFTMARGIN=0 TOPMARGIN=0>');
                        parent.TextFrame.document.writeln('<FONT FACE="Arial"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Arial" size="-2">');
                        parent.TextFrame.document.writeln('<br>' + msgList[67] + theLinkURL );
                        parent.TextFrame.document.writeln('</FONT>');
                        parent.TextFrame.document.writeln('</body></html>');
                        parent.TextFrame.document.close();
                }
                var Win1=open(theLinkURL,"",linkString);
        } else {
                if (parent.TextFrame!=null) {
                        parent.TextFrame.document.open();
                        parent.TextFrame.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                        parent.TextFrame.document.writeln('     <title>' + titleList[9] + '</title>');
                        parent.TextFrame.document.writeln('</head>');
                        parent.TextFrame.document.writeln('<body BGCOLOR="White" TEXT="Black" LEFTMARGIN=0 TOPMARGIN=0>');
                        parent.TextFrame.document.writeln('<FONT FACE="Arial"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) +'</B></font><FONT FACE="Arial" size="-2">');
                        parent.TextFrame.document.writeln('<br>' + msgList[68]);
                        if (debugOn>0) {
                                parent.TextFrame.document.writeln('<p>' + msgList[65] + '<br>');
                                parent.TextFrame.document.writeln(untag(theReply));
                        }
                        parent.TextFrame.document.writeln('</FONT>');
                        parent.TextFrame.document.writeln('</body></html>');
                        parent.TextFrame.document.close();
                } else {
                        var msg = msgList[69];
                        if (debugOn>0) {
                                msg = msg + msgList[9] + theReply;
                        }
                        alert(msg);
                }
        }
        hideRetrieveData();
}

// are there any selected features?
function checkSelected() {
        var isOk = false;
        if (selectCount>0) isOk = true;
        return isOk;
}

function checkHyperLinkLayer(layerIndex) {
        var canLink = false;
        for (var i=0; i<hyperLinkLayers.length; i++) {
                        if (LayerName[layerIndex]==hyperLinkLayers[i]) {
                                canLink=true;
                                currentHyperLinkLayer=LayerName[layerIndex];
                                currentHyperLinkField=hyperLinkFields[i];
                                currentHyperLinkPrefix=hyperLinkPrefix[i];
                                currentHyperLinkSuffix=hyperLinkSuffix[i];
                        }
        }
        return canLink;

}

// check to see if active layer is in scale threshold and visible 
        // so it can be used for querying
function checkIfActiveLayerAvailable() {
        // is the override flag set?
        if (canSelectInvisible) {
                return true;
        } else {
                // is the current scale within the scale min and max?
                if ((mapScaleFactor>=LayerMinScale[ActiveLayerIndex]) && (mapScaleFactor<=LayerMaxScale[ActiveLayerIndex])) {
                        // is the active layer visible?
                        if (LayerVisible[ActiveLayerIndex]==1) {
                                return true;
                        
                        } else {
                                var msg = msgList[104] + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) + msgList[102] + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) + msgList[108];
                                
                                alert(msg);
                                return false;
                        }
                } else {
                        msg = msgList[138];
                        //var msg = msgList[104] + parent.TopFrame.nomSousThemeLayer(LayerName[ActiveLayerIndex]) + msgList[101];
                        alert(msg);
                        return false;
                }
        }
}


/**************************************************************
*       functions and variables for Identify All
*       drill down through visible layers
**************************************************************/

var replyArray = new Array();
var fID = 0;
var fIndex = 0;
var idEast;
var idWest;
var idSouth;
var idNorth;


// identify feature
function identifyAll(e) {
        fID = 0;
        highlightedOne="";
        var theX = mouseX;
        var theY = mouseY;
        getMapXY(theX,theY);
        searchTolerance = (xDistance/iWidth) * pixelTolerance;
        var tempWest = mapX - searchTolerance;
        var tempNorth = mapY + searchTolerance;
        var tempEast = mapX + searchTolerance;
        var tempSouth = mapY - searchTolerance;
        idSouth = tempSouth;
        idNorth = tempNorth;
        idWest = tempWest;
        idEast = tempEast;
        replyArray.length=0;
        var j =-1;
        for (var i=(LayerID.length-1);i>=0;i--) {
                replyArray[i]="";
                if ((mapScaleFactor>=LayerMinScale[i]) && (mapScaleFactor<=LayerMaxScale[i]) && (LayerVisible[i]) && (LayerIsFeature[i])) j = i;

        }
        if (j>-1) {
                fID=j;
                var theString = writeGetFeaturesDrill(tempWest,tempSouth,tempEast,tempNorth,fID);
                showRetrieveData();
                sendToServer(imsQueryURL,theString,10);
        } else {
                alert(msgList[111]);
        }
}


function doIdentifyAll(theReply) {
    //drill tool loop sequence
   replyArray[fID] = theReply;
   fID++;
   if (fID < (LayerID.length)) {
                if ((mapScaleFactor>=LayerMinScale[fID]) && (mapScaleFactor<=LayerMaxScale[fID]) && (LayerVisible[fID]) && (LayerIsFeature[fID])) {
                theString = writeGetFeaturesDrill(idWest,idSouth,idEast,idNorth,fID);
                        sendToServer(imsQueryURL,theString,10);
                } else {
                        doIdentifyAll("");
                }
   }
   
   if (fID == (LayerID.length)) {
        displayAttributeDataforDrill(replyArray);
        fID = 0;
   }
 }  //end doDrill()


 // write XML to identify features for drill ID
function writeGetFeaturesDrill(west1,south1,east1,north1,thefID) {
        if (swapSelectFields) {
                selectFields=selFieldList[thefID];
        }
        var useString = writeIdentifyXML(LayerID[thefID],LayerType[thefID],selectFields,west1,south1,east1,north1,maxFeaturesReturned,useLimitExtent);
        hightlightedOne="";
        return useString;
}

// parse XML response for drill functions
function displayAttributeDataforDrill(theReplyArray) {
   showRetrieveData();
        var theFrame = "parent.MapFrame";
        if ((useExternalWindow) || (!useTextFrame)) {
                        var Win1 = window.open("","QueryWindow","width=575,height=120,scrollbars=yes,resizable=yes");
                        theFrame = "opener";
                        if (parent.MapFrame!=null) theFrame = "opener.parent.MapFrame";
        } else {
                        var Win1 = parent.TextFrame;
                        Win1.document.open();
        }
        Win1.document.open();
        Win1.document.writeln('<html><head><title>Query/Selection Results</title></head>');
        Win1.document.writeln('<body bgcolor="' + textFrameBackColor + '" text="Black" link="Blue" vlink="Gray" LEFTMARGIN=0 onload="window.focus()"><center>');
        var lyrCount = 0;
         for (b=0;b<theReplyArray.length;b++) {
                if (theReplyArray[b]!="") {
                        theReply = theReplyArray[b];
                        setLayerFields(b);
                        var theError = getXMLErrorMessage(theReply);
                        var fList="";
                        var lpos1 = 1;
                        var lpos2 = 1;
                        var epos = 1;
                        var spos = 1;
                        var morePoints=true;
                        var moreFeatures=true;
                        var featureCount = justGetFeatureCount(theReply);
                        var pos = 0;
                        var startpos = 0;
                        var endpos = xmlEndPos;
                        var stillMore = false
                        pos = theReply.indexOf('hasmore="true"',endpos);
                        if (pos!=-1) stillMore = true;
                        pos=0;
                        var tempCount = 0;
                        var selectedData="";
                        var inData="";
                        var xStr="";
                        var yStr="";
                        var fCount = featureCount;
                        selectCount = 0;
                        var tempString="";
                        if (featureCount > 0) {
                                newSelectCount += 1;
                                endpos = 1;
                                Win1.document.writeln('<center><br><FONT FACE="Arial" SIZE="-1"><b>' + parent.TopFrame.nomSousThemeLayer(LayerName[b]) + '</b><br>');
                                Win1.document.writeln('<table border="1" size="95%" cellspacing="0" cellpadding="2" nowrap bgcolor="' + tableBackColor + '">');                                         
                                for (var i=0;i<fCount;i++) {
                
                                        inData = parseRecordString(theReply, endpos);
                                        endpos = xmlEndPos;
                                        selectedData = inData;
                                        
                                        epos = theReply.indexOf("</FEATURE",endpos);
                                        if (showSelectedData) {
                                                var showHyper = false;
                                                if (hyperLinkLayers!=null) {
                                                        for (var s1=0;s1<hyperLinkLayers.length;s1++) {
                                                                if (hyperLinkLayers[s1] == LayerName[b]) showHyper=true;
                                                        }
                                                }
                                                        
                                                var fName1 = getFieldNames(selectedData);
                                                var fValue1 = getFieldValues(selectedData);
                                                var idFieldNum = -1;
                                                var shapeFieldNum = -1;
                                                if (hideIDFieldData) {
                                                        // hide ID column header
                                                        for (var f=0;f<fName1.length;f++) {
                                                                if (fName1[f]==LayerIDField[ActiveLayerIndex]) idFieldNum = f;
                                                        }
                                                }
                                                if (hideShapeFieldData) {
                                                        // hide Shape column header
                                                        for (var f=0;f<fName1.length;f++) {
                                                                if (fName1[f]==LayerShapeField[ActiveLayerIndex]) shapeFieldNum = f;
                                                        }
                                                }
                                                if (selectCount==0) {
                                                        Win1.document.write('<tr><th><FONT FACE="Arial" SIZE="-2">Rec</FONT></a></th>');
                                                        for (var f=0;f<fName1.length;f++) {
                                                                if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                                        var f2 = -1;
                                                                        if (useFieldAlias) {
                                                                                for (var f3=0;f3<AliasFieldName.length;f3++) {
                                                                                        if (AliasFieldName[f3]==fName1[f]) f2 = f3;
                                                                                }
                                                                        }
                                                                        if (f2!=-1) {
                                                                                Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + AliasFieldAlias[f2] + '</FONT></a></th>');
                                                                        } else {
                                                                                Win1.document.write('<th><FONT FACE="Arial" SIZE="-2">' + fName1[f] + '</FONT></a></th>');
                                                                        }
                                                                }
                                                        }
                                                        Win1.document.writeln('</tr>');
                                                }
                                                Win1.document.write('<tr><td>');
                                                Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + (selectCount+queryStartRecord) + '</FONT>');
                                                Win1.document.writeln('</td>');
                                                for (var f=0;f<fName1.length;f++) {     
                                                        if ((f!=idFieldNum) && (f!=shapeFieldNum)) {
                                                                Win1.document.write('<TD>');
                                                                var isHyper=false;
                                                                if (showHyper) {
                                                                        for (var s1=0;s1<hyperLinkFields.length;s1++) {
                                                                                if (hyperLinkFields[s1]==fName1[f]) {
                                                                                        Win1.document.write('<a href="' + fValue1[f] + '" target="_blank">');
                                                                                        isHyper=true;
                                                                                }
                                                                        }
                                                                }
                                                                var s2 = -1;
                                                                for (var s1=0;s1<LayerFields.length;s1++) {
                                                                        if (fName1[f]==LayerFields[s1]) s2=s1;
                                                                }
                                                                if (LayerFieldType[s2]=="91") {
                                                                        if (isNaN(fValue1[f])) {
                                                                                var theDate = fValue1[f];
                                                                        } else {
                                                                                var theDateObj = new Date(parseFloat(fValue1[f]));
                                                                                var d = theDateObj.toUTCString();
                                                                                var theDate = d.replace(/GMT|UTC/,"");
                                                                        }
                                                                        Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + theDate + '</FONT>');
                                                                        theDate=null;
                                                                } else {
                                                                        Win1.document.write('<FONT FACE="Arial" SIZE="-2">' + fValue1[f] + '</FONT>');
                                                                }
                                                                if (isHyper) Win1.document.write('</a>');
                                                                Win1.document.writeln('</td>');
                                                        }
                                                }
                                                Win1.document.writeln('</tr>');
                                                fName1 = null;
                                                fValue1 = null;
                                        }
                                        selectCount += 1;
                                }
                                Win1.document.writeln('</table></center>');
                                lyrCount++

                        } else {
                                if (listAllLayersInIDAll) {
                                Win1.document.writeln('<center><FONT FACE="Arial" SIZE="-1"><b>' + parent.TopFrame.nomSousThemeLayer(LayerName[b]) + '</b>');
                                        Win1.document.writeln('<br>' + msgList[64] + '<br><br></font></center>');
                        }

                        }
                }
          }//end for 
          
          if (lyrCount==0) {
                Win1.document.writeln('<center><FONT FACE="Arial" SIZE="-1"><b>' + msgList[112] + '</b></font></center>');
          }
 
    Win1.document.writeln('</body></html>');
    Win1.document.close();
    Win1=null;
    hideRetrieveData();
} //end function


// checks if any layer has hyperlink at location and links to first one matching
function hyperLinkAny(e) {
        if (hyperLinkLayers.length>0) {
                var j = -1;
                fIndex = 0;
                for (var i=layerCount-1;i>-1;i--) {
                        
                        if ((mapScaleFactor>=LayerMinScale[i]) && (mapScaleFactor<=LayerMaxScale[i]) && (LayerVisible[i]==1)) {
                                fIindex = -1;
                                for (var k = hyperLinkLayers.length-1;k>-1;k--) {
                                        if (hyperLinkLayers[k]==LayerName[i]) {
                                                fIndex = k;
                                                j = i;
                                        }
                                }
                        }

                }
                if (j>-1) {
                        fID = j;
                        highlightedOne="";
                        var theX = mouseX;
                        var theY = mouseY;
                        getMapXY(theX,theY);
                        searchTolerance = (xDistance/iWidth) * pixelTolerance;
                        var west1 = mapX - searchTolerance;
                        var north1 = mapY + searchTolerance;
                        var east1 = mapX + searchTolerance;
                        var south1 = mapY - searchTolerance;
                        idSouth = south1;
                        idNorth = north1;
                        idWest = west1;
                        idEast = east1;
                        var tempSwap = swapSelectFields;
                        swapSelectFields=false;
                        var tempSelect = selectFields;
                        selectFields = LayerIDField[fID] + " " + LayerShapeField[fID] + " " + hyperLinkFields[fIndex];
                        var theString = writeIdentifyXML(LayerID[fID],LayerType[fID],selectFields,west1,south1,east1,north1,maxFeaturesReturned,useLimitExtent);

                        selectFields = tempSelect;
                        swapSelectFields=tempSwap;
                        showRetrieveData();
                        sendToServer(imsQueryURL,theString,16);
                        
                } else {
                        alert(msgList[114]);
                }
        } else {
                alert(msgList[115]);
        }
}

function parseHyperLinkAny(theReply) {
        var fList="";
        var lpos1 = 1;
        var lpos2 = 1;
        var pos = 0;
        var startpos = 0;
        var endpos = 0;
        var fString = theReply.substring(startpos,endpos);
        var featureCount = justGetFeatureCount(theReply);
        var linkString = "width=" + hyperlinkWindowWidth + ",height=" + hyperlinkWindowHeight + ",scrollbars=yes,resizable=yes"
        var selectedData="";
        var fCount = featureCount;
        selectCount = 0;
        var tempString="";
        if (featureCount > 0) {
                var searchStr = hyperLinkFields[fIndex] + "=";
                
                newSelectCount += 1;

                endpos = 1;
                pos = theReply.indexOf(searchStr,1);
                startpos = pos + searchStr.length + 1;
                endpos =theReply.indexOf(dQuote,startpos);
                inData = theReply.substring(startpos,endpos);
                var theLinkURL = hyperLinkPrefix[fIndex] + inData + hyperLinkSuffix[fIndex];
                if (parent.TextFrame!=null) {
                        parent.TextFrame.document.open();
                        parent.TextFrame.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                        parent.TextFrame.document.writeln('     <title>' + titleList[9] + 's</title>');
                        parent.TextFrame.document.writeln('</head>');
                        parent.TextFrame.document.writeln('<body BGCOLOR="White" TEXT="Black" LEFTMARGIN=0 TOPMARGIN=0>');
                        parent.TextFrame.document.writeln('<FONT FACE="Arial"><B>' + parent.TopFrame.nomSousThemeLayer(LayerName[fID]) +'</B></font><FONT FACE="Arial" size="-2">');
                        parent.TextFrame.document.writeln('<br>' + msgList[67] + theLinkURL );
                        parent.TextFrame.document.writeln('</FONT>');
                        parent.TextFrame.document.writeln('</body></html>');
                        parent.TextFrame.document.close();
                }
                var Win1=open(theLinkURL,"",linkString);
        } else if (fID<layerCount) {
                        fID++;
                        var j = -1;
                        if ((mapScaleFactor>=LayerMinScale[fID]) && (mapScaleFactor<=LayerMaxScale[fID]) && (LayerVisible[fID]==1)) {
                                fIindex = -1;
                                for (var k = hyperLinkLayers.length-1;k>-1;k--) {
                                        if (hyperLinkLayers[k]==LayerName[fID]) {
                                                fIndex = k;
                                                j = fID;
                                        }
                                }
                        }
                        if (j>-1) {
                                var tempSwap = swapSelectFields;
                                swapSelectFields=false;
                                var tempSelect = selectFields;
                                selectFields = LayerIDField[fID] + " " + LayerShapeField[fID] + " " + hyperLinkFields[fIndex];
                                var theString = writeIdentifyXML(LayerID[fID],LayerType[fID],selectFields,idWest,idSouth,idEast,idNorth,maxFeaturesReturned,useLimitExtent);
        
                                selectFields = tempSelect;
                                swapSelectFields=tempSwap;
                                showRetrieveData();
                                sendToServer(imsQueryURL,theString,16);
                        } else {
                                parseHyperLinkAny("");
                        }
        

        } else {
                if (parent.TextFrame!=null) {
                        parent.TextFrame.document.open();
                        parent.TextFrame.document.writeln('<html><meta http-equiv="Content-Type" content="text/html; charset=' + charSet + '"><head>');
                        parent.TextFrame.document.writeln('     <title>' + titleList[9] + '</title>');
                        parent.TextFrame.document.writeln('</head>');
                        parent.TextFrame.document.writeln('<body BGCOLOR="White" TEXT="Black" LEFTMARGIN=0 TOPMARGIN=0>');
                        parent.TextFrame.document.writeln('<FONT FACE="Arial" size="-1">');
                        parent.TextFrame.document.writeln('<br>' + msgList[116]);
                        parent.TextFrame.document.writeln('</FONT>');
                        parent.TextFrame.document.writeln('</body></html>');
                        parent.TextFrame.document.close();
                } else {
                        var msg = msgList[69];
                        if (debugOn>0) {
                                msg = msg + msgList[9] + theReply;
                        }
                        alert(msg);
                }
        }
        hideRetrieveData();
}






