output.inc.php 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. function map($field, $value) {
  2. $str = '';
  3. $setting = string2array($this->fields[$field]['setting']);
  4. $setting[width] = $setting[width] ? $setting[width] : '600';
  5. $setting[height] = $setting[height] ? $setting[height] : '400';
  6. list($lngX, $latY,$zoom) = explode('|', $value);
  7. if($setting['maptype']==1) {
  8. $str = "<script src='http://app.mapabc.com/apis?&t=flashmap&v=2.4&key=$setting[api_key]&hl=zh-CN' type='text/javascript'></script>";
  9. } elseif($setting['maptype']==2) {
  10. $str = "<script type='text/javascript' src='http://api.map.baidu.com/api?v=1.2&key=$setting[api_key]'></script>";
  11. }
  12. $str .= '<div id="mapObj" class="view" style="width: '.$setting[width].'px; height:'.$setting[height].'px"></div>';
  13. $str .='<script type="text/javascript">';
  14. if($setting['maptype']==1) {
  15. $str .='
  16. var mapObj=null;
  17. lngX = "'.$lngX.'";
  18. latY = "'.$latY.'";
  19. zoom = "'.$zoom.'";
  20. var mapOptions = new MMapOptions();
  21. mapOptions.toolbar = MConstants.MINI;
  22. mapOptions.scale = new MPoint(20,20);
  23. mapOptions.zoom = zoom;
  24. mapOptions.mapComButton = MConstants.SHOW_NO
  25. mapOptions.center = new MLngLat(lngX,latY);
  26. var mapObj = new MMap("mapObj", mapOptions);
  27. var maptools = new MMapTools(mapObj);
  28. drawPoints();
  29. ';
  30. $str .='
  31. function drawPoints(){
  32. var markerOption = new MMarkerOptions();
  33. var tipOption=new MTipOptions();//添加信息窗口
  34. var address = "'.$address.'";
  35. tipOption.tipType = MConstants.HTML_BUBBLE_TIP;//信息窗口标题
  36. tipOption.title = address;//信息窗口标题
  37. tipOption.content = address;//信息窗口内容
  38. var markerOption = new MMarkerOptions();
  39. markerOption.imageUrl="'.IMG_PATH.'icon/mak.png";
  40. markerOption.picAgent=false;
  41. markerOption.imageAlign=MConstants.BOTTOM_CENTER;
  42. markerOption.tipOption = tipOption;
  43. markerOption.canShowTip= address ? true : false;
  44. markerOption.dimorphicColor="0x00A0FF";
  45. Mmarker = new MMarker(new MLngLat(lngX,latY),markerOption);
  46. Mmarker.id="mark101";
  47. mapObj.addOverlay(Mmarker,true)
  48. }';
  49. } elseif($setting['maptype']==2) {
  50. $str .='
  51. var mapObj=null;
  52. lngX = "'.$lngX.'";
  53. latY = "'.$latY.'";
  54. zoom = "'.$zoom.'";
  55. var mapObj = new BMap.Map("mapObj");
  56. var ctrl_nav = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_LARGE});
  57. mapObj.addControl(ctrl_nav);
  58. mapObj.enableDragging();
  59. mapObj.enableScrollWheelZoom();
  60. mapObj.enableDoubleClickZoom();
  61. mapObj.enableKeyboard();//启用键盘上下左右键移动地图
  62. mapObj.centerAndZoom(new BMap.Point(lngX,latY),zoom);
  63. drawPoints();
  64. ';
  65. $str .='
  66. function drawPoints(){
  67. var myIcon = new BMap.Icon("'.IMG_PATH.'icon/mak.png", new BMap.Size(27, 45));
  68. var center = mapObj.getCenter();
  69. var point = new BMap.Point(lngX,latY);
  70. var marker = new BMap.Marker(point, {icon: myIcon});
  71. mapObj.addOverlay(marker);
  72. }';
  73. }
  74. $str .='</script>';
  75. return $str;
  76. }