document.write('<link rel="stylesheet" type="text/css" href="CSS/imapplugin.css"/>');
document.write('<meta http-equiv="X-UA-Compatible" content="IE=7"/>');
//document.write(' <style type="text/css">.infowindow .window .top .right .user .title { background-color:#00FF00 }} .infowindow .window .top .right .user .content { background-color:#FF0000} </style>');

var map;
var OneMap;
var tokenVal;
var GraphicsLayer;
var PCGraphicsLayer;
var startExtent, locator, routeTask, routeParams, routes = [];
var grid, store;
var routeSymbol, segmentSymbol, stopSymbol;
var from, to, directions, directionFeatures, segmentGraphic;
var symbol, visible = [];
var counter = "";
var SrchGraphicsLayer, XYGraphicsLayer;
var FromStopLayer;
var ToStopLayer;
var confFrom = "";
var host = "http://www.onemap.sg/";
var _baseMapHost = "http://www.onemap.sg/ArcGIS/rest/services/";
var _baseMapURL = _baseMapHost + "basemap/MapServer";
var tileHost1 = "http://t1.onemap.sg/ArcGIS/rest/services/"
var tileHost2 = "http://t2.onemap.sg/ArcGIS/rest/services/"
var _baseMapURL1;
var _baseMapURL2;
var xCord;
var yCord;
var flag="1";
var scxCord;
var scyCord;
var globCenter;
var urlLength; 

function GetMiniMap(params) {

   tokenVal = params.token;
   if ((params.height == undefined) || (params.width == undefined)) {
        params.height = 200;
        params.width = 200;
    }
    if ((params.height == "") && (params.width == "")){
    params.height = 200;
    params.width = 200;
}
if ((params.height < 200) || (params.width < 200)) {
    params.height = 200;
    params.width = 200;
}
if ((params.height > 500) || (params.width > 500)) {
    params.height = 500;
    params.width = 500;
}
   content=params.infoWindowText;
  // HideCallout();
   CreateBody(params)
   ShowPostalCode();
}
//function HideCallout()
//{
//    var chkCallout1 = params.chlCallout;  
//    if (chkCallout1 == "false")
//    {
//     alert("Hi");
//    }
//} 
function InputParams()
{
    var newObj = new Object;
    return newObj;
}
function getXYForPostalcode() {
   
    var postalCode = params.postalcode;
    if (postalCode != ""){
        var basicSearch = new BasicSearch;
        basicSearch.whereClause = "searchval ='" + postalCode + "'";
        basicSearch.rset = "1";
        basicSearch.returnGeom = "1";
        basicSearch.GetSearchResults(function(GetResults)
        {
            returnXYForPostalCode(GetResults);
        });
    }      
}
function returnXYForPostalCode(getResults){
        var pages = getResults.nop;
        var XY;
        var results = getResults.results;
            if (results == "No results") {
                alert("Invalid search value");
                XY = "Nothing"
            }
            else {
                var searchval = results[0].SEARCHVAL;
                var xCord = results[0].X;
                var yCord = results[0].Y;
                XY = xCord + "|" + yCord;
            }
            return XY;
}

function ShowPostalCode() {
    //PCGraphicsLayer.clear();
    var postalCode = params.postalcode;

    var basicSearch = new BasicSearch;
     basicSearch.searchVal = postalCode;
     basicSearch.returnGeom = '1'; 
    // basicSearch.token = "qo/s2TnSUmfLz+32CvLC4RMVkzEFYjxqyti1KhByvEacEdMWBpCuSSQ+IFRT84QjGPBCuz/cBom8PfSm3GjEsGc8PkdEEOEr"
     basicSearch.GetSearchResults(function(GetResults)
    {
        ShowPostalCodeOnMap(GetResults);
    });
 }

function ShowPostalCodeOnMap(getResults){

    //map.addLayer(PCGraphicsLayer);
    var zoomLevel = params.zoomLevel;
//    var zoomLevel = zoomLevel -1;
    var pages = getResults.nop;
    var results = getResults.results;
    if (results != "No results") {
        var searchval = results[0].SEARCHVAL;
        xCord = results[0].X;
        yCord = results[0].Y;
        globCenter=xCord +','+yCord
        OneMap = new GetNewOneMap('divMain','SM',{level:zoomLevel,layer:PCGraphicsLayer,center:(xCord) + ',' +(yCord)});  
	    map=OneMap.map;
    }
    else
    {
         alert("Please provide a valid address/postal code")  
    }
}


