/** * [ONEMAP.M.footer] * @return {[object]} */ define([ 'html!templates/chooseBg', 'css!styles/chooseBg' ], function(tplLayout) { var modValue = { sideNav: ONEMAP.M.sideNav.modValue, curBaseMapCid: ONEMAP.D.globalSettingData.baseMap2D.type, onMouseCM: false, onMouseLi: false } function init() { setLayout(); bindEvent(); changeMapBg(); subscribe(); }; function setLayout() { $(tplLayout).appendTo($("#chooseBg .cover-content")); var peizhi = onemapUrlConfig.defaultTypes; $("#chooseBg").css("width", 73 * (peizhi.length) + "px"); for (var i = 0; i < peizhi.length; i++) { var li; if (i == 0) { li = $('
  • ' + peizhi[i].name + '

  • '); } else { li = $('
  • ' + peizhi[i].name + '

  • '); } li.css({ "background": "url(" + peizhi[i].imgurl + ") no-repeat" }) $("#mapBaseLayerControl .choosemap .map-list").append(li); } switch (peizhi[0].id) { case "gr": modValue.curBaseMapCid = 2; $("#mapBaseLayerControl .choosemap .map-list .gr").eq(0).addClass('active'); if (map23DData.display.map2D) { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").show(); $("#mapBaseLayerControl .choosemap .name-dem-control .dem-control").hide(); } else { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").show(); $("#mapBaseLayerControl .choosemap .name-dem-control .dem-control").show(); } break; case "gt": modValue.curBaseMapCid = 3; $("#mapBaseLayerControl .choosemap .map-list .gt").eq(0).addClass('active'); if (map23DData.display.map2D) { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").hide(); $("#mapBaseLayerControl .choosemap .name-dem-control .dem-control").hide(); } break; case "gm": modValue.curBaseMapCid = 1; $("#mapBaseLayerControl .choosemap .map-list .gm").eq(0).addClass('active'); if (map23DData.display.map2D) { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").hide(); $("#mapBaseLayerControl .choosemap .name-dem-control .dem-control").hide(); } break; } } function changeMapBg(options) { if (options == 'openmapchoose') { $('#chooseBg').show(); } else { $('#chooseBg').hide(); } } function layoutResize(cid) { if (map23DData.display.map2D) { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").hide(); $("#mapBaseLayerControl .choosemap .name-dem-control .dem-control").hide(); } if (modValue.curBaseMapCid == 2) { if (map23DData.display.map2D) { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").show(); $("#mapBaseLayerControl .choosemap .name-dem-control .dem-control").hide(); } else { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").show(); $("#mapBaseLayerControl .choosemap .name-dem-control .dem-control").show(); } } } function showGH(mid) { if (mid != '2D' && mid != '3D') { if (mid == "showGH") { var cid = "gr"; $("#mapBaseLayerControl .choosemap .map-list li").removeClass('active'); $("#mapBaseLayerControl .choosemap .map-list").find("li[mid=gr]").addClass('active'); modValue.curBaseMapCid = 2; if (map23DData.display.map2D) { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").show(); } else { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").show(); $("#mapBaseLayerControl .choosemap .name-dem-control .dem-control").show(); } } else if (mid == "showGM") { var cid = "gm"; $("#mapBaseLayerControl .choosemap .map-list li").removeClass('active'); $("#mapBaseLayerControl .choosemap .map-list").find("li[mid=gm]").addClass('active'); modValue.curBaseMapCid = 1; if (map23DData.display.map2D) { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").hide(); } else { $("#mapBaseLayerControl .choosemap .name-dem-control .name-control").hide(); $("#mapBaseLayerControl .choosemap .name-dem-control .dem-control").hide(); } } map2DViewer.setDefaultTileLayer(cid); if (cid == 'gr') {} else {} ONEMAP.M.mapHolder.modValue.mainLayers = cid; ONEMAP.C.publisher.publish(cid, 'changemap'); } } function bindEvent() { $("#mapBaseLayerControl .choosemap .map-list li").bind("click", function() { var cid = $(this).attr("mId"); $("#mapBaseLayerControl .choosemap .map-list li").removeClass('active'); $("#heighterSlider .heighterslider-content .image").removeClass('active'); $(this).addClass('active'); map23DControl.setDefaultTileLayer(cid); switch (cid) { case 'gr': //地名 if ($("#mapBaseLayerControl .choosemap .name-control input").is(":checked")) { } else { } modValue.curBaseMapCid = 2; break; case 'gt': modValue.curBaseMapCid = 3; break; case 'gm': modValue.curBaseMapCid = 1; break; } ONEMAP.M.mapHolder.modValue.mainLayers = cid; map2DViewer.map.fire('mainLayer:addLayer', cid); ONEMAP.C.publisher.publish(cid, 'changemap'); }); }; /** * 注册订阅 * @type {Function} * 推送:ONEMAP.C.publisher.publish(options,'moduleName::type'); * 订阅:ONEMAP.C.publisher.subscribe(layoutResize,'sideBarLayoutChange'); */ function subscribe() { ONEMAP.C.publisher.subscribe(changeMapBg, 'choosemaphover'); ONEMAP.C.publisher.subscribe(layoutResize, 'change23D'); ONEMAP.C.publisher.subscribe(showGH, 'layout::mapStyle'); } return ONEMAP.M.chooseBg = { init: init, }; })