Hi,
we have implemented one functionality to calculate the size of assets in search component.
So if user select folder in search result page then only calculate size option should display, but problem is even if user selects the file or document calculate size option is displaying.
below is the sample code.
faceted-search.get.js
var calCulateSizewidget = {
name: "alfresco/menus/AlfSelectedItemsMenuItem",
config: {
label: msg.get("calculate.size.folders"),
clearSelectedItemsOnClick: true,
publishTopic: "CUSTOM_CALCULATE_SIZE"
}
};
var widget2 = widgetUtils.findObject(model.jsonModel.widgets, "id", "FCTSRCH_SEARCH_RESULT");
var widget3 = widgetUtils.findObject(model.jsonModel.widgets, "id", "CUSTOM_SELECTED_MENU");
function showCalculateSizeforGroup(group,calCulateSizewidget){
if(widget2.config.onFolderSelection === true)
{
widget3.config.widgets.push(calCulateSizewidget);
}
}
I have tried extending the AlfSelectedItemmenuItem.js
onItemsSelected: function alfresco_menus_AlfSelectedItemsMenuItem__onItemsSelected(payload) {
alert(" payload "+payload);
if (payload.selectedItems)
{
if (!this.publishPayload)
{
this.publishPayload = {};
}
var records = payload.selectedItems;
var newPayload = [];
for(var i = 0; i < records.length; i++)
{
if(records[i].type == "folder")
{
onFolderSelection = true;
console.log("record payload"+records[i]);
newPayload.push(records[i]);
}
}
this.publishPayload.selectedItems = newPayload;
}
},
Please let me know if i am missing anything.
Thanks !