Skip to content

Instantly share code, notes, and snippets.

View prince-neres's full-sized avatar
🔥

Prince prince-neres

🔥
View GitHub Profile
@prince-neres
prince-neres / configuration.json
Created May 14, 2024 12:59
Search contents fragment with headless API Liferay
{
"fieldSets": [
{
"fields": [
{
"name": "contentStructureId",
"label": "ID da estrutura do conteúdo",
"type": "text",
"dataType": "int",
"defaultValue": ""
@prince-neres
prince-neres / index.ftl
Last active December 8, 2023 13:29
Calendar form filled as events
<!--
Importar CDN no Header
<script src='https://cdn.jsdelivr.net/npm/[email protected]/index.global.min.js'></script>
-->
[#assign currentYear = .now?string('yyyy')?number]
[#assign currentMonth = .now?string('MM')?number]
<div>
<div class="d-flex gap-3">
@prince-neres
prince-neres / relateFileToContent.groovy
Created October 20, 2023 21:41
Relacionando arquivo de documentos e mídia com conteúdo web no liferay
private void relateFileToContent(long fileId, String externalReferenceCode) throws PortalException {
long groupId = _b3MigratorSystemConfiguration.clientsGroupId();
AssetEntry journalArticleEntry = getJournalArticleEntry(externalReferenceCode, groupId);
AssetEntry fileEntry = getFileEntry(fileId, groupId);
if (Validator.isNotNull(journalArticleEntry) && Validator.isNotNull(fileEntry)) {
relateEntries(journalArticleEntry, fileEntry);
relateEntries(fileEntry, journalArticleEntry);
import com.liferay.portal.kernel.service.UserLocalServiceUtil
import com.liferay.portal.kernel.util.PortalUtil
def deleteUsersByEmails(emails) {
def company = PortalUtil.getCompany(actionRequest)
def companyId = company.getCompanyId()
for (email in emails.split('\n')) {
try {
def user = UserLocalServiceUtil.fetchUserByEmailAddress(companyId, email.trim())
@prince-neres
prince-neres / getDDMFieldsValuesFromContent.groovy
Last active September 11, 2023 17:39
Pega valores de campos dos conteúdos web e colcoa em Array de JSON
import com.liferay.asset.kernel.model.AssetEntry;
import com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil;
import com.liferay.asset.kernel.service.persistence.AssetEntryQuery;
import com.liferay.portal.kernel.json.JSONFactoryUtil;
import com.liferay.portal.kernel.util.LocaleUtil;
Locale locale = LocaleUtil.BRAZIL;
long groupId = 0;
long curseStructureId = 0;
long eventStructureI = 0;
@prince-neres
prince-neres / get_preview_url.ftl
Last active December 12, 2024 19:18
Código freemarker para pegar url de imagens de conteúdos web no liferay
<#--
Configurações para habilitar serviceLocor localizar classes java
não instanciadas por BaseService e BaseLocalService
Setar varável em `portal-ext.properties`
template.engine.service.locator.restrict=false
-->
<#assign
@prince-neres
prince-neres / get_user_expando_attr.ftl
Last active August 2, 2023 23:01
Código freemarker para pegar atributo da expando bridge de usuário no liferay
<#assign
userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService")
userId = 0
user = userLocalService.getUser(userId)
userPerfilType = user.getExpandoBridge().getAttribute("userPerfilType")
>
<p>
${userPerfilType}
</p>
@prince-neres
prince-neres / imageUploadDMByUrl.groovy
Last active August 29, 2023 00:22
Adiciona imagem através de URL a pasta em documentos e mídias do site no liferay
import com.liferay.document.library.kernel.service.DLAppLocalServiceUtil
import com.liferay.document.library.util.DLURLHelperUtil
import com.liferay.portal.kernel.service.ServiceContextThreadLocal
import com.liferay.portal.kernel.util.MimeTypesUtil
import java.nio.file.Path
import java.nio.file.StandardCopyOption
import java.nio.file.Files
serviceContext = ServiceContextThreadLocal.getServiceContext()
@prince-neres
prince-neres / user_register_form.jsp
Last active August 2, 2023 23:01
Formulário de cadastro de usuário com campo customizado no liferay
<%@ include file="/init.jsp" %>
<portlet:defineObjects />
<portlet:actionURL name="registerUser" var="registerUser"> </portlet:actionURL>
<div class="container items-align-center justify-content-center mt-5">
<h2>Cadastro de usuário</h2>
<form action="${registerUser}" method="post">
<div class="form-row">
@prince-neres
prince-neres / UserRegisterPortlet.java
Created June 15, 2023 17:14
Portlet liferay para criar novo usuário com campos customizados, se não houver o campo customizado ele é criado antes
package user.register.portlet;
import com.liferay.expando.kernel.model.ExpandoBridge;
import com.liferay.expando.kernel.util.ExpandoBridgeFactoryUtil;
import com.liferay.portal.kernel.exception.PortalException;
import com.liferay.portal.kernel.model.User;
import com.liferay.portal.kernel.portlet.bridges.mvc.MVCPortlet;
import com.liferay.portal.kernel.service.ServiceContext;
import com.liferay.portal.kernel.service.ServiceContextFactory;
import com.liferay.portal.kernel.service.UserLocalServiceUtil;