var OneMap3;
function GetNewOneMap(divName, baseMap, optionalProps) {

    try { var center = optionalProps.center; } catch (err) { }
    try { var level = optionalProps.level; } catch (err) { }
    try { var layer = optionalProps.layer; } catch (err) { }

if (baseMap.toUpperCase() == "SM") {
        _baseMapURL = _baseMapHost + "basemap" + "/MapServer";
	_baseMapURL1=tileHost1 + "basemap" + "/MapServer";
	_baseMapURL2=tileHost2 + "basemap" + "/MapServer";
    }
    else if (baseMap.toUpperCase() == "LL") {
        _baseMapURL = _baseMapHost + "LOT_VIEW" + "/MapServer";
	_baseMapURL1=tileHost1 + "LOT_VIEW" + "/MapServer";
	_baseMapURL2=tileHost2 + "LOT_VIEW" + "/MapServer";
    }
    else {
        _baseMapURL = _baseMapHost + baseMap + "/MapServer";
	_baseMapURL1=tileHost1 + baseMap + "/MapServer";
	_baseMapURL2=tileHost2 + baseMap + "/MapServer";

    }

    NewOneMap = this;
    _OneMapDiv = divName
    dojo.require("esri.map");

    esriConfig.defaults.map.slider = { left: "-500px", top: "5px", width: null, height: "100px" };

    dojo.addOnLoad(function() {
        
        
        var startExtent = getExtentForLevelnCenterNew(center, level)
       
        //OneMap3 = new esri.Map(_OneMapDiv, { extent: new esri.geometry.Extent({ xmin: -4423.616057107915, ymin: 15672.622335268648, xmax: 69773.39097023949, ymax: 52887.42209820151, spatialReference: { wkid: 3414} }) });
        //OneMap3 = new esri.Map(_OneMapDiv, { extent: new esri.geometry.Extent({ xmin: 30200, ymin: 30200, xmax: 30500, ymax: 30500, spatialReference: { wkid: 3414} }) }); 
        //OneMap3 = new esri.Map(_OneMapDiv)
        OneMap3 = new esri.Map(_OneMapDiv, { extent: startExtent });
        
        var tiledMapServiceLayer = new esri.layers.ArcGISTiledMapServiceLayer(_baseMapURL,{tileServers:[_baseMapURL1,_baseMapURL2]});

////////////////added to get tiles from AWS//////////////////

dojo.declare("OM.CustomTileServiceLayer", esri.layers.TiledMapServiceLayer, {
        constructor: function() {
          this.spatialReference = new esri.SpatialReference({ wkid:3414 });
          this.initialExtent = (this.fullExtent = new esri.geometry.Extent(-4589.0529981345, 8065.64251572593, 96370.1129604966, 57234.9694430107, this.spatialReference));
          this.tileInfo = new esri.layers.TileInfo({
            "rows" : 256,
            "cols" : 256,
            "dpi" : 96,
            "format" : "JPEG",
            "origin" : {
              "x" : -5878011.89743302,
              "y" : 10172511.897433
            },
            "spatialReference" : {
              "wkid" : 3414
            },
            "lods" : [
              {"level" : 0, "resolution" : 76.4372195411057, "scale" : 288896},
              {"level" : 1, "resolution" : 38.2186097705529, "scale" : 144448},
              {"level" : 2, "resolution" : 19.1093048852764, "scale" : 72224},
              {"level" : 3, "resolution" : 9.55465244263822, "scale" : 36112},
              {"level" : 4, "resolution" : 4.77732622131911, "scale" : 18056},
              {"level" : 5, "resolution" : 2.38866311065955, "scale" : 9028},
              {"level" : 6, "resolution" : 1.19433155532978, "scale" : 4514},
              {"level" : 7, "resolution" : 0.597165777664889, "scale" : 2257},
              {"level" : 8, "resolution" : 0.298450596901194, "scale" : 1128}
            ]
          });

          this.loaded = true;
          this.onLoad(this);
        },

        getTileUrl: function(level, row, col) {
          return "http://t1.onemap.sg/BASEMAP/Layers/_alllayers/" +
                  "L" + dojo.string.pad(level, 2, '0') + "/" +
                  "R" + dojo.string.pad(row.toString(16), 8, '0') + "/" +
                  "C" + dojo.string.pad(col.toString(16), 8, '0') + "." +
                  "jpg";
        }
      });
////////////////added to get tiles from AWS/////////////////////////////

        if (baseMap.toUpperCase() == "SM")
        {
            OneMap3.addLayer(new OM.CustomTileServiceLayer());
        }
        else
        {
            OneMap3.addLayer(tiledMapServiceLayer);
        }
//        OneMap3.addLayer(tiledMapServiceLayer);

        XYGraphicsLayer = new esri.layers.GraphicsLayer();

        if ((layer != undefined) || (layer != null))
            OneMap3.addLayer(layer);
        NewOneMap.map = OneMap3;

        //custom methods
        NewOneMap.showLocation = showLocation;
        NewOneMap.mashupTheme = mashupTheme;
        NewOneMap.overlayKML = overlayKML;
        NewOneMap.clearGraphics = clearGraphics;
        NewOneMap.GetMultipleInfo = GetMultipleInfo;
        NewOneMap.onOneMapExtentChange = extentChangeAction;

	var newdiv = document.createElement('div');
	var divIdName = 'OneMapLogo';
	newdiv.setAttribute('id', divIdName);
	newdiv.setAttribute('onclick',"window.open('http://www.onemap.sg/home')");
	newdiv.setAttribute('style', "cursor:hand");
newdiv.setAttribute('style', "cursor:pointer");
document.getElementById(OneMap3.id+'_root').appendChild(newdiv);
document.getElementById('OneMapLogo').innerHTML="<img src='" + host + "api/js/imap_small_logo.gif'  /><img src='"+ host +"minimap/images/copyright.gif'><a href='javascript:openHome();' class='link'>2012 OneMap</a>";
var t = $('#' + OneMap3.id+'_root').position().top;
var l = $('#' + OneMap3.id+'_root').position().left;
var ht = parseInt(document.getElementById(OneMap3.id).style.height.replace('px', ''))
document.getElementById("OneMapLogo").style.top = (ht - 35) + 'px';
document.getElementById("OneMapLogo").style.position="absolute";
document.getElementById("OneMapLogo").style.zIndex=100
PlotXYOnMap();
        //dojo.connect(OneMap3, "onLoad", PlotXYOnMap);
    });
    
}

