mirror of https://github.com/sipwise/jitsi.git
parent
5c2d167d2f
commit
cbdc5034a8
@ -1,12 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"
|
|
||||||
xmlns:moz="http://www.mozilla.org/2006/browser/search/">
|
|
||||||
<ShortName>Java.Net Generic IssueTracker</ShortName>
|
|
||||||
<Description>Searching for an Issue Based on ID from Issue Tracker</Description>
|
|
||||||
<Image height="16" width="16" type="image/x-icon">http://www.java.net/favicon.ico</Image>
|
|
||||||
<InputEncoding>UTF-8</InputEncoding>
|
|
||||||
<Url type="text/html" method="GET" template="http://wiki.glassfish.java.net/javanetit/bugs">
|
|
||||||
<Param name="search" value="{searchTerms}"/>
|
|
||||||
</Url>
|
|
||||||
</OpenSearchDescription>
|
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 76 B |
|
Before Width: | Height: | Size: 76 B |
|
Before Width: | Height: | Size: 54 B |
|
Before Width: | Height: | Size: 79 B |
|
Before Width: | Height: | Size: 340 B |
@ -1,310 +0,0 @@
|
|||||||
/* Get rid of much of the java.net HTML structures */
|
|
||||||
#toptabs, #breadcrumbs, #searchbox, #helptext, #apphead, .pagecomponent .axial { display:none; }
|
|
||||||
.topbar { border: none; }
|
|
||||||
/* Kill logo */
|
|
||||||
#banner TABLE IMG { display: none; }
|
|
||||||
/* some boxes inside the floated topline has white background which interfers with the navbar */
|
|
||||||
#banner, #banner TD { background-color: transparent; }
|
|
||||||
/* Move the login bar to right and dock the left bar to top */
|
|
||||||
/* DIV.topline { float: right; } */
|
|
||||||
#banner {
|
|
||||||
padding-top: 0px;
|
|
||||||
}
|
|
||||||
.topline {
|
|
||||||
border-top: none !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* logo layout */
|
|
||||||
#logo-box {
|
|
||||||
/*clear: right;*/
|
|
||||||
}
|
|
||||||
#logo-box IMG {
|
|
||||||
vertical-align: middle;
|
|
||||||
margin-left: 1em;
|
|
||||||
margin-right: 1em;
|
|
||||||
}
|
|
||||||
#logo-box {
|
|
||||||
font-size:2em;
|
|
||||||
color: #707277;
|
|
||||||
}
|
|
||||||
#logo-box A:link, #logo-box A:visited {
|
|
||||||
text-decoration: none !important;
|
|
||||||
color: #E76F00 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* login box */
|
|
||||||
#loginbox {
|
|
||||||
font-size: inherit;
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
#loginbox A:link, #loginbox A:visited {
|
|
||||||
color: black !important;
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* General regions styling */
|
|
||||||
#regions {
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
list-style: none;
|
|
||||||
}
|
|
||||||
#regions LI {
|
|
||||||
float: right;
|
|
||||||
text-align: center;
|
|
||||||
position: relative;
|
|
||||||
background-color: #ED9B4F;
|
|
||||||
}
|
|
||||||
#regions LI#regions-leadin {
|
|
||||||
background-image: url('https://sip-communicator.dev.java.net/regions-gradation.png');
|
|
||||||
background-color: transparent;
|
|
||||||
width: 100px;
|
|
||||||
float: right;
|
|
||||||
}
|
|
||||||
#regions #current-region {
|
|
||||||
background-color: #E76F00;
|
|
||||||
}
|
|
||||||
#regions #current-region LI {
|
|
||||||
background-color: #E76F00;
|
|
||||||
}
|
|
||||||
#regions-box #regions #current-region A {
|
|
||||||
color: white !important;
|
|
||||||
}
|
|
||||||
#regions-box #regions LI A {
|
|
||||||
text-decoration: none !important;
|
|
||||||
color: white !important;
|
|
||||||
display: block;
|
|
||||||
padding: 0.5em;
|
|
||||||
width: 8em;
|
|
||||||
font-size: 1.2em;
|
|
||||||
}
|
|
||||||
/* #regions-box #regions LI A:hover {
|
|
||||||
color: #E76F00 !important;
|
|
||||||
}*/
|
|
||||||
#regions-box #regions LI:hover {/* lots of ID axis to get high priority */
|
|
||||||
background-color: #E76F00; /* current selection should always get the same color, even if it's in the current region */
|
|
||||||
}
|
|
||||||
#regions-box #regions #current-region LI A:hover {
|
|
||||||
color: white !important;
|
|
||||||
background-color: #ED9B4F;
|
|
||||||
}
|
|
||||||
#regions-box #regions LI#current-region:hover {/* lots of ID axis to get high priority */
|
|
||||||
background-color: #E76F00; /* ... except when it's the current region itself */
|
|
||||||
}
|
|
||||||
#banner TABLE { /* to move the login bar beneath the regions menu */
|
|
||||||
clear: right;
|
|
||||||
padding-top: 0.5em;
|
|
||||||
}
|
|
||||||
#regions LI UL {
|
|
||||||
display: none;
|
|
||||||
position: absolute;
|
|
||||||
z-index: 999;
|
|
||||||
list-style: none;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
top: 1em;
|
|
||||||
right: 0;
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
#regions LI > UL {
|
|
||||||
top: auto;
|
|
||||||
left: auto;
|
|
||||||
}
|
|
||||||
#regions LI:hover UL, #regions LI.over UL {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
#regions LI LI {
|
|
||||||
display: block;
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* General zone styling. See http://alistapart.com/articles/dropdowns */
|
|
||||||
#projecttools {
|
|
||||||
background-color: #5382A1;
|
|
||||||
margin-top: 2em; /* create some space between the GF logo and menu bar */
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
reset the padding for LI, and use padding for A instead, so that
|
|
||||||
the selection bar gets all the width it can take.
|
|
||||||
*/
|
|
||||||
#projecttools #menubar {/* lots of ID axis to get high priority */
|
|
||||||
padding: 0;
|
|
||||||
/* shift the menu bar to the right a bit */
|
|
||||||
position: relative;
|
|
||||||
left: 1em;
|
|
||||||
border: 1px solid #999999;
|
|
||||||
border-left: none;
|
|
||||||
}
|
|
||||||
#menubar LI {
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
#menubar.depth1 { margin-left: 1em; } /* depth support */
|
|
||||||
#menubar.depth2 { margin-left: 2em; }
|
|
||||||
#menubar.depth3 { margin-left: 4em; }
|
|
||||||
#projecttools DT.depth1 { margin-left: 1em; }
|
|
||||||
#projecttools DT.depth2 { margin-left: 2em; }
|
|
||||||
#projecttools DT.depth3 { margin-left: 3em; }
|
|
||||||
#menubar UL LI A {
|
|
||||||
padding-left: 1em;
|
|
||||||
padding-top: 0.2em;
|
|
||||||
padding-bottom: 0.2em;
|
|
||||||
}
|
|
||||||
#menubar UL LI UL LI A {
|
|
||||||
padding-left: 2em;
|
|
||||||
}
|
|
||||||
#menubar UL LI UL LI UL LI A {
|
|
||||||
padding-left: 3em;
|
|
||||||
}
|
|
||||||
#menubar UL LI UL LI UL LI UL LI A {
|
|
||||||
padding-left: 4em;
|
|
||||||
}
|
|
||||||
#menubar UL LI UL LI UL LI UL LI UL LI A {
|
|
||||||
padding-left: 5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
#topmodule {/* align the issue bar in the issue tracker to the left menu. */
|
|
||||||
margin-top: 2em;
|
|
||||||
}
|
|
||||||
#projecttools #current-zone {
|
|
||||||
background-color: #5382A1;
|
|
||||||
}
|
|
||||||
#projecttools DT {
|
|
||||||
padding: 0;
|
|
||||||
font-weight: bold;
|
|
||||||
background-color: #A3B8CB;
|
|
||||||
}
|
|
||||||
#navcol #projecttools DT A {
|
|
||||||
color: white !important;
|
|
||||||
display: block;
|
|
||||||
padding: 0.3em;
|
|
||||||
}
|
|
||||||
#navcol #projecttools DT A:hover {/* zone hover */
|
|
||||||
background-color: #5382A1;
|
|
||||||
color: white !important;
|
|
||||||
}
|
|
||||||
#projecttools DT#current-zone A {
|
|
||||||
color: white !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.navgroup LI LI {
|
|
||||||
/* prevent nested lists to use bigger fonts, due to .navgroup LI {font-size:1.1em;} */
|
|
||||||
font-size: inherit;
|
|
||||||
}
|
|
||||||
|
|
||||||
#projecttools #menubar A {/* use lots of ID selectors to have higher precedence*/
|
|
||||||
display: block;
|
|
||||||
text-decoration: none;
|
|
||||||
margin-top: 0.1em;
|
|
||||||
margin-bottom: 0.1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
#menubar UL {
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
#menubar LI.active {
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
#menubar LI {
|
|
||||||
margin: 0;
|
|
||||||
font-weight: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
#menubar LI.inactive > UL {/ * hide inactive ULs ... * /
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
#menubar LI.inactive.parent > A:after {
|
|
||||||
content: "...";
|
|
||||||
}
|
|
||||||
#menubar LI.inactive.expanded > UL {/ * ... except when it's expanded by a mouse click * /
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
#menubar LI.inactive.expanded.parent > A:after {
|
|
||||||
content: "";
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
#menubar LI.inactive > UL {/* hide inactive ULs ... */
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
#menubar LI.inactive.parent > A:before {
|
|
||||||
content: url(https://sip-communicator.dev.java.net/plus.gif);
|
|
||||||
left: -9px;
|
|
||||||
margin-left: -9px;
|
|
||||||
}
|
|
||||||
#menubar LI.inactive.parent > A:hover:before {
|
|
||||||
content: url(https://sip-communicator.dev.java.net/plus-white.gif);
|
|
||||||
}
|
|
||||||
#menubar LI.inactive.expanded > UL {/* ... except when it's expanded by a mouse click */
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
#menubar LI.inactive.expanded.parent > A:before {
|
|
||||||
content: url(https://sip-communicator.dev.java.net/minus.gif);
|
|
||||||
}
|
|
||||||
#menubar LI.inactive.expanded.parent > A:hover:before {
|
|
||||||
content: url(https://sip-communicator.dev.java.net/minus-white.gif);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
#projecttools #menubar LI A:hover {/* use lots of ID selectors to have higher precedence*/
|
|
||||||
background-color: #5382A1;
|
|
||||||
color: white !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* "hosted on java.net" line */
|
|
||||||
#hosted-on-javanet {
|
|
||||||
margin-top: 2em;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* main content area */
|
|
||||||
h1 {
|
|
||||||
color: #E76F00;
|
|
||||||
font-size: 1.5em;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
.application h3, .app h3, h3 {
|
|
||||||
color: #E76F00;
|
|
||||||
font-size: 1.3em;
|
|
||||||
background-color: transparent;
|
|
||||||
|
|
||||||
}
|
|
||||||
.application h2, .app h2, h2 {
|
|
||||||
background-color: transparent;
|
|
||||||
font-size: 1.4em;
|
|
||||||
color: #E76F00;
|
|
||||||
}
|
|
||||||
.h2 h2, #longdescription h2 {/* override inst.css line 106*/
|
|
||||||
background-color: transparent;
|
|
||||||
color: #E76F00;
|
|
||||||
}
|
|
||||||
h4 {
|
|
||||||
margin-top: 0.3em;
|
|
||||||
margin-bottom: 0.3em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.a:hover td, .a:hover, #rightcol div.siteinfo .a:hover, .b:hover td, .b:hover, #rightcol div.siteinfo .b:hover, .hilight {
|
|
||||||
background-color: #FFA855;
|
|
||||||
color: transparent;
|
|
||||||
}
|
|
||||||
#footer P {/* hide java.net RSS icon */
|
|
||||||
visibility: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* gray box on the right hand side. */
|
|
||||||
.floatbox {
|
|
||||||
width: 230px;
|
|
||||||
|
|
||||||
background:rgb(238,238,238);
|
|
||||||
margin-top: 1em;
|
|
||||||
padding: 5px;
|
|
||||||
|
|
||||||
border: 1px solid rgb(170,170,170);
|
|
||||||
}
|
|
||||||
@ -1,425 +0,0 @@
|
|||||||
function makeProjectLink(name) {
|
|
||||||
return { title: name, href: "https://"+name.toLowerCase()+".dev.java.net/" };
|
|
||||||
}
|
|
||||||
|
|
||||||
var regions = [
|
|
||||||
{
|
|
||||||
title: "Main",
|
|
||||||
href: "http://sip-communicator.org",
|
|
||||||
match: [
|
|
||||||
],
|
|
||||||
children: [
|
|
||||||
{ title: "Home", href: "http://sip-communicator.org" },
|
|
||||||
{ title: "News", href: "http://www.sip-communicator.org/index.php/Main/News" },
|
|
||||||
{ title: "Screenshots", href: "http://www.sip-communicator.org/index.php/Main/Screenshots" },
|
|
||||||
{ title: "Download", href: "http://www.sip-communicator.org/index.php/Main/Download" },
|
|
||||||
{ title: "About", href: "http://www.sip-communicator.org/index.php/Main/About" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Development",
|
|
||||||
href: "",
|
|
||||||
match: [
|
|
||||||
],
|
|
||||||
children: [
|
|
||||||
{ title: "Mailing Lists", href: "http://www.sip-communicator.org/index.php/Development/MailingLists" },
|
|
||||||
{ title: "Subversion (SVN)", href: "http://www.sip-communicator.org/index.php/Development/VersionControl" },
|
|
||||||
{ title: "Bugs and Issues", href: "http://www.sip-communicator.org/index.php/Development/BugsAndIssues" },
|
|
||||||
{ title: "Roadmap", href: "http://www.sip-communicator.org/index.php/Development/Roadmap" },
|
|
||||||
{ title: "Contributing", href: "http://www.sip-communicator.org/index.php/Development/GetInvolved" },
|
|
||||||
{ title: "Team", href: "http://www.sip-communicator.org/index.php/Development/TeamAndContributors" }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: "Documentation",
|
|
||||||
href: "",
|
|
||||||
match: [
|
|
||||||
],
|
|
||||||
children: [
|
|
||||||
{ title: "Users", href: "http://www.sip-communicator.org/index.php/Documentation/UserDocumentation" },
|
|
||||||
{ title: "Developers", href: "http://www.sip-communicator.org/index.php/Documentation/DeveloperDocumentation" },
|
|
||||||
{ title: "FAQ", href: "http://www.sip-communicator.org/index.php/Documentation/FAQ" }
|
|
||||||
]
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
|
|
||||||
// default values of <a href='...' match='...'> to simplify project_tools.html
|
|
||||||
var defaultMatchPatterns = {
|
|
||||||
"/servlets/ProjectNewsList": "/servlets/(ProjectNewsList|NewsItemView).*",
|
|
||||||
"/servlets/ProjectMemberList": "/servlets/Project(MemberList|MemberAdd|Invite).*",
|
|
||||||
"/servlets/ProjectMailingListList": "/servlets/(ProjectMailingList|Summarize|Search)List.*",
|
|
||||||
"/servlets/ProjectIssues": "/issues/.*",
|
|
||||||
"/issues/": "/issues/.*"
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function addLoadEvent(func) {
|
|
||||||
var oldonload = window.onload;
|
|
||||||
if (typeof window.onload != 'function') {
|
|
||||||
window.onload = func;
|
|
||||||
} else {
|
|
||||||
window.onload = function() {
|
|
||||||
if (oldonload) oldonload();
|
|
||||||
func();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function createRegions() {
|
|
||||||
var rdiv = document.getElementById("regions"); // On Wiki 'regions' div already exists.
|
|
||||||
|
|
||||||
var html=[];
|
|
||||||
if(rdiv==null)
|
|
||||||
html.push("<div align=right><ul id=regions>");
|
|
||||||
|
|
||||||
for( var i=regions.length-1; i>=0; i-- ) {
|
|
||||||
var r = regions[i];
|
|
||||||
|
|
||||||
// is this the current region?
|
|
||||||
var hit = false;
|
|
||||||
for( var j=0; j<r.match.length; j++ ) {
|
|
||||||
if(new String(window.location.href).match(new RegExp(r.match[j]))) {
|
|
||||||
hit = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(r.children) {
|
|
||||||
for( var j=0; j<r.children.length; j++ ) {
|
|
||||||
if(new String(window.location.href).indexOf(r.children[j].href)==0) {
|
|
||||||
hit = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(hit)
|
|
||||||
html.push("<li id=current-region><a href=");
|
|
||||||
else
|
|
||||||
html.push("<li><a href=");
|
|
||||||
html.push(r.href);
|
|
||||||
html.push(">");
|
|
||||||
html.push(r.title);
|
|
||||||
html.push("</a>");
|
|
||||||
if(r.children!=null && !document.all) {
|
|
||||||
html.push("<ul>");
|
|
||||||
for( var j=0; j<r.children.length; j++ ) {
|
|
||||||
var c = r.children[j];
|
|
||||||
html.push("<li><a href=");
|
|
||||||
html.push(c.href);
|
|
||||||
html.push(">");
|
|
||||||
html.push(c.title);
|
|
||||||
html.push("</a></li>");
|
|
||||||
}
|
|
||||||
html.push("</ul>");
|
|
||||||
}
|
|
||||||
html.push("</li>");
|
|
||||||
}
|
|
||||||
html.push("<li id=regions-leadin><a> </a></li>");
|
|
||||||
if(rdiv==null)
|
|
||||||
html.push("</ul></div>");
|
|
||||||
|
|
||||||
// inject HTML
|
|
||||||
if(rdiv==null) {
|
|
||||||
var box = document.createElement("div");
|
|
||||||
box.id = "regions-box";
|
|
||||||
var banner = document.getElementById("banner");
|
|
||||||
banner.insertBefore(box,banner.firstChild);
|
|
||||||
box.innerHTML = html.join('');
|
|
||||||
} else {
|
|
||||||
rdiv.innerHTML = html.join('');
|
|
||||||
}
|
|
||||||
|
|
||||||
// attach event handler, since IE can't handle :hover
|
|
||||||
/* this still doesn't seem to work with IE7...
|
|
||||||
if (document.all) {
|
|
||||||
var ul = document.getElementById("regions");
|
|
||||||
for (i=0; i<ul.childNodes.length; i++) {
|
|
||||||
var node = ul.childNodes[i];
|
|
||||||
if (node.nodeName=="LI") {
|
|
||||||
node.onmouseover=function() {
|
|
||||||
this.className+=" over";
|
|
||||||
}
|
|
||||||
node.onmouseout=function() {
|
|
||||||
this.className=this.className.replace(" over", "");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
}
|
|
||||||
|
|
||||||
// apply theme to Wiki
|
|
||||||
function wikiInit() {
|
|
||||||
createRegions();
|
|
||||||
}
|
|
||||||
|
|
||||||
// apply theme to java.net
|
|
||||||
function djnInit() {
|
|
||||||
createRegions();
|
|
||||||
|
|
||||||
// this is the parent group that should show up in the title bar
|
|
||||||
var foundGroup = null;
|
|
||||||
|
|
||||||
// create zones
|
|
||||||
(function() {
|
|
||||||
// find which zone we are in
|
|
||||||
var alreadyFound = false;
|
|
||||||
function findMatch(zones,group) {
|
|
||||||
var found = false;
|
|
||||||
for( var i=0; i<zones.length; i++ ) {
|
|
||||||
(function (z,group) {
|
|
||||||
var match=false;
|
|
||||||
|
|
||||||
// look for a match in the children first
|
|
||||||
if(z.zones!=null)
|
|
||||||
match |= findMatch(z.zones, z.group?z:group );
|
|
||||||
|
|
||||||
// otherwise try to match with the parent
|
|
||||||
if(!alreadyFound) {
|
|
||||||
var matchFunction = z.match;
|
|
||||||
if(matchFunction==null)
|
|
||||||
matchFunction = function() { return window.location.href.indexOf(z.href)==0; }
|
|
||||||
if(matchFunction()) {
|
|
||||||
z.current = true;
|
|
||||||
alreadyFound = true;
|
|
||||||
foundGroup = group;
|
|
||||||
match = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
z.expanded = match;
|
|
||||||
found |= match;
|
|
||||||
})(zones[i],group);
|
|
||||||
}
|
|
||||||
return found;
|
|
||||||
}
|
|
||||||
findMatch(zones,null);
|
|
||||||
|
|
||||||
// create fragment to inject
|
|
||||||
var html = [];
|
|
||||||
var foundCurrent = false;
|
|
||||||
var currentDepth;
|
|
||||||
function createZones(zones,depth) {
|
|
||||||
for( var i=0; i<zones.length; i++ ) {
|
|
||||||
if(zones[i].current) {
|
|
||||||
html.push("<dt id=current-zone class='");
|
|
||||||
foundCurrent = true;
|
|
||||||
currentDepth = depth;
|
|
||||||
} else
|
|
||||||
if(!foundCurrent)
|
|
||||||
html.push("<dt class='before-current ");
|
|
||||||
else
|
|
||||||
html.push("<dt class='after-current ");
|
|
||||||
html.push("depth"+depth);
|
|
||||||
html.push("'><a href='");
|
|
||||||
html.push(zones[i].href);
|
|
||||||
html.push("'>");
|
|
||||||
html.push(zones[i].title);
|
|
||||||
html.push("</a></dt>");
|
|
||||||
if(zones[i].zones!=null && zones[i].expanded)
|
|
||||||
createZones(zones[i].zones,depth+1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
createZones(zones,0);
|
|
||||||
|
|
||||||
// detach the menubar so that it will remain intact when we overwrite project tools
|
|
||||||
var menubar = document.getElementById("menubar");
|
|
||||||
if(menubar==null) return; // huh?
|
|
||||||
menubar.className="depth"+currentDepth;
|
|
||||||
menubar.parentNode.removeChild(menubar);
|
|
||||||
|
|
||||||
// insert the zone list into the navigation bar
|
|
||||||
var projecttools = document.getElementById("projecttools");
|
|
||||||
projecttools.innerHTML = html.join('');
|
|
||||||
|
|
||||||
// insert the menubar
|
|
||||||
var curZone = document.getElementById("current-zone");
|
|
||||||
if(curZone!=null)
|
|
||||||
projecttools.insertBefore(menubar, curZone.nextSibling);
|
|
||||||
else
|
|
||||||
projecttools.appendChild(menubar); // TODO: will come back to this later
|
|
||||||
|
|
||||||
// kill all the boxes in front of the projecttools
|
|
||||||
while(projecttools.previousSibling!=null) {
|
|
||||||
projecttools.parentNode.removeChild(projecttools.previousSibling);
|
|
||||||
}
|
|
||||||
})();
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// update menubar by using the current location
|
|
||||||
(function() {
|
|
||||||
// adds a CSS class to the element
|
|
||||||
function addClass(e,clazz) {
|
|
||||||
if(e.className!=null)
|
|
||||||
e.className += ' '+clazz;
|
|
||||||
else
|
|
||||||
e.className = clazz;
|
|
||||||
}
|
|
||||||
|
|
||||||
// check if element has a CSS class
|
|
||||||
function hasClass(e,clazz) {
|
|
||||||
if(e.className==null)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
var list = e.className.split(/\s+/);
|
|
||||||
for( var i=0; i<list.length; i++ ) {
|
|
||||||
if(list[i]==clazz) return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// remove a CSS class
|
|
||||||
function removeClass(e,clazz) {
|
|
||||||
if(e.className==null)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
var list = e.className.split(/\s+/);
|
|
||||||
var r = [];
|
|
||||||
for( var i=0; i<list.length; i++ ) {
|
|
||||||
if(list[i]!=clazz) r.push(list[i]);
|
|
||||||
}
|
|
||||||
e.className = r.join(' ');
|
|
||||||
}
|
|
||||||
|
|
||||||
var menubar = document.getElementById("menubar");
|
|
||||||
if(menubar==null) return; // huh?
|
|
||||||
|
|
||||||
// LIs that have child ULs is 'parent'
|
|
||||||
var items = menubar.getElementsByTagName("UL");
|
|
||||||
for (var i=0; i<items.length; i++ ) {
|
|
||||||
var ul = items[i];
|
|
||||||
addClass(ul.parentNode,"parent");
|
|
||||||
}
|
|
||||||
|
|
||||||
// LIs/ULs that are in the path of current page is 'active'
|
|
||||||
var loc = window.location.href;
|
|
||||||
function matches(a) {
|
|
||||||
if(a.href==loc) return true; // location match
|
|
||||||
var m = a.getAttribute("match");
|
|
||||||
if(m==null)
|
|
||||||
m = defaultMatchPatterns[a.getAttribute("href")];
|
|
||||||
|
|
||||||
return m!=null && loc.match(new RegExp(m));
|
|
||||||
}
|
|
||||||
var items = menubar.getElementsByTagName("a");
|
|
||||||
for( var i=0; i<items.length; i++ ) {
|
|
||||||
var a = items[i];
|
|
||||||
if(matches(a)) {
|
|
||||||
// found match. mark ancestor nodes as active
|
|
||||||
var e = a.parentNode;
|
|
||||||
while(e!=menubar) {
|
|
||||||
addClass(e,"active");
|
|
||||||
e=e.parentNode;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// install expand/collapse handler for targetless intermediate A tags
|
|
||||||
var items = menubar.getElementsByTagName("a");
|
|
||||||
for( var i=0; i<items.length; i++ ) {
|
|
||||||
var a = items[i];
|
|
||||||
var href = a.getAttribute("href"); // IE returns fully absolutized href, so check for things that end with '#'
|
|
||||||
if(href!=null && href!="" && href.charAt(href.length-1)=='#') {// be defensive
|
|
||||||
a.onclick = function() {
|
|
||||||
var li = this.parentNode;
|
|
||||||
if(hasClass(li,"expanded")) {
|
|
||||||
removeClass(li,"expanded");
|
|
||||||
} else {
|
|
||||||
addClass(li,"expanded");
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
};
|
|
||||||
addClass(this.parent,"collapsed");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// all non-'active' LIs are 'inactive'
|
|
||||||
// all non-'parent' LIs are 'leaf'
|
|
||||||
var items = menubar.getElementsByTagName("LI");
|
|
||||||
for( var i=0; i<items.length; i++ ) {
|
|
||||||
var li = items[i];
|
|
||||||
if(!hasClass(li,"active"))
|
|
||||||
addClass(li,"inactive");
|
|
||||||
if(!hasClass(li,"parent"))
|
|
||||||
addClass(li,"leaf");
|
|
||||||
}
|
|
||||||
})();
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// update the top-left corner of the page from the current project information
|
|
||||||
(function() {
|
|
||||||
var box = document.createElement("div");
|
|
||||||
box.id = "logo-box";
|
|
||||||
|
|
||||||
var html = [];
|
|
||||||
var hadToken = false;
|
|
||||||
|
|
||||||
function addLogo() {
|
|
||||||
if(info.logo!=null && info.logo!="") {
|
|
||||||
html.push("<a href=/><img src="+info.logo+"></a>");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(info.noGF) {
|
|
||||||
addLogo();
|
|
||||||
}
|
|
||||||
|
|
||||||
function append(url,title) {
|
|
||||||
if(title==null) return;
|
|
||||||
if(hadToken) html.push(" » ");
|
|
||||||
hadToken=true;
|
|
||||||
html.push("<a href="+url+">");
|
|
||||||
html.push(title);
|
|
||||||
html.push("</a>");
|
|
||||||
}
|
|
||||||
|
|
||||||
if(foundGroup!=null)
|
|
||||||
append(foundGroup.href, foundGroup.title);
|
|
||||||
append("/", info.title);
|
|
||||||
|
|
||||||
if(!info.noGF)
|
|
||||||
addLogo();
|
|
||||||
|
|
||||||
box.innerHTML = html.join('');
|
|
||||||
|
|
||||||
// insert after the login bar
|
|
||||||
var bar = document.getElementById("regions-box");
|
|
||||||
bar.parentNode.appendChild(box);
|
|
||||||
})();
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// put the "hosted on java.net link"
|
|
||||||
(function() {
|
|
||||||
var box = document.createElement("div");
|
|
||||||
var pt = document.getElementById("projecttools");
|
|
||||||
if(pt==null) return; // huh?
|
|
||||||
pt.parentNode.insertBefore(box,pt.nextSibling);
|
|
||||||
|
|
||||||
box.id = "hosted-on-javanet";
|
|
||||||
box.innerHTML = "A <a href='https://www.java.net/'>java.net</a> project";
|
|
||||||
})();
|
|
||||||
|
|
||||||
// re-display everything
|
|
||||||
document.body.style.display="block";
|
|
||||||
document.getElementById("banner").style.display="block";
|
|
||||||
}
|
|
||||||
|
|
||||||
// add referene to theme.css
|
|
||||||
document.write('<link rel="stylesheet" type="text/css" href="https://sip-communicator.dev.java.net/theme.css"/>');
|
|
||||||
addLoadEvent(djnInit);
|
|
||||||
|
|
||||||
// add the open search link.
|
|
||||||
document.write('<link rel="search" type="application/opensearchdescription+xml" href="https://sip-communicator.dev.java.net/it.xml" title="Java.net issue tracker"/>');
|
|
||||||
@ -1,6 +0,0 @@
|
|||||||
var zones = [
|
|
||||||
{
|
|
||||||
title: "sip-communicator.org",
|
|
||||||
href: "https://sip-communicator.org/"
|
|
||||||
}
|
|
||||||
];
|
|
||||||
Loading…
Reference in new issue