Изменить живой поиск в Alfresco Commmunity 5.0.d

Я использую Alfresco Community 5.0.d и пытаюсь найти файлы, связанные с поиском в реальном времени.

Я хотел бы удалить или изменить поиск людей в режиме реального времени. Пожалуйста, дайте мне знать файлы или способ достижения этого.

Share-header.get.js информация ниже:

if (!user.isAdmin)
{
  widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_MY_FILES");
  widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_SHARED_FILES");

  widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_SITES_MENU");
  widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_PEOPLE");

  widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_REPOSITORY");
  widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_BECPG");
}

//Disable people search 
var headerSearch = widgetUtils.findObject(model.jsonModel, "id", "HEADER_SEARCH");
if (headerSearch)
{ 
  headerSearch.config.showPeopleResults = false;       
  headerSearch.config.placeholder="Search files, sites";      
}

Ниже приведен extensions.xml

<extension>
    <modules>
        <module>
            <id>Update Site Header</id>
            <version>1.0</version>

true org.alfresco.share.header com.site-header share-header

Как я добавил ниже строки, теперь я мог видеть, что мой файл, общий файл и другие пункты меню удаляются для пользователя (не администратора), но без изменений в окне поиска.

Предоставлено: Muralidharan.

<auto-deploy>true</auto-deploy>
<evaluator type="default.extensibility.evaluator"/>

Снимок экрана структуры HTML для окна поиска. скриншот html структуры

Ниже приведен скриншот модулей /deploy:

Модули / развернуть

Снимок экрана режима отладки:

заранее спасибо

3 ответа

Решение

Я следовал по ссылке ниже, и это работало как шарм.

https://community.alfresco.com/message/806438-re-not-able-to-disable-suggestion-in-alfresco?commentID=806438&et=watches.email.thread

Сводка: переопределите файл live-search-people.get.json.ftl, чтобы он не дал результатов для живого поиска.

шаги:

  1. Извлечь alfresco-remote-api-5.0.d (/Applications/alfresco-5.0.d/tomcat/webapps/alfresco/WEB-INF/lib)
  2. Перейдите /Applications/alfresco-5.0.d/tomcat/webapps/alfresco/WEB-INF/lib/alfresco-remote-api-5.0.d/alfresco/templates/webscripts/org/alfresco/slingshot/search и скопируйте live-поиск -people.get.json.ftl
  3. Затем перейдите в Applications/alfresco-5.0.d/tomcat/shared/classes/alfresco/extension/templates/webscripts/org/alfresco/slingshot/search (создайте новый каталог, если он не существует) и вставьте скопированный ранее файл.
  4. Откройте этот файл в редакторе, как возвышенный текст, и замените его следующим кодом.

    <#import "../../repository/person/person.lib.ftl" as personLib />

    <#escape x as jsonUtils.encodeJSONString (x)>{"totalRecords": 0, "startIndex": 0, "items": []}

  5. Перезапустите tomcat и протестируйте поиск в реальном времени.

Спасибо Ангелу и Алексу за ответ с разъяснениями.

Интересно, что я использовал Aikau 1.0.8. Из-за этого изменения, рекомендованные Muralidharan, не работали (более старая версия), поэтому теперь, когда я перехожу на более новую версию Aikau (1.0.101), эти изменения хороши.

Спасибо Муралидхарана!

/****НОТА****/

Если вы используете более старую версию Aikau (например, 1.0.8), вы должны переопределить расширение. Или, если вы используете более новую версию Aikau (например, 1.0.101), вы можете напрямую внести изменения.

Мы исключили поиск людей, используя скрипт ниже.

//Disable people search 
var headerSearch = widgetUtils.findObject(model.jsonModel, "id", "HEADER_SEARCH");
if (headerSearch)
{ 
  headerSearch.config.showPeopleResults = false;       
  headerSearch.config.placeholder="Search files, sites";      
}

И мы разместили этот файл по следующему пути. C:\Alfresco5\ кот \ WebApps \ доля \WEB-INF\ Классы \ под открытым небом \ веб-расширение \ сайт-webscripts \ ком \quanticate\ заголовок \ разделённый header.get.js

Используйте расширение модуля, чтобы применить ваши настройки в Share и сохранить этот файл в alfresco \ web-extension \ site-data \ extensions \ extensions.xml

<extension>
  <modules>
    <module>
      <id>Menu customisation</id>
      <auto-deploy>true</auto-deploy>
      <evaluator type="default.extensibility.evaluator"/>
       <!-- default.extensibility.evaluator is applied to determine if the module should be executed -->
      <customizations>        
         <customization>
            <targetPackageRoot>org.alfresco</targetPackageRoot>
            <sourcePackageRoot>com.quanticate.header</sourcePackageRoot> <!-- Your package path should go here -->
            <alwaysApply>
               <webscript>share-header</webscript>
            </alwaysApply>
         </customization>
      </customizations>
    </module>
  </modules>
</extension>

Вы должны переопределить файлы, содержащие ответ webscript. Найдите файлы шаблона Freemarker, которые имеют отрендеренный вывод, и переопределите его.

Другие вопросы по тегам