123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459 |
- function initbody(){
- objcont = $('#content_allmainview');
- objtabs = $('#tabs_title');
- menubadge = hongbadge = menutopid = {};//角标数组
- resizewh();
- $(window).resize(resizewh);
- clickhome();
- if(show_key!='')jm.setJmstr(jm.base64decode(show_key));
- var a = $("li[pmenuid]");
- a.click(function(){
- if(js.ajaxbool)return;
- a.removeClass();
- loadmenu(this);
- });
- loadmenu($("li[pmenuid]")[0]);
- if(typeof(FormData)=='undefined'){
- js.msg('msg','您的浏览器太低了无法达到想要的预览效果<br>建议使用IE10+,Firefox,Chrome等高级点的',60);
- }
- if(get('indexuserl')){
- var ddsata=[{
- name:'<i class="icon-cog"></i> 个人设置',num:'grcog','icon':'cog',url:'system,geren,cog',names:'个人设置'
- },{
- name:'<i class="icon-bell"></i> 提醒信息',num:'todo','icon':'bell',url:'system,geren,todo',names:'提醒信息'
- },{
- name:'<i class="icon-picture"></i> 修改头像',num:'face','icon':'picture'
- },{
- name:'<i class="icon-laptop"></i> 新版首页1',num:'jiu','icon':'laptop'
- },{
- name:'<i class="icon-certificate"></i> 新版首页2',num:'jiu2','icon':'laptop'
- },{
- name:'<i class="icon-user"></i> 帐号('+adminuser+')',num:'user'
- }];
- if(js.request('afrom')=='')ddsata.push({name:'<i class="icon-signout"></i> 退出',num:'exit'});
- $('#indexuserl').rockmenu({
- width:150,top:get('topheaderid').offsetHeight,
- data:ddsata,
- itemsclick:function(d){
- if(d.num=='exit'){
- js.confirm('确定要退出系统吗?',function(bn){
- if(bn=='yes')js.location('?m=login&a=exit');
- });
- return;
- }
- if(d.num=='face'){
- editfacechang(adminid, adminname);
- return;
- }
- if(d.num=='jiu'){
- js.location('?a=home');
- return;
- }
- if(d.num=='jiu2'){
- js.location('?a=new');
- return;
- }
- if(d.num=='user')return;
- addtabs({num:d.num,url:d.url,name:d.names,icons:d.icon});
- }
- });
- }
- $('#reordershla').click(function(){
- $('#indexmenu').hide();
- $('#indexmenuss').show();
- resizewh();
- });
- $('#indexmenuss').click(function(){
- $('#indexmenu').show();
- $('#indexmenuss').hide();
- resizewh();
- });
- _addbodykey();
- $('#indesearchmenu').click(function(){
- _searchmenus();
- });
-
- function _loadjsurl(){
- js.importjs('web/res/mode/echarts/echarts.common.min.js');
- }
- setTimeout(_loadjsurl,100);
-
- //禁止后退
- $(document.body).keydown(function(e){
- var lxs = e.target.nodeName.toLowerCase();
- var bo = (lxs=='input' || lxs=='textarea');
- if(e.keyCode==8 && !bo)return false;
- });
- try{
- history.pushState(null, null, document.URL);
- window.addEventListener('popstate', function (){
- history.pushState(null, null, document.URL);
- });
- }catch(e){}
- }
- function _searchmenus(){
- js.prompt('搜索菜单','请输入搜索菜单名:',function(jg,txt){
- if(jg=='yes' && txt){
- $('#menulisttop').html('搜索结果');
- $('#menulist').html('<div style="padding:30px;" align="center"><img src="images/mloading.gif"></div>');
- js.ajax(js.getajaxurl('getmenusou','index'),{key:txt}, function(da){
- showmenula(da);
- },'post,json');
- }
- });
- }
- var loadmenuci=0;
- function loadmenu(o){
- var o1 = $(o),id,s1,ico;
- o1.addClass('active');id = o1.attr('pmenuid');ico = o1.attr('icon');
- if(!id)return;
- loadmenuci++;
- s1 = o.title;
- if(ico)s1='<i class="icon-'+ico+'"></i> '+s1+'';
- $('#menulisttop').html(s1);
- showmenupid = id;
- $('#menulist').html('<div style="padding:30px;" align="center"><img src="images/mloading.gif"></div>');
- js.ajax(js.getajaxurl('getmenu','index'),{pid:id,loadci:loadmenuci}, function(da){
- if(da.menutopid)menutopid=da.menutopid;
- showmenula(da.menuarr);
- },'get,json');
- }
- function showmenula(a){
- menuarr = a;
- var i,s='',j,k,child,hhild,css1,to,sid,o;
- hongbadge={};
- for(i=0; i<a.length; i++){
- o = a[i];
- css1='border-radius:0px;border-left:none;border-right:none;cursor:pointer;TEXT-DECORATION:none';
- s+='<a class="list-group-item" onClick="clickmenu(this,'+i+',-1,-1)" style="'+css1+'"><i class="icon-'+o.icons+'"></i> '+o.name+'';
- if(o.bh && o.stotal==0)s+=' <span class="badge" badge="'+o.bh+'" style="float:none;display:none;background:red;color:white"></span>';
- if(o.stotal>0)s+='<font color="red" id="hongdian_'+o.num+'" style="display:none">●</font><span style="float:right" id="menu_down_isons_'+o.num+'" class="icon-caret-down"></span>';
- s+='</a>';
- if(o.stotal>0){
- child = o.children;
- for(j=0; j<child.length; j++){
- o = child[j];
- s+='<a downmenu="'+i+'_'+j+'" class="list-group-item" style="'+css1+';padding-left:30px;background:rgba(0,0,0,0.05);display:none" id="menu_list_'+o.num+'" onClick="clickmenu(this,'+i+','+j+',-1)"><i class="icon-'+o.icons+'"></i> '+o.name+'';
- if(o.bh){
- hongbadge[o.bh]=a[i].num;
- s+=' <span class="badge" badge="'+o.bh+'" style="float:none;display:none;background:red;color:white"></span>';
- }
- if(o.stotal>0)s+='<span style="float:right" id="menu_down_isons_'+o.num+'" class="icon-caret-down"></span>';
- s+='</a>';
- if(o.stotal>0){
- hhild = o.children;
- for(k=0; k<hhild.length; k++){
- o = hhild[k];
- s+='<a downmenu="'+i+'_'+j+'_'+k+'" class="list-group-item" style="'+css1+';padding-left:60px;background:rgba(0,0,0,0.02);display:none" id="menu_list_'+o.num+'" onClick="clickmenu(this,'+i+','+j+','+k+')"><i class="icon-'+o.icons+'"></i> '+o.name+'</a>';
- }
- }
- }
- }
- }
- if(s=='')s='<div style="padding:30px;color:#cccccc" align="center">暂无</div>';
- $('#menulist').html(s);
- showmenubadge();
- }
- //显示角标处理
- function showmenubadge(){
- var o,sid,to,tnu,tid,o1;
- $('li[pmenuid] font').remove();
- for(sid in menubadge){
- to = menubadge[sid];
- o = $('span[badge="'+sid+'"]');
- tnu= hongbadge[sid];
- if(o){if(to<=0){
- o.hide();
- if(tnu)$('#hongdian_'+tnu+'').hide();
- }else{
- o.show();o.html(to);
- if(tnu)$('#hongdian_'+tnu+'').show();
- tid= menutopid[sid];
- if(tid){
- o1 = $('li[pmenuid="'+tid+'"]');
- o1.find('font').remove();
- o1.find('a').append('<font color="red">●</font>');
- }
- }}
- }
- }
- function removetadge(num){
- if(typeof(menubadge[num])=='undefined')return;
- $('span[badge="'+num+'"]').hide();
- menubadge[num]=0;
- showmenubadge();
- }
- function opentixiang(){
- addtabs({num:'todo',url:'system,geren,todo',icons:'bell',name:'提醒信息'});
- return false;
- }
- function clickhome(){
- var ad = {num:'home',url:'home,index',icons:'home',name:'首页',hideclose:true};
- if(homeurl!='')ad.url= homeurl;
- if(homename!='')ad.name= homename;
- addtabs(ad);
- return false;
- }
- var fistwk=0;
- function resizewh(){
- var _lw = 0;
- if(get('indexmenu')){
- _lw = $('#indexmenu').width()+5;
- if(get('indexmenu').style.display=='none'){
- _lw = $('#indexmenuss').width()+5;
- }
- }
- var w = winWb()-_lw;
- var h = winHb(),_ht=0;
- if(get('topheaderid'))_ht=get('topheaderid').offsetHeight;
- viewwidth = w;
- viewheight = h-_ht-44;
- $('#indexcontent').css({width:''+viewwidth+'px',height:''+(viewheight)+'px'});
- $('#tabsindexm').css({width:''+viewwidth+'px'});
- var nh = h-_ht;
- $('#indexmenu').css({height:''+nh+'px'});
- $('#indexsplit').css({height:''+nh+'px'});
- $('#indexmenuss').css({height:''+nh+'px'});
- $('#menulist').css({height:''+(viewheight)+'px'});
- _pdleftirng();
-
- if(fistwk==0){
- $('#topmenudiv span[pmenuid]').each(function(){
- fistwk+=$(this).width()+30;
- });
- }
- var lw=$('#logodiv').width();
- var rw = $('#topheaderright').width();
- var kj = winWb()-lw-rw;
- $('#topmenudiv').css('width',''+kj+'px');
- var o1 = $('#donwrigthw').css('right',''+rw+'px');
- o1.hide();
- if(fistwk>kj){
- o1.show();
- $('#topmenudiv').css('width',''+(kj-20)+'px');
- }
- }
- function clickmenu(o, i, j,k){
- var a = menuarr[i];
- if(j>-1)a=a.children[j];
- if(k>-1)a=a.children[k];
- var oi = a.stotal,dxu=''+i+'_';
- if(oi>0){
- $('#hongdian_'+a.num+'').hide();//隐藏红点
- if(j>-1){
- dxu+=''+j+'_';
- $('a[downmenu^="'+dxu+'"]').toggle();
- }
- var o1 = get('menu_down_isons_'+a.num+'');
- if(o1.className.indexOf('down')>0){
- o1.className='icon-caret-up';
- if(j==-1)$('a[downmenu^="'+dxu+'"]').show();
- }else{
- o1.className='icon-caret-down';
- if(j==-1)$('a[downmenu^="'+dxu+'"]').hide();
- }
- }else{
- addtabs(a);
- }
- }
- var coloebool = false;
- function closetabs(num){
- tabsarr[num] = false;
- $('#content_'+num+'').remove();
- $('#tabs_'+num+'').remove();
- if(num == nowtabs.num){
- var now ='home',i,noux;
- for(i=opentabs.length-1;i>=0;i--){
- noux= opentabs[i];
- if(get('content_'+noux+'')){
- now = noux;
- break;
- }
- }
- changetabs(now);
- }
- coloebool = true;
- _pdleftirng();
- setTimeout('coloebool=false',10);
- }
- function closenowtabs(){
- var nu=nowtabs.num;
- if(nu=='home')return;
- closetabs(nu);
- }
- function nowtabssettext(srt,icos){
- var num=nowtabs.num;
- var txt = srt;
- tabsarr[num].name = srt;
- nowtabs.name = srt;
- if(!icos)icos=nowtabs.icons;
- if(icos)txt='<i class="icon-'+icos+'"></i> '+txt+'';
- $('#tabs_'+num+' font').html(txt);
- }
- function changetabs(num,lx){
- if(coloebool)return;
- if(!lx)lx=0;
- $("div[temp='content']").hide();
- $("[temp='tabs']").removeClass();
- var bo = false;
- if(get('content_'+num+'')){
- $('#content_'+num+'').show();
- $('#tabs_'+num+'').addClass('active');
- nowtabs = tabsarr[num];
- if(typeof(nowtabs.onshow)=='function')nowtabs.onshow();
- bo = true;
- }
- opentabs.push(num);
- if(lx==0)_changhhhsv(num);
- return bo;
- }
- function _changhhhsv(num){
- var o=$("[temp='tabs']"),i,w1=0;
- for(i=0;i<o.length;i++){
- if(o[i].id=='tabs_'+num+'')break;
- w1=w1+o[i].scrollWidth;
- }
- $('#tabsindexm').animate({scrollLeft:w1});
- }
- function _changesrcool(lx){
- var l = $('#tabsindexm').scrollLeft();
- var w = l+200*lx;
- $('#tabsindexm').animate({scrollLeft:w});
- }
- function _pdleftirng(){
- var mw=get('tabs_title').scrollWidth;
- if(mw>viewwidth){$('.jtcls').show();}else{$('.jtcls').hide();}
- }
- function addiframe(a){
- a.url = 'index,iframe,url='+jm.base64encode(a.url)+'';
- addtabs(a);
- }
- //选择卡右键
- function tabsright(num,e){
- function _closeother(nu){
- var nus,d1;
- for(nus in tabsarr){
- d1 = tabsarr[nus];
- if(d1 && !d1.hideclose && nus!=nu)closetabs(nus);
- }
- }
- if(typeof(tabsrights)=='undefined')tabsrights=$.rockmenu({
- width:150,
- data:[],
- itemsclick:function(d){
- var lx = d.lx,num=d.num;
- if(lx==0)closetabs(num);
- if(lx==1){
- var d1 = tabsarr[num],s1=''+PROJECT+'/'+d1.urlpath+'';
- var s = '['+d1.name+']页面地址是:'+s1+'<div style="word-wrap:break-word;">,在[系统→基础管理→菜单管理]设置URL地址为:'+d1.url+'';
- if(HOST=='127.0.0.1' || HOST=='localhost')s+=' <a onclick="_openfile(\''+jm.base64encode(s1)+'\')" href="javascript:;">[打开]</a>';
- s+='</div>';
- js.alert(s);
- }
- if(lx==2)_closeother(num);
- if(lx==3)location.reload();
- if(lx==4)_opentabls(d.tobj);
- }
- });
- var to= tabsarr[num],d = [];
- if(!to.hideclose)d.push({'name':'关闭','num':num,lx:0});
- if(num==nowtabs.num)d.push({'name':'关闭其它页面','num':num,lx:2});
- if(admintype==1)d.push({'name':'查看页面地址','num':num,lx:1});
- if(homeurl=='' && to.id)d.push({'name':'新窗口打开',tobj:to,'num':num,lx:4});
- d.push({'name':'全部刷新','num':num,lx:3});
- tabsrights.setData(d);
- tabsrights.showAt(e.clientX,e.clientY+5);
- }
- function _opentabls(d){
- var url = '?homeurl='+jm.base64encode(d.url)+'&homename='+jm.base64encode(d.name)+'&menuid='+jm.base64encode(d.id)+'';
- window.open(url);
- }
- //开发时打开文件
- function _openfile(s){
- js.ajax(js.getajaxurl('openfile','index'),{file:s},function(ds){
- if(ds!='ok')js.msg('msg', ds);
- },'get');
- }
- /**
- * 添加选择卡
- */
- function addtabs(a){
- var url = a.url,
- num = a.num;
- if(isempt(url))return false;
- removetadge(num);
- if(url.indexOf('add,')==0){openinput(a.name,url.substr(4));return;}
- if(url.indexOf('open:')==0){window.open(url.substr(5));return;}
- if(url.indexOf('http')==0 || url.substr(0,1)=='?'){addiframe(a);return;}
- if(nowtabs && nowtabs.id && !a.id)a.id=nowtabs.id;
- nowtabs = a;
- if(changetabs(num))return true;
- var s = '<td temp="tabs" oncontextmenu="tabsright(\''+num+'\',event);return false;"; nowrap onclick="changetabs(\''+num+'\',1)" id="tabs_'+num+'" class="active"><font>';
- if(a.icons)s+='<i class="icon-'+a.icons+'"></i> ';
- s+=a.name+'</font>';
- if(!a.hideclose)s+='<span onclick="closetabs(\''+num+'\')"><img src="images/del.png" width="12" height="12"></span>';
- s+='</td>';
- objtabs.append(s);
- _changhhhsv(num);
- _pdleftirng();
-
- var rand = js.getrand(),i,oi=2,
- ura = url.split(','),
- dir = ura[0],
- mode= ura[1];
- url =''+dir+'/'+mode+'/rock_'+mode+'';
- if(ura[2]){
- if(ura[2].indexOf('=')<0){
- oi=3;
- url+='_'+ura[2]+'';
- }
- }
- var urlpms= '';
- for(i=oi;i<ura.length;i++){
- var nus = ura[i].split('=');
- urlpms += ",'"+nus[0]+"':'"+nus[1]+"'";
- }
- if(urlpms!='')urlpms = urlpms.substr(1);
- var bgs = '<div id="mainloaddiv" style="width:'+viewwidth+'px;height:'+viewheight+'px;overflow:hidden;background:#000000;color:white;filter:Alpha(opacity=20);opacity:0.2;z-index:3;position:absolute;left:0px;line-height:'+viewheight+'px;top:0px;" align="center"><img src="images/mloading.gif" align="absmiddle"> 加载中...</div>';
- $('#indexcontent').append(bgs);
- a.urlpath = url+'.php';
- objcont.append('<div temp="content" id="content_'+num+'"></div>');
- $.ajax({
- url:'?m=index&a=getshtml&surl='+jm.base64encode(url)+'&num='+num+'&menuname='+jm.base64encode(a.name)+'',
- type:'get',
- success: function(da){
- $('#mainloaddiv').remove();
- var s = da;
- s = s.replace(/\{rand\}/gi, rand);
- s = s.replace(/\{adminid\}/gi, adminid);
- s = s.replace(/\{adminname\}/gi, adminname);
- s = s.replace(/\{mode\}/gi, mode);
- s = s.replace(/\{dir\}/gi, dir);
- s = s.replace(/\{params\}/gi, "var params={"+urlpms+"};");
- var obja = $('#content_'+num+'');
- obja.html(s);
- },
- error:function(){
- $('#mainloaddiv').remove();
- var s = 'Error:加载出错喽,'+url+'';
- $('#content_'+num+'').html(s);
- }
- });
- tabsarr[num] = a;
- return false;
- }
|