限制typo3 extbase后端模块的输出

时间:2013-01-10 13:23:28

标签: typo3 extbase

我在typo3 4.5编写了一个带有extbase的backendmodule,我想为不同的用户组显示不同的extbase模型,但我不知道如何。我的想法是每个用户组注册一个backendmodul,但我认为它太费力了。我不想在扩展程序中检查用户组及其权限。有没有办法得到这个?

示例:

models | usergroup: editor could see

specific models | usergroup: specific_editor could see

4 个答案:

答案 0 :(得分:0)

请详细说明方案。从这个我可以说这是可能的。您只需检查用户组,然后根据此操作即可在控制器中创建可切换的操作。

答案 1 :(得分:0)

如果在扩展程序管理器中有几个复选框 - 扩展程序配置选项卡,用于选择用户组及其在扩展程序中的权限?

答案 2 :(得分:0)

我尝试在自己的后端模块中向不同的用户显示不同的extbase-model-entries。例如,用户'编辑'只看到'entry1'和'special_editor'看到'entry2'和'entry3'。我的想法是扩展用户组tca并为我的模型添加一个selectfield。我的后端模块将检查当前的后端用户以获取他的用户组,而不是我想检查指定的模型。这看起来很费劲,但我认为这是最好也是唯一的方法。

答案 3 :(得分:0)

我得到一个解决方案:

首先我向be_users添加一个字段。

$tempColumns = array(
    'model' => array(
        'exclude' => 0,
        'l10n_mode' => 'mergeIfNotBlank',
        'label' => 'LLL:EXT:extensionResources/Private/Language/locallang_db.xml:tx_extension_domain_model_ownmodel',
        'config' => array(
            'type' => 'select',
            'foreign_table' => 'tx_extension_domain_model_ownmodel',
            'size' => 10,
            'width' => 20,
            'minitems' => 0,
            'maxitems' => 9999,
            'allowNonIdValues' => 0,
            'eval' => 'required',

        ),
    ),
);

t3lib_div::loadTCA('be_users');
t3lib_extMgm::addTCAcolumns('be_users',$tempColumns,1);
t3lib_extMgm::addToAllTCAtypes('be_users','model;;;;1-1-1');

在我的后端模块中,我检查当前的backenduser

$GLOBALS['BE_USER']->user['model']

所以我得到一个用逗号分隔的我的模型列表。

就是这样。