*** empty log message ***
authorKasper Skårhøj <kasper@typo3.org>
Fri, 4 Nov 2005 09:50:57 +0000 (09:50 +0000)
committerKasper Skårhøj <kasper@typo3.org>
Fri, 4 Nov 2005 09:50:57 +0000 (09:50 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@839 709f56b5-9817-0410-a4d7-c38de5d9e867

33 files changed:
TODO.txt
t3lib/class.t3lib_befunc.php
t3lib/class.t3lib_clipboard.php
t3lib/class.t3lib_positionmap.php
t3lib/class.t3lib_recordlist.php
t3lib/class.t3lib_tceforms.php
t3lib/class.t3lib_tcemain.php
t3lib/class.t3lib_treeview.php
t3lib/class.t3lib_tsparser_ext.php
t3lib/class.t3lib_userauthgroup.php
typo3/alt_clickmenu.php
typo3/alt_doc.php
typo3/alt_main.php
typo3/alt_shortcut.php
typo3/browse_links.php
typo3/class.db_list.inc
typo3/class.db_list_extra.inc
typo3/mod/user/ws/class.wslib.php
typo3/mod/user/ws/index.php
typo3/move_el.php
typo3/stylesheet.css
typo3/sysext/cms/layout/class.tx_cms_layout.php
typo3/sysext/cms/layout/db_layout.php
typo3/sysext/cms/layout/db_new_content_el.php
typo3/sysext/cms/tslib/class.tslib_fe.php
typo3/sysext/cms/web_info/class.tx_cms_webinfo_lang.php
typo3/sysext/impexp/app/index.php
typo3/sysext/info_pagetsconfig/class.tx_infopagetsconfig_webinfo.php
typo3/sysext/version/class.tx_version_cm1.php
typo3/sysext/version/cm1/index.php
typo3/sysext/wizard_crpages/class.tx_wizardcrpages_webfunc_2.php
typo3/wizard_forms.php
typo3/wizard_table.php

index a844fb3..61ec649 100755 (executable)
--- a/TODO.txt
+++ b/TODO.txt
@@ -303,25 +303,11 @@ SQLengine (t3lib_sqlengine):
 *******************************
 Versioning/Workspaces:
 *******************************
-
-
-
-- Page module:
-       - Reflection in panels / Localization
-       - Colored backgrounds in Page module
-       - Quick Edit in page module should work
-- TemplaVoila:
-       - Page module
-       - FlexForms: t3lib_BEfunc::getFlexFormDS()
-
-
-
-TESTING by building up sites.
-
---------------------------
-Thursday/Friday:
+TESTING by building up sites in multiple workspaces! Running the TemplaVoila wizard in workspace? (or disable it...)
+Finish screenshows for "Inside TYPO3"
 
 Frontend Preview:
+- Dual-view preview?
 - ONLINE PREVIEW: Versionized pages should be previewed just by their UID (which will select the offline version!) - only in "Live" space, disabled at the moment inside tslib_fe!
 ?!     - TEST: Mounts points and versionized branches? Localization previews?
 ?      - tslib_content::getPidList(); TEST Mount points / Use offline UID values for "page" swapmodes; This is probably more natural for preview cases.
@@ -345,14 +331,9 @@ Frontend Preview:
                - For new records, maybe the placeholder record is updated along with offline version? (At least for non-file fields). This would solve the problem of build translations in a workspace and also offer the preview as working!
 - In tslib_fe, this->contentPid is set to "_ORIG_UID" when a versionized page have swapmode set to "0". However this is not completely correct to do: Strictly the "_ORIG_UID" value should be used for tables where "versioning_followPages" is set and for others not. However this is a working quick-fix to display content elements at least!
        t3lib_page::getPageOverlay() - because pages_language_overlay records have "versioning_followPages" set this should be observed when selecting language overlay records. But should it be hardcoded or something better?
-- Documentation. As frontend preview implementation is dealt with, describe any persisting incompatibilities in "TYPO3 Core API"
-
-
-
-- Documentation "Backend challenges"
-       - insertModuleFunction() limiting function menu entries
-       ->bypassWorkspaceRestrictions
-       ->Page TSconfig overlays done!
+- Documentation.
+       - As frontend preview implementation is dealt with, describe any persisting incompatibilities in "TYPO3 Core API"
+       - Web > View module always showing preview?
 
 ----------------------------------
 Backend preview:
@@ -373,6 +354,7 @@ TCEmain commands:
        - Check destination if versionized branch / stage
        - Copy a page in workspace will not copy the contents?
        - Copy branch in workspace which already has versions - what does it take?
+       - Import/Export function?
 - localize command
        - ?
 
@@ -385,6 +367,7 @@ Preview modes with no BE login; For single pages, for whole workspace?
 - Works for certain timespan
 - Sets cookie
 - Respects permissions of backend users issuing that permission!?
+- Dual-view preview?
 
 Workflows:
 - Workflows can regard a whole workspace!
@@ -413,7 +396,7 @@ Workspace Manager TODO:
        - Problems with other RDBMS because ID values cannot be changed at all!
 - Swapping consequences:
        - UID references for such as the sys_history and sys_log table are misleading.
-
+       - Branchpoints being swapped will swap their UIDs just like "page" and "element" versions - but in the backend the offline UID of "branch" versions are used heavily. This means references to the branchpoint will be invalid when published.
 
 *************************
 Localization workflow:
index 575b322..e2472aa 100755 (executable)
  *
  *
  *
- *  176: class t3lib_BEfunc
+ *  180: class t3lib_BEfunc
  *
  *              SECTION: SQL-related, selecting records, searching
- *  197:     function deleteClause($table,$tableAlias='')
- *  220:     function getRecord($table,$uid,$fields='*',$where='')
- *  242:     function getRecordRaw($table,$where='',$fields='*')
- *  264:     function getRecordsByField($theTable,$theField,$theValue,$whereClause='',$groupBy='',$orderBy='',$limit='')
- *  296:     function searchQuery($searchWords,$fields,$table='')
- *  311:     function listQuery($field,$value)
- *  323:     function splitTable_Uid($str)
- *  338:     function getSQLselectableList($in_list,$tablename,$default_tablename)
- *  366:     function BEenableFields($table,$inv=0)
+ *  201:     function deleteClause($table,$tableAlias='')
+ *  224:     function getRecord($table,$uid,$fields='*',$where='')
+ *  242:     function getRecordWSOL($table,$uid,$fields='*',$where='')
+ *  261:     function getRecordRaw($table,$where='',$fields='*')
+ *  283:     function getRecordsByField($theTable,$theField,$theValue,$whereClause='',$groupBy='',$orderBy='',$limit='')
+ *  315:     function searchQuery($searchWords,$fields,$table='')
+ *  330:     function listQuery($field,$value)
+ *  342:     function splitTable_Uid($str)
+ *  357:     function getSQLselectableList($in_list,$tablename,$default_tablename)
+ *  385:     function BEenableFields($table,$inv=0)
  *
  *              SECTION: SQL-related, DEPRECIATED functions
- *  430:     function mm_query($select,$local_table,$mm_table,$foreign_table,$whereClause='',$groupBy='',$orderBy='',$limit='')
- *  452:     function DBcompileInsert($table,$fields_values)
- *  466:     function DBcompileUpdate($table,$where,$fields_values)
+ *  449:     function mm_query($select,$local_table,$mm_table,$foreign_table,$whereClause='',$groupBy='',$orderBy='',$limit='')
+ *  471:     function DBcompileInsert($table,$fields_values)
+ *  485:     function DBcompileUpdate($table,$where,$fields_values)
  *
  *              SECTION: Page tree, TCA related
- *  495:     function BEgetRootLine($uid,$clause='')
- *  547:     function openPageTree($pid,$clearExpansion)
- *  592:     function getRecordPath($uid, $clause, $titleLimit, $fullTitleLimit=0)
- *  635:     function getExcludeFields()
- *  665:     function getExplicitAuthFieldValues()
- *  736:     function getSystemLanguages()
- *  761:     function readPageAccess($id,$perms_clause)
- *  790:     function getTCAtypes($table,$rec,$useFieldNameAsKey=0)
- *  843:     function getTCAtypeValue($table,$rec)
- *  866:     function getSpecConfParts($str, $defaultExtras)
- *  896:     function getSpecConfParametersFromArray($pArr)
- *  923:     function getFlexFormDS($conf,$row,$table, $fieldName = '')
+ *  515:     function BEgetRootLine($uid,$clause='',$workspaceOL=FALSE)
+ *  571:     function openPageTree($pid,$clearExpansion)
+ *  616:     function getRecordPath($uid, $clause, $titleLimit, $fullTitleLimit=0)
+ *  659:     function getExcludeFields()
+ *  689:     function getExplicitAuthFieldValues()
+ *  760:     function getSystemLanguages()
+ *  785:     function readPageAccess($id,$perms_clause)
+ *  816:     function getTCAtypes($table,$rec,$useFieldNameAsKey=0)
+ *  869:     function getTCAtypeValue($table,$rec)
+ *  892:     function getSpecConfParts($str, $defaultExtras)
+ *  922:     function getSpecConfParametersFromArray($pArr)
+ *  949:     function getFlexFormDS($conf,$row,$table, $fieldName = '')
  *
  *              SECTION: Caching related
- * 1043:     function storeHash($hash,$data,$ident)
- * 1063:     function getHash($hash,$expTime=0)
+ * 1069:     function storeHash($hash,$data,$ident)
+ * 1089:     function getHash($hash,$expTime=0)
  *
  *              SECTION: TypoScript related
- * 1099:     function getPagesTSconfig($id,$rootLine='',$returnPartArray=0)
- * 1150:     function updatePagesTSconfig($id,$pageTS,$TSconfPrefix,$impParams='')
- * 1205:     function implodeTSParams($p,$k='')
+ * 1125:     function getPagesTSconfig($id,$rootLine='',$returnPartArray=0)
+ * 1176:     function updatePagesTSconfig($id,$pageTS,$TSconfPrefix,$impParams='')
+ * 1231:     function implodeTSParams($p,$k='')
  *
  *              SECTION: Users / Groups related
- * 1242:     function getUserNames($fields='username,usergroup,usergroup_cached_list,uid',$where='')
- * 1260:     function getGroupNames($fields='title,uid', $where='')
- * 1277:     function getListGroupNames($fields='title,uid')
- * 1296:     function blindUserNames($usernames,$groupArray,$excludeBlindedFlag=0)
- * 1329:     function blindGroupNames($groups,$groupArray,$excludeBlindedFlag=0)
+ * 1268:     function getUserNames($fields='username,usergroup,usergroup_cached_list,uid',$where='')
+ * 1286:     function getGroupNames($fields='title,uid', $where='')
+ * 1303:     function getListGroupNames($fields='title,uid')
+ * 1322:     function blindUserNames($usernames,$groupArray,$excludeBlindedFlag=0)
+ * 1355:     function blindGroupNames($groups,$groupArray,$excludeBlindedFlag=0)
  *
  *              SECTION: Output related
- * 1370:     function daysUntil($tstamp)
- * 1382:     function date($tstamp)
- * 1393:     function datetime($value)
- * 1405:     function time($value)
- * 1421:     function calcAge($seconds,$labels = 'min|hrs|days|yrs')
- * 1447:     function dateTimeAge($tstamp,$prefix=1,$date='')
- * 1465:     function titleAttrib($content='',$hsc=0)
- * 1478:     function titleAltAttrib($content)
- * 1502:     function thumbCode($row,$table,$field,$backPath,$thumbScript='',$uploaddir=NULL,$abs=0,$tparams='',$size='')
- * 1571:     function getThumbNail($thumbScript,$theFile,$tparams='',$size='')
- * 1588:     function titleAttribForPages($row,$perms_clause='',$includeAttrib=1)
- * 1647:     function getRecordIconAltText($row,$table='pages')
- * 1684:     function getLabelFromItemlist($table,$col,$key)
- * 1710:     function getItemLabel($table,$col,$printAllWrap='')
- * 1735:     function getRecordTitle($table,$row,$prep=0)
- * 1773:     function getProcessedValue($table,$col,$value,$fixed_lgd_chars=0,$defaultPassthrough=0,$noRecordLookup=FALSE,$uid=0)
- * 1894:     function getProcessedValueExtra($table,$fN,$fV,$fixed_lgd_chars=0,$uid=0)
- * 1918:     function getFileIcon($ext)
- * 1932:     function getCommonSelectFields($table,$prefix)
- * 1974:     function makeConfigForm($configArray,$defaults,$dataPrefix)
+ * 1396:     function daysUntil($tstamp)
+ * 1408:     function date($tstamp)
+ * 1419:     function datetime($value)
+ * 1431:     function time($value)
+ * 1447:     function calcAge($seconds,$labels = 'min|hrs|days|yrs')
+ * 1473:     function dateTimeAge($tstamp,$prefix=1,$date='')
+ * 1491:     function titleAttrib($content='',$hsc=0)
+ * 1504:     function titleAltAttrib($content)
+ * 1528:     function thumbCode($row,$table,$field,$backPath,$thumbScript='',$uploaddir=NULL,$abs=0,$tparams='',$size='')
+ * 1597:     function getThumbNail($thumbScript,$theFile,$tparams='',$size='')
+ * 1614:     function titleAttribForPages($row,$perms_clause='',$includeAttrib=1)
+ * 1673:     function getRecordIconAltText($row,$table='pages')
+ * 1710:     function getLabelFromItemlist($table,$col,$key)
+ * 1736:     function getItemLabel($table,$col,$printAllWrap='')
+ * 1761:     function getRecordTitle($table,$row,$prep=0)
+ * 1799:     function getProcessedValue($table,$col,$value,$fixed_lgd_chars=0,$defaultPassthrough=0,$noRecordLookup=FALSE,$uid=0)
+ * 1921:     function getProcessedValueExtra($table,$fN,$fV,$fixed_lgd_chars=0,$uid=0)
+ * 1945:     function getFileIcon($ext)
+ * 1959:     function getCommonSelectFields($table,$prefix)
+ * 2000:     function makeConfigForm($configArray,$defaults,$dataPrefix)
  *
  *              SECTION: Backend Modules API functions
- * 2049:     function helpTextIcon($table,$field,$BACK_PATH,$force=0)
- * 2071:     function helpText($table,$field,$BACK_PATH,$styleAttrib='')
- * 2123:     function cshItem($table,$field,$BACK_PATH,$wrap='',$onlyIconMode=FALSE, $styleAttrib='')
- * 2161:     function editOnClick($params,$backPath='',$requestUri='')
- * 2180:     function viewOnClick($id,$backPath='',$rootLine='',$anchor='',$altUrl='',$addGetVars='',$switchFocus=TRUE)
- * 2207:     function getModTSconfig($id,$TSref)
- * 2228:     function getFuncMenu($mainParams,$elementName,$currentValue,$menuItems,$script='',$addparams='')
- * 2271:     function getFuncCheck($mainParams,$elementName,$currentValue,$script='',$addparams='',$tagParams='')
- * 2296:     function getFuncInput($mainParams,$elementName,$currentValue,$size=10,$script="",$addparams="")
- * 2317:     function unsetMenuItems($modTSconfig,$itemArray,$TSref)
- * 2340:     function getSetUpdateSignal($set='')
- * 2391:     function getModuleData($MOD_MENU, $CHANGED_SETTINGS, $modName, $type='', $dontValidateList='', $setDefaultList='')
+ * 2075:     function helpTextIcon($table,$field,$BACK_PATH,$force=0)
+ * 2097:     function helpText($table,$field,$BACK_PATH,$styleAttrib='')
+ * 2149:     function cshItem($table,$field,$BACK_PATH,$wrap='',$onlyIconMode=FALSE, $styleAttrib='')
+ * 2187:     function editOnClick($params,$backPath='',$requestUri='')
+ * 2206:     function viewOnClick($id,$backPath='',$rootLine='',$anchor='',$altUrl='',$addGetVars='',$switchFocus=TRUE)
+ * 2233:     function getModTSconfig($id,$TSref)
+ * 2254:     function getFuncMenu($mainParams,$elementName,$currentValue,$menuItems,$script='',$addparams='')
+ * 2297:     function getFuncCheck($mainParams,$elementName,$currentValue,$script='',$addparams='',$tagParams='')
+ * 2322:     function getFuncInput($mainParams,$elementName,$currentValue,$size=10,$script="",$addparams="")
+ * 2343:     function unsetMenuItems($modTSconfig,$itemArray,$TSref)
+ * 2366:     function getSetUpdateSignal($set='')
+ * 2417:     function getModuleData($MOD_MENU, $CHANGED_SETTINGS, $modName, $type='', $dontValidateList='', $setDefaultList='')
  *
  *              SECTION: Core
- * 2464:     function lockRecords($table='',$uid=0,$pid=0)
- * 2493:     function isRecordLocked($table,$uid)
- * 2533:     function exec_foreign_table_where_query($fieldValue,$field='',$TSconfig=array(),$prefix='')
- * 2614:     function getTCEFORM_TSconfig($table,$row)
- * 2664:     function getTSconfig_pidValue($table,$uid,$pid)
- * 2692:     function getPidForModTSconfig($table,$uid,$pid)
- * 2708:     function getTSCpid($table,$uid,$pid)
- * 2724:     function firstDomainRecord($rootLine)
- * 2746:     function getDomainStartPage($domain, $path='')
- * 2776:     function RTEsetup($RTEprop,$table,$field,$type='')
- * 2795:     function &RTEgetObj()
- * 2834:     function &softRefParserObj($spKey)
- * 2866:     function explodeSoftRefParserList($parserList, $table, $field)
- * 2898:     function isModuleSetInTBE_MODULES($modName)
+ * 2490:     function lockRecords($table='',$uid=0,$pid=0)
+ * 2519:     function isRecordLocked($table,$uid)
+ * 2559:     function exec_foreign_table_where_query($fieldValue,$field='',$TSconfig=array(),$prefix='')
+ * 2640:     function getTCEFORM_TSconfig($table,$row)
+ * 2690:     function getTSconfig_pidValue($table,$uid,$pid)
+ * 2718:     function getPidForModTSconfig($table,$uid,$pid)
+ * 2734:     function getTSCpid($table,$uid,$pid)
+ * 2750:     function firstDomainRecord($rootLine)
+ * 2772:     function getDomainStartPage($domain, $path='')
+ * 2802:     function RTEsetup($RTEprop,$table,$field,$type='')
+ * 2821:     function &RTEgetObj()
+ * 2860:     function &softRefParserObj($spKey)
+ * 2892:     function explodeSoftRefParserList($parserList, $table, $field)
+ * 2924:     function isModuleSetInTBE_MODULES($modName)
  *
  *              SECTION: Workspaces / Versioning
- * 2942:     function selectVersionsOfRecord($table, $uid, $fields='*', $workspace=0)
- * 2986:     function fixVersioningPid($table,&$rr)
- * 3018:     function workspaceOL($table,&$row,$wsid=-99)
- * 3062:     function getWorkspaceVersionOfRecord($workspace, $table, $uid, $fields='*')
- * 3087:     function isPidInVersionizedBranch($pid)
+ * 2968:     function selectVersionsOfRecord($table, $uid, $fields='*', $workspace=0)
+ * 3014:     function fixVersioningPid($table,&$rr)
+ * 3054:     function workspaceOL($table,&$row,$wsid=-99)
+ * 3102:     function getWorkspaceVersionOfRecord($workspace, $table, $uid, $fields='*')
+ * 3129:     function getLiveVersionOfRecord($table,$uid,$fields='*')
+ * 3151:     function isPidInVersionizedBranch($pid, $table='',$returnStage=FALSE)
+ * 3174:     function versioningPlaceholderClause($table)
+ * 3188:     function countVersionsOfRecordsOnPage($workspace,$pageId, $allTables=FALSE)
  *
  *              SECTION: Miscellaneous
- * 3120:     function typo3PrintError($header,$text,$js='',$head=1)
- * 3164:     function TYPO3_copyRightNotice()
- * 3188:     function displayWarningMessages()
- * 3230:     function getPathType_web_nonweb($path)
- * 3242:     function ADMCMD_previewCmds($pageinfo)
- * 3264:     function processParams($params)
- * 3290:     function getListOfBackendModules($name,$perms_clause,$backPath='',$script='index.php')
+ * 3240:     function typo3PrintError($header,$text,$js='',$head=1)
+ * 3284:     function TYPO3_copyRightNotice()
+ * 3308:     function displayWarningMessages()
+ * 3351:     function getPathType_web_nonweb($path)
+ * 3363:     function ADMCMD_previewCmds($pageinfo)
+ * 3385:     function processParams($params)
+ * 3411:     function getListOfBackendModules($name,$perms_clause,$backPath='',$script='index.php')
  *
- * TOTAL FUNCTIONS: 92
+ * TOTAL FUNCTIONS: 96
  * (This index is automatically created/updated by the extension "extdeveval")
  *
  */
@@ -284,6 +288,7 @@ class t3lib_BEfunc  {
                                                $theTable,
                                                $theField.'='.$GLOBALS['TYPO3_DB']->fullQuoteStr($theValue, $theTable).
                                                        t3lib_BEfunc::deleteClause($theTable).' '.
+                                                       t3lib_BEfunc::versioningPlaceholderClause($theTable).' '.
                                                        $whereClause,   // whereClauseMightContainGroupOrderBy
                                                $groupBy,
                                                $orderBy,
@@ -938,11 +943,11 @@ class t3lib_BEfunc        {
         * @param       array           Field config array
         * @param       array           Record data
         * @param       string          The table name
-        * @param       [type]          $fieldName: ...
+        * @param       string          Optional fieldname passed to hook object
         * @return      mixed           If array, the data structure was found and returned as an array. Otherwise (string) it is an error message.
         * @see t3lib_TCEforms::getSingleField_typeFlex()
         */
-       function getFlexFormDS($conf,$row,$table, $fieldName = '')      {
+       function getFlexFormDS($conf,$row,$table,$fieldName='') {
                global $TYPO3_CONF_VARS;
 
                        // Get pointer field etc from TCA-config:
@@ -977,7 +982,7 @@ class t3lib_BEfunc  {
                                // Searching recursively back if 'ds_pointerField_searchParent' is defined (typ. a page rootline, or maybe a tree-table):
                        if ($ds_searchParentField && !$srcPointer)      {
                                $rr = t3lib_BEfunc::getRecord($table,$row['uid'],'uid,'.$ds_searchParentField); // Get the "pid" field - we cannot know that it is in the input record!
-                               #t3lib_BEfunc::workspaceOL($table,$rr); // KASPER: Not tested, but assumed correct
+                               t3lib_BEfunc::workspaceOL($table,$rr);  // KASPER: Not tested, but assumed correct
                                t3lib_BEfunc::fixVersioningPid($table,$rr);
                                $uidAcc=array();        // Used to avoid looping, if any should happen.
                                $subFieldPointer = $conf['ds_pointerField_searchParent_subField'];
@@ -993,7 +998,7 @@ class t3lib_BEfunc  {
                                        if (!is_array($rr) || isset($uidAcc[$rr['uid']]))       break;
                                        $uidAcc[$rr['uid']]=1;
 
-                                       #t3lib_BEfunc::workspaceOL($table,$rr); // KASPER: Not tested, but assumed correct
+                                       t3lib_BEfunc::workspaceOL($table,$rr);  // KASPER: Not tested, but assumed correct
                                        t3lib_BEfunc::fixVersioningPid($table,$rr);
                                        $srcPointer = ($subFieldPointer && $rr[$subFieldPointer]) ? $rr[$subFieldPointer] : $rr[$ds_pointerField];
                                }
@@ -1004,7 +1009,7 @@ class t3lib_BEfunc        {
                                if (t3lib_div::testInt($srcPointer))    {       // If integer, then its a record we will look up:
                                        list($tName,$fName) = explode(':',$ds_tableField,2);
                                        if ($tName && $fName && is_array($GLOBALS['TCA'][$tName]))      {
-                                               $dataStructRec = t3lib_BEfunc::getRecord($tName, $srcPointer);
+                                               $dataStructRec = t3lib_BEfunc::getRecordWSOL($tName, $srcPointer);
                                                $dataStructArray = t3lib_div::xml2array($dataStructRec[$fName]);
                                        } else $dataStructArray = 'No tablename ('.$tName.') or fieldname ('.$fName.') was found an valid!';
                                } else {        // Otherwise expect it to be a file:
@@ -1619,7 +1624,7 @@ class t3lib_BEfunc        {
                        if ($perms_clause)      {
                                $label = t3lib_BEfunc::getRecordPath(intval($row['shortcut']),$perms_clause,20);
                        } else {
-                               $lRec = t3lib_BEfunc::getRecord('pages',intval($row['shortcut']),'title');
+                               $lRec = t3lib_BEfunc::getRecordWSOL('pages',intval($row['shortcut']),'title');
                                $label = $lRec['title'];
                        }
                        if ($row['shortcut_mode']>0)    {
@@ -1631,7 +1636,7 @@ class t3lib_BEfunc        {
                        if ($perms_clause)      {
                                $label = t3lib_BEfunc::getRecordPath(intval($row['mount_pid']),$perms_clause,20);
                        } else {
-                               $lRec = t3lib_BEfunc::getRecord('pages',intval($row['mount_pid']),'title');
+                               $lRec = t3lib_BEfunc::getRecordWSOL('pages',intval($row['mount_pid']),'title');
                                $label = $lRec['title'];
                        }
                        $parts[]=$LANG->sL($TCA['pages']['columns']['mount_pid']['label']).' '.$label;
@@ -1647,7 +1652,7 @@ class t3lib_BEfunc        {
                        if ($row['fe_group']<0) {
                                $label = $LANG->sL(t3lib_BEfunc::getLabelFromItemlist('pages','fe_group',$row['fe_group']));
                        } else {
-                               $lRec = t3lib_BEfunc::getRecord('fe_groups',$row['fe_group'],'title');
+                               $lRec = t3lib_BEfunc::getRecordWSOL('fe_groups',$row['fe_group'],'title');
                                $label = $lRec['title'];
                        }
                        $parts[] = $LANG->sL($TCA['pages']['columns']['fe_group']['label']).' '.$label;
@@ -1841,9 +1846,9 @@ class t3lib_BEfunc        {
                                                                while(list(,$rVal)=each($rParts))       {
                                                                        $rVal = intval($rVal);
                                                                        if ($rVal>0) {
-                                                                               $r=t3lib_BEfunc::getRecord($theColConf['foreign_table'],$rVal);
+                                                                               $r=t3lib_BEfunc::getRecordWSOL($theColConf['foreign_table'],$rVal);
                                                                        } else {
-                                                                               $r=t3lib_BEfunc::getRecord($theColConf['neg_foreign_table'],-$rVal);
+                                                                               $r=t3lib_BEfunc::getRecordWSOL($theColConf['neg_foreign_table'],-$rVal);
                                                                        }
                                                                        if (is_array($r))       {
                                                                                $lA[]=$GLOBALS['LANG']->sL($rVal>0?$theColConf['foreign_table_prefix']:$theColConf['neg_foreign_table_prefix']).t3lib_BEfunc::getRecordTitle($rVal>0?$theColConf['foreign_table']:$theColConf['neg_foreign_table'],$r);
@@ -3117,9 +3122,12 @@ class t3lib_BEfunc       {
        }
 
        /**
+        * Returns live version of record
         *
         * @param       string          Table name
-        * @return
+        * @param       integer         Record UID of draft, offline version
+        * @param       string          Field list, default is *
+        * @return      array           If found, the record, otherwise nothing.
         */
        function getLiveVersionOfRecord($table,$uid,$fields='*')        {
                global $TCA;
@@ -3178,7 +3186,7 @@ class t3lib_BEfunc        {
         * @param       integer         Workspace ID
         * @param       integer         Page ID
         * @param       boolean         If set, then all tables and not only "versioning_followPages" are found (except other pages)
-        * @return      array   Overview of records
+        * @return      array           Overview of records
         */
        function countVersionsOfRecordsOnPage($workspace,$pageId, $allTables=FALSE)     {
                $output = array();
index 7b5c56a..7034d17 100755 (executable)
@@ -440,7 +440,7 @@ class t3lib_clipboard {
                                                        $this->changed=1;
                                                }
                                        } else {        // Rendering records:
-                                               $rec=t3lib_BEfunc::getRecord($table,$uid);
+                                               $rec=t3lib_BEfunc::getRecordWSOL($table,$uid);
                                                if (is_array($rec))     {
                                                        $lines[]='
                                                                <tr>
index 4ee2465..53ac51c 100755 (executable)
@@ -415,13 +415,15 @@ class t3lib_positionMap {
                                                                ($showHidden ? '' : t3lib_BEfunc::BEenableFields('tt_content')).
                                                                ' AND colPos='.intval($vv).
                                                                (strcmp($this->cur_sys_language,'') ? ' AND sys_language_uid='.intval($this->cur_sys_language) : '').
-                                                               t3lib_BEfunc::deleteClause('tt_content'),
+                                                               t3lib_BEfunc::deleteClause('tt_content').
+                                                               t3lib_BEfunc::versioningPlaceholderClause('tt_content'),
                                                        '',
                                                        'sorting'
                                                );
                        $lines[$kk]=array();
                        $lines[$kk][]=$this->insertPositionIcon('',$vv,$kk,$moveUid,$pid);
                        while($row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res))               {
+                               t3lib_BEfunc::workspaceOL('tt_content',$row);
                                $lines[$kk][]=$this->wrapRecordHeader($this->getRecordHeader($row),$row);
                                $lines[$kk][]=$this->insertPositionIcon($row,$vv,$kk,$moveUid,$pid);
                        }
index f2d4c18..586e5e4 100755 (executable)
@@ -347,7 +347,8 @@ class t3lib_recordList {
                        '*',
                        'pages_language_overlay',
                        'pid='.intval($this->id).
-                               t3lib_BEfunc::deleteClause('pages_language_overlay'),
+                               t3lib_BEfunc::deleteClause('pages_language_overlay').
+                               t3lib_BEfunc::versioningPlaceholderClause('pages_language_overlay'),
                        '',
                        '',
                        '',
index 52181d2..1894b00 100755 (executable)
@@ -1741,7 +1741,7 @@ class t3lib_TCEforms      {
                                        list($this_table,$this_uid) = t3lib_BEfunc::splitTable_Uid($recordParts[0]);
                                        $itemArray[] = array('table'=>$this_table, 'id'=>$this_uid);
                                        if ($show_thumbs)       {
-                                               $rr = t3lib_BEfunc::getRecord($this_table,$this_uid);
+                                               $rr = t3lib_BEfunc::getRecordWSOL($this_table,$this_uid);
                                                $imgs[] = '<span class="nobr">'.
                                                                $this->getClickMenu(t3lib_iconWorks::getIconImage($this_table,$rr,$this->backPath,'align="top" title="'.htmlspecialchars(t3lib_BEfunc::getRecordPath($rr['pid'],$perms_clause,15)).' [UID: '.$rr['uid'].']"'),$this_table, $this_uid).
                                                                '&nbsp;'.
@@ -2637,7 +2637,7 @@ class t3lib_TCEforms      {
                        switch($mode)   {
                                case 'db':
                                        while(list(,$pp)=each($itemArray))      {
-                                               $pRec = t3lib_BEfunc::getRecord($pp['table'],$pp['id']);
+                                               $pRec = t3lib_BEfunc::getRecordWSOL($pp['table'],$pp['id']);
                                                if (is_array($pRec))    {
                                                        $pTitle = t3lib_div::fixed_lgd_cs($this->noTitle($pRec[$GLOBALS['TCA'][$pp['table']]['ctrl']['label']]),$this->titleLen);
                                                        $pUid = $pp['table'].'_'.$pp['id'];
@@ -2709,7 +2709,7 @@ class t3lib_TCEforms      {
                                        $itemTitle = 'unescape(\''.rawurlencode(basename($elValue)).'\')';
                                } else {        // 'db' mode assumed
                                        list($itemTable,$itemUid) = explode('|', $elValue);
-                                       $itemTitle = $GLOBALS['LANG']->JScharCode(t3lib_BEfunc::getRecordTitle($itemTable, t3lib_BEfunc::getRecord($itemTable,$itemUid)));
+                                       $itemTitle = $GLOBALS['LANG']->JScharCode(t3lib_BEfunc::getRecordTitle($itemTable, t3lib_BEfunc::getRecordWSOL($itemTable,$itemUid)));
                                        $elValue = $itemTable.'_'.$itemUid;
                                }
                                $aOnClick.= 'setFormValueFromBrowseWin(\''.$fName.'\',unescape(\''.rawurlencode(str_replace('%20',' ',$elValue)).'\'),'.$itemTitle.');';
@@ -3868,7 +3868,7 @@ class t3lib_TCEforms      {
                                                        '</span>';
 
                                $truePid = t3lib_BEfunc::getTSconfig_pidValue($table,$rec['uid'],$rec['pid']);
-                               $prec = t3lib_BEfunc::getRecord('pages',$truePid,'title');
+                               $prec = t3lib_BEfunc::getRecordWSOL('pages',$truePid,'title');
                                $rLabel = '<em>[PID: '.$truePid.'] '.htmlspecialchars(trim(t3lib_div::fixed_lgd_cs(t3lib_BEfunc::getRecordTitle('pages',$prec),40))).'</em>';
                        } else {
                                $newLabel = ' <span class="typo3-TCEforms-recUid">['.$rec['uid'].']</span>';
index 8132f60..fb9390c 100755 (executable)
  *
  *
  *
- *  223: class t3lib_TCEmain
- *  340:     function start($data,$cmd,$altUserObject='')
- *  375:     function setMirror($mirror)
- *  400:     function setDefaultsFromUserTS($userTS)
- *  423:     function process_uploads($postFiles)
- *  461:     function process_uploads_traverseArray(&$outputArr,$inputArr,$keyToSet)
+ *  226: class t3lib_TCEmain
+ *  344:     function start($data,$cmd,$altUserObject='')
+ *  379:     function setMirror($mirror)
+ *  404:     function setDefaultsFromUserTS($userTS)
+ *  427:     function process_uploads($postFiles)
+ *  465:     function process_uploads_traverseArray(&$outputArr,$inputArr,$keyToSet)
  *
  *              SECTION: PROCESSING DATA
- *  497:     function process_datamap()
- *  795:     function fillInFieldArray($table,$id,$fieldArray,$incomingFieldArray,$realPid,$status,$tscPID)
+ *  501:     function process_datamap()
+ *  797:     function placeholderShadowing($table,$id)
+ *  833:     function fillInFieldArray($table,$id,$fieldArray,$incomingFieldArray,$realPid,$status,$tscPID)
  *
  *              SECTION: Evaluation of input values
- * 1015:     function checkValue($table,$field,$value,$id,$status,$realPid,$tscPID)
- * 1075:     function checkValue_SW($res,$value,$tcaFieldConf,$table,$id,$curValue,$status,$realPid,$recFID,$field,$uploadedFiles,$tscPID)
- * 1121:     function checkValue_input($res,$value,$tcaFieldConf,$PP,$field='')
- * 1159:     function checkValue_check($res,$value,$tcaFieldConf,$PP)
- * 1182:     function checkValue_radio($res,$value,$tcaFieldConf,$PP)
- * 1208:     function checkValue_group_select($res,$value,$tcaFieldConf,$PP,$uploadedFiles,$field)
- * 1308:     function checkValue_group_select_file($valueArray,$tcaFieldConf,$curValue,$uploadedFileArray,$status,$table,$id,$recFID)
- * 1461:     function checkValue_flex($res,$value,$tcaFieldConf,$PP,$uploadedFiles,$field)
- * 1534:     function checkValue_flexArray2Xml($array)
- * 1551:     function _DELETE_FLEX_FORMdata(&$valueArrayToRemoveFrom,$deleteCMDS)
- * 1573:     function _MOVE_FLEX_FORMdata(&$valueArrayToMoveIn, $moveCMDS, $direction)
+ * 1053:     function checkValue($table,$field,$value,$id,$status,$realPid,$tscPID)
+ * 1113:     function checkValue_SW($res,$value,$tcaFieldConf,$table,$id,$curValue,$status,$realPid,$recFID,$field,$uploadedFiles,$tscPID)
+ * 1159:     function checkValue_input($res,$value,$tcaFieldConf,$PP,$field='')
+ * 1197:     function checkValue_check($res,$value,$tcaFieldConf,$PP)
+ * 1220:     function checkValue_radio($res,$value,$tcaFieldConf,$PP)
+ * 1246:     function checkValue_group_select($res,$value,$tcaFieldConf,$PP,$uploadedFiles,$field)
+ * 1346:     function checkValue_group_select_file($valueArray,$tcaFieldConf,$curValue,$uploadedFileArray,$status,$table,$id,$recFID)
+ * 1499:     function checkValue_flex($res,$value,$tcaFieldConf,$PP,$uploadedFiles,$field)
+ * 1572:     function checkValue_flexArray2Xml($array)
+ * 1589:     function _DELETE_FLEX_FORMdata(&$valueArrayToRemoveFrom,$deleteCMDS)
+ * 1611:     function _MOVE_FLEX_FORMdata(&$valueArrayToMoveIn, $moveCMDS, $direction)
  *
  *              SECTION: Helper functions for evaluation functions.
- * 1635:     function getUnique($table,$field,$value,$id,$newPid=0)
- * 1673:     function checkValue_input_Eval($value,$evalArray,$is_in)
- * 1761:     function checkValue_group_select_processDBdata($valueArray,$tcaFieldConf,$id,$status,$type)
- * 1794:     function checkValue_group_select_explodeSelectGroupValue($value)
- * 1817:     function checkValue_flex_procInData($dataPart,$dataPart_current,$uploadedFiles,$dataStructArray,$pParams,$callBackFunc='')
- * 1856:     function checkValue_flex_procInData_travDS(&$dataValues,$dataValues_current,$uploadedFiles,$DSelements,$pParams,$callBackFunc,$structurePath)
+ * 1673:     function getUnique($table,$field,$value,$id,$newPid=0)
+ * 1711:     function checkValue_input_Eval($value,$evalArray,$is_in)
+ * 1799:     function checkValue_group_select_processDBdata($valueArray,$tcaFieldConf,$id,$status,$type)
+ * 1832:     function checkValue_group_select_explodeSelectGroupValue($value)
+ * 1855:     function checkValue_flex_procInData($dataPart,$dataPart_current,$uploadedFiles,$dataStructArray,$pParams,$callBackFunc='')
+ * 1894:     function checkValue_flex_procInData_travDS(&$dataValues,$dataValues_current,$uploadedFiles,$DSelements,$pParams,$callBackFunc,$structurePath)
  *
  *              SECTION: PROCESSING COMMANDS
- * 2002:     function process_cmdmap()
+ * 2040:     function process_cmdmap()
  *
  *              SECTION: Cmd: Copying
- * 2153:     function copyRecord($table,$uid,$destPid,$first=0,$overrideValues=array(),$excludeFields='')
- * 2274:     function copyPages($uid,$destPid)
- * 2328:     function copySpecificPage($uid,$destPid,$copyTablesArray,$first=0)
- * 2362:     function copyRecord_raw($table,$uid,$pid,$overrideArray=array())
- * 2424:     function rawCopyPageContent($old_pid,$new_pid,$copyTablesArray)
- * 2448:     function insertNewCopyVersion($table,$fieldArray,$realPid)
- * 2499:     function copyRecord_procBasedOnFieldType($table,$uid,$field,$value,$row,$conf)
- * 2555:     function copyRecord_flexFormCallBack($pParams, $dsConf, $dataValue, $dataValue_ext1, $dataValue_ext2)
- * 2583:     function copyRecord_procFilesRefs($conf, $uid, $value)
+ * 2173:     function copyRecord($table,$uid,$destPid,$first=0,$overrideValues=array(),$excludeFields='')
+ * 2294:     function copyPages($uid,$destPid)
+ * 2348:     function copySpecificPage($uid,$destPid,$copyTablesArray,$first=0)
+ * 2382:     function copyRecord_raw($table,$uid,$pid,$overrideArray=array())
+ * 2444:     function rawCopyPageContent($old_pid,$new_pid,$copyTablesArray)
+ * 2468:     function insertNewCopyVersion($table,$fieldArray,$realPid)
+ * 2519:     function copyRecord_procBasedOnFieldType($table,$uid,$field,$value,$row,$conf)
+ * 2575:     function copyRecord_flexFormCallBack($pParams, $dsConf, $dataValue, $dataValue_ext1, $dataValue_ext2)
+ * 2603:     function copyRecord_procFilesRefs($conf, $uid, $value)
  *
  *              SECTION: Cmd: Moving, Localizing
- * 2652:     function moveRecord($table,$uid,$destPid)
- * 2816:     function localize($table,$uid,$language)
- *
- *              SECTION: Cmd: Versioning
- * 2891:     function versionizeRecord($table,$id,$label,$delete=FALSE,$versionizeTree=-1)
- * 2967:     function versionizePages($uid,$label,$versionizeTree)
- * 3030:     function version_swap($table,$id,$swapWith,$swapIntoWS=0)
- * 3195:     function version_clearWSID($table,$id)
- * 3222:     function version_setStage($table,$id,$stageId,$comment='')
+ * 2672:     function moveRecord($table,$uid,$destPid)
+ * 2836:     function localize($table,$uid,$language)
  *
  *              SECTION: Cmd: Deleting
- * 3273:     function deleteRecord($table,$uid, $noRecordCheck=FALSE, $forceHardDelete=FALSE)
- * 3329:     function deletePages($uid,$force=FALSE,$forceHardDelete=FALSE)
- * 3357:     function deleteSpecificPage($uid,$forceHardDelete=FALSE)
- * 3380:     function canDeletePage($uid)
- * 3407:     function cannotDeleteRecord($table,$id)
+ * 2910:     function deleteAction($table, $id)
+ * 2957:     function deleteEl($table, $uid, $noRecordCheck=FALSE, $forceHardDelete=FALSE)
+ * 2977:     function deleteRecord($table,$uid, $noRecordCheck=FALSE, $forceHardDelete=FALSE)
+ * 3033:     function deletePages($uid,$force=FALSE,$forceHardDelete=FALSE)
+ * 3061:     function deleteSpecificPage($uid,$forceHardDelete=FALSE)
+ * 3084:     function canDeletePage($uid)
+ * 3111:     function cannotDeleteRecord($table,$id)
+ *
+ *              SECTION: Cmd: Versioning
+ * 3149:     function versionizeRecord($table,$id,$label,$delete=FALSE,$versionizeTree=-1)
+ * 3225:     function versionizePages($uid,$label,$versionizeTree)
+ * 3288:     function version_swap($table,$id,$swapWith,$swapIntoWS=0)
+ * 3445:     function version_clearWSID($table,$id)
+ * 3478:     function version_setStage($table,$id,$stageId,$comment='')
  *
  *              SECTION: Cmd: Helper functions
- * 3438:     function remapListedDBRecords()
- * 3515:     function remapListedDBRecords_flexFormCallBack($pParams, $dsConf, $dataValue, $dataValue_ext1, $dataValue_ext2)
- * 3541:     function remapListedDBRecords_procDBRefs($conf, $value, $MM_localUid)
+ * 3523:     function remapListedDBRecords()
+ * 3600:     function remapListedDBRecords_flexFormCallBack($pParams, $dsConf, $dataValue, $dataValue_ext1, $dataValue_ext2)
+ * 3626:     function remapListedDBRecords_procDBRefs($conf, $value, $MM_localUid)
  *
  *              SECTION: Access control / Checking functions
- * 3605:     function checkModifyAccessList($table)
- * 3617:     function isRecordInWebMount($table,$id)
- * 3631:     function isInWebMount($pid)
- * 3645:     function checkRecordUpdateAccess($table,$id)
- * 3669:     function checkRecordInsertAccess($insertTable,$pid,$action=1)
- * 3703:     function isTableAllowedForThisPage($page_uid, $checkTable)
- * 3736:     function doesRecordExist($table,$id,$perms)
- * 3798:     function doesRecordExist_pageLookUp($id, $perms)
- * 3824:     function doesBranchExist($inList,$pid,$perms,$recurse)
- * 3858:     function tableReadOnly($table)
- * 3870:     function tableAdminOnly($table)
- * 3884:     function destNotInsideSelf($dest,$id)
- * 3916:     function getExcludeListArray()
- * 3939:     function doesPageHaveUnallowedTables($page_uid,$doktype)
+ * 3690:     function checkModifyAccessList($table)
+ * 3702:     function isRecordInWebMount($table,$id)
+ * 3716:     function isInWebMount($pid)
+ * 3730:     function checkRecordUpdateAccess($table,$id)
+ * 3754:     function checkRecordInsertAccess($insertTable,$pid,$action=1)
+ * 3788:     function isTableAllowedForThisPage($page_uid, $checkTable)
+ * 3821:     function doesRecordExist($table,$id,$perms)
+ * 3883:     function doesRecordExist_pageLookUp($id, $perms)
+ * 3909:     function doesBranchExist($inList,$pid,$perms,$recurse)
+ * 3943:     function tableReadOnly($table)
+ * 3955:     function tableAdminOnly($table)
+ * 3969:     function destNotInsideSelf($dest,$id)
+ * 4001:     function getExcludeListArray()
+ * 4024:     function doesPageHaveUnallowedTables($page_uid,$doktype)
  *
  *              SECTION: Information lookup
- * 3988:     function pageInfo($id,$field)
- * 4008:     function recordInfo($table,$id,$fieldList)
- * 4027:     function getRecordProperties($table,$id)
- * 4040:     function getRecordPropertiesFromRow($table,$row)
+ * 4073:     function pageInfo($id,$field)
+ * 4093:     function recordInfo($table,$id,$fieldList)
+ * 4112:     function getRecordProperties($table,$id)
+ * 4126:     function getRecordPropertiesFromRow($table,$row)
  *
  *              SECTION: Storing data to Database Layer
- * 4083:     function updateDB($table,$id,$fieldArray)
- * 4131:     function insertDB($table,$id,$fieldArray,$newVersion=FALSE,$suggestedUid=0,$dontSetNewIdIndex=FALSE)
- * 4199:     function checkStoredRecord($table,$id,$fieldArray,$action)
- * 4236:     function setHistory($table,$id,$logId)
- * 4275:     function clearHistory($table,$id,$keepEntries=10,$maxAgeSeconds=604800)
+ * 4169:     function updateDB($table,$id,$fieldArray)
+ * 4217:     function insertDB($table,$id,$fieldArray,$newVersion=FALSE,$suggestedUid=0,$dontSetNewIdIndex=FALSE)
+ * 4287:     function checkStoredRecord($table,$id,$fieldArray,$action)
+ * 4324:     function setHistory($table,$id,$logId)
+ * 4363:     function clearHistory($table,$id,$keepEntries=10,$maxAgeSeconds=604800)
  *
  *              SECTION: Misc functions
- * 4324:     function getSortNumber($table,$uid,$pid)
- * 4397:     function resorting($table,$pid,$sortRow, $return_SortNumber_After_This_Uid)
- * 4428:     function setTSconfigPermissions($fieldArray,$TSConfig_p)
- * 4445:     function newFieldArray($table)
- * 4477:     function overrideFieldArray($table,$data)
- * 4493:     function compareFieldArrayWithCurrentAndUnset($table,$id,$fieldArray)
- * 4539:     function assemblePermissions($string)
- * 4556:     function rmComma($input)
- * 4566:     function convNumEntityToByteValue($input)
- * 4588:     function destPathFromUploadFolder($folder)
- * 4598:     function deleteClause($table)
- * 4614:     function getTCEMAIN_TSconfig($tscPID)
- * 4629:     function getTableEntries($table,$TSconfig)
- * 4642:     function getPID($table,$uid)
- * 4655:     function dbAnalysisStoreExec()
- * 4671:     function removeRegisteredFiles()
- * 4683:     function removeCacheFiles()
- * 4708:     function int_pageTreeInfo($CPtable,$pid,$counter, $rootID)
- * 4729:     function compileAdminTables()
- * 4746:     function fixUniqueInPid($table,$uid)
- * 4782:     function fixCopyAfterDuplFields($table,$uid,$prevUid,$update, $newData=array())
- * 4807:     function extFileFields($table)
- * 4828:     function getUniqueFields($table)
- * 4853:     function isReferenceField($conf)
- * 4868:     function getCopyHeader($table,$pid,$field,$value,$count,$prevTitle='')
- * 4897:     function prependLabel($table)
- * 4914:     function resolvePid($table,$pid)
- * 4944:     function clearPrefixFromValue($table,$value)
- * 4959:     function extFileFunctions($table,$field,$filelist,$func)
- * 4989:     function noRecordsFromUnallowedTables($inList)
- * 5015:     function notifyStageChange($stat,$stageId,$table,$id,$comment)
- * 5109:     function notifyStageChange_getEmails($listOfUsers,$noTablePrefix=FALSE)
+ * 4412:     function getSortNumber($table,$uid,$pid)
+ * 4485:     function resorting($table,$pid,$sortRow, $return_SortNumber_After_This_Uid)
+ * 4516:     function setTSconfigPermissions($fieldArray,$TSConfig_p)
+ * 4533:     function newFieldArray($table)
+ * 4565:     function overrideFieldArray($table,$data)
+ * 4581:     function compareFieldArrayWithCurrentAndUnset($table,$id,$fieldArray)
+ * 4627:     function assemblePermissions($string)
+ * 4644:     function rmComma($input)
+ * 4654:     function convNumEntityToByteValue($input)
+ * 4676:     function destPathFromUploadFolder($folder)
+ * 4686:     function deleteClause($table)
+ * 4702:     function getTCEMAIN_TSconfig($tscPID)
+ * 4717:     function getTableEntries($table,$TSconfig)
+ * 4730:     function getPID($table,$uid)
+ * 4743:     function dbAnalysisStoreExec()
+ * 4759:     function removeRegisteredFiles()
+ * 4771:     function removeCacheFiles()
+ * 4796:     function int_pageTreeInfo($CPtable,$pid,$counter, $rootID)
+ * 4817:     function compileAdminTables()
+ * 4834:     function fixUniqueInPid($table,$uid)
+ * 4870:     function fixCopyAfterDuplFields($table,$uid,$prevUid,$update, $newData=array())
+ * 4895:     function extFileFields($table)
+ * 4916:     function getUniqueFields($table)
+ * 4941:     function isReferenceField($conf)
+ * 4956:     function getCopyHeader($table,$pid,$field,$value,$count,$prevTitle='')
+ * 4985:     function prependLabel($table)
+ * 5002:     function resolvePid($table,$pid)
+ * 5032:     function clearPrefixFromValue($table,$value)
+ * 5047:     function extFileFunctions($table,$field,$filelist,$func)
+ * 5077:     function noRecordsFromUnallowedTables($inList)
+ * 5103:     function notifyStageChange($stat,$stageId,$table,$id,$comment)
+ * 5198:     function notifyStageChange_getEmails($listOfUsers,$noTablePrefix=FALSE)
  *
  *              SECTION: Clearing cache
- * 5155:     function clear_cache($table,$uid)
- * 5264:     function clear_cacheCmd($cacheCmd)
+ * 5244:     function clear_cache($table,$uid)
+ * 5353:     function clear_cacheCmd($cacheCmd)
  *
  *              SECTION: Logging
- * 5370:     function log($table,$recuid,$action,$recpid,$error,$details,$details_nr=-1,$data=array(),$event_pid=-1,$NEWid='')
- * 5387:     function newlog($message, $error=0)
- * 5397:     function printLogErrorMessages($redirect)
+ * 5459:     function log($table,$recuid,$action,$recpid,$error,$details,$details_nr=-1,$data=array(),$event_pid=-1,$NEWid='')
+ * 5476:     function newlog($message, $error=0)
+ * 5486:     function printLogErrorMessages($redirect)
  *
- * TOTAL FUNCTIONS: 109
+ * TOTAL FUNCTIONS: 112
  * (This index is automatically created/updated by the extension "extdeveval")
  *
  */
@@ -4108,6 +4111,7 @@ $this->log($table,$id,6,0,0,'Stage raised...',-1,array('comment'=>$comment,'stag
         */
        function getRecordProperties($table,$id)        {
                $row = ($table=='pages' && !$id) ? array('title'=>'[root-level]', 'uid' => 0, 'pid' => 0) :$this->recordInfo($table,$id,'*');
+               t3lib_BEfunc::workspaceOL($table,$row);
                t3lib_BEfunc::fixVersioningPid($table,$row);
                return $this->getRecordPropertiesFromRow($table,$row);
        }
index 37af913..bf9cad4 100755 (executable)
@@ -847,9 +847,7 @@ class t3lib_treeView {
                                                $this->parentField.'='.$GLOBALS['TYPO3_DB']->fullQuoteStr($uid, $this->table).
                                                        t3lib_BEfunc::deleteClause($this->table).
                                                        t3lib_BEfunc::versioningPlaceholderClause($this->table).
-                                                       $this->clause,  // whereClauseMightContainGroupOrderBy
-                                               '',
-                                               '' //$this->orderByFields // sorting is senseless for count(*) !?!
+                                                       $this->clause   // whereClauseMightContainGroupOrderBy
                                        );
                        $row = $GLOBALS['TYPO3_DB']->sql_fetch_row($res);
                        return $row[0];
@@ -881,8 +879,7 @@ class t3lib_treeView {
                if (is_array($this->data)) {
                        return $this->dataLookup[$uid];
                } else {
-                       $row = t3lib_befunc::getRecord($this->table,$uid);
-                       t3lib_BEfunc::workspaceOL($this->table, $row, $this->BE_USER->workspace);
+                       $row = t3lib_befunc::getRecordWSOL($this->table,$uid);
 
                        return $row;
                }
index 1b56a3b..a8b5fbe 100755 (executable)
@@ -1647,7 +1647,7 @@ debug($saveId);
 
                        t3lib_div::unlink_tempfile($tmp_upload_name);
 
-                       $tmpRow = t3lib_BEfunc::getRecord("sys_template",$saveId,"resources");
+                       $tmpRow = t3lib_BEfunc::getRecordWSOL("sys_template",$saveId,"resources");
 
                        $tplRow["resources"] = $tmpRow["resources"];
 
index 4ceeaad..4fa1c40 100755 (executable)
  *  607:     function isPSet($lCP,$table,$type='')
  *  624:     function mayMakeShortcut()
  *  638:     function workspaceCannotEditRecord($table,$recData)
- *  676:     function workspaceCannotEditOfflineVersion($table,$recData)
- *  699:     function workspaceAllowLiveRecordsInPID($pid, $table)
- *  720:     function workspaceCreateNewRecord($pid, $table)
- *  739:     function workspaceAllowAutoCreation($table,$id,$recpid)
- *  759:     function workspaceCheckStageForCurrent($stage)
- *  782:     function workspacePublishAccess($wsid)
- *  806:     function workspaceSwapAccess()
- *  818:     function workspaceVersioningTypeAccess($type)
- *  845:     function workspaceVersioningTypeGetClosest($type)
+ *  677:     function workspaceCannotEditOfflineVersion($table,$recData)
+ *  700:     function workspaceAllowLiveRecordsInPID($pid, $table)
+ *  721:     function workspaceCreateNewRecord($pid, $table)
+ *  740:     function workspaceAllowAutoCreation($table,$id,$recpid)
+ *  760:     function workspaceCheckStageForCurrent($stage)
+ *  783:     function workspacePublishAccess($wsid)
+ *  807:     function workspaceSwapAccess()
+ *  819:     function workspaceVersioningTypeAccess($type)
+ *  846:     function workspaceVersioningTypeGetClosest($type)
  *
  *              SECTION: Miscellaneous functions
- *  886:     function getTSConfig($objectString,$config='')
- *  912:     function getTSConfigVal($objectString)
- *  924:     function getTSConfigProp($objectString)
- *  936:     function inList($in_list,$item)
- *  947:     function returnWebmounts()
- *  957:     function returnFilemounts()
+ *  887:     function getTSConfig($objectString,$config='')
+ *  913:     function getTSConfigVal($objectString)
+ *  925:     function getTSConfigProp($objectString)
+ *  937:     function inList($in_list,$item)
+ *  948:     function returnWebmounts()
+ *  958:     function returnFilemounts()
  *
  *              SECTION: Authentication methods
- *  988:     function fetchGroupData()
- * 1121:     function fetchGroups($grList,$idList='')
- * 1208:     function setCachedList($cList)
- * 1228:     function addFileMount($title, $altTitle, $path, $webspace, $type)
- * 1275:     function addTScomment($str)
+ *  989:     function fetchGroupData()
+ * 1122:     function fetchGroups($grList,$idList='')
+ * 1209:     function setCachedList($cList)
+ * 1229:     function addFileMount($title, $altTitle, $path, $webspace, $type)
+ * 1276:     function addTScomment($str)
  *
  *              SECTION: Workspaces
- * 1311:     function workspaceInit()
- * 1354:     function checkWorkspace($wsRec,$fields='uid,title,adminusers,members,reviewers,publish_access,stagechg_notification')
- * 1428:     function checkWorkspaceCurrent()
- * 1441:     function setWorkspace($workspaceId)
- * 1469:     function setWorkspacePreview($previewState)
- * 1479:     function getDefaultWorkspace()
+ * 1312:     function workspaceInit()
+ * 1355:     function checkWorkspace($wsRec,$fields='uid,title,adminusers,members,reviewers,publish_access,stagechg_notification')
+ * 1429:     function checkWorkspaceCurrent()
+ * 1442:     function setWorkspace($workspaceId)
+ * 1470:     function setWorkspacePreview($previewState)
+ * 1480:     function getDefaultWorkspace()
  *
  *              SECTION: Logging
- * 1530:     function writelog($type,$action,$error,$details_nr,$details,$data,$tablename='',$recuid='',$recpid='',$event_pid=-1,$NEWid='',$userId=0)
- * 1562:     function simplelog($message, $extKey='', $error=0)
- * 1583:     function checkLogFailures($email, $secondsBack=3600, $max=3)
+ * 1531:     function writelog($type,$action,$error,$details_nr,$details,$data,$tablename='',$recuid='',$recpid='',$event_pid=-1,$NEWid='',$userId=0)
+ * 1563:     function simplelog($message, $extKey='', $error=0)
+ * 1584:     function checkLogFailures($email, $secondsBack=3600, $max=3)
  *
  * TOTAL FUNCTIONS: 44
  * (This index is automatically created/updated by the extension "extdeveval")
index 11dafad..0b1837f 100755 (executable)
@@ -232,7 +232,7 @@ class clickMenu {
                global $TCA, $BE_USER;
 
                        // Get record:
-               $this->rec = t3lib_BEfunc::getRecord($table,$uid);
+               $this->rec = t3lib_BEfunc::getRecordWSOL($table,$uid);
                $menuItems=array();
                $root=0;
                if ($table=='pages' && !strcmp($uid,'0'))       {       // Rootlevel
@@ -241,7 +241,6 @@ class clickMenu {
 
                        // If record found (or root), go ahead and fill the $menuItems array which will contain data for the elements to render.
                if (is_array($this->rec) || $root)      {
-                       t3lib_BEfunc::workspaceOL($table,$this->rec);
 
                                // Get permissions
                        $lCP = $BE_USER->calcPerms(t3lib_BEfunc::getRecord('pages',($table=='pages'?$this->rec['uid']:$this->rec['pid'])));
@@ -321,7 +320,7 @@ class clickMenu {
                global $TCA, $BE_USER;
 
                        // Setting internal record to the table/uid :
-               $this->rec = t3lib_BEfunc::getRecord($table,$uid);
+               $this->rec = t3lib_BEfunc::getRecordWSOL($table,$uid);
                $menuItems=array();
                $root=0;
                if ($table=='pages' && !strcmp($uid,'0'))       {       // Rootlevel
index 9ebf0b2..e52f30a 100755 (executable)
  *
  *
  *
- *   94: class SC_alt_doc
- *  167:     function preInit()
- *  219:     function doProcessData()
- *  229:     function processData()
- *  346:     function init()
- *  432:     function main()
- *  500:     function printContent()
+ *  100: class SC_alt_doc
+ *  174:     function preInit()
+ *  232:     function doProcessData()
+ *  242:     function processData()
+ *  370:     function init()
+ *  462:     function main()
+ *  531:     function printContent()
  *
  *              SECTION: Sub-content functions, rendering specific parts of the module content.
- *  535:     function makeEditForm()
- *  717:     function makeButtonPanel()
- *  796:     function makeDocSel()
- *  838:     function makeCmenu()
- *  859:     function compileForm($panel,$docSel,$cMenu,$editForm)
- *  921:     function functionMenus()
- *  952:     function shortCutLink()
- *  983:     function tceformMessages()
+ *  566:     function makeEditForm()
+ *  749:     function makeButtonPanel()
+ *  828:     function makeDocSel()
+ *  870:     function makeCmenu()
+ *  891:     function compileForm($panel,$docSel,$cMenu,$editForm)
+ *  953:     function functionMenus()
+ *  984:     function shortCutLink()
+ * 1015:     function tceformMessages()
  *
  *              SECTION: Other functions
- * 1021:     function editRegularContentFromId()
- * 1048:     function compileStoreDat()
- * 1061:     function getNewIconMode($table,$key='saveDocNew')
- * 1074:     function closeDocument($code=0)
- * 1106:     function setDocument($currentDocFromHandlerMD5='',$retUrl='alt_doc_nodoc.php')
+ * 1054:     function fixWSversioningInEditConf($mapArray=FALSE)
+ * 1103:     function getRecordForEdit($table,$theUid)
+ * 1138:     function editRegularContentFromId()
+ * 1165:     function compileStoreDat()
+ * 1178:     function getNewIconMode($table,$key='saveDocNew')
+ * 1191:     function closeDocument($code=0)
+ * 1223:     function setDocument($currentDocFromHandlerMD5='',$retUrl='alt_doc_nodoc.php')
  *
- * TOTAL FUNCTIONS: 19
+ * TOTAL FUNCTIONS: 21
  * (This index is automatically created/updated by the extension "extdeveval")
  *
  */
@@ -1044,9 +1046,10 @@ class SC_alt_doc {
         ***************************/
 
        /**
-        * Get record for editing.
-        *
+        * Fix $this->editconf if versioning applies to any of the records
         *
+        * @param       array           Mapping between old and new ids if auto-versioning has been performed.
+        * @return      void
         */
        function fixWSversioningInEditConf($mapArray=FALSE)     {
                global $TCA,$BE_USER;
@@ -1093,14 +1096,15 @@ class SC_alt_doc {
        /**
         * Get record for editing.
         *
-        *
+        * @param       string          Table name
+        * @param       integer         Record UID
+        * @return      array           Returns record to edit, false if none
         */
        function getRecordForEdit($table,$theUid)       {
                global $TCA;
 
                        // Fetch requested record:
                $reqRecord = t3lib_BEfunc::getRecord($table,$theUid,'uid,pid');
-#return $reqRecord;
 
                if (is_array($reqRecord))       {
                                // If workspace is OFFLINE:
@@ -1137,6 +1141,7 @@ class SC_alt_doc {
                                                'tt_content',
                                                'pid='.intval($this->editRegularContentFromId).
                                                        t3lib_BEfunc::deleteClause('tt_content').
+                                                       t3lib_BEfunc::versioningPlaceholderClause('tt_content').
                                                        ' AND colPos=0 AND sys_language_uid=0',
                                                '',
                                                'sorting'
index 0a97237..24905fb 100755 (executable)
@@ -392,12 +392,13 @@ class SC_alt_main {
                                // Looking up the page to edit, checking permissions:
                        $where = ' AND ('.$BE_USER->getPagePermsClause(2).' OR '.$BE_USER->getPagePermsClause(16).')';
                        if (t3lib_div::testInt($editId))        {
-                               $theEditRec = t3lib_BEfunc::getRecord('pages',$editId,'*',$where);
+                               $theEditRec = t3lib_BEfunc::getRecordWSOL('pages',$editId,'*',$where);
                        } else {
                                $records = t3lib_BEfunc::getRecordsByField('pages','alias',$editId,$where);
                                if (is_array($records)) {
                                        reset($records);
                                        $theEditRec = current($records);
+                                       t3lib_BEfunc::workspaceOL('pages', $theEditRec);
                                }
                        }
 
index 17313a2..1b54cd8 100755 (executable)
@@ -447,12 +447,13 @@ class SC_alt_shortcut {
 
                                $where = ' AND ('.$BE_USER->getPagePermsClause(2).' OR '.$BE_USER->getPagePermsClause(16).')';
                                if (t3lib_div::testInt($this->editPage))        {
-                                       $this->theEditRec = t3lib_BEfunc::getRecord ('pages',$this->editPage,'*',$where);
+                                       $this->theEditRec = t3lib_BEfunc::getRecordWSOL('pages',$this->editPage,'*',$where);
                                } else {
                                        $records = t3lib_BEfunc::getRecordsByField('pages','alias',$this->editPage,$where);
                                        if (is_array($records)) {
                                                reset($records);
                                                $this->theEditRec = current($records);
+                                               t3lib_BEfunc::workspaceOL('pages',$this->theEditRec);
                                        }
                                }
                                if (!is_array($this->theEditRec))       {
index 78fe262..f519c34 100755 (executable)
@@ -1505,7 +1505,7 @@ class SC_browse_links {
 
                                // Create header for listing, showing the page title/icon:
                        $titleLen=intval($GLOBALS['BE_USER']->uc['titleLen']);
-                       $mainPageRec = t3lib_BEfunc::getRecord('pages',$expPageId);
+                       $mainPageRec = t3lib_BEfunc::getRecordWSOL('pages',$expPageId);
                        $picon=t3lib_iconWorks::getIconImage('pages',$mainPageRec,'','');
                        $picon.= htmlspecialchars(t3lib_div::fixed_lgd_cs($mainPageRec['title'],$titleLen));
                        $out.=$picon.'<br />';
@@ -1514,7 +1514,9 @@ class SC_browse_links {
                        $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
                                                        'uid,header,hidden,starttime,endtime,fe_group,CType,colpos,bodytext',
                                                        'tt_content',
-                                                       'pid='.intval($expPageId).t3lib_BEfunc::deleteClause('tt_content'),
+                                                       'pid='.intval($expPageId).
+                                                               t3lib_BEfunc::deleteClause('tt_content').
+                                                               t3lib_BEfunc::versioningPlaceholderClause('tt_content'),
                                                        '',
                                                        'colpos,sorting'
                                                );
@@ -1584,7 +1586,7 @@ class SC_browse_links {
 
                                // Create the header, showing the current page for which the listing is. Includes link to the page itself, if pages are amount allowed tables.
                        $titleLen=intval($GLOBALS['BE_USER']->uc['titleLen']);
-                       $mainPageRec = t3lib_BEfunc::getRecord('pages',$this->expandPage);
+                       $mainPageRec = t3lib_BEfunc::getRecordWSOL('pages',$this->expandPage);
                        $ATag='';
                        $ATag_e='';
                        $ATag2='';
@@ -2107,7 +2109,7 @@ class SC_browse_links {
                                                                $id=intval($idPartR['uid']);
                                                        }
 
-                                                       $pageRow = t3lib_BEfunc::getRecord('pages',$id);
+                                                       $pageRow = t3lib_BEfunc::getRecordWSOL('pages',$id);
                                                        $titleLen=intval($GLOBALS['BE_USER']->uc['titleLen']);
                                                        $info['value']=$GLOBALS['LANG']->getLL('page',1)." '".htmlspecialchars(t3lib_div::fixed_lgd_cs($pageRow['title'],$titleLen))."' (ID:".$id.($uP['fragment']?', #'.$uP['fragment']:'').')';
                                                        $info['pageid']=$id;
index 98538c7..1442e75 100755 (executable)
@@ -201,8 +201,7 @@ class recordList extends t3lib_recordList {
                global $TCA;
 
                        // Set page record in header
-               $this->pageRecord = t3lib_BEfunc::getRecord('pages',$this->id);
-               t3lib_BEfunc::workspaceOL('pages',$this->pageRecord);
+               $this->pageRecord = t3lib_BEfunc::getRecordWSOL('pages',$this->id);
 
                        // Traverse the TCA table array:
                reset($TCA);
@@ -310,7 +309,7 @@ class recordList extends t3lib_recordList {
                if (!t3lib_extMgm::isLoaded('sys_note'))        return '';
 
                        // Create query for selecting the notes:
-               $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*','sys_note','pid IN ('.$this->id.') AND (personal=0 OR cruser='.intval($GLOBALS['BE_USER']->user['uid']).')'.t3lib_BEfunc::deleteClause('sys_note'));
+               $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*','sys_note','pid IN ('.$this->id.') AND (personal=0 OR cruser='.intval($GLOBALS['BE_USER']->user['uid']).')'.t3lib_BEfunc::deleteClause('sys_note').t3lib_BEfunc::versioningPlaceholderClause('sys_note'));
 
                        // Executing query:
                $dbCount = $GLOBALS['TYPO3_DB']->sql_num_rows($result);
@@ -723,7 +722,8 @@ class recordList extends t3lib_recordList {
                                        $table,
                                        $TCA[$table]['ctrl']['languageField'].'='.intval($language).' AND '.
                                                $TCA[$table]['ctrl']['transOrigPointerField'].'='.intval($orig_uid).
-                                               t3lib_BEfunc::deleteClause($table)
+                                               t3lib_BEfunc::deleteClause($table).
+                                               t3lib_BEfunc::versioningPlaceholderClause($table)
                                );
 
                        if (is_array($localizedRecord)) {
index 722a682..28e44bf 100755 (executable)
@@ -492,7 +492,8 @@ class localRecordList extends recordList {
                                                                'pid='.$row['pid'].
                                                                        ' AND '.$TCA[$table]['ctrl']['languageField'].'>0'.
                                                                        ' AND '.$TCA[$table]['ctrl']['transOrigPointerField'].'='.intval($row['uid']).
-                                                                       t3lib_BEfunc::deleteClause($table)
+                                                                       t3lib_BEfunc::deleteClause($table).
+                                                                       t3lib_BEfunc::versioningPlaceholderClause($table)
                                                        );
 
                                                                // For each available translation, render the record:
@@ -1063,7 +1064,8 @@ class localRecordList extends recordList {
                                        'pid='.intval($this->id).
                                                ' AND '.$TCA[$table]['ctrl']['languageField'].'>0'.
                                                ' AND '.$TCA[$table]['ctrl']['transOrigPointerField'].'='.intval($row['uid']).
-                                               t3lib_BEfunc::deleteClause($table),
+                                               t3lib_BEfunc::deleteClause($table).
+                                               t3lib_BEfunc::versioningPlaceholderClause($table),
                                        '',
                                        '',
                                        '',
index 7fa708a..0b70a80 100755 (executable)
  *
  *   68: class wslib
  *   80:     function getCmdArrayForPublishWS($wsid, $doSwap)
- *  125:     function selectVersionsInWorkspace($wsid,$filter=0,$stage=-99)
+ *  126:     function selectVersionsInWorkspace($wsid,$filter=0,$stage=-99,$pageId=-1)
  *
  *              SECTION: CLI functions
- *  180:     function CLI_main()
- *  190:     function autoPublishWorkspaces()
+ *  182:     function CLI_main()
+ *  192:     function autoPublishWorkspaces()
  *
  * TOTAL FUNCTIONS: 4
  * (This index is automatically created/updated by the extension "extdeveval")
index 269b199..49cd2dc 100755 (executable)
  *  849:     function displayWorkspaceOverview_commandLinksSub($table,$rec,$origId)
  *  897:     function displayWorkspaceOverview_setInPageArray(&$pArray,$rlArr,$table,$row)
  *  928:     function subElements($uid,$treeLevel,$origId=0)
- * 1030:     function subElements_getNonPageRecords($tN, $uid, &$recList)
- * 1060:     function subElements_renderItem(&$tCell,$tN,$uid,$rec,$origId,$iconMode,$HTMLdata)
- * 1129:     function markupNewOriginals()
- * 1151:     function createDiffView($table, $diff_1_record, $diff_2_record)
+ * 1031:     function subElements_getNonPageRecords($tN, $uid, &$recList)
+ * 1061:     function subElements_renderItem(&$tCell,$tN,$uid,$rec,$origId,$iconMode,$HTMLdata)
+ * 1130:     function markupNewOriginals()
+ * 1152:     function createDiffView($table, $diff_1_record, $diff_2_record)
  *
  *              SECTION: Module content: Workspace list
- * 1283:     function moduleContent_workspaceList()
+ * 1284:     function moduleContent_workspaceList()
  *
  *              SECTION: Helper functions
- * 1331:     function formatVerId($verId)
- * 1341:     function formatWorkspace($wsid)
- * 1368:     function formatCount($count)
- * 1395:     function versionsInOtherWS($table,$uid)
- * 1425:     function showStageChangeLog($table,$id,$stageCommands)
+ * 1332:     function formatVerId($verId)
+ * 1342:     function formatWorkspace($wsid)
+ * 1369:     function formatCount($count)
+ * 1396:     function versionsInOtherWS($table,$uid)
+ * 1426:     function showStageChangeLog($table,$id,$stageCommands)
  *
  *              SECTION: Processing
- * 1484:     function publishAction()
+ * 1485:     function publishAction()
  *
  * TOTAL FUNCTIONS: 25
  * (This index is automatically created/updated by the extension "extdeveval")
index ba85ee0..426678c 100755 (executable)
@@ -287,7 +287,7 @@ class SC_move_el {
                if ($this->page_id)     {
 
                                // Get record for element:
-                       $elRow = t3lib_BEfunc::getRecord($this->table,$this->moveUid);
+                       $elRow = t3lib_BEfunc::getRecordWSOL($this->table,$this->moveUid);
 
                                // Headerline: Icon, record title:
                        $hline = t3lib_iconWorks::getIconImage($this->table,$elRow,$BACK_PATH,' id="c-recIcon" title="'.htmlspecialchars(t3lib_BEfunc::getRecordIconAltText($elRow,$this->table)).'"');
index 3b21950..7f66e31 100755 (executable)
@@ -455,11 +455,11 @@ BODY#typo3-mod-tools-em-index-php TR.bgColor5 TD {font-weight: bold;}
 
 /* Workspace */
 DIV.workspace-info {padding: 0px 2px 0px 2px; margin: 0px 0px 4px 0px; border: 1px solid #999999;}
-TD.ver-element { background-color: #ccddcc; }
-TD.ver-page { background-color: #ccccff; }
-TD.ver-branch { background-color: #ffcccc; }
-TD.ver-branchpoint { background-color: #ff9999; }
-TD.ver-versions { background-color: #ffffaa; }
+.ver-element { background-color: #ccddcc; }
+.ver-page { background-color: #ccccff; }
+.ver-branch { background-color: #ffcccc; }
+.ver-branchpoint { background-color: #ff9999; }
+.ver-versions { background-color: #ffffaa; }
 TABLE.workspace-overview TD { vertical-align : top; }
 TABLE.ver-subtree A { text-decoration: none; }
 TABLE.ver-subtree TR TD.iconTitle { white-space: nowrap; }
index 7dd12a4..4771fd0 100755 (executable)
@@ -384,7 +384,7 @@ class tx_cms_layout extends recordList {
                $RTE = $GLOBALS['BE_USER']->isRTE();
                $lMarg=1;
                $showHidden = $this->tt_contentConfig['showHidden']?'':t3lib_BEfunc::BEenableFields('tt_content');
-               $pageTitleParamForAltDoc='&recTitle='.rawurlencode(t3lib_BEfunc::getRecordTitle('pages',t3lib_BEfunc::getRecord('pages',$id),1));
+               $pageTitleParamForAltDoc='&recTitle='.rawurlencode(t3lib_BEfunc::getRecordTitle('pages',t3lib_BEfunc::getRecordWSOL('pages',$id),1));
 
                        // Get labels for CTypes and tt_content element fields in general:
                $this->CType_labels =array();
@@ -439,23 +439,25 @@ class tx_cms_layout extends recordList {
                                                // Traverse any selected elements and render their display code:
                                        $rowArr = $this->getResult($result);
 
-                                       foreach($rowArr as $row)        {
+                                       foreach($rowArr as $rKey => $row)       {
                                                t3lib_BEfunc::workspaceOL('tt_content', $row);
 
-                                               $singleElementHTML = '';
-                                               if (!$lP) $defLanguageCount[$key][] = $row['uid'];
+                                               if ((int)$row['t3ver_state']!=2)        {
+                                                       $singleElementHTML = '';
+                                                       if (!$lP) $defLanguageCount[$key][] = $row['uid'];
 
-                                               $editUidList.= $row['uid'].',';
-                                               $singleElementHTML.= $this->tt_content_drawHeader($row,$this->tt_contentConfig['showInfo']?15:5, $this->defLangBinding && $lP>0, TRUE);
+                                                       $editUidList.= $row['uid'].',';
+                                                       $singleElementHTML.= $this->tt_content_drawHeader($row,$this->tt_contentConfig['showInfo']?15:5, $this->defLangBinding && $lP>0, TRUE);
 
-                                               $isRTE = $RTE && $this->isRTEforField('tt_content',$row,'bodytext');
-                                               $singleElementHTML.= $this->tt_content_drawItem($row,$isRTE);
+                                                       $isRTE = $RTE && $this->isRTEforField('tt_content',$row,'bodytext');
+                                                       $singleElementHTML.= '<div '.($row['_ORIG_uid'] ? ' class="ver-element"' :'').'>'.$this->tt_content_drawItem($row,$isRTE).'</div>';
 
-                                               if ($this->defLangBinding && $this->tt_contentConfig['languageMode'])   {
-                                                       $defLangBinding[$key][$lP][$row[($lP ? 'l18n_parent' : 'uid')]] = $singleElementHTML;
-                                               } else {
-                                                       $content[$key].= $singleElementHTML;
-                                               }
+                                                       if ($this->defLangBinding && $this->tt_contentConfig['languageMode'])   {
+                                                               $defLangBinding[$key][$lP][$row[($lP ? 'l18n_parent' : 'uid')]] = $singleElementHTML;
+                                                       } else {
+                                                               $content[$key].= $singleElementHTML;
+                                                       }
+                                               } else { unset($rowArr[$rKey]); }
                                        }
 
                                                // Add new-icon link, header:
@@ -532,6 +534,7 @@ class tx_cms_layout extends recordList {
                                        if ($lP)        {
 
                                                list($lpRecord) = t3lib_BEfunc::getRecordsByField('pages_language_overlay','pid',$id,'AND sys_language_uid='.intval($lP));
+                                               t3lib_BEfunc::workspaceOL('pages_language_overlay',$lpRecord);
                                                $params='&edit[pages_language_overlay]['.$lpRecord['uid'].']=edit&overrideVals[pages_language_overlay][sys_language_uid]='.$lP;
                                                $lPLabel = $GLOBALS['SOBE']->doc->wrapClickMenuOnIcon(t3lib_iconWorks::getIconImage('pages_language_overlay',$lpRecord,$this->backPath,'  class="absmiddle"'),'pages_language_overlay',$lpRecord['uid']).
                                                        $viewLink.
@@ -603,7 +606,13 @@ class tx_cms_layout extends recordList {
                        if ($this->tt_contentConfig['sys_language_uid']==0 || !$this->defLangBinding)   {
 
                                        // Initialize:
-                               $showLanguage = $this->defLangBinding && $this->tt_contentConfig['sys_language_uid']==0 ? ' AND sys_language_uid IN (0,-1)' : ' AND sys_language_uid='.$this->tt_contentConfig['sys_language_uid'];
+                               if ($this->defLangBinding && $this->tt_contentConfig['sys_language_uid']==0)    {
+                                       $showLanguage = ' AND sys_language_uid IN (0,-1)';
+                                       $lP = 0;
+                               } else {
+                                       $showLanguage = ' AND sys_language_uid='.$this->tt_contentConfig['sys_language_uid'];
+                                       $lP = $this->tt_contentConfig['sys_language_uid'];
+                               }
 
                                $cList = explode(',',$this->tt_contentConfig['showSingleCol']);
                                $content=array();
@@ -636,28 +645,33 @@ class tx_cms_layout extends recordList {
                                        } else $theNewButton='';
 
                                                // Traverse any selected elements:
-                                       foreach($rowArr as $row)        {
-                                               $c++;
-                                               $editUidList.=$row['uid'].',';
-                                               $isRTE=$RTE && $this->isRTEforField('tt_content',$row,'bodytext');
+                                       foreach($rowArr as $rKey => $row)       {
+                                               t3lib_BEfunc::workspaceOL('tt_content', $row);
 
-                                                       // Create row output:
-                                               $rowOut.='
-                                                       <tr>
-                                                               <td></td>
-                                                               <td valign="top">'.$this->tt_content_drawHeader($row).'</td>
-                                                               <td></td>
-                                                               <td valign="top">'.$this->tt_content_drawItem($row,$isRTE).'</td>
-                                                       </tr>';
+                                               if ((int)$row['t3ver_state']!=2)        {
 
-                                                       // If the element was not the last element, add a divider line:
-                                               if ($c != $GLOBALS['TYPO3_DB']->sql_num_rows($result))  {
+                                                       $c++;
+                                                       $editUidList.=$row['uid'].',';
+                                                       $isRTE=$RTE && $this->isRTEforField('tt_content',$row,'bodytext');
+
+                                                               // Create row output:
                                                        $rowOut.='
-                                                       <tr>
-                                                               <td></td>
-                                                               <td colspan="3"><img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/stiblet_medium2.gif','width="468" height="1"').' class="c-divider" alt="" /></td>
-                                                       </tr>';
-                                               }
+                                                               <tr>
+                                                                       <td></td>
+                                                                       <td valign="top">'.$this->tt_content_drawHeader($row).'</td>
+                                                                       <td>&nbsp;</td>
+                                                                       <td'.($row['_ORIG_uid'] ? ' class="ver-element"' :'').' valign="top">'.$this->tt_content_drawItem($row,$isRTE).'</td>
+                                                               </tr>';
+
+                                                               // If the element was not the last element, add a divider line:
+                                                       if ($c != $GLOBALS['TYPO3_DB']->sql_num_rows($result))  {
+                                                               $rowOut.='
+                                                               <tr>
+                                                                       <td></td>
+                                                                       <td colspan="3"><img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/stiblet_medium2.gif','width="468" height="1"').' class="c-divider" alt="" /></td>
+                                                               </tr>';
+                                                       }
+                                               } else { unset($rowArr[$rKey]); }
                                        }
 
                                                // Add spacer between sections in the vertical list
@@ -1577,12 +1591,12 @@ class tx_cms_layout extends recordList {
                                $hiddenField = $TCA['tt_content']['ctrl']['enablecolumns']['disabled'];
                                if ($hiddenField && $TCA['tt_content']['columns'][$hiddenField] && (!$TCA['tt_content']['columns'][$hiddenField]['exclude'] || $GLOBALS['BE_USER']->check('non_exclude_fields','tt_content:'.$hiddenField)))    {
                                        if ($row[$hiddenField]) {
-                                               $params='&data[tt_content]['.$row['uid'].']['.$hiddenField.']=0';
+                                               $params='&data[tt_content]['.($row['_ORIG_uid'] ? $row['_ORIG_uid'] : $row['uid']).']['.$hiddenField.']=0';
                                                $out.='<a href="'.htmlspecialchars($GLOBALS['SOBE']->doc->issueCommand($params)).'">'.
                                                                '<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/button_unhide.gif','width="11" height="10"').' title="'.$GLOBALS['LANG']->getLL('unHide',1).'" alt="" />'.
                                                                '</a>';
                                        } else {
-                                               $params='&data[tt_content]['.$row['uid'].']['.$hiddenField.']=1';
+                                               $params='&data[tt_content]['.($row['_ORIG_uid'] ? $row['_ORIG_uid'] : $row['uid']).']['.$hiddenField.']=1';
                                                $out.='<a href="'.htmlspecialchars($GLOBALS['SOBE']->doc->issueCommand($params)).'">'.
                                                                '<img'.t3lib_iconWorks::skinImg($this->backPath,'gfx/button_hide.gif','width="11" height="10"').' title="'.$GLOBALS['LANG']->getLL('hide',1).'" alt="" />'.
                                                                '</a>';
@@ -2104,7 +2118,7 @@ class tx_cms_layout extends recordList {
 
                $c=0;
                if ($TCA[$table])       {
-                       $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery('count(*)', $table, 'pid='.intval($pid).t3lib_BEfunc::deleteClause($table));
+                       $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery('count(*)', $table, 'pid='.intval($pid).t3lib_BEfunc::deleteClause($table).t3lib_BEfunc::versioningPlaceholderClause($table));
                        if ($row = $GLOBALS['TYPO3_DB']->sql_fetch_row($result))        {
                                $c=$row[0];
                        }
@@ -2509,7 +2523,7 @@ class tx_cms_layout extends recordList {
                        if ($GLOBALS['BE_USER']->check('tables_select',$tName) && (t3lib_extMgm::isLoaded($tName)||t3lib_div::inList('fe_users,tt_content',$tName) || isset($this->externalTables[$tName])))    {
 
                                        // Make query to count records from page:
-                               $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery('count(*)', $tName, 'pid='.intval($id).t3lib_BEfunc::deleteClause($tName));
+                               $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery('count(*)', $tName, 'pid='.intval($id).t3lib_BEfunc::deleteClause($tName).t3lib_BEfunc::versioningPlaceholderClause($tName));
                                list($c) = $GLOBALS['TYPO3_DB']->sql_fetch_row($result);
 
                                        // If records were found (or if "tt_content" is the table...):
index c025e3e..daa2f1e 100755 (executable)
@@ -355,6 +355,11 @@ class SC_db_layout {
 
                        // Clean up settings
                $this->MOD_SETTINGS = t3lib_BEfunc::getModuleData($this->MOD_MENU, t3lib_div::_GP('SET'), $this->MCONF['name']);
+
+                       // For all elements to be shown in draft workspaces:
+               if ($GLOBALS['BE_USER']->workspace!=0)  {
+                       $this->MOD_SETTINGS['tt_content_showHidden'] = 1;
+               }
        }
 
        /**
@@ -500,7 +505,8 @@ class SC_db_layout {
                                                'tt_content',
                                                'pid='.intval($this->id).' AND colPos='.intval(substr($edit_record,10)).' AND sys_language_uid='.intval($this->current_sys_language).
                                                                ($this->MOD_SETTINGS['tt_content_showHidden'] ? '' : t3lib_BEfunc::BEenableFields('tt_content')).
-                                                               t3lib_BEfunc::deleteClause('tt_content'),
+                                                               t3lib_BEfunc::deleteClause('tt_content').
+                                                               t3lib_BEfunc::versioningPlaceholderClause('tt_content'),
                                                '',
                                                'sorting'
                                        );
@@ -547,7 +553,8 @@ class SC_db_layout {
                                        'tt_content',
                                        'pid='.intval($this->id).' AND sys_language_uid='.intval($this->current_sys_language).
                                                        ($this->MOD_SETTINGS['tt_content_showHidden'] ? '' : t3lib_BEfunc::BEenableFields('tt_content')).
-                                                       t3lib_Befunc::deleteClause('tt_content'),
+                                                       t3lib_Befunc::deleteClause('tt_content').
+                                                       t3lib_BEfunc::versioningPlaceholderClause('tt_content'),
                                        '',
                                        'colPos,sorting'
                                );
@@ -555,6 +562,7 @@ class SC_db_layout {
                $first=1;
                $prev=$this->id;        // Page is the pid if no record to put this after.
                while($cRow = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res))      {
+                       t3lib_BEfunc::workspaceOL('tt_content', $cRow);
                        if ($first)     {
                                if (!$edit_record)      {
                                        $edit_record='tt_content:'.$cRow['uid'];
@@ -591,6 +599,8 @@ class SC_db_layout {
                        // Splitting the edit-record cmd value into table/uid:
                $eRParts = explode(':',$edit_record);
 
+
+
                        // Delete-button flag?
                $deleteButton = (t3lib_div::testInt($eRParts[1]) && $edit_record && (($eRParts[0]!='pages'&&$this->EDIT_CONTENT) || ($eRParts[0]=='pages'&&($this->CALC_PERMS&4))));
 
@@ -696,6 +706,13 @@ class SC_db_layout {
                                // Splitting uid parts for special features, if new:
                        list($uidVal,$ex_pid,$ex_colPos) = explode('/',$eRParts[1]);
 
+                               // Convert $uidVal to workspace version if any:
+                       if ($uidVal!='new')     {
+                               if ($draftRecord = t3lib_BEfunc::getWorkspaceVersionOfRecord($GLOBALS['BE_USER']->workspace, $eRParts[0], $uidVal, 'uid'))      {
+                                       $uidVal = $draftRecord['uid'];
+                               }
+                       }
+
                                // Initializing transfer-data object:
                        $trData = t3lib_div::makeInstance('t3lib_transferData');
                        $trData->addRawData = TRUE;
@@ -1170,7 +1187,7 @@ class SC_db_layout {
         * @return      void
         */
        function getNumberOfHiddenElements()    {
-               $q_res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('count(*)', 'tt_content', 'pid='.intval($this->id).' AND sys_language_uid='.intval($this->current_sys_language).t3lib_BEfunc::BEenableFields('tt_content',1).t3lib_BEfunc::deleteClause('tt_content'));
+               $q_res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('count(*)', 'tt_content', 'pid='.intval($this->id).' AND sys_language_uid='.intval($this->current_sys_language).t3lib_BEfunc::BEenableFields('tt_content',1).t3lib_BEfunc::deleteClause('tt_content').t3lib_BEfunc::versioningPlaceholderClause('tt_content'));
                list($q_count) = $GLOBALS['TYPO3_DB']->sql_fetch_row($q_res);
                return $q_count;
        }
index 4147d36..03ff924 100644 (file)
@@ -246,7 +246,7 @@ class SC_db_new_content_el {
                        $this->content.=$this->doc->header($LANG->getLL('newContentElement'));
                        $this->content.=$this->doc->spacer(5);
 
-                       $elRow = t3lib_BEfunc::getRecord('pages',$this->id);
+                       $elRow = t3lib_BEfunc::getRecordWSOL('pages',$this->id);
                        $hline = t3lib_iconWorks::getIconImage('pages',$elRow,$BACK_PATH,' title="'.htmlspecialchars(t3lib_BEfunc::getRecordIconAltText($elRow,'pages')).'" align="top"');
                        $hline.= t3lib_BEfunc::getRecordTitle('pages',$elRow,1);
                        $this->content.=$this->doc->section('',$hline,0,1);
index c918612..f21f631 100755 (executable)
@@ -733,7 +733,7 @@ TEMPORARILY disabled version previews in online workspace (while testing offline
                        }
 
                                // The preview flag will be set if a backend user is in an offline workspace
-                       if ($GLOBALS['BE_USER']->user['workspace_preview'] && ($GLOBALS['BE_USER']->workspace==-1 || $GLOBALS['BE_USER']->workspace>0)) {
+                       if (($GLOBALS['BE_USER']->user['workspace_preview'] || t3lib_div::_GP('ADMCMD_view')) && ($GLOBALS['BE_USER']->workspace==-1 || $GLOBALS['BE_USER']->workspace>0))      {
                                $this->fePreview = 2;   // Will show special preview message.
                        }
 
index df6830c..5829d25 100644 (file)
@@ -116,8 +116,7 @@ class tx_cms_webinfo_lang extends t3lib_extobjbase {
                                // Showing the tree:
                                // Initialize starting point of page tree:
                        $treeStartingPoint = intval($this->pObj->id);
-                       $treeStartingRecord = t3lib_BEfunc::getRecord('pages', $treeStartingPoint);
-                       t3lib_BEfunc::workspaceOL('pages',$treeStartingRecord);
+                       $treeStartingRecord = t3lib_BEfunc::getRecordWSOL('pages', $treeStartingPoint);
                        $depth = $this->pObj->MOD_SETTINGS['depth'];
 
                                // Initialize tree object:
@@ -367,7 +366,8 @@ class tx_cms_webinfo_lang extends t3lib_extobjbase {
                        'pages_language_overlay',
                        'pid='.intval($pageId).
                                ' AND sys_language_uid='.intval($langId).
-                               t3lib_BEfunc::deleteClause('pages_language_overlay')
+                               t3lib_BEfunc::deleteClause('pages_language_overlay').
+                               t3lib_BEfunc::versioningPlaceholderClause('pages_language_overlay')
                );
 
                $row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res);
@@ -406,7 +406,8 @@ class tx_cms_webinfo_lang extends t3lib_extobjbase {
                                                $table,
                                                'pid='.intval($pageId).
                                                        ' AND '.$TCA[$table]['ctrl']['languageField'].'<=0'.
-                                                       t3lib_BEfunc::deleteClause($table)
+                                                       t3lib_BEfunc::deleteClause($table).
+                                                       t3lib_BEfunc::versioningPlaceholderClause($table)
                                        );
                                        if (count($allRows))    {
                        $info.='<h3>'.$table.'</h3>';
@@ -425,7 +426,8 @@ $info.='[<b>'.$TCA[$table]['ctrl']['transOrigDiffSourceField'].'</b>]';
                                                                'pid='.intval($pageId).
                                                                        ' AND '.$TCA[$table]['ctrl']['languageField'].'='.intval($sysLang).
                                                                        ' AND '.$TCA[$table]['ctrl']['transOrigPointerField'].'='.intval($row['uid']).
-                                                                       t3lib_BEfunc::deleteClause($table)
+                                                                       t3lib_BEfunc::deleteClause($table).
+                                                                       t3lib_BEfunc::versioningPlaceholderClause($table)
                                                        );
 
                                                        foreach($translations as $c => $tr)     {
@@ -445,7 +447,8 @@ $info.='[<b>'.$TCA[$table]['ctrl']['transOrigDiffSourceField'].'</b>]';
                                                        'pid='.intval($pageId).
                                                                ' AND '.$TCA[$table]['ctrl']['languageField'].'='.intval($sysLang).
                                                                ' AND uid NOT IN ('.implode(',',$translationsUids).')'.
-                                                               t3lib_BEfunc::deleteClause($table)
+                                                               t3lib_BEfunc::deleteClause($table).
+                                                               t3lib_BEfunc::versioningPlaceholderClause($table)
                                                );
                                                if (count($lostTranslations))   {
                                                        $info.=t3lib_div::view_array($lostTranslations);
@@ -470,7 +473,8 @@ $info.='[<b>'.$TCA[$table]['ctrl']['transOrigDiffSourceField'].'</b>]';
                        'tt_content',
                        'pid='.intval($pageId).
                                ' AND sys_language_uid='.intval($sysLang).
-                               t3lib_BEfunc::deleteClause('tt_content')
+                               t3lib_BEfunc::deleteClause('tt_content').
+                               t3lib_BEfunc::versioningPlaceholderClause('tt_content')
                );
 
                list($count) = $GLOBALS['TYPO3_DB']->sql_fetch_row($res);
index d63c6f7..e622d8a 100755 (executable)
@@ -692,7 +692,8 @@ class SC_mod_tools_log_index extends t3lib_SCbase {
                                '*',
                                $table,
                                'pid='.intval($pid).
-                                       t3lib_BEfunc::deleteClause($table),
+                                       t3lib_BEfunc::deleteClause($table).
+                                       t3lib_BEfunc::versioningPlaceholderClause($table),
                                '',
                                $GLOBALS['TYPO3_DB']->stripOrderBy($orderBy),
                                $limit
index 6b85026..af97920 100755 (executable)
@@ -128,7 +128,7 @@ class tx_infopagetsconfig_webinfo extends t3lib_extobjbase {
                                                $editIcon = '';
                                        } else {
                                                $pUids[] = substr($k,4);
-                                               $row = t3lib_BEfunc::getRecord('pages',substr($k,4));
+                                               $row = t3lib_BEfunc::getRecordWSOL('pages',substr($k,4));
                                                $pTitle = $this->pObj->doc->getHeader('pages',$row,'',0);
 
                                                $editIdList = substr($k,4);
index a135e47..508cde1 100755 (executable)
@@ -31,9 +31,9 @@
  *
  *
  *
- *   51: class tx_version_cm1
- *   60:     function main(&$backRef,$menuItems,$table,$uid)
- *  109:     function includeLL()
+ *   54: class tx_version_cm1
+ *   65:     function main(&$backRef,$menuItems,$table,$uid)
+ *  111:     function includeLL()
  *
  * TOTAL FUNCTIONS: 2
  * (This index is automatically created/updated by the extension "extdeveval")
index 35b6b2a..af66369 100755 (executable)
  *
  *
  *
- *   73: class tx_version_cm1 extends t3lib_SCbase
- *   80:     function main()
- *  105:     function jumpToUrl(URL)
- *  139:     function printContent()
- *  150:     function moduleContent()
- *  310:     function pageSubContent($pid,$c=0)
- *  364:     function lookForOwnVersions($table,$uid)
- *  381:     function adminLinks($table,$row)
+ *   97: class tx_version_cm1 extends t3lib_SCbase
  *
- * TOTAL FUNCTIONS: 7
+ *              SECTION: Standard module initialization
+ *  132:     function menuConfig()
+ *  169:     function main()
+ *  222:     function jumpToUrl(URL)
+ *  282:     function printContent()
+ *
+ *              SECTION: Versioning management
+ *  308:     function versioningMgm()
+ *  471:     function pageSubContent($pid,$c=0)
+ *  525:     function lookForOwnVersions($table,$uid)
+ *  542:     function adminLinks($table,$row)
+ *
+ *              SECTION: Workspace management
+ *  614:     function workspaceMgm()
+ *  639:     function displayWorkspaceOverview()
+ *  708:     function displayWorkspaceOverview_list($pArray)
+ *  865:     function displayWorkspaceOverview_setInPageArray(&$pArray,$table,$row)
+ *
+ *              SECTION: Helper functions (REDUNDANT FROM user/ws/index.php - someone could refactor this...)
+ *  892:     function formatVerId($verId)
+ *  902:     function formatWorkspace($wsid)
+ *  929:     function formatCount($count)
+ *  956:     function versionsInOtherWS($table,$uid)
+ *  986:     function showStageChangeLog($table,$id,$stageCommands)
+ * 1035:     function subElements($uid,$treeLevel,$origId=0)
+ * 1138:     function subElements_getNonPageRecords($tN, $uid, &$recList)
+ * 1168:     function subElements_renderItem(&$tCell,$tN,$uid,$rec,$origId,$iconMode,$HTMLdata)
+ * 1237:     function markupNewOriginals()
+ * 1259:     function createDiffView($table, $diff_1_record, $diff_2_record)
+ * 1376:     function displayWorkspaceOverview_stageCmd($table,&$rec_off)
+ * 1461:     function displayWorkspaceOverview_commandLinks($table,&$rec_on,&$rec_off,$vType)
+ * 1531:     function displayWorkspaceOverview_commandLinksSub($table,$rec,$origId)
+ *
+ * TOTAL FUNCTIONS: 25
  * (This index is automatically created/updated by the extension "extdeveval")
  *
  */
index 8976380..530b782 100755 (executable)
@@ -98,7 +98,7 @@ class tx_wizardcrpages_webfunc_2 extends t3lib_extobjbase {
                $theCode='';
 
                $m_perms_clause = $GLOBALS['BE_USER']->getPagePermsClause(8);   // create new pages here?
-               $pRec = t3lib_BEfunc::getRecord ('pages',$this->pObj->id,'uid',' AND '.$m_perms_clause);
+               $pRec = t3lib_BEfunc::getRecord('pages',$this->pObj->id,'uid',' AND '.$m_perms_clause);
                $sys_pages = t3lib_div::makeInstance('t3lib_pageSelect');
                $menuItems = $sys_pages->getMenu($this->pObj->id);
                if (is_array($pRec))    {
index 6a80be6..effab67 100755 (executable)
@@ -267,7 +267,7 @@ class SC_wizard_forms {
        function formsWizard()  {
 
                        // First, check the references by selecting the record:
-               $row=t3lib_BEfunc::getRecord($this->P['table'],$this->P['uid']);
+               $row = t3lib_BEfunc::getRecord($this->P['table'],$this->P['uid']);
                if (!is_array($row))    {
                        t3lib_BEfunc::typo3PrintError ('Wizard Error','No reference to record',0);
                        exit;
index 48c30bd..4b9bfb9 100755 (executable)
@@ -180,7 +180,7 @@ class SC_wizard_table {
        function tableWizard()  {
 
                        // First, check the references by selecting the record:
-               $row=t3lib_BEfunc::getRecord($this->P['table'],$this->P['uid']);
+               $row = t3lib_BEfunc::getRecord($this->P['table'],$this->P['uid']);
                if (!is_array($row))    {
                        t3lib_BEfunc::typo3PrintError ('Wizard Error','No reference to record',0);
                        exit;