//var PCGraphicsLayer2 = new esri.layers.GraphicsLayer();
function PlotXYOnMap() {

    var PCGraphicsLayer = new esri.layers.GraphicsLayer();
    PCGraphicsLayer.clear();
    OneMap3.addLayer(PCGraphicsLayer);
    var xval = xCord;
    var yval = yCord;
    //var oneMapGif1 = "http://localhost/mini/images/flag.png";
    var XYsymbol = new esri.symbol.PictureMarkerSymbol(oneMapGif,20, 20)
    var XYLocation = new esri.geometry.Point(xval, yval, new esri.SpatialReference({ wkid: 3414 }))
    var XYGraphic = new esri.Graphic(XYLocation, XYsymbol);
    PCGraphicsLayer.add(XYGraphic);
//      dojo.connect(PCGraphicsLayer, "onLoad", function(evt) 
//      {
      
if (urlLength == "9")
{
   // var t = scxCord*2*0.4;
   // t = t-10;
   var r = scyCord*2*0.4;
   r = r-20;
    var callWidth = params.calloutWidth;
    var callHeight = params.calloutHeight;
     while(callWidth.indexOf("%27") >-1 )
    {
    callWidth=callWidth.replace("%27","'")
    }
     while(callHeight.indexOf("%27") >-1 )
    {
    callHeight=callHeight.replace("%27","'")
    }
    if ( callWidth == "''" && callHeight == "''")
    {
    OneMap3.infoWindow.resize(scxCord*2*0.4, r);
    OneMap3.infoWindow.hide();
    }
    else if ( callWidth == "" && callHeight == "")
    {
    OneMap3.infoWindow.resize(scxCord*2*0.4, r);
    OneMap3.infoWindow.hide();    
    }
    else
    {
    OneMap3.infoWindow.resize(callWidth*1,callHeight*1 );
    OneMap3.infoWindow.hide();   
    }
      
    var calloutTitle = params.calloutTitle;
    while(calloutTitle.indexOf("%27") >-1 )
    {
    calloutTitle=calloutTitle.replace("%27","'")
    }
    if (calloutTitle == "''")
    {
     var title = params.postalcode;
    }
     else if ( calloutTitle == "")
     {
      var title = params.postalcode;;
     }
    else 
    {
     var title = calloutTitle;
    }    
//        set graphic onclick event
        dojo.connect(PCGraphicsLayer, "onClick", function(evt) 
        {
                while(title.indexOf('%20') >-1 )
                {
                title=title.replace('%20',' ')
                }
                var content = infoWindowText;
                
                // OneMap3.infoWindow.san;
                OneMap3.infoWindow.setTitle(title); 
                OneMap3.infoWindow.setContent(content);
                
                OneMap3.infoWindow.show(evt.screenPoint,OneMap3.getInfoWindowAnchor(evt.screenPoint));
        })
            var test = params.check;            
            if (test ==  "true")
            {
              
                dojo.addOnLoad(function() {
                //var title = params.postalcode
                while(title.indexOf('%20') >-1 )
                {
                title=title.replace('%20',' ')
                }
                var content = infoWindowText
                

                OneMap3.infoWindow.setTitle(title);
                OneMap3.infoWindow.setContent(content);
                
                var xval1 = parseFloat(scxCord);
                var yval1 = parseFloat(scyCord);
//                
//                var startExtent2 = getExtentForLevelnCenterNew(xval1+','+yval1, 8)
//                OneMap3.extent=startExtent2;
//                
                var XYLocation2 = new esri.geometry.Point(xval1, yval1, new esri.SpatialReference({ wkid: 3414 }))
                OneMap3.infoWindow.show(XYLocation2,OneMap3.getInfoWindowAnchor(XYLocation2));
                    //OneMap3.Refresh();
    //                var level =OneMap3.getLevel();
//                    var xDist=getMultipleFactorNew2(level,scxCord*2)
//                    var yDist=getMultipleFactorNew2(level,scyCord*2)
//                    xLocation = globCenter.split(",")[0]
//                    yLocation = globCenter.split(",")[1]
//                    xLocation=xLocation-10000
//                    yLocation=yLocation-10000
//                    xLocation=parseFloat(xLocation);
//                    yLocation=parseFloat(yLocation);
//                    var XYLocation3 = new esri.geometry.Point(xLocation, yLocation, new esri.SpatialReference({ wkid: 3414 }))
//                    OneMap3.centerAt(XYLocation3);
                })
            }
         }   
         else if (urlLength == "4")
         {
          
         }

	else
	{

	}            
            var zoomLevel = params.zoomLevel
            OneMap3.setLevel(zoomLevel);
}


