dzxstatic
Version:
The static files of Discuz! X
1 lines • 35.5 kB
JavaScript
var drag=new Drag;drag.extend({getBlocksTimer:"",blocks:[],blockDefaultClass:[{key:"选择样式",value:""},{key:"无边框且无边距",value:"cl_block_bm"},{key:"样式1",value:"xbs_1"},{key:"样式2",value:"xbs xbs_2"},{key:"样式3",value:"xbs xbs_3"},{key:"样式4",value:"xbs xbs_4"},{key:"样式5",value:"xbs xbs_5"},{key:"样式6",value:"xbs xbs_6"},{key:"样式7",value:"xbs xbs_7"}],frameDefaultClass:[{key:"选择样式",value:""},{key:"无边框且无边距",value:"cl_frame_bm"},{key:"无边框框架",value:"xfs xfs_nbd"},{key:"样式1",value:"xfs xfs_1"},{key:"样式2",value:"xfs xfs_2"},{key:"样式3",value:"xfs xfs_3"},{key:"样式4",value:"xfs xfs_4"},{key:"样式5",value:"xfs xfs_5"}],setDefalutMenu:function(){this.addMenu("default","标题","drag.openTitleEdit(event)"),this.addMenu("default","样式","drag.openStyleEdit(event)"),this.addMenu("default","删除","drag.removeBlock(event)"),this.addMenu("block","属性","drag.openBlockEdit(event)"),this.addMenu("block","数据",'drag.openBlockEdit(event,"data")'),this.addMenu("block","更新","drag.blockForceUpdate(event)"),this.addMenu("frame","导出","drag.frameExport(event)"),this.addMenu("tab","导出","drag.frameExport(event)")},setSampleMenu:function(){this.addMenu("block","属性","drag.openBlockEdit(event)"),this.addMenu("block","数据",'drag.openBlockEdit(event,"data")'),this.addMenu("block","更新","drag.blockForceUpdate(event)")},openBlockEdit:function(e,t){t="data"==t?"data":"block";var l=(e=Util.event(e)).aim.id.replace("cmd_portal_block_","");this.removeMenu(),showWindow("showblock","portal.php?mod=portalcp&ac=block&op="+t+"&bid="+l+"&tpl="+document.diyform.template.value,"get",-1)},getDiyClassName:function(e,t){var l=this.getObjByName(e),a=$(e).className.replace(/ {2,}/g," "),i="",s="";return l instanceof Block?(i=a.split(this.blockClass+" "),s=this.blockClass):l instanceof Tab?(i=a.split(this.tabClass+" "),s=this.tabClass):l instanceof Frame&&(i=a.split(this.frameClass+" "),s=this.frameClass),null!=t&&t<i.length?i=i[t].replace(/^ | $/g,""):i.push(s),i},getOption:function(e,t){var l="";for(var a in e)if("function"!=typeof e[a]){var i=e[a].value==t?' selected="selected"':"";l+='<option value="'+e[a].value+'"'+i+">"+e[a].key+"</option>"}return l},getRule:function(e,t){return(e=spaceDiy.checkSelector(e))&&t?spaceDiy.styleSheet.getRule(e,t):""},openStyleEdit:function(e){var t,l,a,i,s,o,r,n,c,d,p,u,m,v,h,f,b,y=(e=Util.event(e)).aim.id.replace("cmd_",""),g=this.getObjByName(y)instanceof Block?1:0,k="",x="",_="",C="",w="",$="",D="",T="",B="",S="",j="",N="",U="#"+y;k=this.getRule(U,"backgroundColor"),x=this.getRule(U,"backgroundImage"),t=this.getRule(U,"backgroundRepeat"),x=x&&"none"!=x?Util.trimUrl(x):"",_=this.getRule(U+" ."+this.contentClass,"color"),i=this.getRule(U+" ."+this.contentClass,"fontSize").replace("px","");var O=spaceDiy.checkSelector(U+" ."+this.contentClass+" a");C=this.getRule(O,"color"),s=this.getRule(O,"fontSize").replace("px",""),_=Util.formatColor(_),C=Util.formatColor(C),o=this.getRule(U,"borderTopStyle"),n=this.getRule(U,"borderRightStyle"),d=this.getRule(U,"borderBottomStyle"),u=this.getRule(U,"borderLeftStyle"),r=this.getRule(U,"borderTopWidth"),c=this.getRule(U,"borderRightWidth"),p=this.getRule(U,"borderBottomWidth"),m=this.getRule(U,"borderLeftWidth"),w=this.getRule(U,"borderTopColor"),$=this.getRule(U,"borderRightColor"),D=this.getRule(U,"borderBottomColor"),T=this.getRule(U,"borderLeftColor"),k=Util.formatColor(k),w=Util.formatColor(w),$=Util.formatColor($),D=Util.formatColor(D),T=Util.formatColor(T),v=this.getRule(U,"marginTop").replace("px",""),h=this.getRule(U,"marginRight").replace("px",""),f=this.getRule(U,"marginBottom").replace("px",""),b=this.getRule(U,"marginLeft").replace("px",""),1==g&&(U=U+" ."+this.contentClass,B=this.getRule(U,"marginTop").replace("px",""),S=this.getRule(U,"marginRight").replace("px",""),j=this.getRule(U,"marginBottom").replace("px",""),N=this.getRule(U,"marginLeft").replace("px","")),a=this.getDiyClassName(y,0);for(var M=[],P=0;P<11;P++){var R=P+"px";M.push({key:R,value:R})}var E=[];for(P=0;P<31;P++)R=P+"px",E.push({key:R,value:R});var z=[{key:"无样式",value:"none"},{key:"实线",value:"solid"},{key:"点线",value:"dotted"},{key:"虚线",value:"dashed"}],H='<table class="tfm">';H+='<tr><th>字体</th><td><input type="text" id="fontsize" class="px p_fre vm" value="'+i+'" size="2" />px <input type="text" id="fontcolor" class="px p_fre vm" value="'+_+'" size="2" />',H+=getColorPalette(y+"_fontPalette","fontcolor",_)+"</td></tr>",H+='<tr><th>链接</th><td><input type="text" id="linkfontsize" class="px p_fre vm" value="'+s+'" size="2" />px <input type="text" id="linkcolor" class="px p_fre vm" value="'+C+'" size="2" />',H+=getColorPalette(y+"_linkPalette","linkcolor",C)+"</td></tr>";var L="borderul",I="";for(""==r&&""==w||(L="borderula",I=' checked="checked"'),H+='<tr><th>边框</th><td><ul id="borderul" class="'+L+'">',H+='<li><label>上</label><select class="ps vm" id="bdtwidth" ><option value="">大小</option>'+this.getOption(M,r)+"</select>",H+=' <select class="ps vm" id="bdtstyle" ><option value="">样式</option>'+this.getOption(z,o)+"</select>",H+=' 颜色 <input type="text" id="bdtcolor" class="px p_fre vm" value="'+w+'" size="7" />',H+=getColorPalette(y+"_bdtPalette","bdtcolor",w)+"</li>",H+='<li class="bordera mtn"><label>右</label><select class="ps vm" id="bdrwidth" ><option value="">大小</option>'+this.getOption(M,c)+"</select>",H+=' <select class="ps vm" id="bdrstyle" ><option value="">样式</option>'+this.getOption(z,n)+"</select>",H+=' 颜色 <input type="text" id="bdrcolor" class="px p_fre vm" value="'+$+'" size="7" />',H+=getColorPalette(y+"_bdrPalette","bdrcolor",$)+"</li>",H+='<li class="bordera mtn"><label>下</label><select class="ps vm" id="bdbwidth" ><option value="">大小</option>'+this.getOption(M,p)+"</select>",H+=' <select class="ps vm" id="bdbstyle" ><option value="">样式</option>'+this.getOption(z,d)+"</select>",H+=' 颜色 <input type="text" id="bdbcolor" class="px p_fre vm" value="'+D+'" size="7" />',H+=getColorPalette(y+"_bdbPalette","bdbcolor",D)+"</li>",H+='<li class="bordera mtn"><label>左</label><select class="ps vm" id="bdlwidth" ><option value="">大小</option>'+this.getOption(M,m)+"</select>",H+=' <select class="ps vm" id="bdlstyle" ><option value="">样式</option>'+this.getOption(z,u)+"</select>",H+=' 颜色 <input type="text" id="bdlcolor" class="px p_fre vm" value="'+T+'" size="7" />',H+=getColorPalette(y+"_bdlPalette","bdlcolor",T)+"</li>",H+='</ul><p class="ptm"><label><input id="borderop" type="checkbox" value="1" class="pc"'+I+" onclick=\"$('borderul').className = $('borderul').className == 'borderul' ? 'borderula' : 'borderul'\">分别设置</label></p></td></tr>",E=[],P=-20;P<31;P++)R=P+"px",E.push({key:R,value:R});L="borderul",I="",""!=v&&(L="borderula",I=' checked="checked"'),H+='<tr><th>外边距</th><td><div id="margindiv" class="'+L+'"><span><label>上</label> <input type="text" id="margint" class="px p_fre vm" value="'+v+'" size="1"/>px </span>',H+='<span class="bordera"><label>右</label> <input type="text" id="marginr" class="px p_fre vm" value="'+h+'" size="1" />px </span>',H+='<span class="bordera"><label>下</label> <input type="text" id="marginb" class="px p_fre vm" value="'+f+'" size="1" />px </span>',H+='<span class="bordera"><label>左</label> <input type="text" id="marginl" class="px p_fre vm" value="'+b+'" size="1" />px</span>',H+='</div><p class="ptm"><label><input id="marginop" type="checkbox" value="1" class="pc"'+I+" onclick=\"$('margindiv').className = $('margindiv').className == 'borderul' ? 'borderula' : 'borderul'\">分别设置</label></p></td></tr>",1==g&&(L="borderul",I="",""!=B&&(L="borderula",I=' checked="checked"'),H+='<tr><th>内边距</th><td><div id="cmargindiv" class="'+L+'"><span><label>上</label> <input class="px p_fre" id="cmargint" value="'+B+'" size="1" />px </span>',H+='<span class="bordera"><label>右</label> <input class="px p_fre" id="cmarginr" value="'+S+'" size="1" />px </span>',H+='<span class="bordera"><label>下</label> <input class="px p_fre" id="cmarginb" value="'+j+'" size="1" />px </span>',H+='<span class="bordera"><label>左</label> <input class="px p_fre" id="cmarginl" value="'+N+'" size="1" />px </span>',H+='</div><p class="ptm"><label><input id="cmarginop" type="checkbox" value="1" class="pc"'+I+" onclick=\"$('cmargindiv').className = $('cmargindiv').className == 'borderul' ? 'borderula' : 'borderul'\"> 分别设置</label></p></td></tr>"),H+='<tr><th>背景颜色</th><td><input type="text" id="bgcolor" class="px p_fre vm" value="'+k+'" size="4" />',H+=getColorPalette(y+"_bgcPalette","bgcolor",k)+"</td></tr>",H+='<tr><th>背景图片</th><td><input type="text" id="bgimage" class="px p_fre vm" value="'+x+'" size="25" /> <select class="ps vm" id="bgrepeat" >'+this.getOption([{key:"平铺",value:"repeat"},{key:"不平铺",value:"no-repeat"},{key:"横向平铺",value:"repeat-x"},{key:"纵向平铺",value:"repeat-y"}],t)+"</select></td></tr>";var F=1==g?this.blockDefaultClass:this.frameDefaultClass;H+='<tr><th>指定class</th><td><input type="text" id="diyClassName" class="px p_fre" value="'+a+'" size="8" /> <select class="ps vm" id="bgrepeat" onchange="$(\'diyClassName\').value=this.value;" >'+this.getOption(F,a)+"</select></td></tr>",l='<div class="c diywin" style="width:450px;position:relative;">'+(H+="</table>")+"</div>";var V='<h3 class="flb"><em>编辑'+(g?"模块":"框架")+'样式</em><span><a href="javascript:;" class="flbc" onclick="drag.closeStyleEdit(\''+y+'\');return false;" title="关闭">\n\t\t\t关闭</a></span></h3>',W='<p class="o pns"><button onclick="drag.saveStyle(\''+y+"');drag.closeStyleEdit('"+y+'\');" class="pn pnc" value="true">\n\t\t\t<strong>确定</strong></button><button onclick="drag.closeStyleEdit(\''+y+'\')" class="pn" value="true"><strong>取消</strong></button></p>';this.removeMenu(e),showWindow("eleStyle",V+l+W,"html",0)},closeStyleEdit:function(e){this.deleteFrame([e+"_bgcPalette",e+"_bdtPalette",e+"_bdrPalette",e+"_bdbPalette",e+"_bdlPalette",e+"_fontPalette",e+"_linkPalette"]),hideWindow("eleStyle")},saveStyle:function(e){var t=this.getDiyClassName(e),l=$("diyClassName").value;$(e).className=l+" "+t[2]+" "+t[1];var a=this.getObjByName(e)instanceof Block?1:0;1==a&&this.saveBlockClassName(e,l);var i="#"+e,s=Math.random();spaceDiy.setStyle(i,"background-color",$("bgcolor").value,s);var o=$("bgimage").value&&"none"!=$("bgimage")?Util.url($("bgimage").value):"",r=o?$("bgrepeat").value:"";""!=$("bgcolor").value&&""==o&&(o="none"),spaceDiy.setStyle(i,"background-image",o,s),spaceDiy.setStyle(i,"background-repeat",r,s),spaceDiy.setStyle(i+" ."+this.contentClass,"color",$("fontcolor").value,s),spaceDiy.setStyle(i+" ."+this.contentClass,"font-size",this.formatValue("fontsize"),s),spaceDiy.setStyle(spaceDiy.checkSelector(i+" ."+this.contentClass+" a"),"color",$("linkcolor").value,s);var n=parseInt($("linkfontsize").value);if(n=isNaN(n)?"":n+"px",spaceDiy.setStyle(spaceDiy.checkSelector(i+" ."+this.contentClass+" a"),"font-size",this.formatValue("linkfontsize"),s),$("borderop").checked)var c=$("bdtwidth").value,d=$("bdrwidth").value,p=$("bdbwidth").value,u=$("bdlwidth").value,m=$("bdtstyle").value,v=$("bdrstyle").value,h=$("bdbstyle").value,f=$("bdlstyle").value,b=$("bdtcolor").value,y=$("bdrcolor").value,g=$("bdbcolor").value,k=$("bdlcolor").value;else u=p=d=c=$("bdtwidth").value,f=h=v=m=$("bdtstyle").value,k=g=y=b=$("bdtcolor").value;if(spaceDiy.setStyle(i,"border","",s),spaceDiy.setStyle(i,"border-top-width",c,s),spaceDiy.setStyle(i,"border-right-width",d,s),spaceDiy.setStyle(i,"border-bottom-width",p,s),spaceDiy.setStyle(i,"border-left-width",u,s),spaceDiy.setStyle(i,"border-top-style",m,s),spaceDiy.setStyle(i,"border-right-style",v,s),spaceDiy.setStyle(i,"border-bottom-style",h,s),spaceDiy.setStyle(i,"border-left-style",f,s),spaceDiy.setStyle(i,"border-top-color",b,s),spaceDiy.setStyle(i,"border-right-color",y,s),spaceDiy.setStyle(i,"border-bottom-color",g,s),spaceDiy.setStyle(i,"border-left-color",k,s),$("marginop").checked)var x=this.formatValue("margint"),_=this.formatValue("marginr"),C=this.formatValue("marginb"),w=this.formatValue("marginl");else w=C=_=x=this.formatValue("margint");if(spaceDiy.setStyle(i,"margin-top",x,s),spaceDiy.setStyle(i,"margin-right",_,s),spaceDiy.setStyle(i,"margin-bottom",C,s),spaceDiy.setStyle(i,"margin-left",w,s),1==a){if($("cmarginop").checked)var D=this.formatValue("cmargint"),T=this.formatValue("cmarginr"),B=this.formatValue("cmarginb"),S=this.formatValue("cmarginl");else S=B=T=D=this.formatValue("cmargint");i=i+" ."+this.contentClass,spaceDiy.setStyle(i,"margin-top",D,s),spaceDiy.setStyle(i,"margin-right",T,s),spaceDiy.setStyle(i,"margin-bottom",B,s),spaceDiy.setStyle(i,"margin-left",S,s)}this.setClose()},formatValue:function(e){var t="";return $(e)&&(t=parseInt($(e).value),t=isNaN(t)?"":t+"px"),t},saveBlockClassName:function(e,t){if(!$("saveblockclassname")){var l=document.createElement("div");l.innerHTML='<form id="saveblockclassname" method="post" action=""><input type="hidden" name="classname" value="" />\n\t\t\t\t<input type="hidden" name="formhash" value="'+document.diyform.formhash.value+'" /><input type="hidden" name="saveclassnamesubmit" value="true"/></form>',$("append_parent").appendChild(l.childNodes[0])}$("saveblockclassname").action="portal.php?mod=portalcp&ac=block&op=saveblockclassname&bid="+e.replace("portal_block_",""),document.forms.saveblockclassname.classname.value=t,ajaxpost("saveblockclassname","ajaxwaitid")},closeTitleEdit:function(e){this.deleteFrame(e+"bgPalette_0");for(var t=0;t<=10;t++)this.deleteFrame(e+"Palette_"+t);hideWindow("frameTitle")},openTitleEdit:function(e){if("object"==typeof e)var t=(e=Util.event(e)).aim.id.replace("cmd_","");else t=e;var l=this.getObjByName(t),a=l instanceof Block?"模块":"框架",i=l.titles.length,s=l.titles.style&&l.titles.style["background-image"]?l.titles.style["background-image"]:"";s="none"!=s?Util.trimUrl(s):"";var o=l.titles.style&&l.titles.style["background-color"]?l.titles.style["background-color"]:"";o=Util.formatColor(o);var r=l.titles.style&&l.titles.style["background-repeat"]?l.titles.style["background-repeat"]:"",n='<table class="tfm">';if(n+='<tr><th>背景图片:</th><td><input type="text" id="titleBgImage" class="px p_fre" value="'+s+'" /> <select class="ps vm" id="titleBgRepeat" >'+this.getOption([{key:"平铺",value:"repeat"},{key:"不平铺",value:"no-repeat"},{key:"横向平铺",value:"repeat-x"},{key:"纵向平铺",value:"repeat-y"}],r)+"</select></td></tr>",n+='<tr><th>背景颜色:</th><td><input type="text" id="titleBgColor" class="px p_fre" value="'+o+'" size="7" />',n+=getColorPalette(t+"bgPalette_0","titleBgColor",o)+"</td></tr>",l instanceof Tab){var c=l.titles.switchType?l.titles.switchType[0]:"click";n+='<tr><th>切换类型:</th><td><select class="ps" id="switchType" >'+this.getOption([{key:"点击",value:"click"},{key:"滑过",value:"mouseover"}],c)+"</select></td></tr>"}n+='</table><hr class="l">';var d="";d+='<div id="titleInput_0"><table class="tfm"><tr><th>'+a+'标题:</th><td><input type="text" id="titleText_0" class="px p_fre" value="`title`" /></td></tr>',d+='<tr><th>链接:</th><td><input type="text" id="titleLink_0" class="px p_fre" value="`link`" /></td></tr>',d+='<tr><th>图片:</th><td><input type="text" id="titleSrc_0" class="px p_fre" value="`src`" /></td></tr>',d+='<tr><th>位置:</th><td><select id="titleFloat_0" class="ps vm"><option value="" `left`>居左</option><option value="right" `right`>居右</option></select>',d+=' 偏移量: <input type="text" id="titleMargin_0" class="px p_fre vm" value="`margin`" size="2" />px</td></tr>',d+='<tr><th>字体:</th><td><select class="ps vm" id="titleSize_0" ><option value="">大小</option>`size`</select>',d+=' 颜色: <input type="text" id="titleColor_0" class="px p_fre vm" value="`color`" size="4" />',d+=getColorPalette(t+"Palette_0","titleColor_0","`color`"),d+='</td></tr><tr><td colspan="2"><hr class="l"></td></tr></table></div>';var p="";l.titles.first&&(p=this.getTitleHtml(l,"first",d));for(var u=0;u<i;u++)p+=this.getTitleHtml(l,u,d);if(!p){for(var m=[],v=7;v<27;v++){var h=v+"px";m.push({key:h,value:h})}var f=this.getOption(m,f);p=d.replace("`size`",f).replace(/`\w+`/g,"")}p='<div class="c diywin" style="width:450px;height:400px; overflow:auto;"><table cellspacing="0" cellpadding="0" class="tfm pns"><tr><th></th><td><button type="button" id="addTitleInput" class="pn" onclick="drag.addTitleInput('+(i+1)+');"><em>添加新标题</em></button></td></tr></table><div id="titleEdit">'+p+n+"</div></div>";var b='<h3 class="flb"><em>编辑'+a+'标题</em><span><a href="javascript:;" class="flbc" onclick="drag.closeTitleEdit(\''+t+'\');return false;" title="关闭">\n\t\t\t关闭</a></span></h3>',y='<p class="o pns"><button onclick="drag.saveTitleEdit(\''+t+"');drag.closeTitleEdit('"+t+'\');" class="pn pnc" value="true">\n\t\t\t<strong>确定</strong></button><button onclick="drag.closeTitleEdit(\''+t+'\')" class="pn" value="true"><strong>取消</strong></button></p>';this.removeMenu(e),showWindow("frameTitle",b+p+y,"html",0)},getTitleHtml:function(e,t,l){var a,i,s,o,r,n="",c="",d="",p="first"==t?"0":t+1;a=e.titles[t].text?e.titles[t].text:"",i=e.titles[t].href?e.titles[t].href:"",s=e.titles[t].float?e.titles[t].float:"",o=e.titles[t].margin?e.titles[t].margin:"",c=e.titles[t]["font-size"]?e.titles[t]["font-size"]+"px":"",d=e.titles[t].color?e.titles[t].color:"",r=e.titles[t].src?e.titles[t].src:"";for(var u=[],m=7;m<27;m++){var v=m+"px";u.push({key:v,value:v})}c=this.getOption(u,c),n=l.replace(/_0/g,"_"+p).replace("`title`",a).replace("`link`",i).replace("`size`",c).replace("`src`",r);var h=""==s?"selected":"",f="right"==s?"selected":"";return d=Util.formatColor(d),n=n.replace(/`color`/g,d).replace("`left`",h).replace("`right`",f).replace("`margin`",o)},addTitleInput:function(e){if(e>10)return!1;var t=$("titleInput_"+(e-1)),l=document.createElement("div");l.className="tfm";var a=new RegExp("_"+(e-1),"g");l.id="titleInput_"+e,l.innerHTML=t.innerHTML.replace(a,"_"+e),Util.insertAfter(l,t),$("addTitleInput").onclick=function(){drag.addTitleInput(e+1)}},saveTitleEdit:function(e){var t=this.getObjByName(e),l=$(e),a=l.childNodes,i=d="",s=0,o=0;for(var r in a)if("object"==typeof a[r]&&Util.hasClass(a[r],this.titleClass)){i=a[r];break}if(i){var n=[];for(var r in i.childNodes)"object"==typeof i.childNodes[r]&&Util.hasClass(i.childNodes[r],this.titleTextClass)?(d=i.childNodes[r],this._createTitleHtml(d,o),""!=d.innerHTML&&(s=1)):"object"!=typeof i.childNodes[r]||Util.hasClass(i.childNodes[r],this.moveableObject)||n.push(i.childNodes[r]);for(r=0;r<n.length;r++)i.removeChild(n[r])}else{var c="";t instanceof Tab?c="tab-":t instanceof Frame?c="frame-":t instanceof Block&&(c="block"),(i=document.createElement("div")).className=c+"title "+this.titleClass,l.insertBefore(i,l.firstChild)}if(!d){var d=document.createElement("span");d.className=this.titleTextClass,this._createTitleHtml(d,o),""!=d.innerHTML&&(i.insertBefore(d,i.firstChild),s=1)}for(;$("titleText_"+ ++o);){var p=document.createElement("span");p.className="subtitle",this._createTitleHtml(p,o),""!=p.innerHTML&&(p.innerHTML&&Util.insertAfter(p,d),d=p,s=1)}var u=$("titleBgImage").value;u=u&&"none"!=u?Util.url(u):"",""!=$("titleBgColor").value&&""==u&&(u="none"),i.style.backgroundImage=u,u&&(i.style.backgroundRepeat=$("titleBgRepeat").value),i.style.backgroundColor=$("titleBgColor").value,$("switchType")&&(i.switchType=[],i.switchType[0]=$("switchType").value?$("switchType").value:"click",i.setAttribute("switchtype",i.switchType[0])),t.titles=[],1==s?this._initTitle(t,i):(t instanceof Tab||i.parentNode.removeChild(i),i="",this.initPosition()),t instanceof Block&&this.saveBlockTitle(e,i),this.setClose()},_createTitleHtml:function(e,t){var l="",a="";t="_"+t;var i=$("titleText"+t).value,s=$("titleLink"+t).value,o=$("titleFloat"+t).value,r=""!=o?o:"left",n=$("titleMargin"+t).value,c=$("titleSize"+t).value,d=$("titleColor"+t).value,p=$("titleSrc"+t).value,u="float:"+o+";margin-"+r+":"+n+"px;font-size:"+c,m="color:"+d+" !important;";return p&&(a='<img class="vm" src="'+p+'" alt="'+i+'" />'),(i||a)&&(s?(Util.setStyle(e,u),l="<a href="+s+' target="_blank" style="'+m+'">'+a+i+"</a>"):(Util.setStyle(e,u+";"+m),l=a+i)),e.innerHTML=l,!0},saveBlockTitle:function(e,t){if(!$("saveblocktitle")){var l=document.createElement("div");l.innerHTML='<form id="saveblocktitle" method="post" action=""><input type="hidden" name="title" value="" />\n\t\t\t\t<input type="hidden" name="formhash" value="'+document.diyform.formhash.value+'" /><input type="hidden" name="savetitlesubmit" value="true"/></form>',$("append_parent").appendChild(l.childNodes[0])}$("saveblocktitle").action="portal.php?mod=portalcp&ac=block&op=saveblocktitle&bid="+e.replace("portal_block_","");var a=t?t.outerHTML:"";document.forms.saveblocktitle.title.value=a,ajaxpost("saveblocktitle","ajaxwaitid")},removeBlock:function(e,t){if("string"!=typeof e)var l=(e=Util.event(e)).aim.id.replace("cmd_","");else l=e;if(null==$(l))return!1;var a=this.getObjByName(l);if(!t&&!confirm("您确实要删除吗,删除以后将不可恢复"))return!1;a instanceof Block?this.delBlock(l):a instanceof Frame&&this.delFrame(a),$(l).parentNode.removeChild($(l));var i=$(l+"_content");i&&i.parentNode.removeChild(i),this.setClose(),this.initPosition(),this.initChkBlock()},delBlock:function(e){spaceDiy.removeCssSelector("#"+e),this.stopSlide(e)},delFrame:function(e){for(var t in spaceDiy.removeCssSelector("#"+e.name),e.columns)if(e.columns[t]instanceof Column){var l=e.columns[t].children;for(var a in l)l[a]instanceof Frame?this.delFrame(l[a]):l[a]instanceof Block&&this.delBlock(l[a].name)}this.setClose()},initChkBlock:function(e){if("undefined"!=typeof name&&null!=e||(e=this.data),e instanceof Frame)this.initChkBlock(e.columns);else if(e instanceof Block){var t=$("chk"+e.name);null!=t&&(t.checked=!0)}else if("object"==typeof e)for(var l in e)this.initChkBlock(e[l])},getBlockData:function(e){var t=this.dragObj.id,l=t;return-1!=t.indexOf("portal_block_")?l=0:t=0,showWindow("showblock","portal.php?mod=portalcp&ac=block&op=block&classname="+e+"&bid="+t+"&eleid="+l+"&tpl="+document.diyform.template.value,"get",-1),drag.initPosition(),this.fn="",!0},stopSlide:function(e){if("undefined"==typeof slideshow||void 0===slideshow.entities)return!1;var t=$C("slidebox",$(e));if(t&&t.length>0&&t[0].id){var l=slideshow.entities[t[0].id].timer;l&&clearTimeout(l),slideshow.entities[t[0].id]=""}},blockForceUpdate:function(e,t){if("string"!=typeof e)var l=(e=Util.event(e)).aim.id.replace("cmd_","");else l=e;if(null==$(l))return!1;var a=l.replace("portal_block_",""),i=$(l+"_content");i||((i=document.createElement("div")).id=l+"_content",i.className=this.contentClass),this.stopSlide(l);var s=Util.getFinallyStyle(i,"height");i.style.lineHeight="auto"==s?"":"0px"==s?"20px":s;var o=i.innerHTML;i.innerHTML="<center>正在加载内容...</center>",(new Ajax).get("portal.php?mod=portalcp&ac=block&op=getblock&forceupdate=1&inajax=1&bid="+a+"&tpl="+document.diyform.template.value,(function(e){if(-1!=e.indexOf("errorhandle_"))i.innerHTML=o,runslideshow(),showDialog("抱歉,您没有权限添加或编辑模块","alert"),doane();else{var a=document.createElement("div");a.innerHTML=e,i.parentNode.removeChild(i),$(l).innerHTML=a.childNodes[0].innerHTML,evalscript(e),-1!=e.indexOf("runslideshow()")&&runslideshow(),drag.initPosition(),t&&drag.getBlocks()}}))},frameExport:function(e){var t=!0;if(drag.isChange&&(t=confirm("您已经做过修改,请保存后再做导出,否则导出的数据将不包括您这次所做的修改。")),t){if("object"==typeof e)var l=(e=Util.event(e)).aim.id.replace("cmd_","");else l=null==e?"":e;if(!$("frameexport")){var a=document.createElement("div");a.innerHTML='<form id="frameexport" method="post" action="" target="_blank"><input type="hidden" name="frame" value="" />\n\t\t\t\t\t<input type="hidden" name="tpl" value="'+document.diyform.template.value+'" />\n\t\t\t\t\t<input type="hidden" name="tpldirectory" value="'+document.diyform.tpldirectory.value+'" />\n\t\t\t\t\t<input type="hidden" name="diysign" value="'+document.diyform.diysign.value+'" />\n\t\t\t\t\t<input type="hidden" name="formhash" value="'+document.diyform.formhash.value+'" /><input type="hidden" name="exportsubmit" value="true"/></form>',$("append_parent").appendChild(a.childNodes[0])}$("frameexport").action="portal.php?mod=portalcp&ac=diy&op=export",document.forms.frameexport.frame.value=l,document.forms.frameexport.submit()}doane()},openFrameImport:function(e){e=e||0,showWindow("showimport","portal.php?mod=portalcp&ac=diy&op=import&tpl="+document.diyform.template.value+"&tpldirectory="+document.diyform.tpldirectory.value+"&diysign="+document.diyform.diysign.value+"&type="+e,"get")},endBlockForceUpdateBatch:function(){$("allupdate")&&($("allupdate").innerHTML="已操作完成。",$("fwin_dialog_submit").style.display="",$("fwin_dialog_cancel").style.display="none"),this.initPosition()},getBlocks:function(){if(0==this.blocks.length&&this.endBlockForceUpdateBatch(),this.blocks.length>0){var e=this.blocksLen-this.blocks.length;if($("allupdate")){$("allupdate").innerHTML='共<span style="color:blue">'+this.blocksLen+'</span>个模块,正在更新第<span style="color:red">'+e+'</span>个,已完成<span style="color:red">'+parseInt(e/this.blocksLen*100)+"%</span>";var t="portal_block_"+this.blocks.pop();this.blockForceUpdate(t,!0)}}},blockForceUpdateBatch:function(e){e?this.blocks=e:(this.initPosition(),this.blocks=this.allBlocks),this.blocksLen=this.blocks.length,showDialog('<div id="allupdate" style="width:350px;line-height:28px;">开始更新...</div>',"confirm","更新模块数据","",!0,"drag.endBlockForceUpdateBatch()");var t=function(){$("fwin_dialog_submit")?($("fwin_dialog_submit").style.display="none",$("fwin_dialog_cancel").className="pn pnc",setTimeout((function(){drag.getBlocks()}),500)):setTimeout(t,100)};t(),doane()},clearAll:function(){if(confirm("您确实要清空页面上所在DIY数据吗,清空以后将不可恢复")){for(var e in this.data)for(var t in this.data[e])"object"==typeof this.data[e][t]&&this.data[e][t].name.indexOf("_temp")<0&&(this.delFrame(this.data[e][t]),$(this.data[e][t].name).parentNode.removeChild($(this.data[e][t].name)));this.initPosition(),this.setClose()}doane()},createObj:function(e,t,l){if("block"==t&&!this.checkHasFrame())return alert("提示:未找到框架,请先添加框架。"),spaceDiy.getdiy("frame"),!1;if(1!=(e=Util.event(e)).which)return!1;var a="",i=0;"frame"==t?(a=this.getFrameHtml(l),i=600):"block"==t?(a=this.getBlockHtml(l),i=200,this.fn=function(e){drag.getBlockData(l)}):"tab"==t&&(a=this.getTabHtml(l),i=300);var s=document.createElement("div");if(s.innerHTML=a,s=s.childNodes[0],document.body.appendChild(s),this.dragObj=this.overObj=s,!this.getTmpBoxElement())return!1;var o=Util.getScroll();this.dragObj.style.position="absolute",this.dragObj.style.left=e.clientX+o.l-60+"px",this.dragObj.style.top=e.clientY+o.t-10+"px",this.dragObj.style.width=i+"px",this.dragObj.style.cursor="move",this.dragObj.lastMouseX=e.clientX,this.dragObj.lastMouseY=e.clientY,Util.insertBefore(this.tmpBoxElement,this.overObj),Util.addClass(this.dragObj,this.moving),this.dragObj.style.zIndex=500,this.scroll=Util.getScroll(),this.newFlag=!0;var r=this;document.onscroll=function(){Drag.prototype.resetObj.call(r,e)},window.onscroll=function(){Drag.prototype.resetObj.call(r,e)},document.onmousemove=function(e){Drag.prototype.drag.call(r,e)},document.onmouseup=function(e){Drag.prototype.dragEnd.call(r,e)}},getFrameHtml:function(e){var t="frame"+Util.getRandom(6),l=[this.frameClass,this.moveableObject].join(" "),a='<div id="'+t+'" class="'+(l=l+" cl frame-"+e)+'">';a+='<div id="'+t+'_title" class="'+this.titleClass+" "+this.frameTitleClass+'"><span class="'+this.titleTextClass+'">'+e+"框架</span></div>";var i,s,o,r=e.split("-");i=" frame-"+e+"-l",s=" frame-"+e+"-c",o=" frame-"+e+"-r";var n=r.length;return 1==n?a+='<div id="'+t+'_left" class="'+this.moveableColumn+s+'"></div>':2==n?(a+='<div id="'+t+'_left" class="'+this.moveableColumn+i+'"></div>',a+='<div id="'+t+'_center" class="'+this.moveableColumn+o+'"></div>'):3==n&&(a+='<div id="'+t+'_left" class="'+this.moveableColumn+i+'"></div>',a+='<div id="'+t+'_center" class="'+this.moveableColumn+s+'"></div>',a+='<div id="'+t+'_right" class="'+this.moveableColumn+o+'"></div>'),a+="</div>"},getTabHtml:function(){var e="tab"+Util.getRandom(6),t=[this.tabClass,this.moveableObject].join(" "),l='<div id="'+e+'" class="'+(t+=" cl")+'">';return l+='<div id="'+e+'_title" class="'+[this.tabTitleClass,this.titleClass,this.moveableColumn,"cl"].join(" ")+'"><span class="'+this.titleTextClass+'">tab标签</span></div>',l+='<div id="'+e+'_content" class="'+this.tabContentClass+'"></div>',l+="</div>"},getBlockHtml:function(){var e='<div id="'+("block"+Util.getRandom(6))+'" class="block move-span"></div>';return e+="</div>"},setClose:function(){if(this.sampleMode)return!0;this.isChange||(window.onbeforeunload=function(){return"您的数据已经修改,退出将无法保存您的修改。"}),this.isChange=!0,spaceDiy.enablePreviewButton()},clearClose:function(){this.isChange=!1,this.isClearClose=!0,window.onbeforeunload=function(){}},goonDIY:function(){"1"==$("prefile").value?showDialog('<div style="line-height:28px;">按继续按钮将打开暂存数据并DIY,<br />按删除按钮将删除暂存数据。</div>',"confirm","是否继续暂存数据的DIY?",(function(){location.replace(location.href+"&preview=yes")}),!0,"spaceDiy.cancelDIY()","","继续","删除"):location.search.indexOf("preview=yes")>-1?spaceDiy.enablePreviewButton():spaceDiy.disablePreviewButton(),setInterval((function(){spaceDiy.save("savecache",1)}),18e4)}});var spaceDiy=new DIY;function succeedhandle_diyform(e,t,l){return"1"==l.rejs&&(document.diyform.rejs.value="",parent.$("preview_form").submit()),spaceDiy.enablePreviewButton(),!1}spaceDiy.extend({save:function(e,t){if("savecache"==(e=void 0===e?"":e)&&!drag.isChange)return!1;var l=document.diyform.template.value.split(":");if(e){if("savecache"==e){if(!drag.isChange)return!1;this.checkPreview_form(),document.diyform.rejs.value=t?0:1}else if("preview"==e){if(!drag.isChange)return this.checkPreview_form(),$("preview_form").submit(),!1;e="savecache"}}else if(-1==["portal/portal_topic_content","portal/list","portal/view"].indexOf(l[0])){if(document.diyform.template.value.indexOf(":")>-1&&!document.selectsave){var a="",i="";return"1"==document.diyform.savemod.value?i=" checked":a=" checked",showDialog('<form name="selectsave" action="" method="get"><label><input type="radio" value="0" name="savemod"'+a+' />应用于此类全部页面</label>\n\t\t\t\t\t<label><input type="radio" value="1" name="savemod"'+i+" />只应用于本页面</label></form>","notice","",spaceDiy.save),!1}document.selectsave&&(document.selectsave.savemod[0].checked?document.diyform.savemod.value=document.selectsave.savemod[0].value:document.diyform.savemod.value=document.selectsave.savemod[1].value)}else document.diyform.savemod.value=1;document.diyform.action=document.diyform.action.replace(/[&|\?]inajax=1/,""),document.diyform.optype.value=e,document.diyform.spacecss.value=spaceDiy.getSpacecssStr(),document.diyform.style.value=spaceDiy.style,document.diyform.layoutdata.value=drag.getPositionStr(),document.diyform.gobackurl.value=spaceDiy.cancelDiyUrl(),drag.clearClose(),"savecache"==e?(document.diyform.handlekey.value="diyform",ajaxpost("diyform","ajaxwaitid","ajaxwaitid","onerror")):(saveUserdata("diy_advance_mode",""),document.diyform.submit())},checkPreview_form:function(){if(!$("preview_form")){for(var e=document.createElement("div"),t="",l=location.search.replace("?","").split("&"),a=0;a<l.length;a++){var i=l[a].split("=");i.length>1&&"diy"!=i[0]&&(t+='<input type="hidden" value="'+i[1]+'" name="'+i[0]+'" />')}t+='<input type="hidden" value="yes" name="preview" />',e.innerHTML='<form action="'+location.href+'" target="_bloak" method="get" id="preview_form">'+t+"</form>";var s=e.getElementsByTagName("form");$("append_parent").appendChild(s[0])}},cancelDiyUrl:function(){return location.href.replace(/[\?|\&]diy\=yes/g,"").replace(/[\?|\&]preview=yes/,"")},cancel:function(){saveUserdata("diy_advance_mode",""),drag.isClearClose?showDialog('<div style="line-height:28px;">是否保留暂存数据?<br />按确定按钮将保留暂存数据,按取消按钮将删除暂存数据。</div>',"confirm","保留暂存数据",(function(){location.href=spaceDiy.cancelDiyUrl()}),!0,(function(){window.onunload=function(){spaceDiy.cancelDIY()},location.href=spaceDiy.cancelDiyUrl()})):location.href=this.cancelDiyUrl()},recover:function(){confirm("您确定要恢复到上一版本保存的结果吗?")&&(drag.clearClose(),document.diyform.recover.value="1",document.diyform.gobackurl.value=location.href.replace(/(\?diy=yes)|(\&diy=yes)/,"").replace(/[\?|\&]preview=yes/,""),document.diyform.submit()),doane()},enablePreviewButton:function(){$("preview")&&($("preview").className="",drag.isChange?$("diy_preview").onclick=function(){return spaceDiy.save("savecache"),!1}:$("diy_preview").onclick=function(){return spaceDiy.save("preview"),!1},Util.show($("savecachemsg")))},disablePreviewButton:function(){$("preview")&&($("preview").className="unusable",$("diy_preview").onclick=function(){return!1})},cancelDIY:function(){this.disablePreviewButton(),document.diyform.optype.value="canceldiy",(new Ajax).post($("diyform").action+"&inajax=1","optype=canceldiy&diysubmit=1&template="+document.diyform.template.value+"&savemod="+document.diyform.savemod.value+"&formhash="+document.diyform.formhash.value+"&tpldirectory="+document.diyform.tpldirectory.value+"&diysign="+document.diyform.diysign.value,(function(e){}))},switchBlockclass:function(e){for(var t=$("contentblockclass_nav").getElementsByTagName("a"),l=$("contentblockclass").getElementsByTagName("ul"),a=0;a<t.length;a++)t[a].id=="bcnav_"+e?t[a].className="a":t[a].className="";for(a=0;a<l.length;a++)l[a].id=="contentblockclass_"+e?l[a].style.display="":l[a].style.display="none"},getdiy:function(e){if(e){var t=$("controlnav").children;for(var l in t)if("current"==t[l].className){t[l].className="";var a="content"+t[l].id.replace("nav","");$(a)&&($(a).style.display="none")}if($("nav"+e).className="current","start"==e||"frame"==e)return $("content"+e).style.display="block",!0;if("blockclass"==e&&""!=$("content"+e).innerHTML)return $("content"+e).style.display="block",!0;var i="&op="+e;if(arguments.length>1)for(l=1;l<arguments.length;l++)i+="&"+arguments[l]+"="+arguments[++l];var s="diy"==e?"diyimages":"",o=new Ajax;o.showId=s,o.get("portal.php?mod=portalcp&ac=diy"+i+"&inajax=1&ajaxtarget="+s,(function(t,l){if(t){if("object"!=typeof cpb_frame||BROWSER.ie||delete cpb_frame,!$("content"+e)){var a=document.createElement("div");a.id="content"+e,$("controlcontent").appendChild(a)}$("content"+e).innerHTML=t,$("content"+e).style.display="block","diy"==e&&(spaceDiy.setCurrentDiy(spaceDiy.currentDiy),spaceDiy.styleSheet.rules.length>0&&Util.show("recover_button"));var i=!1;-1!=t.indexOf("ajaxerror")&&(evalscript(t),i=!0),i||"undefined"!=typeof ajaxerror&&ajaxerror||l.showId&&ajaxupdateevents($(l.showId)),i||evalscript(t)}}))}}}),spaceDiy.init(1);