如何阅读alfresco 5.1.1- aikau分面搜索中的其他参数

时间:2016-12-13 07:20:43

标签: alfresco-share aikau

当用户在高级搜索屏幕下拉菜单(文件夹,内容除外)中选择复杂资源时,将填充自定义搜索用户界面,其中将显示12个字段。因此,当用户单击搜索按钮时,需要读取这些值并重定向到alfresco repo文件(org / alfresco / slingshot / search / search.get.js)。我们已经在存储库中定制了这些文件(search.get.js,search.lib.js)以适应逻辑并且工作正常在4.2.2中;当我们迁移到511时,我们需要在自定义的faceted-search.get.js中更改此逻辑以读取这些值。如何在自定义的facted-search.get.js中编写此逻辑?

2 个答案:

答案 0 :(得分:0)

实际上不可能在faceted-search.get.js文件中读取这些URL哈希属性,因为WebScript的JavaScript控制器无法访问URL的那一部分(它只包含有关URL和URL的信息)请求参数,而不是哈希参数。)

哈希参数实际上是由AlfSearchList小部件在客户端处理的。

也许你可以解释一下你想要实现的目标,这样我就可以提出一个替代方案 - 即用户的最终目标,而不是你想要实现的编码细节。

答案 1 :(得分:0)

我们将在.get.js文件中读取类似下面的查询字符串值。

function getNodeRef(){
    var queryString = page.url.getQueryString();
    var nodeRef = "NOT FOUND";
    var stringArray = queryString.split("&");
    for (var t = 0; t < stringArray.length; t++) {
        if (stringArray[t].indexOf('nodeRef=') > -1) {
            nodeRef = stringArray[t].split('=')[1];
            break;
        }
    }
    if (nodeRef !== "NOT FOUND") {
        nodeRef = nodeRef.replace("://", "/");
        return nodeRef;
    }
    else {
        throw new Error("Node Reference is not found.");
    }
}

它可能对你有帮助,我们也会等待Dave Drapper的建议。