This commit was manufactured by cvs2svn to create tag
[Packages/TYPO3.CMS.git] / typo3 / sysext / cms / tslib / media / scripts / example_itemArrayProcFunc.php
index 8ccf157..fd31490 100755 (executable)
@@ -1,22 +1,22 @@
 <?php
 /***************************************************************
 *  Copyright notice
-*  
-*  (c) 1999-2003 Kasper Skårhøj (kasper@typo3.com)
+*
+*  (c) 1999-2004 Kasper Skaarhoj (kasper@typo3.com)
 *  All rights reserved
 *
-*  This script is part of the TYPO3 project. The TYPO3 project is 
+*  This script is part of the TYPO3 project. The TYPO3 project is
 *  free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
-* 
+*
 *  The GNU General Public License can be found at
 *  http://www.gnu.org/copyleft/gpl.html.
-*  A copy is found in the textfile GPL.txt and important notices to the license 
+*  A copy is found in the textfile GPL.txt and important notices to the license
 *  from the author is found in LICENSE.txt distributed with these scripts.
 *
-* 
+*
 *  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.  See the
  * This is an example of how to manipulate menu item arrays.
  * Used in the "testsite" package
  *
- * Revised for TYPO3 3.6 June/2003 by Kasper Skårhøj
+ * $Id$
+ * Revised for TYPO3 3.6 June/2003 by Kasper Skaarhoj
  * XHTML compliant
  *
- * @author     Kasper Skårhøj <kasper@typo3.com>
+ * @author     Kasper Skaarhoj <kasper@typo3.com>
  */
 
 
+
+
+
+
+
+
+
+
 /**
  * This function basically adds the parent page to the sublevel but only if the sublevel is empty!
  * It is also used to demonstrate the menu state items
- * 
+ *
  * Example can be found in the testsite package at the page-path "/Intro/TypoScript examples/Menu object examples/Fake menu items/" and "/Intro/TypoScript examples/Menu object examples/Menu state test/"
  * This TypoScript configuration will also demonstrate it ("fake menu items"):
- *  
+ *
  * includeLibs.fakemenuitems = media/scripts/example_itemArrayProcFunc.php
  * page = PAGE
  * page.typeNum = 0
  * page.10.1 = TMENU
  * page.10.1.expAll = 1
  * page.10.1.NO {
- *   allWrap = | <BR>
+ *   allWrap = | <br />
  *   linkWrap = <b>|</b>
  * }
  * page.10.2 = TMENU
  * page.10.2.itemArrayProcFunc = user_itemArrayProcFuncTest
  * page.10.2.NO {
- *   allWrap = | <BR>
+ *   allWrap = | <br />
  *   linkWrap = <b> - |</b>
  * }
- * 
+ *
  * @param      array           The $menuArr array which simply is a num-array of page records which goes into the menu.
  * @param      array           TypoScript configuration for the function. Notice that the property "parentObj" is a reference to the parent (calling) object (the tslib_Xmenu class instantiated)
  * @return     array           The modified $menuArr array
@@ -85,8 +86,8 @@ function user_itemArrayProcFuncTest($menuArr,$conf)   {
                if (!count($menuArr))   {               // There must be no menu items if we add the parent page to the submenu:
                        $parentPageId = $conf['parentObj']->id; // id of the parent page
                        $parentPageRow = $GLOBALS['TSFE']->sys_page->getPage($parentPageId);    // ... and get the record...
-                       if (is_array($parentPageRow))   {       // ... and if that page existed (a row was returned) then add it! 
-                               $menuArr[]=$parentPageRow;      
+                       if (is_array($parentPageRow))   {       // ... and if that page existed (a row was returned) then add it!
+                               $menuArr[]=$parentPageRow;
                        }
                }
        }
@@ -95,7 +96,7 @@ function user_itemArrayProcFuncTest($menuArr,$conf)   {
 
 /**
  * Used in the menu item state example of the "testsite" package at page-path "/Intro/TypoScript examples/Menu object examples/Menu state test/"
- * 
+ *
  * @param      array           The menu item array, $this->I (in the parent object)
  * @param      array           TypoScript configuration for the function. Notice that the property "parentObj" is a reference to the parent (calling) object (the tslib_Xmenu class instantiated)
  * @return     array           The processed $I array returned (and stored in $this->I of the parent object again)
@@ -104,12 +105,12 @@ function user_itemArrayProcFuncTest($menuArr,$conf)       {
 function user_IProcFuncTest($I,$conf)  {
        $itemRow = $conf['parentObj']->menuArr[$I['key']];
 
-               // Setting the document status content to the value of the page title on mouse over     
+               // Setting the document status content to the value of the page title on mouse over
        $I['linkHREF']['onMouseover'].='extraRollover(\''.rawurlencode($itemRow['title']).'\');';
        $conf['parentObj']->I = $I;
        $conf['parentObj']->setATagParts();
        $I = $conf['parentObj']->I;
-       $I['parts']['ATag_begin']=$I['A1'];
+       if ($I['parts']['ATag_begin'])  $I['parts']['ATag_begin']=$I['A1'];
 
        if ($conf['debug'])     {
                        // Outputting for debug example: