service.commonbrowser_wev8.js
8.43 KB
define("mService/commonbrowser_html",function(){return'<div class="page-content common-browser-container">\t<div class="main-container">\t\t<div class="wev-search">\t\t\t<div class="wev-search-inner">\t\t\t\t<form disabledEnterSubmit action="">\t\t\t\t\t<input type="search" placeholder="$i18n{SEAECH}">\t\t\t\t</form>\t\t\t\t<div class="wev-clear-btn"></div>\t\t\t\t<a href="javascript:void(0);" class="wev-search-advanced" style="display:none;"><div></div></a>\t\t\t</div>\t\t</div>\t\t<div class="content-container">\t\t\t<div class="wev-loading wev-refresh-loading"><span>$i18n{LOADING_DATA}</span></div>\t\t\t<div class="list-wrap">\t\t\t\t<ul class="wev-table-view"></ul>\t\t\t\t<div class="wev-more-btn"><span>$i18n{LOAD_MORE}</span></div>\t\t\t\t<div class="wev-no-data"></div>\t\t\t\t<div class="wev-loading wev-more-loading"><span>$i18n{LOADING_DATA}</span></div>\t\t\t</div>\t\t</div>\t</div>\t<div class="result-container">\t\t<div class="result-btn">$i18n{SELECTED}<span></span></div>\t\t<div class="ok-btn">$i18n{SURE}<span></span></div>\t</div>\t<div class="selected-container">\t\t<div class="selected-mark"></div>\t\t<div class="selected-content hide">\t\t\t<label>\t\t\t\t<div class="select-all-btn">$i18n{SELECT_ALL}</div>\t\t\t\t<div class="del-btn">$i18n{DELETE}</div>\t\t\t</label>\t\t\t<div class="list-wrap">\t\t\t\t<ul class="wev-table-view"></ul>\t\t\t</div>\t\t</div>\t</div></div>'}),define("mService/commonbrowser",["mUtil"],function(f){var m,b,p,g,S,k,C,D,y,A,_,E=0,I=20,O="",N="",u=!1,L={refresh:function(e){E=0,p.addClass("wev-refreshing"),S.show().removeClass("wev-hide").addClass("wev-show");var t=(new Date).valueOf();function a(){300<=(new Date).valueOf()-t?(S.removeClass("wev-show").addClass("wev-hide"),p.removeClass("wev-refreshing")):setTimeout(a,100)}L.loadData(function(e){a()},e)},loadMore:function(){k.show(),L.loadData(function(){k.hide()})},loadData:function(v,h){var w=++E;C.hide(),D.hide();var e=f.jionActionUrl("com.api.mobilemode.web.mobile.browser.CommonBrowserAction","action=getListData");h&&(e+="&selectedIds="+b.selectedIds),f.getJSON(e,{searchKey:O,_asArray:N,pageNo:w,pageSize:I,browserId:b.browserId,browserName:b.browserName,appid:window.__meta__&&window.__meta__.appid||"",params:JSON.stringify(b.relateParam||{})},function(e){var t=e.data,a="",i=t.fieldMap,s=[],n=[];_.fieldMap=i;var d,r=t.totalSize,l=["{@each datas as d}",'<li class="wev-table-view-cell wev-media ${d.id|commonbrowser_selected}" data-id="${d.id}" data-title="${d.title}">','<a href="javascript:void(0);">','<div class="wev-media-body">',"$${d.title}","{@each d.others as row}",'<div class="wev-ellipsis">',"{@each row as col}",'<div class="wev-browser-cell-cols">',"$${col}","</div>","{@/each}","</div>","{@/each}","</div>","</a>","</li>","{@/each}"].join("");if("161"==b.browserId||"162"==b.browserId){var c=t.browsershow;d=f.containsVarParser(JSON.stringify(c)),t.datas.forEach(function(e){var t=_.convertFieldValue(e,i,c);s.push(t)}),a=f.parseTemplate(l,{datas:s})}else a=f.parseTemplate(l,t);var o=$(a);1==w&&g.find("*").remove(),g.append(o),o.click(function(){if(u){var e={};$.extend(e,this.dataset);var a=new Array;$(".wev-ellipsis",$(this)).each(function(t){a[t]=new Array,$(".wev-browser-cell-cols",$(this)).each(function(e){a[t][e]=$(this).html()})}),e.others=a,_[$(this).hasClass("selected")?"remove":"add"](e)}else _.onOk($(this).data("id"),$(this).data("title"))}),(r%I==0?parseInt(r/I):parseInt(r/I)+1)<=w?C.hide():C.show(),r<=0?D.show():_.initLazyImg(),h&&(u=!t.isSingle,$(".page-content",m).addClass(u?"multi":"single"),u&&((new Image).src="/mobilemode/mobile/images/plugin/browser/Check.png"),"162"==b.browserId?(t.sel_datas.forEach(function(e){var t=_.convertFieldValue(e,i,c);n.push(t)}),_.init(n)):_.init(t.sel_datas)),f.renderVarParser(d),f.isFunction(v)&&v()},function(e){var t=$("<div class='wev-error'></div>");t.html(e),p.hide(),p.parent().append(t)})}};return{mounted:function(e,t){b={browserId:"",browserName:"",selectedIds:"",closeCallback:function(){f.back()},success:function(){}},$.extend(b,t),m=e;var a=$(".wev-search",e),i=$("input[type='search']",e),s=$(".wev-clear-btn",e);if($("form[disabledEnterSubmit]",e).keydown(function(e){if(13==e.keyCode)return!1}),i.on("input",function(){var e=this.value;a.toggleClass("wev-has-value",""!=e)}).keyup(function(e){13==e.keyCode&&(O=this.value,L.refresh(),this.blur())}),s.click(function(){i.val("").focus().triggerHandler("input")}),b.advancedSearch){var n=f.jionActionUrl("com.api.mobilemode.web.mobile.service.MobileCommonAction","action=getSearchFieldMeta");f.getJSON(n,{browser:b.browserName},function(e){var t=e.datas;t&&0<t.length&&(require(["css!listAdvancedSearch_css"]),s.css("right","20px"),$(".wev-search-advanced").show(),a.on("click.advancedSearch",".wev-search-advanced",function(){require(["mService"],function(e){e.show("search",{_identity:"commonbrowser_"+b.timestamp,browser:b.browserName,fieldsMeta:t,title:f.getLabel(4179,"高级搜索")})})}))})}E=0,I=20,N=O="",p=$(".content-container",e),g=$(".list-wrap .wev-table-view",p),S=$(".wev-refresh-loading",p),k=$(".wev-more-loading",p),C=$(".wev-more-btn",p),D=$(".wev-no-data",p);var d=f.runtime.isWebkit()?"webkitAnimationEnd":"animationend";S[0].addEventListener(d,function(){$(this).hasClass("wev-hide")&&$(this).hide()}),C.click(function(){L.loadMore()}),y=$(".ok-btn",e),A=$(".result-btn",e),_={isReady:!1,selectedData:[],addSelectedData:function(e){this.selectedData.push(e)},indexOfSelectedData:function(e){for(var t=-1,a=0;a<this.selectedData.length;a++)if(this.selectedData[a].id==e){t=a;break}return t},removeSelectedData:function(e){var t=this.indexOfSelectedData(e);-1!=t&&this.selectedData.splice(t,1)},getSelectedNum:function(){return this.selectedData.length},init:function(e){var s=this;$.each(e,function(e,t){s.innerAdd(t)}),y.unbind("click"),y.click(function(){for(var e="",t="",a=s.selectedData,i=0;i<a.length;i++)e+=a[i].id,t+=a[i].title,i!=a.length-1&&(e+=",",t+=",");s.onOk(e,t)}),A.click(function(){w.toggle()}),s.isReady=!0},add:function(e){this.isReady&&this.innerAdd(e)},innerAdd:function(e){this.addSelectedData(e);var t=e.id;$(".wev-table-view-cell[data-id='"+t+"']",g).addClass("selected"),this.refreshResultBtn()},remove:function(e){var t=e.id;$(".wev-table-view-cell[data-id='"+t+"']",g).removeClass("selected"),this.removeSelectedData(t),this.refreshResultBtn()},refreshResultBtn:function(){var e=this.getSelectedNum();$("span",A).html(0<e?"("+e+")":""),0<e?A.show():A.hide()},onOk:function(e,t){var a=b.success;a&&a(e,t);var i=b.closeCallback;i&&i()},convertFieldValue:function(i,s,e){var n=require("fieldParseHelper"),t={},a=e.titlefield,d=e.otherfields;t.id=i.keyvalue;var r=n.getFieldValue(a,i,s);t.title=r;var l=[];return f.isArray(d)&&d.forEach(function(e){var a=[];e.forEach(function(e){if(n.isSettingValue(e)){var t=n.getFieldValue(e,i,s,!1,!0);a.push(t)}}),0<a.length&&l.push(a)}),t.others=l,t},initLazyImg:function(){require(["lazyImgHelper"])}};var r=$(".selected-container",e),l=$(".selected-mark",r),c=$(".selected-content",r),o=$(".list-wrap .wev-table-view",r),v=$(".select-all-btn",r),h=$(".del-btn",r),w={init:function(){var e=this;l.click(function(){e.hide()}),v.click(function(){$(".wev-table-view-cell",o).not(".selected").triggerHandler("click")}),h.click(function(){$(".wev-table-view-cell.selected",o).each(function(){_.remove(this.dataset),$(this).remove()}),_.getSelectedNum()<=0&&e.hide()})},showStatus:!1,toggle:function(){this[this.showStatus?"hide":"show"]()},show:function(){var e=this,t=["{@each datas as d}",'<li class="wev-table-view-cell wev-media" data-id="${d.id}" data-title="${d.title}">','<a href="javascript:void(0);">','<div class="wev-media-body">',"$${d.title}","{@each d.others as row}",'<div class="wev-ellipsis">',"{@each row as col}",'<div class="wev-browser-cell-cols">',"$${col}","</div>","{@/each}","</div>","{@/each}","</div>","</a>","</li>","{@/each}"].join(""),a=f.parseTemplate(t,{datas:_.selectedData}),i=$(a);o.find("*").remove(),o.append(i),i.click(function(){$(this).toggleClass("selected")}),r.show(),setTimeout(function(){l.addClass("show"),c.removeClass("hide"),e.showStatus=!0},10)},hide:function(){var e=this;l.removeClass("show"),c.addClass("hide"),setTimeout(function(){r.hide(),e.showStatus=!1},300)}},u=require("juicer");u.unregister("commonbrowser_selected"),u.register("commonbrowser_selected",function(e){return-1==_.indexOfSelectedData(e)?"":"selected"}),L.refresh(!0),w.init()},refresh:function(e){N=encodeURIComponent(JSON.stringify(e)),$(".wev-search-advanced",m).toggleClass("wev-search-advanced-active",e&&f.isArray(e)&&0<e.length),L.refresh(!0)}}});