function ShowXYOnMap() {
    map.addLayer(XYGraphicsLayer);
    var XYVal = params.XY;
    if (XYVal.indexOf(',') > -1) {
        var val = new Array();
        val = XYVal.split(",")
        var xval = val[0];
        var yval = val[1];
        if (isNaN(xval) && isNaN(yval)) {
        } else {
        var XYsymbol = new esri.symbol.PictureMarkerSymbol("http://www.onemap.sg/minimap/images/Red_glow.gif", 20, 20)
        var XYLocation = new esri.geometry.Point(xval, yval, new esri.SpatialReference({ wkid: 3414 }))
        var XYGraphic = new esri.Graphic(XYLocation, XYsymbol);
        XYGraphicsLayer.add(XYGraphic);
        
        }
    }
    else {
    alert("XY is not in proper format")
    }    
}


function errorHandler(err) {
    alert("An error occured\n" + err.message + "\n" + err.details.join("\n"));
}

function ZoomIn() { 
    var level = OneMap.map.getLevel()
    OneMap.map.setLevel(level + 1);
}

function ZoomOut() {
    var level = OneMap.map.getLevel()
    OneMap.map.setLevel(level - 1);
}

function openHome() {
    window.open("http://www.onemap.sg/home")
}

function openMap() {
    var xmin = OneMap.map.extent.xmin;
    var ymin = OneMap.map.extent.ymin;
    var xmax = OneMap.map.extent.xmax;
    var ymax = OneMap.map.extent.ymax;
    var lvl = OneMap.map.getLevel();
    var ext = "mExt:"+ xmin + "," + ymin + "," + xmax + "," + ymax + "," + lvl;

    var finEncodedURL = encodeURL(ext)
    var url ="http://www.onemap.sg/index.html?" + finEncodedURL;
    url += "&searchVal=" + encodeURIComponent(params.postalcode);
    window.open(url);

    //window.open("http://www.onemap.sg/index.html?" + finEncodedURL)

}
		function encodeURL(input)
			{
				var inputChar = "";
				var outputChar = "";
		        
				var inputCharArray = new Array();
				var outputString = "";
						 
				for (var idx = 0; idx<input.length; idx++)
				{
					inputChar = input.charAt(idx);
		
		 			if (inputChar == "a")
					{
		                outputChar = "k";
		   			}
		   			else if (inputChar == "A")
		   			{
		   				outputChar = "K";
		   			}
					else if (inputChar == "b")
					{
		                outputChar = "l";
					}
		            else if (inputChar == "B")
					{
		                outputChar = "L";
					}
		            else if (inputChar == "c")
					{
		                outputChar = "m";
					}
		            else if (inputChar == "C")
					{
		                outputChar = "M";
					}
		            else if (inputChar == "d")
					{
		                outputChar = "n";
					}
		            else if (inputChar == "D")
					{
		                outputChar = "N";
					}
		            else if (inputChar == "e")
					{
		                outputChar = "o";
					}
		            else if (inputChar == "E")
					{
		                outputChar = "O";
					}
		            else if (inputChar == "f")
					{
		                outputChar = "p";
					}
		            else if (inputChar == "F")
					{
		                outputChar = "P";
					}
		            else if (inputChar == "g")
					{
		                outputChar = "8";
					}
		            else if (inputChar == "G")
					{
		                outputChar = "Q";
					}
		            else if (inputChar == "h")
					{
		                outputChar = "r";
					}
		            else if (inputChar == "H")
					{
		                outputChar = "0";
					}
		            else if (inputChar == "i")
					{
		                outputChar = "s";
					}
		            else if (inputChar == "I")
					{
		                outputChar = "S"
					}
		            else if (inputChar == "j")
					{
		                outputChar = "t";
					}
		            else if (inputChar == "J")
					{
		                outputChar = "T";
					}
		            else if (inputChar == "k")
					{
		                outputChar = "u";
					}
		            else if (inputChar == "K")
					{
		                outputChar = "U";
					}
		            else if (inputChar == "l")
					{
		                outputChar = "v";
					}
		            else if (inputChar == "L")
					{
		                outputChar = "V";
					}
		            else if (inputChar == "m")
					{
		                outputChar = "w";
					}
		            else if (inputChar == "M")
					{
		                outputChar = "W";
					}
		            else if (inputChar == "n")
					{
		                outputChar = "x";
					}
		            else if (inputChar == "N")
					{
		                outputChar = "X";
					}
	            	else if (inputChar == "o")
					{
		                outputChar = "y";
					}
		            else if (inputChar == "O")
					{
		                outputChar = "9";
					}
		            else if (inputChar == "p")
					{
		                outputChar = "z";
					}
		            else if (inputChar == "P")
					{
		                outputChar = "Z";
					}
		            else if (inputChar == "q")
					{
		                outputChar = "3";
					}
		            else if (inputChar == "Q")
					{
		                outputChar = "A";
					}
		            else if (inputChar == "r")
					{
		                outputChar = "1";
					}
		            else if (inputChar == "R")
					{
		                outputChar = "B";
					}
		            else if (inputChar == "s")
					{
		                outputChar = "2";
					}
		            else if (inputChar == "S")
					{
		                outputChar = "C";
					}
		            else if (inputChar == "t")
					{
		                outputChar = "d";
					}
		            else if (inputChar == "T")
					{
		                outputChar = "D";
					}
		            else if (inputChar == "u")
					{
		                outputChar = "e";
					}
		            else if (inputChar == "U")
					{
		                outputChar = "E";
					}
		            else if (inputChar == "v")
					{
		                outputChar = "4";
					}
		            else if (inputChar == "V")
					{
		                outputChar = "F";
					}
		            else if (inputChar == "w")
					{
		                outputChar = "g";
					}
		            else if (inputChar == "W")
					{
		                outputChar = "G";
					}
		            else if (inputChar == "x")
					{
		                outputChar = "5";
					}
		            else if (inputChar == "X")
					{
		                outputChar = "H";
					}
		            else if (inputChar == "y")
					{
		                outputChar = "i";
					}
		            else if (inputChar == "Y")
					{
		                outputChar = "6";
					}
		            else if (inputChar == "z")
					{
		                outputChar = "j";
					}
		            else if (inputChar == "Z")
					{
		                outputChar = "7";
					}
		            else if (inputChar == "0")
					{
		                outputChar = "Y";
					}
		            else if (inputChar == "1")
					{
		                outputChar = "q";
					}
		            else if (inputChar == "2")
					{
		                outputChar = "J";
					}
		            else if (inputChar == "3")
					{
		                outputChar = "I";
					}
		            else if (inputChar == "4")
					{
		                outputChar = "h";
					}
		            else if (inputChar == "5")
					{
		                outputChar = "f";
					}
		            else if (inputChar == "6")
					{
		                outputChar = "a";
					}
		            else if (inputChar == "7")
					{
		                outputChar = "c";
					}
		            else if (inputChar == "8")
					{
		                outputChar = "b";
					}
		            else if (inputChar == "9")
					{
		                outputChar = "R";
					}
					else if (inputChar == ".")
					{
		                outputChar = "_";
					}
					else if (inputChar == " ")
					{
		                outputChar = "^";
					}
		            else
					{
		                outputChar = inputChar;
					}
					outputString = outputString + outputChar;
				}
				return outputString;

			}
			function miniurl(sLen)
			{
		    urlLength = sLen; 
			}

