|
### 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 @@
|
|
<label index="sys_workspace.stagechg_notification">Stage change notification by email:</label>
|
|
<label index="sys_workspace.use_custom_staging">Use custom stages:</label>
|
|
<label index="sys_workspace.custom_stages">Custom stages:</label>
|
|
+ <label index="sys_workspace.use_user_db_mounts">Use DB mounts from user/group</label>
|
|
+ <label index="sys_workspace.use_user_file_mounts">Use file mounts from user/group</label>
|
|
<label index="sys_workspace_stage.responsible_persons">Responsible persons:</label>
|
|
<label index="sys_workspace_stage.default_mailcomment">Default mail comment:</label>
|
|
<label index="sys_workspace_stage.parentid">UID of parent record:</label>
|
|
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')) {
|