/** * [ONEMAP.M.gcmsVideo] * @return {[object]} */ define([ 'html!templates/gcms/gcmsVideo', 'vendorDir/handlebars/handlebars', 'css!styles/gcms/gcmsVideo'], function(tpcLayout,Handlebars){ var modValue = { options:{}, mapPointGroup:null, }; /** * 模块初始化 * @return {[type]} [description] */ function init(options){ remove(); modValue.mapPointGroup = map23DControl.group({ action: 'add' }); modValue.options = {}; for(var op in options){ modValue.options[op] = options[op]; } //获取内容数据 getDetailData(); //订阅推送 subscribe(); } function getDetailData(options){ ONEMAP.V.loading.load(); $.ajax({ url: onemapUrlConfig.gcmsServiceUrl+'/show/'+modValue.options['column_name']+'/'+modValue.options['article_id'], type:"GET", dataType: 'json' }) .done(function(data) { ONEMAP.V.loading.loaded(); if(data.code == 4){ ONEMAP.T.noPermission('getDetailData'); } if(data.code == 3){ ONEMAP.T.logout('getDetailData'); } if(JSON.parse(data['data']['record'][modValue.options['field_name']])['features'].length == 0){ ONEMAP.C.publisher.publish({ type: 'warning', message: '没有视频数据' }, 'noteBar::add'); remove(); }else { ONEMAP.D.gcmsCurArticleData = data['data']; showPoint(); //showVideo(); } }) .fail(function() { ONEMAP.V.loading.loaded(); }); } /** * 事件绑定 * @return {[type]} [description] */ function bindEvent(){ $('#gcmsVideoModal .modal-header .close').bind('click', function() { remove(); }); $('#gcmsVideoModal .modal-header').dragmove($('#gcmsVideoModal')); var $box2 = $('#gcmsVideoModal').on('mousedown', '#coorForGcmsVideoModal', function(e) { var posix = { 'w': $box2.width(), 'h': $box2.height(), 'x': e.pageX, 'y': e.pageY }; $.extend(document, {'move': true, 'call_down': function(e) { $box2.css({ 'width': Math.max(30, e.pageX - posix.x + posix.w), 'height': Math.max(30, e.pageY - posix.y + posix.h) }); var bodyHeight = Math.max(30, e.pageY - posix.y + posix.h )-145; $("#gcmsVideoModal .modal-body").css({height:bodyHeight}); }}); $.extend(document, {'move': true, 'call_up': function(e) { $('#gcmsVideoList .selected').click(); }}); return false; }); } function showPoint(){ var mapDrawData = JSON.parse(ONEMAP.D.gcmsCurArticleData['record'][modValue.options['field_name']]); if(mapDrawData['features'].length>0){ $(mapDrawData['features']).each(function(index, el) { switch(el['properties']['type']){ case 'VideoLocation'://点 buildMarker(el); break; } }); map2DViewer.map.fitBounds(map2DViewer.groups[modValue.mapPointGroup].getBounds()); }else { ONEMAP.C.publisher.publish({ type: 'warning', message: '没有标注数据' }, 'noteBar::add'); } }; function buildMarker(options){ var curGuid = map23DControl.marker({ action: 'add', groupId: modValue.mapPointGroup, geojson: { "properties": { altitudeMode:0, iconUrl: onemapUrlConfig.gcmsServiceUrl+'/file'+options['properties']['style']['iconUrl']+'?jwt='+ONEMAP.D.user.ticket, iconSize: options['properties']['style']['iconSize'], iconAnchor: options['properties']['style']['iconAnchor'], popupAnchor: [0,-options['properties']['style']['iconAnchor'][1]] }, "geometry": { "coordinates": options['geometry']['coordinates'] } } }); var file = options['properties']['file']; var oLabelObj = '播放视频'; var options_popup = { name:'', content:oLabelObj }; var new_popupHtml = ONEMAP.M.gcmsNav.creatPopupHtml(options_popup); map2DViewer.markers[curGuid].bindPopup(new_popupHtml,{ closeButton:false, maxWidth:60, minWidth:40}); map2DViewer.markers[curGuid].openPopup(); map2DViewer.markers[curGuid].on('mouseover',function(){ this.openPopup(); }) } function showVideo(file){ $('#gcmsVideoModal').remove(); $('#DIVSNplayerWMPvideoPlayer').remove(); $('body').append(tpcLayout); bindEvent(); var videoFileUrl = onemapUrlConfig.gcmsServiceUrl+'/file'+file+'?jwt='+ONEMAP.D.user.ticket; // if(Modernizr.video.h264.length>0){ // var videPlayerHtml = ''; // }else { var flashPlayerInfo = flashChecker(); if (flashPlayerInfo && flashPlayerInfo.v > 10) { var videPlayerHtml = _setFlashPlayer("videoPlayer", "scripts/vendor/player/snplayer.swf?file=type:mp4;url:" + videoFileUrl + "", "100%", "100%", "SkinURL=skin/default.zip", true); } else { if (document.all) { var flashPlayerLink = onemapUrlConfig.siteUrl+'/soft/flashplayer_winax.exe'; } else { var flashPlayerLink = onemapUrlConfig.siteUrl+'/soft/flashplayer_win.exe'; } var videPlayerHtml = '
请安装Adobe flash player 11以上版本的播放器。
' + '请安装Adobe flash player 11以上版本的播放器。
' + '