aimsCustomPresent=true;
selectXMLMode=6;
identifyXMLMode=7;
queryXMLMode=8;
findXMLMode=14;
hyperlinkXMLMode=15;
function customMapTool(e)
{
if(toolMode==viewProductMode)
{
viewProducts(e);
}
}
function useCustomFunction(theReply)
{
if(XMLMode==viewProductMode)
{
processGetProductFeatureIDs(theReply);
}
else if(XMLMode==customSearchMode)
{
processPerformSearch(theReply);
}
else if(XMLMode==customLegendProcessMode)
{
processGenerateLegend(theReply);
}
else if(XMLMode==1030)
{
processScrollPhoto(theReply);
}
else
{
alert(msgList[55]+XMLMode+msgList[56]);
}
hideLayer("LoadData");
}
function customCheckMouseUp(e)
{
}
function addCustomToMap1()
{
var customString="";
return customString;
}
function extractIt()
{
hideLayer("measureBox");
alert(msgList[51]);
}

function dms2decdeg(dms)
{
   var arr=dms.split(" ");

   if(arr.length==1)
   {
      return arr[0]/1;
   }
   else if(arr.length==2)
   {
      if ( arr[0] > 0 )
         return(arr[0]/1+(arr[1]/60));
      else
         return(arr[0]/1-(arr[1]/60));
   }
   else
   {
      if ( arr[0] > 0 )
         return(arr[0]/1+(arr[1]/60)+(arr[2]/3600));
      else
         return(arr[0]/1-(arr[1]/60)-(arr[2]/3600));
   }

}

function padGridRefAndZoom(gridX,gridY)
{
var tmp=currentScale/2000000;
var padValue=tmp;
if(gridX.indexOf(' ')>0) 
{
gridX=dms2decdeg(gridX);
}
if(gridY.indexOf(' ')>0) 
{
gridY=dms2decdeg(gridY);
}
var tempXmin=gridX-padValue;
var tempXmax=new Number(gridX)+new Number(padValue);
var tempYmin=gridY-padValue;
var tempYmax=new Number(gridY)+new Number(padValue);
zoomToEnvelope(tempXmin,tempYmin,tempXmax,tempYmax);
}
function zoomToScale(dScaleDenominator)
{
var dDotsPerInch=96;
var dMapUnitsPerInch=1.0/12.0;
var dCenterX=(eLeft+eRight)*0.5;
var dCenterY=(eBottom+eTop)*0.5;
var dScreenToMapScaleFactor=dMapUnitsPerInch/dDotsPerInch*dScaleDenominator;
var dNewWidthHalf=iWidth*dScreenToMapScaleFactor*0.5;
var dNewHeightHalf=iHeight*dScreenToMapScaleFactor*0.5;
saveLastExtent();
eLeft=dCenterX-dNewWidthHalf;
eRight=dCenterX+dNewWidthHalf;
eBottom=dCenterY-dNewHeightHalf;
eTop=dCenterY+dNewHeightHalf;
sendMapXML();
}
function zoomToScale_2(zval)
{
saveLastExtent();
var msize;
if(iHeight<iWidth)
{
msize=iHeight
}
else
{
msize=iWidth
}
var midX=eRight-(xDistance/2);
var midY=eTop-(yDistance/2);
var mscale=(zval*((msize/97.6925)/12))*0.5;
eLeft=((midX)-(mscale));
eRight=((midX)+(mscale));
eBottom=((midY)-(mscale));
eTop=((midY)+(mscale));
sendMapXML();
}
function customWriteAcetateXML()
{
var theString='';
if(aimsClickPresent)
{
if(clickCount>0)
{
var clickColor=selectColor;
if(clickType==1)
clickColor=clickMarkerColor;
theString+='<ARCXML version="1.1">';
theString+='<REQUEST><GET_IMAGE><PROPERTIES>';
theString+='<ENVELOPE minx="'+forceComma(eLeft)+'" miny="'+forceComma(eBottom)+'" maxx="'+forceComma(eRight)+'" maxy="'+forceComma(eTop)+'" />\n';
theString+='<IMAGESIZE height="'+iHeight+'" width="'+iWidth+'" />\n';
theString+='<BACKGROUND color="'+transColor+'" transcolor="'+transColor+'" />\n';
theString+='</PROPERTIES>\n'
theString+='<LAYER type="acetate" name="allTheClicks" id="allTheClicks">\n';
if(clickCount>1)
{
theString+='<OBJECT units="database">\n<LINE coords="'+forceComma(clickPointX[0])+coordsDelimiter+forceComma(clickPointY[0]);
for(var i=1;i<clickCount;i++)
{
theString+=pairsDelimiter+forceComma(clickPointX[i])+coordsDelimiter+forceComma(clickPointY[i]);
}
theString+='" >\n';
theString+='<SIMPLELINESYMBOL type="solid" color="'+clickMarkerColor;
theString+='" width="3" />\n</LINE>\n</OBJECT>\n';
theString+='<OBJECT units="database">\n<LINE coords="'+forceComma(clickPointX[0])+coordsDelimiter+forceComma(clickPointY[0]);
for(var i=1;i<clickCount;i++)
{
theString+=pairsDelimiter+forceComma(clickPointX[i])+coordsDelimiter+forceComma(clickPointY[i]);
}
theString+='" >\n';
theString+='<SIMPLELINESYMBOL type="solid" color="255,255,255" width="1" />\n</LINE>\n</OBJECT>\n';
}
for(var i=0;i<clickCount;i++)
{
theString+='<OBJECT units="database">\n<POINT coords="'+forceComma(clickPointX[i])+coordsDelimiter+forceComma(clickPointY[i])+'">\n';
theString+='<SIMPLEMARKERSYMBOL  type="'+clickMarkerType+'"';
theString+=' color="'+clickMarkerColor+'" width="'+clickMarkerSize+'" />\n</POINT>\n</OBJECT>\n';
}
theString+='</LAYER>\n';
theString+='</GET_IMAGE></REQUEST>';
theString+='</ARCXML>';
}
}
return theString;
}
