Skip to content

Commit

Permalink
Merge 0557052 into 69bc8c2
Browse files Browse the repository at this point in the history
  • Loading branch information
mario-softbless committed Dec 22, 2020
2 parents 69bc8c2 + 0557052 commit 7364d97
Show file tree
Hide file tree
Showing 7 changed files with 533 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,25 @@ public class ${capFirstModel}KeywordQueryContributor implements KeywordQueryCont
queryHelper.addSearchLocalizedTerm(booleanQuery, searchContext, Field.DESCRIPTION, false);
queryHelper.addSearchLocalizedTerm(booleanQuery, searchContext, Field.TITLE, false);
queryHelper.addSearchLocalizedTerm(booleanQuery, searchContext, Field.SUBTITLE, false);

<#if advancedSearch>
<#list application.fields as field >
<#if field.name != "title">
<#if
field.type?string == "com.liferay.damascus.cli.json.fields.Long" ||
field.type?string == "com.liferay.damascus.cli.json.fields.Double" ||
field.type?string == "com.liferay.damascus.cli.json.fields.Integer" ||
field.type?string == "com.liferay.damascus.cli.json.fields.RichText" ||
field.type?string == "com.liferay.damascus.cli.json.fields.Varchar" ||
field.type?string == "com.liferay.damascus.cli.json.fields.Text" ||
field.type?string == "com.liferay.damascus.cli.json.fields.Date" ||
field.type?string == "com.liferay.damascus.cli.json.fields.DateTime"
>
queryHelper.addSearchTerm(booleanQuery, searchContext, "${field.name}", false);
</#if>
</#if>
</#list>
</#if>
}

@Reference
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,12 @@ import com.liferay.friendly.url.service.FriendlyURLEntryLocalService;
import com.liferay.petra.string.StringPool;
import com.liferay.portal.aop.AopService;
import com.liferay.portal.kernel.comment.CommentManagerUtil;
import com.liferay.portal.kernel.dao.orm.DynamicQuery;
import com.liferay.portal.kernel.dao.orm.DynamicQueryFactoryUtil;
import com.liferay.portal.kernel.dao.orm.Junction;
import com.liferay.portal.kernel.dao.orm.QueryUtil;
import com.liferay.portal.kernel.dao.orm.PropertyFactoryUtil;
import com.liferay.portal.kernel.dao.orm.RestrictionsFactoryUtil;
import com.liferay.portal.kernel.exception.PortalException;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.kernel.json.JSONFactoryUtil;
Expand Down Expand Up @@ -47,6 +52,7 @@ import com.liferay.portal.kernel.workflow.WorkflowConstants;
import com.liferay.portal.kernel.workflow.WorkflowHandlerRegistryUtil;
import ${packageName}.exception.${capFirstModel}ValidateException;
import ${packageName}.model.${capFirstModel};
import ${packageName}.model.impl.${capFirstModel}Impl;
import ${packageName}.service.base.${capFirstModel}LocalServiceBaseImpl;
import ${packageName}.service.util.${capFirstModel}Validator;
import com.liferay.trash.exception.RestoreEntryException;
Expand Down Expand Up @@ -1266,7 +1272,7 @@ public class ${capFirstModel}LocalServiceImpl extends ${capFirstModel}LocalServi
${capFirstModel}.class.getName(), entry.getPrimaryKey(), entry,
serviceContext, workflowContext);
}

