Как получить NodeRef открытого документа в Alfresco Share

Я планирую создать прямую ссылку для скачивания со стороны клиента, когда пользователь открывает документ в окне сведений о документе. Для этого я хочу получить доступ к noderef открытого документа. Может ли кто-нибудь упомянуть, как получить доступ к noderef открытого документа со стороны клиента alfresco (javascript).


person Kanishka Dilshan    schedule 20.06.2013    source источник
comment
Что вы имеете в виду под открытым документом? Страница сведений о документе? Документ, который вы скачали некоторое время назад? Что-то другое?   -  person Gagravarr    schedule 20.06.2013
comment
Да, я имею в виду страницу сведений о документе.   -  person Kanishka Dilshan    schedule 20.06.2013


Ответы (1)


Хорошо для вас, что я сделал это в прошлом для клиента.

Вам нужно будет изменить следующие файлы (создать модуль или просто переопределить их)

  • document-links.get.properties (добавьте новый ярлык для скачивания)
  • document-links.get.head.ftl (включите ваш новый переопределенный JavaScript на стороне клиента)
  • document-links.get.html.ftl (добавьте новое поле, например URL-адрес текущей страницы)

        <h3 class="thin dark">${msg("page.download")}</h3>
        <div class="link-info">
           <input id="${el}-download" value="${document.node.contentURL}"/>
           <a href="#" name=".onCopyLinkClick" class="${el} hidden">${msg("page.copy")}</a>
        </div>
    
  • document-links.js (клиентский JavaScript)

onReady: function DocumentLinks_onReady() { // Показать ссылки для копирования if (this.hasClipboard) { Dom.removeClass(Selector.query("a.hidden", this.id), "hidden"); }

 // Make sure text fields auto select the text on focus
 Event.addListener(Selector.query("input", this.id), "focus", this._handleFocus);

 // Prefix some of the urls with values from the client
 Dom.get(this.id + "-page").value = document.location.href;

 // added Download link
 var contentURL = Dom.get(this.id + "-download").value;
 Dom.get(this.id + "-download").value = window.location.protocol + "//" + window.location.host + "/alfresco/d/a" +

contentURL.replace('api/node/content/', ''); }

person Tahir Malik    schedule 20.06.2013