﻿HQCM.ManageBlock={gv:window.parent.gv,CheckBoxClick:function(obj){var insideV=obj.getAttribute("inside");if(obj.checked){$(insideV).style.display="";}else{$(insideV).style.display="none";}},CheckBoxEvent:function(obj){var bx=$(obj).getElementsByTagName("input");for(i=0;i<bx.length;i++){if(bx[i].getAttribute("inside")!=null){bx[i].onclick=function(){HQCM.ManageBlock.CheckBoxClick(this);};}}},SaveBodyHTML:function(urlpath){var l="",m="",r="";var oDivs=document.getElementsByTagName("div");for(i=0;i<oDivs.length;i++){if(oDivs[i].getAttribute("ty")=="module"){if(oDivs[i].parentNode.parentNode.id=="LeftBlock" && oDivs[i].style.display!="none"){if(l==""){l=oDivs[i].id;}else{l+=";"+oDivs[i].id;}}if(oDivs[i].parentNode.parentNode.id=="MiddleBlock" && oDivs[i].style.display!="none"){if(m==""){m=oDivs[i].id;}else{m+=";"+oDivs[i].id;}}if(oDivs[i].parentNode.parentNode.id=="RightBlock" && oDivs[i].style.display!="none"){if(r==""){r=oDivs[i].id;}else{r+=";"+oDivs[i].id;}}}}if(curX==""){curX=window.parent.urlX;}/*window.parent.location.href=urlpath+"&x="+curX+"&l="+l+"&m="+m+"&r="+r;*/window.parent.location.href=urlpath;},intManageDiv:function(){var BigBK=/Photo|Video|Diary/;var SmallBK=/Profile|Viste|Circle|Wish|BlackBoard|News|BBS|Digest|Entertainment/;var gv=HQCM.ManageBlock.gv;var ltxt="",mtxt="",rtxt="";var Lwidth="width:",Mwidth="width:",Rwidth="width:";if(gv.length==2){if(gv[0].md.search(BigBK)>-1 || gv[1].md.search(SmallBK)>-1){ltxt="Photo;Video;Diary";rtxt="Profile;Viste;Circle;Wish;BlackBoard;News;BBS;Digest;Entertainment";}if(gv[0].md.search(SmallBK)>-1 || gv[1].md.search(BigBK)>-1){ltxt="Profile;Viste;Circle;Wish;BlackBoard;News;BBS;Digest;Entertainment";rtxt="Photo;Video;Diary";}Lwidth+=gv[0].sz;Rwidth+=gv[1].sz;var _lm=document.createElement("div");_lm.setAttribute("id","LeftBlock");_lm.innerHTML="<div  ty='column' style='"+Lwidth+"'></div>";$("ShowBlockTD").appendChild(_lm);var _rm=document.createElement("div");_rm.setAttribute("id","RightBlock");_rm.innerHTML="<div  ty='column' style='"+Rwidth+"'></div>";$("ShowBlockTD").appendChild(_rm);}if(gv.length==3){ltxt="Profile;Viste;Circle";mtxt="Photo;Video;Diary";rtxt="Wish;BlackBoard;News;BBS;Digest;Entertainment";Lwidth+=gv[0].sz;Mwidth+=gv[1].sz;Rwidth+=gv[2].sz;var _lm=document.createElement("div");_lm.setAttribute("id","LeftBlock");_lm.innerHTML="<div  ty='column' style='"+Lwidth+"'></div>";$("ShowBlockTD").appendChild(_lm);var _mm=document.createElement("div");_mm.setAttribute("id","MiddleBlock");_mm.innerHTML="<div  ty='column' style='"+Mwidth+"'></div>";$("ShowBlockTD").appendChild(_mm);var _rm=document.createElement("div");_rm.setAttribute("id","RightBlock");_rm.innerHTML="<div  ty='column' style='"+Rwidth+"'></div>";$("ShowBlockTD").appendChild(_rm);}var dl="",dm="",dr="";var pl="",pm="",pr="";if(window.parent.document.getElementById("left")){pl=window.parent.document.getElementById("left").getAttribute("cusVl");}if(window.parent.document.getElementById("middle")){pm=window.parent.document.getElementById("middle").getAttribute("cusVl");}if(window.parent.document.getElementById("right")){pr=window.parent.document.getElementById("right").getAttribute("cusVl");}var bxs=document.getElementsByTagName("input");var lmr=pl+";"+pm+";"+pr;for(i=0;i<bxs.length;i++){if(bxs[i].type=="checkbox" && bxs[i].getAttribute("inside")!=null){if(lmr.indexOf(bxs[i].getAttribute("inside"))>-1){bxs[i].checked=true;}else{if(gv.length==2){if(ltxt.indexOf(bxs[i].getAttribute("inside"))>-1){dl+="<div ty='module' style='display:none;margin-top:5px;"+Lwidth+"' id='"+bxs[i].getAttribute("inside")+"' sy='LeftBlock'>";dl+="<div ty='bloc' class='bloc_l' style='"+Lwidth+"'>";dl+="<div style='"+Lwidth+"' class='BolockdivBoder' cusAtr='Block' cusVl='"+bxs[i].getAttribute("inside")+"'></div>";dl+="</div>";dl+="</div>";}if(rtxt.indexOf(bxs[i].getAttribute("inside"))>-1){dr+="<div ty='module' style='display:none;margin-top:5px;"+Rwidth+"' id='"+bxs[i].getAttribute("inside")+"' sy='RightBlock'>";dr+="<div ty='bloc' class='bloc_l' style='"+Rwidth+"'>";dr+="<div style='"+Rwidth+"' class='BolockdivBoder' cusAtr='Block' cusVl='"+bxs[i].getAttribute("inside")+"'></div>";dr+="</div>";dr+="</div>";}}if(gv.length==3){if(ltxt.indexOf(bxs[i].getAttribute("inside"))>-1){dl+="<div ty='module' style='display:none;margin-top:5px;"+Lwidth+"' id='"+bxs[i].getAttribute("inside")+"' sy='LeftBlock|RightBlock'>";dl+="<div ty='bloc' class='bloc_l' style='"+Lwidth+"'>";dl+="<div style='"+Lwidth+"' class='BolockdivBoder' cusAtr='Block' cusVl='"+bxs[i].getAttribute("inside")+"'></div>";dl+="</div>";dl+="</div>";}if(mtxt.indexOf(bxs[i].getAttribute("inside"))>-1){dm+="<div ty='module' style='display:none;margin-top:5px;"+Mwidth+"' id='"+bxs[i].getAttribute("inside")+"' sy='MiddleBlock'>";dm+="<div ty='bloc' class='bloc_l' style='"+Mwidth+"'>";dm+="<div style='"+Mwidth+"' class='BolockdivBoder' cusAtr='Block' cusVl='"+bxs[i].getAttribute("inside")+"'></div>";dm+="</div>";dm+="</div>";}if(rtxt.indexOf(bxs[i].getAttribute("inside"))>-1){dr+="<div ty='module' style='display:none;margin-top:5px;"+Rwidth+"' id='"+bxs[i].getAttribute("inside")+"' sy='LeftBlock|RightBlock'>";dr+="<div ty='bloc' class='bloc_l' style='"+Rwidth+"'>";dr+="<div style='"+Rwidth+"' class='BolockdivBoder' cusAtr='Block' cusVl='"+bxs[i].getAttribute("inside")+"'></div>";dr+="</div>";dr+="</div>";}}}}}lmr=lmr.split(";");var l="",m="",r="";if(gv.length==2){for(i=0;i<lmr.length;i++){if(ltxt.indexOf(lmr[i])>-1 && lmr[i]!=""){l+="<div ty='module' style='margin-top:5px;"+Lwidth+"' id='"+lmr[i]+"' sy='LeftBlock'>";l+="<div ty='bloc' class='bloc_l' style='"+Lwidth+"'>";l+="<div style='"+Lwidth+"' class='BolockdivBoder' cusAtr='Block' cusVl='"+lmr[i]+"'></div>";l+="</div>";l+="</div>";}if(rtxt.indexOf(lmr[i])>-1 && lmr[i]!=""){r+="<div ty='module' style='margin-top:5px;"+Rwidth+"' id='"+lmr[i]+"' sy='RightBlock'>";r+="<div ty='bloc' class='bloc_l' style='"+Rwidth+"'>";r+="<div style='"+Rwidth+"' class='BolockdivBoder' cusAtr='Block' cusVl='"+lmr[i]+"'></div>";r+="</div>";r+="</div>";}}l+=dl;r+=dr;$("LeftBlock").getElementsByTagName("div")[0].innerHTML=l;$("RightBlock").getElementsByTagName("div")[0].innerHTML=r;}if(gv.length==3){if(window.parent.document.getElementById("middle")){ltxt=pl;mtxt=pm;rtxt=pr;}for(i=0;i<lmr.length;i++){if(ltxt.indexOf(lmr[i])>-1 && lmr[i]!=""){l+="<div ty='module' style='margin-top:5px;"+Lwidth+"' id='"+lmr[i]+"' sy='LeftBlock|RightBlock'>";l+="<div ty='bloc' class='bloc_l' style='"+Lwidth+"'>";l+="<div style='"+Lwidth+"' class='BolockdivBoder' cusAtr='Block' cusVl='"+lmr[i]+"'></div>";l+="</div>";l+="</div>";}if(mtxt.indexOf(lmr[i])>-1 && lmr[i]!=""){m+="<div ty='module' style='margin-top:5px;"+Mwidth+"' id='"+lmr[i]+"' sy='MiddleBlock'>";m+="<div ty='bloc' class='bloc_l' style='"+Mwidth+"'>";m+="<div style='"+Mwidth+"' class='BolockdivBoder' cusAtr='Block' cusVl='"+lmr[i]+"'></div>";m+="</div>";m+="</div>";}if(rtxt.indexOf(lmr[i])>-1 && lmr[i]!=""){r+="<div ty='module' style='margin-top:5px;"+Rwidth+"' id='"+lmr[i]+"' sy='LeftBlock|RightBlock'>";r+="<div ty='bloc' class='bloc_l' style='"+Rwidth+"'>";r+="<div style='"+Rwidth+"' class='BolockdivBoder' cusAtr='Block' cusVl='"+lmr[i]+"'></div>";r+="</div>";r+="</div>";}}l+=dl;m+=dm;r+=dr;$("LeftBlock").getElementsByTagName("div")[0].innerHTML=l;$("MiddleBlock").getElementsByTagName("div")[0].innerHTML=m;$("RightBlock").getElementsByTagName("div")[0].innerHTML=r;}},reBlock:function(){var oDivs=$t("div"),bks,divAtr="";var Mds=$("InitModels").childNodes;var initMns="";for(i=0;i<oDivs.length;i++){divAtr=oDivs[i].getAttribute("cusAtr");if(divAtr=="Block"){if(oDivs[i].getAttribute("cusVl")!=""){initMns+=oDivs[i].getAttribute("cusVl");bks=oDivs[i].getAttribute("cusVl").split(";");for(j=0;j<bks.length;j++){for(x=0;x<Mds.length;x++){if(Mds[x].nodeType==1 && Mds[x].getAttribute("Model")==bks[j]){oDivs[i].innerHTML+=Mds[x].innerHTML;}}}oDivs[i].removeAttribute("cusAtr");}}}for(i=0;i<Mds.length;i++){if(Mds[i].nodeType==1 && initMns.indexOf(Mds[i].getAttribute("Model"))>-1){Mds[i].innerHTML="";}}},
    DragsDiv: function () { function getPosition(e) { var left = 0; var top = 0; while (e != null) { left += e.offsetLeft; top += e.offsetTop; e = e.offsetParent; } return { x: left, y: top }; } function eventManager() { var m_events = {}; this.attachEvent = function (handleName, handleFunc) { m_events[handleName] = handleFunc; }; this.detachEvent = function (handleName) { m_events[handleName] = null; }; this.fire = function () { for (var handleName in m_events) { if (m_events[handleName]) { m_events[handleName].apply(this, arguments); } } }; } function Animate(startPos, endPos, steps, timeval, obj, endFunc) { var m_steps = steps || 0; var m_done; var m_timeval = timeval || 0; var m_startPos = startPos || { x: 0, y: 0 }; var m_endPos = endPos || { x: 0, y: 0 }; var m_step = { x: 0, y: 0 }; var m_timer = null; var m_obj = obj || null; var m_this = this; var m_endFunc = endFunc || null; this.doing = false; this.init = function (startPos, endPos, steps, timeval, obj, endFunc) { m_steps = steps || 0; m_timeval = timeval || 0; m_startPos = startPos || { x: 0, y: 0 }; m_endPos = endPos || { x: 0, y: 0 }; m_timer = null; m_obj = obj || null; m_endFunc = endFunc || null; }; function going() { if (!m_timer) return; m_done++; if (m_done < m_steps) { m_obj.style.left = parseInt(m_startPos.x + m_done * m_step.x) + "px"; m_obj.style.top = parseInt(m_startPos.y + m_done * m_step.y) + "px"; } else { clearInterval(m_timer); m_this.doing = false; if (m_endFunc) { m_endFunc(); } } } this.start = function () { if (m_obj && m_obj.style) { m_obj.style.position = "absolute"; } m_step.x = (m_endPos.x - m_startPos.x) / m_steps; m_step.y = (m_endPos.y - m_startPos.y) / m_steps; m_done = 0; this.doing = true; m_timer = setInterval(going, m_timeval); }; } var dragdrop = function () { var dropList = []; var dragOffset = { x: 0, y: 0 }; var dragDropping = null; var dragObject = null; var dragInsert = null; var dragHelper = null; var dragAnimate = new Animate(); var Curcolumn = null; function getdragOffsetset(target, ev) { ev = ev || window.event; var docPos = getPosition(target); var mousePos = { x: ev.clientX + document.documentElement.scrollLeft + document.body.scrollLeft, y: ev.clientY + document.documentElement.scrollTop + document.body.scrollTop }; return { x: mousePos.x - docPos.x, y: mousePos.y - docPos.y }; } function makeDraggable(item) { if (!item) return; item.onmousedown = function (ev) { if (dragAnimate.doing) return; var thisP = this.parentNode; var objPos = getPosition(this); dragObject = dragHelper; dragObject.style.position = "absolute"; dragObject.style.top = objPos.y + "px"; dragObject.style.left = objPos.x + "px"; dragObject.innerHTML = thisP.innerHTML; dragObject.style.display = "block"; dragOffset = getdragOffsetset(this, ev); dragDropping = thisP; Curcolumn = thisP.getAttribute("sy"); return false; }; } function makeDropList(item) { dropList.push(item); } function dropIt(dropArea, mousePos) { var chd; for (var i = 0; i < dropArea.childNodes.length; i++) { chd = dropArea.childNodes[i]; if (chd.nodeType == 1 || chd.nodeType == "1") { if (!chd || !(chd.getAttribute("ty")) || chd.getAttribute("ty").indexOf('module') == -1) { continue; } var chdPos = getPosition(chd); var linePos = chdPos.y + chd.offsetHeight / 2; if (linePos > mousePos.y) { if (chd != dragInsert && Curcolumn.indexOf(dropArea.parentNode.id) > -1) { dropArea.insertBefore(dragDropping, chd); dragInsert = chd; } return; } } } if (dragInsert != dropArea && Curcolumn.indexOf(dropArea.parentNode.id) > -1) { dropArea.insertBefore(dragDropping, null); dragInsert = dropArea; } } function testDrop(mousePos) { for (var i = 0; i < dropList.length; i++) { var dropArea = dropList[i]; var pos = getPosition(dropArea); if ((mousePos.x > pos.x) && (mousePos.x < pos.x + dropArea.offsetWidth)) { dropIt(dropArea, mousePos); return; } } } this.init = function (dragName, dropName) { var divs = $("ShowBlockTD").getElementsByTagName("div"); for (var i = 0; i < divs.length; i++) { if (divs[i].getAttribute("ty") == dragName) { makeDraggable(divs[i]); } if (divs[i].getAttribute("ty") == dropName) { makeDropList(divs[i]); } } dragHelper = document.createElement('DIV'); dragHelper.style.cssText = 'position:absolute;display:none;'; $("ShowBlockTD").appendChild(dragHelper); }; this.mouseMove = function (ev) { if (dragAnimate.doing) return; ev = ev || window.event; if (dragObject) { var mousePos = { x: ev.clientX + document.documentElement.scrollLeft + document.body.scrollLeft, y: ev.clientY + document.documentElement.scrollTop + document.body.scrollTop }; dragObject.style.position = "absolute"; dragObject.style.top = (mousePos.y - dragOffset.y) + "px"; dragObject.style.left = (mousePos.x - dragOffset.x) + "px"; testDrop(mousePos); } return false; }; function startAnimate() { function endAnimate() { dragObject.innerHTML = ""; dragObject.style.display = "none"; dragObject = null; } var endPos = getPosition(dragDropping); var startPos = {}; startPos.x = parseInt(dragObject.style.left); startPos.y = parseInt(dragObject.style.top); if (navigator.userAgent.indexOf("MSIE 8.0") > 0) { dragAnimate.init(startPos, endPos, 5, 1, dragObject, endAnimate); } else { dragAnimate.init(startPos, endPos, 20, 3, dragObject, endAnimate); } dragAnimate.start(); } this.mouseUp = function (ev) { if (dragAnimate.doing) return; if (dragObject) { startAnimate(); } return false; }; }; var dragIt = new dragdrop(); var onMouseMv = new eventManager(); var onMouseU = new eventManager(); onMouseMv.attachEvent("mouseMove", dragIt.mouseMove); onMouseU.attachEvent("mouseUp", dragIt.mouseUp); document.onmousemove = onMouseMv.fire; document.onmouseup = onMouseU.fire; HQCM.ManageBlock.intManageDiv(); dragIt.init("bloc", "column"); HQCM.ManageBlock.CheckBoxEvent("boxlists"); HQCM.ManageBlock.reBlock(); } 
};


