2016-09-29 11 views
0

Мы хотим настроить фасетный поиск, передав дополнительный аргумент в факсированном URL-адресе поиска и прочитав его в org \ alfresco \ slingshot \ search \ search. get.js ----> search.lib.js.как расширить фасетный поиск, передав дополнительный аргумент URL-адресу в alfresco 5.1.1

http://localhost:8080/share/page/dp/ws/faceted-search#searchTerm=Koala.jpg&scope=repo&nodeRef=test

В searchDocLib JSON, мы имеем значение nodeRef назначили его selectedContainer, но этот аргумент не приходит в search.get.js. В основном, как передать дополнительный аргумент в searchDocLib? Как включить журналы для faceted-search.get.js, чтобы записи журнала были напечатаны в share.log?

var noderef = (page.url.args ["nodeRef"]! = Null)? page.url.args ["nodeRef"]: "";

logger.log (page.url.templateArgs.nodeRef + ".... nodeRef =" + nodeRef);

// Build the searchDocLib model 
var searchDocLib = { 
id: "FCTSRCH_SEARCH_RESULTS_LIST", 
name: "alfresco/documentlibrary/AlfSearchList", 
config: { 
    viewPreferenceProperty: "org.alfresco.share.searchList.viewRendererName", 
    view: viewRendererName, 
    waitForPageWidgets: true, 
    useHash: true, 
    useLocalStorageHashFallback: true, 
    hashVarsForUpdate: [ 
    "searchTerm", 
    "facetFilters", 
    "sortField", 
    "sortAscending", 
    "query", 
    "scope", 
    "selectedContainer" 
    ], 
    selectedScope: "repo", 
    useInfiniteScroll: true, 
    siteId: null, 
    rootNode: repoRootNode, 
    repo: false, 
    selectedContainer: noderef, 
    additionalControlsTarget: "FCTSRCH_RESULTS_MENU_BAR", 
    additionalViewControlVisibilityConfig: hideOnZeroResultsConfig, 
    widgets: [ 
    { 
    id: "FCTSRCH_SEARCH_ADVICE_NO_RESULTS", 
    name: "alfresco/documentlibrary/views/AlfSearchListView", 
    config: { 
     widgetsForNoDataDisplay: widgetsForNoDataDisplay, 
     a11yCaption: msg.get("faceted-search.results.caption"), 
     a11yCaptionClass: "hiddenAccessible", 
     widgetsForHeader: [ 
     { 
      id: "FCTSRCH_THUMBNAIL_HEADER_CELL", 
      name: "alfresco/documentlibrary/views/layouts/HeaderCell", 
      config: { 
      label: msg.get("faceted-search.results.heading.thumbnail"), 
      class: "hiddenAccessible", 
      a11yScope: "col" 
      } 
     }, 
     { 
      id: "FCTSRCH_DETAILS_HEADER_CELL", 
      name: "alfresco/documentlibrary/views/layouts/HeaderCell", 
      config: { 
      label: msg.get("faceted-search.results.heading.details"), 
      class: "hiddenAccessible", 
      a11yScope: "col" 
      } 
     }, 
     { 
      id: "FCTSRCH_ACTIONS_HEADER_CELL", 
      name: "alfresco/documentlibrary/views/layouts/HeaderCell", 
      config: { 
      label: msg.get("faceted-search.results.heading.actions"), 
      class: "hiddenAccessible", 
      a11yScope: "col" 
      } 
     } 
     ], 
     widgets: [ 
     { 
      id: "FCTSRCH_SEARCH_RESULT", 
      name: "alfresco/search/AlfSearchResult", 
      config: { 
      enableContextMenu: false 
      } 
     } 
     ] 
    } 
    }, 
    { 
     id: "FCTSRCH_GALLERY_VIEW", 
     name: "alfresco/documentlibrary/views/AlfGalleryView", 
     config: { 
     showNextLink: true, 
     nextLinkLabel: msg.get("faceted-search.show-more-results.label"), 
     widgetsForNoDataDisplay: widgetsForNoDataDisplay, 
     widgets: [ 
      { 
      id: "FCTSRCH_GALLERY_VIEW_THUMBNAIL_DOC_OR_FOLDER", 
      name: "alfresco/search/SearchGalleryThumbnail", 
      config: { 
       widgetsForSelectBar: [ 
       { 
        id: "FCTSRCH_GALLERY_VIEW_MORE_INFO_OR_FOLDER", 
        name: "alfresco/renderers/MoreInfo", 
        align: "right", 
        config: { 
        filterActions: true, 
        xhrRequired: true 
        } 
       } 
       ], 
       publishTopic: "ALF_NAVIGATE_TO_PAGE", 
       renderFilter: [ 
       { 
        property: "type", 
        values: ["document","folder"], 
        negate: false 
       } 
       ] 
      } 
      }, 
      { 
      id: "FCTSRCH_GALLERY_VIEW_THUMBNAIL_OTHER", 
      name: "alfresco/search/SearchGalleryThumbnail", 
      config: { 
       widgetsForSelectBar: [ 
       { 
        id: "FCTSRCH_GALLERY_VIEW_MORE_INFO_OTHER", 
        name: "alfresco/renderers/MoreInfo", 
        align: "right", 
        config: { 
        filterActions: true, 
        allowedActionsString: "[\"document-delete\"]", 
        xhrRequired: true 
        } 
       } 
       ], 
       publishTopic: "ALF_NAVIGATE_TO_PAGE", 
       renderFilter: [ 
       { 
        property: "type", 
        values: ["document","folder"], 
        negate: true 
       } 
       ] 
      } 
      } 
     ] 
     } 
    }, 
    { 
     id: "FCTSRCH_INFINITE_SCROLL", 
     name: "alfresco/documentlibrary/AlfDocumentListInfiniteScroll" 
    } 
    ] 
} 
}; 

ответ

0

Я написал blog post, что охватывает настраивая страницу поиска. Хотя это не совсем тот же вариант использования, принцип остается тем же - вы захотите создать свой собственный SearchService (расширение по умолчанию), а затем поменять свой вариант по умолчанию на странице страницы с фасетным поиском. Вы хотите расширить функцию onSearchRequest, чтобы включить дополнительный параметр запроса.