jQuery(function(A){AJS.bpagetree={MAX_DEPTH:999,MODE_EXPAND:true,MODE_COLLAPSE:false,treeRequests:{},targetPages:{},getContextPath:function(){return contextPath
},toggleChild:function(G,F,B,E){if(F==undefined||F==null){F=!this.getMode(G)
}if(B==undefined||B==null){B=0
}if(!this.isSimilarState(G,F)){var D=A("#bchildren"+G);
if(this.hasChild(D)){var C=A("#bplusminus"+G);
if(F==this.MODE_EXPAND){C.removeClass("bicon-plus");
C.addClass("bicon-minus")
}else{C.removeClass("bicon-minus");
C.addClass("bicon-plus")
}if(F==this.MODE_EXPAND){D.slideDown(300)
}else{D.slideUp(300)
}if(E){this.finishLoadingMessage(G)
}}else{this.loadChildren(G,new Array(),B,"",E)
}}if(E){this.finishLoadingMessage(G)
}},hasChild:function(B){return B.children("ul[id]").length>0
},getMode:function(C){var B=A("#bplusminus"+C);
return(B.length>0)?B.hasClass("bicon-minus"):this.MODE_COLLAPSE
},isSimilarState:function(C,B){return this.getMode(C)==B
},expandAll:function(B){this.doExpandCollapseAll(B,this.MODE_EXPAND)
},collapseAll:function(B){this.doExpandCollapseAll(B,this.MODE_COLLAPSE)
},doExpandCollapseAll:function(E,C){this.startLoadingMessage(E);
var D=A("#"+E);
var B=D.find("div.plugin_bpagetree_children_container");
B.each(function(F){var G=AJS.bpagetree.getIdFromElementName(this.id);
AJS.bpagetree.toggleChild(G,C,AJS.bpagetree.MAX_DEPTH,F==B.length-1)
})
},getIdFromElementName:function(B){if(!B||B==undefined){return null
}if(B.indexOf("bplusminus")!=-1){return B.substring("bplusminus".length)
}if(B.indexOf("bchildren")!=-1){return B.substring("bchildren".length)
}return null
},getTreeIdFromElementId:function(B){if(!B||B==undefined){return null
}return this.parseId(B)[1]
},parseId:function(B){if(!B||B==undefined){return null
}return B.split("-")
},startLoadingMessage:function(C){var B=this.getTreeIdFromElementId(C);
A("div.plugin_bpagetree").each(function(D){if(D==B){A(this).find("span.plugin_bpagetree_status").removeClass("hidden");
A(this).find("div.plugin_bpagetree_expandcollapse").addClass("hidden")
}})
},finishLoadingMessage:function(C){var B=this.getTreeIdFromElementId(C);
A("div.plugin_bpagetree").each(function(D){if(D==B){A(this).find("span.plugin_bpagetree_status").addClass("hidden");
A(this).find("div.plugin_bpagetree_expandcollapse").removeClass("hidden")
}})
},generateRequestString:function(H,C,E,D,G,B){var F=this.treeRequests[H];
if(C=="Orphan"){F+="&includeRoot=true&hasRoot=false&spaceKey="+G
}else{F+="&hasRoot=true&pageId="+C
}F+="&includeRoot="+B+"&treeId="+H+"&startDepth="+D;
A.each(E,function(){F+="&ancestors="+this
});
F=(AJS.params.serverUrl||"")+F;
return F
},getbPageTreeDiv:function(C){var B=C;
var D=null;
A("div.plugin_bpagetree").each(function(E){if(E==B){D=A(this)
}});
return D
},getbPageTreeParams:function(C){var B=C.children("fieldset");
var D=new Object();
if(B.length>0){B.children("input").each(function(){D[this.name]=this.value
})
}return D
},getbPageTreeAncestorIds:function(E){var C=E.children("fieldset");
var D=new Array();
if(C.length>0){var B=C.children("fieldset");
if(B.length>0){B.children("input").each(function(){D.push(this.value)
})
}}return D
},makePlusMinusButtonsClickable:function(B){B.find("a.plugin_bpagetree_childtoggle").each(function(){var C=A(this);
C.attr("href","#");
C.click(function(F){var D=C.parent().parent().children("div.plugin_bpagetree_children_container");
var E=D.attr("id");
var G=E.substring(8);
AJS.bpagetree.toggleChild(G);
return AJS.stopEvent(F)
})
})
},isChildrenHtml:function(B){var C=A(document.createElement("div"));
C.html(B);
return C.find("ul[id^='bchild_ul']").length
},loadChildren:function(K,C,P,N,F){var O=K;
var G=F;
var D=this.getContextPath();
var B=this.parseId(K);
var E=B[0];
var I=B[1];
var H=A("#bchildren"+K);
var M=this.getbPageTreeParams(this.getbPageTreeDiv(I));
var L=M.includeRoot;
var J=M.treePageId;
if(null==J||"undefined"==J||""==J){J=AJS.bpagetree.targetPages[parseInt(I)]
}H.html("<ul>"+M["i18n-bpagetree.loading"]+"</ul>");
A.ajax({type:"GET",url:this.generateRequestString(I,E,C,P,N,L),dataType:"text",success:function(Q){if(AJS.bpagetree.isChildrenHtml(Q)){H.html(Q);
if(H.children().length&&H.hasClass("hidden")){H.removeClass("hidden")
}AJS.bpagetree.makePlusMinusButtonsClickable(H);
A("#bplusminus"+O).addClass("bicon-minus");
A("#bplusminus"+O).removeClass("bicon-plus");
A("#bchildrenspan"+J+"-"+I).parent().addClass("currentpage");
if(G){AJS.bpagetree.finishLoadingMessage(O)
}AJS.bpagetree.hideEmptyChildrenContainers(H);
if(AJS.PageGadget&&AJS.PageGadget.contentsUpdated){AJS.PageGadget.contentsUpdated()
}}else{window.location=M.loginUrl
}},error:function(Q){if(Q.status=="403"){H.text(M["i18n-bpagetree.error.permission"])
}else{H.text(M["i18n-bpagetree.error.general"])
}}})
},hideEmptyChildrenContainers:function(B){A("div.plugin_bpagetree_children_container:empty",B).addClass("hidden")
},initbPageTree:function(G,B){var D=this.getbPageTreeParams(G);
var F=D.noRoot=="true";
var C=F?"Orphan-"+B:D.rootPageId+"-"+B;
this.treeRequests[B]=D.treeRequestId;
this.targetPages[B]=A("#pageId").attr("value");
G.children("fieldset").each(function(){var H=A(this);
H.children("input[treeId]").attr("value",B);
H.children("input[rootPage]").attr("value",C)
});
if(F){G.find("div.plugin_bpagetree_children").attr("id","bchildrenOrphan-"+B);
G.find("a.plugin_bpagetree_expandall").click(function(){AJS.bpagetree.expandAll("bchildrenOrphan-"+B);
return false
});
G.find("a.plugin_bpagetree_collapseall").click(function(){AJS.bpagetree.collapseAll("bchildrenOrphan-"+B);
return false
})
}else{G.find("div.plugin_bpagetree_children").attr("id","bchildren"+C);
G.find("a.plugin_bpagetree_expandall").click(function(){AJS.bpagetree.expandAll("bchildren"+C);
return false
});
G.find("a.plugin_bpagetree_collapseall").click(function(){AJS.bpagetree.collapseAll("bchildren"+C);
return false
})
}var E=this.getbPageTreeAncestorIds(G);
this.loadChildren(C,E,D.startDepth,D.spaceKey)
},initbPageTrees:function(){A("div.plugin_bpagetree").each(function(B){AJS.bpagetree.initbPageTree(A(this),B)
});
this.avoidBeingFocusedByBodyLoadFunction()
},avoidBeingFocusedByBodyLoadFunction:function(){var B=self.placeFocus;
if(B){self.placeFocus=function(){var C=A("form[name='bpagetreesearchform']");
C.attr("name","binlinecommentform");
B();
C.attr("name","bpagetreesearchform")
}
}}};
AJS.bpagetree.initbPageTrees()
});

