service.commonbrowser_wev8.js
9.25 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="javascript:return true">\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" data-title="$i18n{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(N){var i=function(m,e){var p=m[0].id,b={browserId:"",browserName:"",selectedIds:"",closeCallback:function(){N.back()},success:function(){}};$.extend(b,e);var i=0,s="",n="",g=$(".content-container",m),S=$(".list-wrap .wev-table-view",g),r=$(".wev-refresh-loading",g),t=$(".wev-more-loading",g),k=$(".wev-more-btn",g),y=$(".wev-no-data",g),a=$(".ok-btn",m),d=$(".result-btn",m),c=$(".wev-search",m),l=$("input[type='search']",m),o=$(".wev-clear-btn",m),D=-1<["16","152","171"].indexOf(b.browserId),C="",A=!1,v={refresh:function(e){i=0,g.addClass("wev-refreshing"),r.show().removeClass("wev-hide").addClass("wev-show");var t=(new Date).valueOf();function a(){300<=(new Date).valueOf()-t?(r.removeClass("wev-show").addClass("wev-hide"),g.removeClass("wev-refreshing")):setTimeout(a,100)}v.loadData(function(e){a()},e)},loadMore:function(){t.show(),v.loadData(function(){t.hide()})},loadData:function(u,w){var f=++i;k.hide(),y.hide();var e=N.jionActionUrl("com.api.mobilemode.web.mobile.browser.CommonBrowserAction","action=getListData");w&&(e+="&selectedIds="+b.selectedIds),D&&1<i&&(e+="&dataKey="+C);var t=$.extend({searchKey:s,_asArray:n,pageNo:f,pageSize:20,browserId:b.browserId,browserName:b.browserName,isMulti:b.isMulti,appid:window.__meta__&&window.__meta__.appid||"",params:N.compressByLZ(JSON.stringify(b.relateParam||{}))},b.requestParams);N.ajax(e,t,function(e){if("1"==(e=JSON.parse(e)).status){var t=e.data,a="",i=t.fieldMap,s=[],n=[];I.fieldMap=i;var r,d=["{@each datas as d}",'<li class="wev-table-view-cell wev-media ${d.id,pageid|commonbrowser_selected}" data-id="${d.id}" data-title="${d.title}">','<a href="javascript:void(0);">','<i class="wev-css-icon '+(t.isSingle?"wev-single-check":"wev-multi-check")+'"></i>','<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;r=N.containsVarParser(JSON.stringify(c)),t.datas.forEach(function(e){var t=I.convertFieldValue(e,i,c);s.push(t)}),a=N.parseTemplate(d,{datas:s,pageid:p})}else t.pageid=p,a=N.parseTemplate(d,t);var l=$(a);if(1==f&&S.find("*").remove(),S.append(l),l.click(function(){if(A){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,I[$(this).hasClass("selected")?"remove":"add"](e)}else I.onOk($(this).data("id"),$(this).data("title"))}),D){C=t.dataKey;var o=t.datas.length;0==o?k.hide():20==o&&k.show(),o<=0&&f<=1&&y.show()}else{var v=t.totalSize;(v%20==0?parseInt(v/20):parseInt(v/20)+1)<=f?k.hide():k.show(),v<=0?y.show():I.initLazyImg()}w&&(A=!t.isSingle,$(".page-content",m).addClass(A?"multi":"single"),"162"==b.browserId?(t.sel_datas.forEach(function(e){var t=I.convertFieldValue(e,i,c);n.push(t)}),I.init(n)):I.init(t.sel_datas)),N.renderVarParser(r),N.isFunction(u)&&u()}else if("0"==e.status){var h=$("<div class='wev-error'></div>");h.html(e.errMsg),g.hide(),g.parent().append(h)}},{type:"POST"})}},I=this._result={isReady:!1,selectedData:[],addSelectedData:function(e){e&&!~this.indexOfSelectedData(e.id)&&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)}),a.unbind("click"),a.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)}),d.click(function(){E.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+"']",S).addClass("selected"),this.refreshResultBtn()},remove:function(e){var t=e.id;$(".wev-table-view-cell[data-id='"+t+"']",S).removeClass("selected"),this.removeSelectedData(t),this.refreshResultBtn()},refreshResultBtn:function(){var e=this.getSelectedNum();$("span",d).html(0<e?"("+e+")":""),0<e?d.show():d.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,r=e.otherfields;t.id=i.keyvalue;var d=n.getFieldValue(a,i,s);t.title=d;var c=[];return N.isArray(r)&&r.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&&c.push(a)}),t.others=c,t},initLazyImg:function(){require(["lazyImgHelper"])}},h=$(".selected-container",m),u=$(".selected-mark",h),w=$(".selected-content",h),f=$(".list-wrap .wev-table-view",h),_=$(".select-all-btn",h),O=$(".del-btn",h),E={init:function(){var e=this;u.click(function(){e.hide()}),_.click(function(){$(".wev-table-view-cell",f).not(".selected").triggerHandler("click")}),O.click(function(){$(".wev-table-view-cell.selected",f).each(function(){I.remove(this.dataset),$(this).remove()}),I.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);">','<i class="wev-css-icon wev-multi-check"></i>','<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=N.parseTemplate(t,{datas:I.selectedData}),i=$(a);f.find("*").remove(),f.append(i),i.click(function(){$(this).toggleClass("selected")}),h.show(),setTimeout(function(){u.addClass("show"),w.removeClass("hide"),e.showStatus=!0},10)},hide:function(){var e=this;u.removeClass("show"),w.addClass("hide"),setTimeout(function(){h.hide(),e.showStatus=!1},300)}};this.id=p,this.render=function(){var a=this;if($("form[disabledEnterSubmit]",m).keydown(function(e){if(13==e.keyCode)return!1}),l.on("input",function(){var e=this.value;c.toggleClass("wev-has-value",""!=e)}).keyup(function(e){13==e.keyCode&&(s=this.value,v.refresh(),this.blur())}),o.click(function(){l.val("").focus().triggerHandler("input")}),b.advancedSearch){var e=N.jionActionUrl("com.api.mobilemode.web.mobile.service.MobileCommonAction","action=getSearchFieldMeta");N.getJSON(e,{browser:b.browserName},function(e){var t=e.datas;t&&0<t.length&&(require(["css!listAdvancedSearch_css"]),o.css("right","20px"),$(".wev-search-advanced").show(),c.on("click.advancedSearch",".wev-search-advanced",function(){require(["mService"],function(e){e.show("search",{_identity:"commonbrowser_"+b.timestamp,browser:b.browserName,fieldsMeta:t,title:N.getLabel(4179,"高级搜索"),customSearch:n,fromPageId:a.id})})}))})}-1<["16","152","171"].indexOf(b.browserId)&&S.addClass("wev-wfbrowser");var t=N.runtime.isWebkit()?"webkitAnimationEnd":"animationend";r[0].addEventListener(t,function(){$(this).hasClass("wev-hide")&&$(this).hide()}),k.click(function(){v.loadMore()}),v.refresh(!0),E.init()},this.refresh=function(e){n=encodeURIComponent(JSON.stringify(e)),$(".wev-search-advanced",m).toggleClass("wev-search-advanced-active",e&&N.isArray(e)&&0<e.length),v.refresh(!0)}},s={setInstacne:function(e,t){this[e]=t},getInstance:function(e){return this[e]}},e=require("juicer");return e.unregister("commonbrowser_selected"),e.register("commonbrowser_selected",function(e,t){return-1==s.getInstance(t)._result.indexOfSelectedData(e)?"":"selected"}),{mounted:function(e,t){var a=new i(e,t);a.render(),s.setInstacne(e[0].id,a)},refresh:function(e,t){s.getInstance(t).refresh(e)}}});