### Eclipse Workspace Patch 1.0 #P igeworkspace42 Index: typo3/sysext/lang/locallang_tca.xml =================================================================== --- typo3/sysext/lang/locallang_tca.xml (revision 288) +++ typo3/sysext/lang/locallang_tca.xml (working copy) @@ -82,6 +82,8 @@ + + Index: t3lib/stddb/tbl_be.php =================================================================== --- t3lib/stddb/tbl_be.php (revision 323) +++ t3lib/stddb/tbl_be.php (working copy) @@ -782,6 +782,12 @@ 'show_thumbs' => '1' ) ), + 'use_user_db_mounts' => Array ( + 'label' => 'LLL:EXT:lang/locallang_tca.xml:sys_workspace.use_user_db_mounts', + 'config' => Array ( + 'type' => 'check', + ) + ), 'file_mountpoints' => array( 'label' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints', 'config' => array( @@ -795,6 +801,13 @@ 'iconsInOptionTags' => 1, ) ), + 'use_user_file_mounts' => Array ( + 'exclude' => 0, + 'label' => 'LLL:EXT:lang/locallang_tca.xml:sys_workspace.use_user_file_mounts', + 'config' => Array ( + 'type' => 'check', + ) + ), 'publish_time' => array( 'label' => 'LLL:EXT:lang/locallang_tca.xml:sys_workspace.publish_time', 'config' => array( @@ -914,7 +927,7 @@ 'types' => array( '0' => array('showitem' => 'title,description, --div--;LLL:EXT:lang/locallang_tca.xml:sys_filemounts.tabs.users,adminusers,members,reviewers,stagechg_notification, - --div--;LLL:EXT:lang/locallang_tca.xml:sys_filemounts.tabs.mountpoints,db_mountpoints,file_mountpoints, + --div--;LLL:EXT:lang/locallang_tca.xml:sys_filemounts.tabs.mountpoints,db_mountpoints,use_user_db_mounts,file_mountpoints,use_user_file_mounts, --div--;LLL:EXT:lang/locallang_tca.xml:sys_filemounts.tabs.publishing,publish_time,unpublish_time, --div--;LLL:EXT:lang/locallang_tca.xml:sys_filemounts.tabs.staging,use_custom_staging,custom_stages, --div--;LLL:EXT:lang/locallang_tca.xml:sys_filemounts.tabs.other,freeze,live_edit,review_stage_edit,disable_autocreate,swap_modes,vtypes,publish_access' Index: typo3/mod/user/ws/index.php =================================================================== --- typo3/mod/user/ws/index.php (revision 287) +++ typo3/mod/user/ws/index.php (working copy) @@ -749,7 +749,12 @@ // here only if obtaining mount points for custom workspaces // Warning: all fields needed for t3lib_iconWorks::getIconImage()! - $MPs = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows('*', 'pages', 'deleted=0 AND uid IN (' . $GLOBALS['TYPO3_DB']->cleanIntList($wksp['db_mountpoints']) . ')', '', 'title'); + // Use the user/group mountpoints instead of workspace mountpoints if the checkbox in workspace configuration isset + if($GLOBALS['BE_USER']->workspaceRec['use_user_db_mounts'] == 1) { + $MPs = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows('*', 'pages', 'deleted=0 AND uid IN (' . $GLOBALS['TYPO3_DB']->cleanIntList($GLOBALS['BE_USER']->groupData['webmounts']) . ')', '', 'title'); + } else { + $MPs = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows('*', 'pages', 'deleted=0 AND uid IN (' . $GLOBALS['TYPO3_DB']->cleanIntList($wksp['db_mountpoints']) . ')', '', 'title'); + } $content_array = array(); if (count($MPs) > 0) { $isAdmin = $GLOBALS['BE_USER']->isAdmin(); @@ -802,7 +807,11 @@ // Here if displaying information for custom workspace // Warning: all fields needed for t3lib_iconWorks::getIconImage()! - $MPs = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows('*', 'sys_filemounts', 'deleted=0 AND hidden=0 AND uid IN (' . $GLOBALS['TYPO3_DB']->cleanIntList($wksp['file_mountpoints']) . ')', '', 'title'); + if($GLOBALS['BE_USER']->workspaceRec['use_user_file_mounts'] == 1) { + $MPs = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows('*', 'sys_filemounts', 'deleted=0 AND hidden=0 AND uid IN (' . $GLOBALS['TYPO3_DB']->cleanIntList($GLOBALS['BE_USER']->dataLists['filemount_list']) . ')', '', 'title'); + } else { + $MPs = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows('*', 'sys_filemounts', 'deleted=0 AND hidden=0 AND uid IN (' . $GLOBALS['TYPO3_DB']->cleanIntList($wksp['file_mountpoints']) . ')', '', 'title'); + } if (count($MPs) != 0) { // Has mount points $isAdmin = $GLOBALS['BE_USER']->isAdmin(); Index: t3lib/stddb/tables.sql =================================================================== --- t3lib/stddb/tables.sql (revision 286) +++ t3lib/stddb/tables.sql (working copy) @@ -241,7 +241,9 @@ members text, reviewers text, db_mountpoints varchar(255) DEFAULT '' NOT NULL, + use_user_db_mounts tinyint(3) DEFAULT '0' NOT NULL, file_mountpoints varchar(255) DEFAULT '' NOT NULL, + use_user_file_mounts tinyint(3) DEFAULT '0' NOT NULL, publish_time int(11) DEFAULT '0' NOT NULL, unpublish_time int(11) DEFAULT '0' NOT NULL, freeze tinyint(3) DEFAULT '0' NOT NULL, Index: typo3/sysext/beuser/mod/index.php =================================================================== --- typo3/sysext/beuser/mod/index.php (revision 270) +++ typo3/sysext/beuser/mod/index.php (working copy) @@ -1062,7 +1062,7 @@ $options[$rec['uid']] = $rec['uid'].': '.$rec['title']; // Check if all mount points are accessible, otherwise show error: - if (trim($rec['db_mountpoints'])!=='') { + if (trim($rec['db_mountpoints'])!=='' && ($rec['use_user_db_mounts'] == 0)) { $mountPoints = t3lib_div::intExplode(',',$this->workspaceRec['db_mountpoints'],1); foreach ($mountPoints as $mpId) { if (!$this->isInWebMount($mpId,'1=1')) {