templates/html/show.tmpl: Add experimental tabbing for content
[deb/packages.git] / static / packages.js
index c33e06d73b8382afdd53c7c78eb1dcf662a429ed..1de28bcfa323becb315beea8c277489724ebb878 100644 (file)
@@ -23,3 +23,127 @@ function toggleDisplay(obj) {
        else
                obj.style.display = "none";
 }
+
+function hide_tab(id) {
+       var tab = document.getElementById(id);
+       if (tab) {
+               tab.style.display = "none";
+       }
+       var item = document.getElementById(id+"link");
+       if (item) {
+               item.style.fontWeight = "normal";
+       }
+}
+
+function show_tab(id) {
+       var tab = document.getElementById(id);
+       if (tab) {
+               tab.style.display = "";
+       }
+       var item = document.getElementById(id+"link");
+       if (item) {
+               item.style.fontWeight = "bold";
+       }
+       var item = document.getElementById("palllink");
+       if (item) {
+               item.style.fontWeight = "normal";
+       }
+}
+
+function init_tab_list(id) {
+       hide_tab("pdeps");
+       hide_tab("pdownload");
+       show_tab("pdesctab");
+       show_tab("pbinaries");
+
+       var tablist = document.getElementById(id);
+       if (tablist) {
+               var list = document.createElement("ul");
+               if (document.getElementById("pdesctab")) {
+                       var item = document.createElement("li");
+                       item.setAttribute("id","pdesctablink");
+                       var link = document.createElement("a");
+                       link.setAttribute("href","javascript:go_to_tab(\"pdesctab\")");
+                       var txt = document.createTextNode("[ Description ]");
+                       link.appendChild(txt);
+                       item.appendChild(link);
+                       list.appendChild(item);
+               }
+               if (document.getElementById("pbinaries")) {
+                       var item = document.createElement("li");
+                       item.setAttribute("id","pbinarieslink");
+                       var link = document.createElement("a");
+                       link.setAttribute("href","javascript:go_to_tab(\"pbinaries\")");
+                       var txt = document.createTextNode("[ Description ]");
+                       link.appendChild(txt);
+                       item.appendChild(link);
+                       list.appendChild(item);
+               }
+               if (document.getElementById("pdeps")) {
+                       var item = document.createElement("li");
+                       item.setAttribute("id","pdepslink");
+                       var link = document.createElement("a");
+                       link.setAttribute("href","javascript:go_to_tab(\"pdeps\")");
+                       var txt = document.createTextNode("[ Dependencies ]");
+                       link.appendChild(txt);
+                       item.appendChild(link);
+                       list.appendChild(item);
+               }
+               if (document.getElementById("pdownload")) {
+                       var item = document.createElement("li");
+                       item.setAttribute("id","pdownloadlink");
+                       var link = document.createElement("a");
+                       link.setAttribute("href","javascript:go_to_tab(\"pdownload\")");
+                       var txt = document.createTextNode("[ Download ]");
+                       link.appendChild(txt);
+                       item.appendChild(link);
+                       list.appendChild(item);
+               }
+               if (list.childNodes.length > 0) {
+                       var item = document.createElement("li");
+                       item.setAttribute("id","palllink");
+                       var link = document.createElement("a");
+                       link.setAttribute("href","javascript:show_all_tabs()");
+                       var txt = document.createTextNode("[ All ]");
+                       link.appendChild(txt);
+                       item.appendChild(link);
+                       list.appendChild(item);
+                       
+               }
+               tablist.appendChild(list);
+       }
+       show_tab("pdesctab");
+       show_tab("pbinaries");
+}
+
+function go_to_tab(id) {
+       if (id == "pdeps") {
+               hide_tab("pdesctab");
+               hide_tab("pbinaries");
+               hide_tab("pdownload");
+               show_tab("pdeps");
+       }
+       if (id == "pdesctab" || id == "pbinaries") {
+               hide_tab("pdeps");
+               hide_tab("pdownload");
+               show_tab("pdesctab");
+               show_tab("pbinaries");
+       }
+       if (id == "pdownload") {
+               hide_tab("pdesctab");
+               hide_tab("pbinaries");
+               hide_tab("pdeps");
+               show_tab("pdownload");
+       }
+}
+
+function show_all_tabs() {
+       show_tab("pdesctab");
+       show_tab("pbinaries");
+       show_tab("pdeps");
+       show_tab("pdownload");
+       var item = document.getElementById("palllink");
+       if (item) {
+               item.style.fontWeight = "bold";
+       }
+}
\ No newline at end of file