function CreateBody(params) {
var mainDivName = params.div;
var bodyText = '<table cellspacing="0" cellpadding="0"></table>'
var inputDiv = "";

var width =params.width;
var height = params.height;
scxCord=width/2;
scyCord=height/2;
if (width=="200" && height=="200")
{
var zoomtoolDiv =' <div id="divZoomTool" style="Z-INDEX: 100; POSITION: absolute; overflow:auto;" class="zoom"><input id="zoomin" type=image src="http://www.onemap.sg/minimap/images/zoomin.png" alt="ZoomIn" onclick="ZoomIn();"/><br/> <input id="zoomout" type=image src="http://www.onemap.sg/minimap/images/zoomout.png" alt="ZoomOut" onclick="ZoomOut();"/></div> ';

var copyRightDiv = '<div id="divCopyright" style="width:242px; height:20px; Z-INDEX: 100; POSITION: absolute;overflow:auto; font-family:Verdana, Geneva, sans-serif; font-size:10px;"><img src="http://www.onemap.sg/minimap/images/copyright.gif"></img><a href="javascript:openHome();"><b>2012 OneMap</b></a></div>';

var enlargeMapDiv = '<div id="divEnlargeMap" style="width:242px; height:20px; Z-INDEX: 100; POSITION: absolute; overflow:auto; font-family:Verdana, Geneva, sans-serif; font-size:10px;"><a href="javascript:openMap();"><b>Enlarge Map</b></a></div>';
}
else
{

var zoomtoolDiv =' <div id="divZoomTool" style="Z-INDEX: 100; POSITION: absolute; overflow:auto;" class="zoom"><input id="zoomin" type=image src="http://www.onemap.sg/minimap/images/zoomin.png" alt="ZoomIn" onclick="ZoomIn();"/><br/> <input id="zoomout" type=image src="http://www.onemap.sg/minimap/images/zoomout.png" alt="ZoomOut" onclick="ZoomOut();"/>    </div> ';

var copyRightDiv = '<div id="divCopyright" style="width:242px; height:20px; Z-INDEX: 100; POSITION: absolute;overflow:auto; font-family:Verdana, Geneva, sans-serif; font-size:8px;"><img src="http://www.onemap.sg/minimap/images/copyright.gif"></img><a href="javascript:openHome();" class="link"><b>2012 OneMap</b></a></div>';

var enlargeMapDiv = '<div id="divEnlargeMap" style="width:242px; height:20px; Z-INDEX: 100; POSITION: absolute; overflow:auto; font-family:Verdana, Geneva, sans-serif; font-size:10px;"><a href="javascript:openMap();" class="link"><b>Enlarge Map</b></a></div>';
}
   bodyText = bodyText + zoomtoolDiv;
   //bodyText = bodyText + copyRightDiv;
   bodyText = bodyText + enlargeMapDiv;
  
   document.getElementById(mainDivName).innerHTML = bodyText;
   document.getElementById("divMain").style.height = params.height + 'px';
   document.getElementById("divMain").style.width = params.width + 'px';

   var t = $('#divMain').position().top;
   var l = $('#divMain').position().left;

   var mapHeight = params.height;
   var mapWidth = params.width;

   document.getElementById("divZoomTool").style.top = t + 7 + 'px';
   document.getElementById("divZoomTool").style.left = l + 10 + 'px';

  //document.getElementById("divCopyright").style.top = t + (mapHeight - 10 - 10) + 'px';
  // document.getElementById("divCopyright").style.left = l + 10 + 'px';

   document.getElementById("divEnlargeMap").style.top = t + (mapHeight - 5 - 10) + 'px';
   document.getElementById("divEnlargeMap").style.left = l + (mapWidth - 80) + 'px';
}