private static final int[] STATUS_ANY = {
WorkflowConstants.STATUS_APPROVED, WorkflowConstants.STATUS_DENIED,
WorkflowConstants.STATUS_DRAFT, WorkflowConstants.STATUS_EXPIRED,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,5 +41,36 @@ public class ${capFirstModel}ModelDocumentContributor implements ModelDocumentCo
document.addText(Field.TITLE, entry.get${application.asset.assetTitleFieldName?cap_first}());

document.addDate(Field.MODIFIED_DATE, entry.getModifiedDate());

<#if advancedSearch>
<#list application.fields as field >
<#if field.name != "title">
<#if
field.type?string == "com.liferay.damascus.cli.json.fields.Long" ||
field.type?string == "com.liferay.damascus.cli.json.fields.Double" ||
field.type?string == "com.liferay.damascus.cli.json.fields.Integer"
>
document.addNumber("${field.name}", entry.get${field.name?cap_first}());
</#if>
<#if
field.type?string == "com.liferay.damascus.cli.json.fields.RichText"
>
document.addText("${field.name}", HtmlUtil.extractText(entry.get${field.name?cap_first}()));
</#if>
<#if
field.type?string == "com.liferay.damascus.cli.json.fields.Varchar" ||
field.type?string == "com.liferay.damascus.cli.json.fields.Text"
>
document.addText("${field.name}", entry.get${field.name?cap_first}());
</#if>
<#if
field.type?string == "com.liferay.damascus.cli.json.fields.Date" ||
field.type?string == "com.liferay.damascus.cli.json.fields.DateTime"
>
document.addDate("${field.name}", entry.get${field.name?cap_first}());
</#if>
</#if>
</#list>
</#if>
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import com.liferay.portal.kernel.portlet.PortletPreferencesFactoryUtil;
import com.liferay.portal.kernel.portlet.PortletURLUtil;
import com.liferay.portal.kernel.security.permission.ActionKeys;
import com.liferay.portal.kernel.theme.ThemeDisplay;
import com.liferay.portal.kernel.util.HtmlUtil;
import com.liferay.portal.kernel.util.ParamUtil;
import com.liferay.portal.kernel.util.Validator;
import com.liferay.portal.kernel.util.WebKeys;
Expand All @@ -26,9 +27,11 @@ import ${packageName}.constants.${capFirstModel}PortletKeys;
import ${packageName}.model.${capFirstModel};
import ${packageName}.web.internal.security.permission.resource.${capFirstModel}EntryPermission;
import ${packageName}.web.util.${capFirstModel}ViewHelper;
import ${packageName}.web.portlet.action.${capFirstModel}Configuration;
import com.liferay.trash.TrashHelper;

import java.text.ParseException;
import java.text.SimpleDateFormat;

import java.util.Collections;
import java.util.HashMap;
Expand All @@ -37,6 +40,7 @@ import java.util.Map;

import javax.portlet.PortletException;
import javax.portlet.PortletURL;
import javax.portlet.PortletPreferences;

import javax.servlet.http.HttpServletRequest;

Expand Down Expand Up @@ -145,6 +149,15 @@ public class ${capFirstModel}DisplayContext {
navigationPortletURL.setParameter(
SearchContainer.DEFAULT_ORDER_BY_TYPE_PARAM, orderByType);


<#if advancedSearch>
Map<String, String> advSearchKeywords = _${uncapFirstModel}ViewHelper.getAdvSearchKeywords(_liferayPortletRequest);

for(String key : advSearchKeywords.keySet()) {
navigationPortletURL.setParameter(key, advSearchKeywords.get(key));
}
</#if>

SearchContainer<${capFirstModel}> _searchContainer = new SearchContainer<>(
_liferayPortletRequest,
PortletURLUtil.clone(navigationPortletURL, _liferayPortletResponse),
Expand All @@ -157,8 +170,12 @@ public class ${capFirstModel}DisplayContext {
_searchContainer.setOrderByType(orderByType);

SearchContainerResults<${capFirstModel}> searchContainerResults = null;


<#if advancedSearch>
if (Validator.isNull(keywords) && advSearchKeywords.isEmpty()) {
<#else>
if (Validator.isNull(keywords)) {
</#if>
searchContainerResults = _${uncapFirstModel}ViewHelper.getListFromDB(
_liferayPortletRequest, _searchContainer,
new int[] {WorkflowConstants.STATUS_APPROVED});
Expand All @@ -171,7 +188,15 @@ public class ${capFirstModel}DisplayContext {

_searchContainer.setTotal(searchContainerResults.getTotal());
_searchContainer.setResults(searchContainerResults.getResults());


<#if advancedSearch>
if(!advSearchKeywords.isEmpty()) {
PortletURL iteratorURL = _searchContainer.getIteratorURL();
iteratorURL.setParameter(DisplayTerms.KEYWORDS, "");
_searchContainer.setIteratorURL(iteratorURL);
}
</#if>

return _searchContainer;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ import com.liferay.portal.kernel.util.Constants;
import com.liferay.portal.kernel.util.ParamUtil;
import com.liferay.portal.kernel.util.Validator;
import com.liferay.portal.kernel.util.WebKeys;
import ${packageName}.web.util.${capFirstModel}ViewHelper;
import ${packageName}.web.internal.security.permission.resource.${capFirstModel}Permission;
import com.liferay.trash.TrashHelper;

Expand Down Expand Up @@ -332,10 +333,24 @@ public class ${capFirstModel}ManagementToolbarDisplayContext
navigationPortletURL.setParameter(
SearchContainer.DEFAULT_ORDER_BY_TYPE_PARAM, orderByType);

<#if advancedSearch>
Map<String, String> advSearchKeywords = ${capFirstModel}ViewHelper.getAdvSearchKeywords(liferayPortletRequest);

for(String key : advSearchKeywords.keySet()) {
navigationPortletURL.setParameter(key, advSearchKeywords.get(key));
}

if (advSearchKeywords.isEmpty()) {
</#if>

if (Validator.isNotNull(keywords)) {
navigationPortletURL.setParameter(DisplayTerms.KEYWORDS, keywords);
}

<#if advancedSearch>
}
</#if>

return navigationPortletURL;
}

Expand Down

0 comments on commit 7364d97

Please sign in to comment.