]> scripts.mit.edu Git - autoinstalls/wordpress.git/blob - wp-includes/js/tinymce/utils/mctabs.js
Wordpress 2.0.2
[autoinstalls/wordpress.git] / wp-includes / js / tinymce / utils / mctabs.js
1 /**\r
2  * $RCSfile: mctabs.js,v $\r
3  * $Revision: 1.1 $\r
4  * $Date: 2005/08/01 18:36:35 $\r
5  *\r
6  * Moxiecode DHTML Tabs script.\r
7  *\r
8  * @author Moxiecode\r
9  * @copyright Copyright © 2004, Moxiecode Systems AB, All rights reserved.\r
10  */\r
11 \r
12 function MCTabs() {\r
13         this.settings = new Array();\r
14 };\r
15 \r
16 MCTabs.prototype.init = function(settings) {\r
17         this.settings = settings;\r
18 };\r
19 \r
20 MCTabs.prototype.getParam = function(name, default_value) {\r
21         var value = null;\r
22 \r
23         value = (typeof(this.settings[name]) == "undefined") ? default_value : this.settings[name];\r
24 \r
25         // Fix bool values\r
26         if (value == "true" || value == "false")\r
27                 return (value == "true");\r
28 \r
29         return value;\r
30 };\r
31 \r
32 MCTabs.prototype.displayTab = function(tab_id, panel_id) {\r
33         var panelElm = document.getElementById(panel_id);\r
34         var panelContainerElm = panelElm ? panelElm.parentNode : null;\r
35         var tabElm = document.getElementById(tab_id);\r
36         var tabContainerElm = tabElm ? tabElm.parentNode : null;\r
37         var selectionClass = this.getParam('selection_class', 'current');\r
38 \r
39         if (tabElm && tabContainerElm) {\r
40                 var nodes = tabContainerElm.childNodes;\r
41 \r
42                 // Hide all other tabs\r
43                 for (var i=0; i<nodes.length; i++) {\r
44                         if (nodes[i].nodeName == "LI")\r
45                                 nodes[i].className = '';\r
46                 }\r
47 \r
48                 // Show selected tab\r
49                 tabElm.className = 'current';\r
50         }\r
51 \r
52         if (panelElm && panelContainerElm) {\r
53                 var nodes = panelContainerElm.childNodes;\r
54 \r
55                 // Hide all other panels\r
56                 for (var i=0; i<nodes.length; i++) {\r
57                         if (nodes[i].nodeName == "DIV")\r
58                                 nodes[i].className = 'panel';\r
59                 }\r
60 \r
61                 // Show selected panel\r
62                 panelElm.className = 'current';\r
63         }\r
64 };\r
65 \r
66 MCTabs.prototype.getAnchor = function() {\r
67         var pos, url = document.location.href;\r
68 \r
69         if ((pos = url.lastIndexOf('#')) != -1)\r
70                 return url.substring(pos + 1);\r
71 \r
72         return "";\r
73 };\r
74 \r
75 // Global instance\r
76 var mcTabs = new MCTabs();\r