如何禁用Alfresco主菜单项?

如何禁用Alfresco主菜单项?,alfresco,alfresco-share,Alfresco,Alfresco Share,Alfresco Share应用程序的主菜单包含几个项目,我们部署的项目团队希望禁用这些项目。特别是“我的文件”和“共享文件”。隐藏已经足够好了,但如果我们能完全禁用它们,那就最好了。这些是用户无权访问的功能。他们的所有互动都应该通过网站进行 是否有一种支持Alfresco(如“升级版本时不会中断”)的方法可以做到这一点?您的博客文章描述了如何在链接中隐藏主菜单项。后来发现,这种方法在4.2.2以下的版本上不起作用。社区版(4.2e)也是如此 您可以使用链接中描述的解决方法。 下面是您需要的确切

Alfresco Share应用程序的主菜单包含几个项目,我们部署的项目团队希望禁用这些项目。特别是“我的文件”和“共享文件”。隐藏已经足够好了,但如果我们能完全禁用它们,那就最好了。这些是用户无权访问的功能。他们的所有互动都应该通过网站进行


是否有一种支持Alfresco(如“升级版本时不会中断”)的方法可以做到这一点?

您的博客文章描述了如何在链接中隐藏主菜单项。后来发现,这种方法在4.2.2以下的版本上不起作用。社区版(4.2e)也是如此

您可以使用链接中描述的解决方法。 下面是您需要的确切代码。 在share header.get.js的底部添加以下内容

var widget, widgetsToRemove = [ "HEADER_SHARED_FILES", "HEADER_MY_FILES" ], idx, max;

for (idx = 0, max = widgetsToRemove.length; idx < max; idx++)
{  
    findAndRemoveIn(model.jsonModel.widgets, null, null, widgetsToRemove[idx]);
}


function findAndRemoveIn(obj, arrContext, arrIdx, id) {
var idx, max, key;
if (obj !== undefined && obj !== null) {
    if (Object.prototype.toString.apply(obj) === "[object Object]") {
        if (obj.hasOwnProperty("id") && obj.id === id) {
            if (arrContext !== null && arrIdx !== null)
            { arrContext.splice(arrIdx, 1); }

            else
            { logger .debug("Unexpected match outside of array structure: " + jsonUtils.toJSONString(obj)); }

        } else {
            for (key in obj) {
                if (obj.hasOwnProperty(key))
                { findAndRemoveIn(obj[key], null, null, id); }

            }
        }
    } else if (Object.prototype.toString.apply(obj) === "[object Array]") {
        for (idx = 0, max = obj.length; idx < max; idx++)
        { findAndRemoveIn(obj[idx], obj, idx, id); }

    }
  }
}   
var小部件,widgetsToRemove=[“头文件共享文件”,“头文件我的文件”],idx,max;
对于(idx=0,max=widgetsToRemove.length;idx
稍后,您可以在工作时编写扩展模块。 可以使用widgetUtils.deleteObjectFromArrayhelper函数从菜单中删除其他元素,如标题栏、标题栏、标题栏、标题栏。
最后一个选项是使用CSS

您的博客文章描述了如何在链接中隐藏主菜单项。后来发现,这种方法在4.2.2以下的版本上不起作用。社区版(4.2e)也是如此

您可以使用链接中描述的解决方法。 下面是您需要的确切代码。 在share header.get.js的底部添加以下内容

var widget, widgetsToRemove = [ "HEADER_SHARED_FILES", "HEADER_MY_FILES" ], idx, max;

for (idx = 0, max = widgetsToRemove.length; idx < max; idx++)
{  
    findAndRemoveIn(model.jsonModel.widgets, null, null, widgetsToRemove[idx]);
}


function findAndRemoveIn(obj, arrContext, arrIdx, id) {
var idx, max, key;
if (obj !== undefined && obj !== null) {
    if (Object.prototype.toString.apply(obj) === "[object Object]") {
        if (obj.hasOwnProperty("id") && obj.id === id) {
            if (arrContext !== null && arrIdx !== null)
            { arrContext.splice(arrIdx, 1); }

            else
            { logger .debug("Unexpected match outside of array structure: " + jsonUtils.toJSONString(obj)); }

        } else {
            for (key in obj) {
                if (obj.hasOwnProperty(key))
                { findAndRemoveIn(obj[key], null, null, id); }

            }
        }
    } else if (Object.prototype.toString.apply(obj) === "[object Array]") {
        for (idx = 0, max = obj.length; idx < max; idx++)
        { findAndRemoveIn(obj[idx], obj, idx, id); }

    }
  }
}   
var小部件,widgetsToRemove=[“头文件共享文件”,“头文件我的文件”],idx,max;
对于(idx=0,max=widgetsToRemove.length;idx
稍后,您可以在工作时编写扩展模块。 可以使用widgetUtils.deleteObjectFromArrayhelper函数从菜单中删除其他元素,如标题栏、标题栏、标题栏、标题栏。
最后一个选项是使用CSS

你说的是哪一个版本?我们现在在4.2e上。你说的是哪一个版本?我们现在在4.2e上。我在4.2f上使用了这个,它成功了。你知道你的目标。:)AFAIK 4.2.2是企业版,我打赌它将在4.2e版上工作。但是我不认为你在使用4.2fHmmm时会有问题,我一定是做错了什么。使用“05200001未能执行脚本'classpath*:Alfresco/site webscripts/org/Alfresco/share/header/share header.get.js':05200000类型错误:无法从null读取属性“widgets”(文件:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/Alfresco/site webscripts/org/Alfresco/share/header/share/share header.get.js)将javascript插入share-header.get.js文件时出错。它现在可以工作了。我遇到了servicerun的问题,显然是无声地失败了,这意味着我并不总是看到更新。重启机器似乎是让Alfresco完全重启的唯一简单方法。另外,我之前的一个问题似乎是将代码放在文件的顶部而不是底部。。。谢谢我在4.2f上使用了这个,它成功了。你知道你的目标。:)AFAIK 4.2.2是企业版,我打赌它将在4.2e版上工作。但是我不认为你在使用4.2fHmmm时会有问题,我一定是做错了什么。使用“05200001未能执行脚本'classpath*:Alfresco/site webscripts/org/Alfresco/share/header/share header.get.js':05200000类型错误:无法从null读取属性“widgets”(文件:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/Alfresco/site webscripts/org/Alfresco/share/header/share/share header.get.js)将javascript插入share-header.get.js文件时出错。它现在可以工作了。我遇到了servicerun的问题,显然是无声地失败了,这意味着我并不总是看到更新。重启机器似乎是让Alfresco完全重启的唯一简单方法。还有一个