|
Index: typo3/js/tabmenu.js
|
|
===================================================================
|
|
--- typo3/js/tabmenu.js (revision 0)
|
|
+++ typo3/js/tabmenu.js (revision 0)
|
|
@@ -0,0 +1,99 @@
|
|
+/***************************************************************
|
|
+ *
|
|
+ * javascript functions regarding the "dyntabmenu"
|
|
+ * used throughout the TYPO3 backend
|
|
+ *
|
|
+ * Copyright notice
|
|
+ *
|
|
+ * (c) 2003-2009 Kasper Skaarhoj
|
|
+ * All rights reserved
|
|
+ *
|
|
+ * This script is part of the TYPO3 t3lib/ library provided by
|
|
+ * Kasper Skaarhoj <kasper@typo3.com> together with TYPO3
|
|
+ *
|
|
+ * Released under GNU/GPL (see license file in tslib/)
|
|
+ *
|
|
+ * This script is distributed in the hope that it will be useful,
|
|
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
+ *
|
|
+ * This copyright notice MUST APPEAR in all copies of this script
|
|
+ *
|
|
+ ***************************************************************/
|
|
+
|
|
+var DTM_array = new Array();
|
|
+var DTM_origClass = new String();
|
|
+
|
|
+ // if tabs are used in a popup window the array might not exists
|
|
+if(!top.DTM_currentTabs) {
|
|
+ top.DTM_currentTabs = new Array();
|
|
+}
|
|
+
|
|
+function DTM_activate(idBase,index,doToogle) {
|
|
+ // Hiding all:
|
|
+ if (DTM_array[idBase]) {
|
|
+ for(cnt = 0; cnt < DTM_array[idBase].length ; cnt++) {
|
|
+ if (DTM_array[idBase][cnt] != idBase+'-'+index) {
|
|
+ document.getElementById(DTM_array[idBase][cnt]+'-DIV').style.display = 'none';
|
|
+ // Only Overriding when Tab not disabled
|
|
+ if (document.getElementById(DTM_array[idBase][cnt]+'-MENU').attributes.getNamedItem('class').nodeValue != 'disabled') {
|
|
+ document.getElementById(DTM_array[idBase][cnt]+'-MENU').attributes.getNamedItem('class').nodeValue = 'tab';
|
|
+ }
|
|
+ }
|
|
+ }
|
|
+ }
|
|
+
|
|
+ // Showing one:
|
|
+ if (document.getElementById(idBase+'-'+index+'-DIV')) {
|
|
+ if (doToogle && document.getElementById(idBase+'-'+index+'-DIV').style.display == 'block') {
|
|
+ document.getElementById(idBase+'-'+index+'-DIV').style.display = 'none';
|
|
+ if(DTM_origClass=='') {
|
|
+ document.getElementById(idBase+'-'+index+'-MENU').attributes.getNamedItem('class').nodeValue = 'tab';
|
|
+ } else {
|
|
+ DTM_origClass = 'tab';
|
|
+ }
|
|
+ top.DTM_currentTabs[idBase] = -1;
|
|
+ } else {
|
|
+ document.getElementById(idBase+'-'+index+'-DIV').style.display = 'block';
|
|
+ if(DTM_origClass=='') {
|
|
+ document.getElementById(idBase+'-'+index+'-MENU').attributes.getNamedItem('class').nodeValue = 'tabact';
|
|
+ } else {
|
|
+ DTM_origClass = 'tabact';
|
|
+ }
|
|
+ top.DTM_currentTabs[idBase] = index;
|
|
+ }
|
|
+ }
|
|
+}
|
|
+function DTM_toggle(idBase,index,isInit) {
|
|
+ // Showing one:
|
|
+ if (document.getElementById(idBase+'-'+index+'-DIV')) {
|
|
+ if (document.getElementById(idBase+'-'+index+'-DIV').style.display == 'block') {
|
|
+ document.getElementById(idBase+'-'+index+'-DIV').style.display = 'none';
|
|
+ if(isInit) {
|
|
+ document.getElementById(idBase+'-'+index+'-MENU').attributes.getNamedItem('class').nodeValue = 'tab';
|
|
+ } else {
|
|
+ DTM_origClass = 'tab';
|
|
+ }
|
|
+ top.DTM_currentTabs[idBase+'-'+index] = 0;
|
|
+ } else {
|
|
+ document.getElementById(idBase+'-'+index+'-DIV').style.display = 'block';
|
|
+ if(isInit) {
|
|
+ document.getElementById(idBase+'-'+index+'-MENU').attributes.getNamedItem('class').nodeValue = 'tabact';
|
|
+ } else {
|
|
+ DTM_origClass = 'tabact';
|
|
+ }
|
|
+ top.DTM_currentTabs[idBase+'-'+index] = 1;
|
|
+ }
|
|
+ }
|
|
+}
|
|
+
|
|
+function DTM_mouseOver(obj) {
|
|
+ DTM_origClass = obj.attributes.getNamedItem('class').nodeValue;
|
|
+ obj.attributes.getNamedItem('class').nodeValue += '_over';
|
|
+}
|
|
+
|
|
+function DTM_mouseOut(obj) {
|
|
+ obj.attributes.getNamedItem('class').nodeValue = DTM_origClass;
|
|
+ DTM_origClass = '';
|
|
+}
|
|
+
|
|
Index: typo3/template.php
|
|
===================================================================
|
|
--- typo3/template.php (revision 5118)
|
|
+++ typo3/template.php (working copy)
|
|
@@ -1457,6 +1457,9 @@
|
|
* @return string JavaScript section for the HTML header.
|
|
*/
|
|
function getDynTabMenu($menuItems,$identString,$toggle=0,$foldout=FALSE,$newRowCharLimit=50,$noWrap=1,$fullWidth=FALSE,$defaultTabIndex=1,$dividers2tabs=2) {
|
|
+ // load the static code, if not already done with the function below
|
|
+ $this->loadJavascriptLib('js/tabmenu.js');
|
|
+
|
|
$content = '';
|
|
|
|
if (is_array($menuItems)) {
|
|
@@ -1596,93 +1599,16 @@
|
|
|
|
/**
|
|
* Returns dynamic tab menu header JS code.
|
|
+ * This is now incorporated automatically when the function template::getDynTabMenu is called
|
|
+ * (as long as it is called before $this->startPage())
|
|
+ * The return value is not needed anymore
|
|
*
|
|
- * @return string JavaScript section for the HTML header.
|
|
+ * @return string JavaScript section for the HTML header. (return value is deprecated since TYPO3 4.3, will be removed in TYPO3 4.5)
|
|
*/
|
|
function getDynTabMenuJScode() {
|
|
- return '
|
|
- <script type="text/javascript">
|
|
- /*<![CDATA[*/
|
|
- var DTM_array = new Array();
|
|
- var DTM_origClass = new String();
|
|
-
|
|
- // if tabs are used in a popup window the array might not exists
|
|
- if(!top.DTM_currentTabs) {
|
|
- top.DTM_currentTabs = new Array();
|
|
- }
|
|
-
|
|
- function DTM_activate(idBase,index,doToogle) { //
|
|
- // Hiding all:
|
|
- if (DTM_array[idBase]) {
|
|
- for(cnt = 0; cnt < DTM_array[idBase].length ; cnt++) {
|
|
- if (DTM_array[idBase][cnt] != idBase+"-"+index) {
|
|
- document.getElementById(DTM_array[idBase][cnt]+"-DIV").style.display = "none";
|
|
- // Only Overriding when Tab not disabled
|
|
- if (document.getElementById(DTM_array[idBase][cnt]+"-MENU").attributes.getNamedItem("class").nodeValue != "disabled") {
|
|
- document.getElementById(DTM_array[idBase][cnt]+"-MENU").attributes.getNamedItem("class").nodeValue = "tab";
|
|
- }
|
|
- }
|
|
- }
|
|
- }
|
|
-
|
|
- // Showing one:
|
|
- if (document.getElementById(idBase+"-"+index+"-DIV")) {
|
|
- if (doToogle && document.getElementById(idBase+"-"+index+"-DIV").style.display == "block") {
|
|
- document.getElementById(idBase+"-"+index+"-DIV").style.display = "none";
|
|
- if(DTM_origClass=="") {
|
|
- document.getElementById(idBase+"-"+index+"-MENU").attributes.getNamedItem("class").nodeValue = "tab";
|
|
- } else {
|
|
- DTM_origClass = "tab";
|
|
- }
|
|
- top.DTM_currentTabs[idBase] = -1;
|
|
- } else {
|
|
- document.getElementById(idBase+"-"+index+"-DIV").style.display = "block";
|
|
- if(DTM_origClass=="") {
|
|
- document.getElementById(idBase+"-"+index+"-MENU").attributes.getNamedItem("class").nodeValue = "tabact";
|
|
- } else {
|
|
- DTM_origClass = "tabact";
|
|
- }
|
|
- top.DTM_currentTabs[idBase] = index;
|
|
- }
|
|
- }
|
|
- }
|
|
- function DTM_toggle(idBase,index,isInit) { //
|
|
- // Showing one:
|
|
- if (document.getElementById(idBase+"-"+index+"-DIV")) {
|
|
- if (document.getElementById(idBase+"-"+index+"-DIV").style.display == "block") {
|
|
- document.getElementById(idBase+"-"+index+"-DIV").style.display = "none";
|
|
- if(isInit) {
|
|
- document.getElementById(idBase+"-"+index+"-MENU").attributes.getNamedItem("class").nodeValue = "tab";
|
|
- } else {
|
|
- DTM_origClass = "tab";
|
|
- }
|
|
- top.DTM_currentTabs[idBase+"-"+index] = 0;
|
|
- } else {
|
|
- document.getElementById(idBase+"-"+index+"-DIV").style.display = "block";
|
|
- if(isInit) {
|
|
- document.getElementById(idBase+"-"+index+"-MENU").attributes.getNamedItem("class").nodeValue = "tabact";
|
|
- } else {
|
|
- DTM_origClass = "tabact";
|
|
- }
|
|
- top.DTM_currentTabs[idBase+"-"+index] = 1;
|
|
- }
|
|
- }
|
|
- }
|
|
-
|
|
- function DTM_mouseOver(obj) { //
|
|
- DTM_origClass = obj.attributes.getNamedItem(\'class\').nodeValue;
|
|
- obj.attributes.getNamedItem(\'class\').nodeValue += "_over";
|
|
- }
|
|
-
|
|
- function DTM_mouseOut(obj) { //
|
|
- obj.attributes.getNamedItem(\'class\').nodeValue = DTM_origClass;
|
|
- DTM_origClass = "";
|
|
- }
|
|
-
|
|
-
|
|
- /*]]>*/
|
|
- </script>
|
|
- ';
|
|
+ $this->loadJavascriptLib('js/tabmenu.js');
|
|
+ // return value deprecated since TYPO3 4.3
|
|
+ return '';
|
|
}
|
|
|
|
/**
|