2015-12-03 50 views
1

我正在一個Aikau共享頁面,其中我使用Alfresco共享文檔庫樹選擇器的側欄。選擇器允許我將nodeRef發佈到另一個將顯示信息的小部件。我想使用樹形視圖,但我在顯示文檔時遇到問題,它只顯示容器/文件夾。任何人有任何想法,我需要做什麼來解決這個問題?Alfresco分享Aikau PathTree顯示文件不只是文件夾

這裏是Aikua代碼我使用:

{ 
     align: "sidebar", 
     name: "alfresco/layout/Twister", 
     config: { 
     label: "twister.library.label", 
     additionalCssClasses: "no-borders", 
     widgets: [ 
       { 
        name: "alfresco/navigation/PathTree", 
        config: { 
         showRoot: true, 
         rootLabel: "Repository", 
         rootNode: "/app:company_home", 
         publishTopic: "ALF_ITEM_SELECTED" 
        } 
        }      
       ] 
      } 
} 

我想知道如果我需要編寫一個擴展CoreXhr或什麼步驟將是爲了使這項工作。

任何幫助,將不勝感激

回答

1

我能弄清楚這一點。問題來自於alfresco資源管理器端「treenode.get.js」中的存儲庫腳本。解決方案是執行以下操作:

  1. 在alfresco explorer中創建一個新的webscript,並將treenode.get.js代碼複製到新的webscript中。我最終調用了我的customtreenode.get.js。
  2. 刪除新創建的web腳本中的IsContainer的邏輯檢查
  3. 創建擴展PathTree的新Aikau文件。這裏是低於

    define(["dojo/_base/declare", 
        "alfresco/navigation/PathTree", 
        "alfresco/documentlibrary/_AlfDocumentListTopicMixin", 
        "service/constants/Default", 
        "dojo/_base/lang", 
        "dojo/_base/array", 
        "dojo/dom-class", 
        "dojo/query", 
        "dojo/NodeList-dom"], 
        function(declare, PathTree, _AlfDocumentListTopicMixin, AlfConstants, lang, array, domClass, query) { 
    
        return declare([PathTree, _AlfDocumentListTopicMixin], { 
    
          useHash: true, 
    
          getTargetUrl: function alfresco_navigation_Tree__getTargetUrl() { 
           var url = null; 
           if (this.siteId && this.containerId) 
           { 
            url = AlfConstants.PROXY_URI + "slingshot/doclib/treenodeCustom/site/" + this.siteId + "/documentlibrary"; 
           } 
           else if (this.rootNode) 
           { 
            url = AlfConstants.PROXY_URI + "slingshot/doclib/treenodeCustom/node/alfresco/company/home"; 
           } 
           else if (!this.childRequestPublishTopic) 
           { 
            this.alfLog("error", "Cannot create a tree without 'siteId' and 'containerId' or 'rootNode' attributes", this); 
           } 
           return url; 
          } 
        }); 
    }); 
    
  4. 代碼

    更改您的代碼以使用新的CustomPathTree

    { 
        align: "sidebar", 
        name: "alfresco/layout/Twister", 
        config: { 
        label: "twister.library.label", 
        additionalCssClasses: "no-borders", 
        widgets: [ 
          { 
           name: "CustomWidgets/widgets/CustomTreeNode", 
           config: { 
            showRoot: true, 
            rootLabel: "Repository", 
            rootNode: "/app:company_home", 
            publishTopic: "ALF_ITEM_SELECTED" 
            } 
           } 
          ] 
         } 
    } 
    

它的工作原理之後。我仍然需要將圖標從文件夾更改爲文檔。

+1

這是Aikau團隊尚未遇到的一個有趣的用例......它可能值得您在issues.alfresco.com或GitHub(https://github.com/)上提出此功能請求Alfresco/Aikau /問題),我們可以考慮加強現有行爲或提供替代小部件。 –