Skip to content

Instantly share code, notes, and snippets.

View evaldeslacasa's full-sized avatar

Enrique Valdes Lacasa evaldeslacasa

  • Thirdwave LLC
  • Madrid
View GitHub Profile
@evaldeslacasa
evaldeslacasa / file_entry_handler.ftl
Created February 27, 2024 16:26
Get file entry data in Freemarker
<#assign image_info = jsonFactoryUtil.looseSerializeDeep(Image)?eval >
<code>${(image_info.attributes.alt)!}</code>
<#assign fileEntryId = (image_info.attributes.fileEntryId?number)! >
<#if fileEntryId?has_content >
<#assign fileEntry = _dlfels.getFileEntry(fileEntryId)>
<#assign file_entry_info = jsonFactoryUtil.looseSerializeDeep(fileEntry) >
<code>${file_entry_info}</code>
</#if>
@evaldeslacasa
evaldeslacasa / build.gradle
Created January 21, 2021 18:16
Slider build - Gradle
plugins {
id 'java'
id "com.liferay.js.transpiler" version "2.4.60"
}
group 'org.example'
version '1.0-SNAPSHOT'
repositories {
maven {
@evaldeslacasa
evaldeslacasa / addParameterLiferay.java
Created February 21, 2020 22:43
Method to add parameters in URLs for Liferay
protected static String addParameterWithPortletNamespace(
String url, String name, String value) {
String portletId = HttpUtil.getParameter(url, "p_p_id", false);
if (Validator.isNotNull(portletId)) {
name = PortalUtil.getPortletNamespace(portletId) + name;
}
return HttpUtil.addParameter(url, name, value);
}
@evaldeslacasa
evaldeslacasa / languageId.java
Created February 4, 2020 19:04
Get language id from Locale
String languageId = LocaleUtil.toLanguageId(locale);
@evaldeslacasa
evaldeslacasa / portletTitle.vm
Created May 8, 2018 19:04
Get Portlet title in template or ADT
$themeDisplay.getPortletDisplay().getTitle()
@evaldeslacasa
evaldeslacasa / siteGroupIds.groovy
Created July 4, 2017 21:32
Liferay Groovy Script to get all site ids nested within a site when passing this site id as parameter
import com.liferay.portal.util.*;
import com.liferay.portal.model.*;
import com.liferay.portal.service.*;
import com.liferay.portlet.journal.*;
try {
company = PortalUtil.getCompany(actionRequest)
companyId = company.getCompanyId()
@evaldeslacasa
evaldeslacasa / pop up.js
Created March 15, 2017 17:57
Liferay pop ups javascript
function popUpUrl(id) {
var url = Liferay.PortletURL.createRenderURL();
url.setPortletId("56"); // "Web Content Display" portlet ID
url.setWindowState('pop_up');
url.setPortletMode('view');
url.setParameter("groupId", Liferay.ThemeDisplay.getScopeGroupIdOrLiveGroupId());
url.setParameter("articleId", id); // webcontent ID
return url;
};
@evaldeslacasa
evaldeslacasa / downloadFileLiferay.java
Last active October 26, 2016 15:06
Download file from Liferay custom portlet
private void downloadFile(ResourceRequest resourceRequest, ResourceResponse resourceResponse, String siteName) {
try {
File file = new File("${filePath}");
InputStream in = new FileInputStream(file);
HttpServletResponse httpRes = PortalUtil.getHttpServletResponse(resourceResponse);
HttpServletRequest httpReq = PortalUtil.getHttpServletRequest(resourceRequest);
ServletResponseUtil.sendFile(httpReq, httpRes, file.getName(), in, "application/download");
@evaldeslacasa
evaldeslacasa / gist:55f5ddf8658e83505aebf23a3f73f15b
Created October 17, 2016 21:21
AUI Script in edit_calendar_booking.jsp
<aui:script>
function <portlet:namespace />filterCalendarBookings(calendarBooking) {
return <%= calendarBookingId %> !== calendarBooking.calendarBookingId;
}
function <portlet:namespace />getSuggestionsContent() {
return document.<portlet:namespace />fm.<portlet:namespace />title.value + ' ' + window.<portlet:namespace />description.getHTML();
}
function <portlet:namespace />resolver(data) {
@evaldeslacasa
evaldeslacasa / gist:dfa8ce6615779ad5313aa88b852df4e9
Last active September 4, 2019 11:21
Pagination for dynamic Asset Publisher using ADT (hard-coded delta though)
#set ($AssetEntryLocalService = $serviceLocator.findService("com.liferay.portlet.asset.service.AssetEntryLocalService"))
#set ($journalArticleLocalService = $serviceLocator.findService("com.liferay.portlet.journal.service.JournalArticleLocalService"))
#set( $structureId = $journalArticle.getStructureId() )
#set ($ddmStructureLocalService = $serviceLocator.findService("com.liferay.portlet.dynamicdatamapping.service.DDMStructureLocalService") )
#set( $numNews = $journalArticleLocalService.getStructureArticles($groupId, $structureId) )
#set( $newsUrl = $layout.getFriendlyURL() )
#set( $newsArticles = $journalArticleLocalService.getStructureArticles($groupId, $structureId) )
#set( $checkedArticleIds = [] )