function getMultipleFactorNew(level) {

    var zoomLevel0 = 76.4372195411057
    var zoomLevel1 = 38.2186097705529
    var zoomLevel2 = 19.1093048852764
    var zoomLevel3 = 9.55465244263822
    var zoomLevel4 = 4.77732622131911
    var zoomLevel5 = 2.38866311065955
    var zoomLevel6 = 1.19433155532978
    var zoomLevel7 = 0.597165777664889
    var zoomLevel8 = 0.298450596901194
    var factor;
    factor = 200 * eval("zoomLevel" + level);
    return factor
}

//function getMultipleFactorNew2(level,dist) {

//    var zoomLevel0 = 76.4372195411057
//    var zoomLevel1 = 38.2186097705529
//    var zoomLevel2 = 19.1093048852764
//    var zoomLevel3 = 9.55465244263822
//    var zoomLevel4 = 4.77732622131911
//    var zoomLevel5 = 2.38866311065955
//    var zoomLevel6 = 1.19433155532978
//    var zoomLevel7 = 0.597165777664889
//    var zoomLevel8 = 0.298450596901194
//    var factor;
//    factor = dist * eval("zoomLevel" + level);
//    return factor
//}

function getExtentForPointNew(x, y, buffer) {

    var xLocation1 = parseFloat(x) - buffer
    var yLocation1 = parseFloat(y) - buffer
    var xLocation2 = parseFloat(x) + buffer
    var yLocation2 = parseFloat(y) + buffer
    
    
    
    var startExtent = new esri.geometry.Extent({ xmin: xLocation1, ymin: yLocation1, xmax: xLocation2, ymax: yLocation2, spatialReference: { wkid: 3414} });
    return startExtent
}

function getExtentForLevelnCenterNew(center, level) {
 
    var buffer = 200;
    var xLocation
    var yLocation
    if ((center == null) || (center == undefined)) {
        center = "28968.103,33560.969";
        xLocation = center.split(",")[0]
        yLocation = center.split(",")[1]

        if ((level != null) || (level != undefined))
            buffer = getMultipleFactorNew(level);
        else
            buffer = getMultipleFactorNew(1);
    }
    else {
        //            var xLocation=center.split(",")[0]
        //            var yLocation=center.split(",")[1]

        if ((level != null) || (level != undefined))
            buffer = getMultipleFactorNew(level);
        else
            buffer = getMultipleFactorNew(1);
    }
    xLocation = parseFloat(center.split(",")[0])
    yLocation = parseFloat(center.split(",")[1])
    var extent = getExtentForPointNew(xLocation, yLocation, buffer)
    return extent
}

////if (flag=="1"){
////OneMap.map.setLevel(7);
////}
