【发布时间】:2017-02-03 07:47:39
【问题描述】:
我的问题从这里开始:Is there a way to control the sorting order in the user's search interface?
我发现我可以使用people-finder.js控制排序顺序
FreeMarker 模板中包含此脚本people-finder.get.html.ftl:
<@standalone>
<@markup id="css" >
<#-- CSS Dependencies -->
<@link href="${url.context}/res/components/people-finder/people-finder.css" group="people-finder"/>
</@>
<@markup id="js">
<#-- JavaScript Dependencies -->
<@script src="${url.context}/res/components/people-finder/people-finder.js" group="people-finder"/>
</@>
<@markup id="new-js" action="replace" target="js">
<#– JavaScript Dependencies –>
<@script src="${url.context}/res/components/people-finder/people-finder-ext.js" group="people-finder"/>
</@>
<@markup id="widgets">
<@createWidgets group="people-finder"/>
</@>
<@markup id="html">
<@uniqueIdDiv>
<#assign el=args.htmlid?html>
<div id="${el}-body" class="people-finder list theme-color-1">
<div class="title theme-color-2"><label for="${el}-search-text">${msg("title")}</label></div>
<div class="finder-wrapper">
<@markup id="searchBar">
<div class="search-bar theme-bg-color-3">
<div class="search-text"><input type="text" id="${el}-search-text" name="-" value="" maxlength="256" tabindex="0" placeholder="${msg('help.title')}"/></div>
<div class="search-button alf-colored-button">
<span id="${el}-search-button" class="yui-button yui-push-button"><span class="first-child"><button>${msg("button.search")}</button></span></span>
</div>
</div>
</@markup>
<@markup id="searchHelp">
<div id="${el}-help" class="yui-g theme-bg-color-2 help hidden">
<span>${msg("help.content")}</span>
</div>
</@markup>
<@markup id="searchResults">
<div class="alf-results-wrapper">
<div id="${el}-results-info" class="yui-dt-liner theme-bg-color-2 result-info hidden"></div>
<div id="${el}-results" class="results hidden"></div>
</div>
</@markup>
</div>
</div>
</@>
</@>
</@>
为了确定所需的功能,我需要重写此脚本并“开发”自己的 - 比如说people-finder-ext.js
据我了解,使用这段代码我可以实现:
<@markup id="new-js" action="replace" target="js">
<#– JavaScript Dependencies –>
<@script src="${url.context}/res/components/people-finder/people-finder-ext.js" group="people-finder"/>
</@>
在我的 AMP- 扩展中,我将people-finder-ext.js 放在这里:
/some-customization-share/src/main/amp/web/components/people-finder/people-finder-ext.js
还有修改过的FreeMarker模板people-finder.get.html.ftl我放在这里:
/some-customization-share/src/main/amp/config/alfresco/web-extension/site-webscripts/org/alfresco/components/people-finder/people-finder.get.html.ftl
然后我在嵌入式 Tomcat 上运行我的项目:
mvn integration-test -Pamp-to-war
所以,我发现排序没有按我需要的方式工作。
我观察了共享层和 Alfresco/Repo 层之间的网络流量,发现我的脚本 people-finder-ext.js 没有加载。
构建后我注意到,我的脚本不在\target\amp-war\ 中,而只在\target\amp\ 中。
可能是什么原因?
【问题讨论】:
-
您的 .ftl 文件是否被覆盖?
-
请参考此链接。可能你会有所了解。 community.alfresco.com/thread/…
-
您是要替换现有的 .js 文件还是用自己的 .js 扩展某些功能?
标签: alfresco alfresco-share alfresco-maven