Categories, Tags and Stars.
Categories, Tags and Stars are functionalities of Asset Framework. You need to look at both server side and frontend side for the implementation.
To disable Categories, Tags and Stars, remove method calls below. But be careful, server side implementation is taking care of all assets, so you need to leave it unless removing all Asset Framework functionalities.
Server side
At updating Categories, Tags and Stars. In *LocalServiceImpl#updateStatus
assetEntryLocalService.updateEntry(SampleSB.class.getName(),
entryId, entry.getModifiedDate(), null, true, true);
At updating Categories, Tags and Stars to hide because the workflow status is other than approval. In *LocalServiceImpl#updateStatus
assetEntryLocalService.updateVisible(SampleSB.class.getName(),
entryId, false);
At deleting the entity into trash. In *LocalServiceImpl#updateStatus
assetEntryLocalService.deleteEntry(SampleSB.class.getName(),
entry.getPrimaryKey());
At updating assets. In *LocalServiceImpl#updateAsset
.
You may want to remove *LocalServiceImpl#updateAsset
itself from *LocalServiceImpl#addEntry
and *LocalServiceImpl#updateEntry
public void updateAsset(
long userId, SampleSB entry, long[] assetCategoryIds,
String[] assetTagNames, long[] assetLinkEntryIds, Double priority)
throws PortalException {
boolean visible = false;
if (entry.isApproved()) {
visible = true;
}
String summary = HtmlUtil.extractText(
StringUtil.shorten(entry.getSamplesbSummaryName(), 500));
AssetEntry assetEntry = assetEntryLocalService.updateEntry(
userId,
entry.getGroupId(), entry.getCreateDate(), entry.getModifiedDate(),
SampleSB.class.getName(), entry.getPrimaryKey(), entry.getUuid(), 0,
assetCategoryIds, assetTagNames, true, visible, null, null, null,
null, ContentTypes.TEXT_HTML, entry.getSamplesbTitleName(), null,
summary, null, null, 0, 0, priority);
assetLinkLocalService.updateLinks(
userId, assetEntry.getEntryId(),
assetLinkEntryIds, AssetLinkConstants.TYPE_RELATED);
}
JSP (Frontend)
Categories, Tags and Stars are enabled to place taglibs as below in edit.jsp
If you don’t use them, remove the lines below along with methods in server side.
Categories
<aui:input name="categories" type="assetCategories" />
Tags
<aui:input name="tags" type="assetTags" />
Stars
<liferay-ui:ratings className="<%=SampleSB.class.getName()%>"
classPK="<%=sampleSB.getPrimaryKey()%>" type="stars" />