diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPratica.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPratica.java index d9f45921..47a48d14 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPratica.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPratica.java @@ -31,14 +31,22 @@ public interface DettPratica extends DettPraticaModel, PersistedModel { * * Never modify this interface directly. Add methods to {@link it.tref.liferay.portos.bo.model.impl.DettPraticaImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface. */ - public java.lang.String getTitle(java.util.Locale locale); - - public java.lang.String getTitle(); - public java.lang.String getFullDescription(); public java.lang.String getMiddleDescription(); + public java.util.Set getSoggettiAsseveranti() + throws com.liferay.portal.kernel.exception.PortalException, + com.liferay.portal.kernel.exception.SystemException; + + public java.util.Set getTipiSoggettiAsseveranti() + throws com.liferay.portal.kernel.exception.PortalException, + com.liferay.portal.kernel.exception.SystemException; + + public java.lang.String getTitle(); + + public java.lang.String getTitle(java.util.Locale locale); + public java.lang.String serializeToVersioning() throws java.lang.NoSuchFieldException, java.lang.SecurityException; diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPraticaClp.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPraticaClp.java index 11dc6a9e..fcaea2a1 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPraticaClp.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPraticaClp.java @@ -8260,6 +8260,25 @@ public class DettPraticaClp extends BaseModelImpl } } + @Override + public java.util.Set getTipiSoggettiAsseveranti() { + try { + String methodName = "getTipiSoggettiAsseveranti"; + + Class[] parameterTypes = new Class[] { }; + + Object[] parameterValues = new Object[] { }; + + java.util.Set returnObj = (java.util.Set)invokeOnRemoteModel(methodName, + parameterTypes, parameterValues); + + return returnObj; + } + catch (Exception e) { + throw new UnsupportedOperationException(e); + } + } + @Override public java.lang.String serializeToVersioningPage() { try { @@ -8317,6 +8336,25 @@ public class DettPraticaClp extends BaseModelImpl } } + @Override + public java.util.Set getSoggettiAsseveranti() { + try { + String methodName = "getSoggettiAsseveranti"; + + Class[] parameterTypes = new Class[] { }; + + Object[] parameterValues = new Object[] { }; + + java.util.Set returnObj = (java.util.Set)invokeOnRemoteModel(methodName, + parameterTypes, parameterValues); + + return returnObj; + } + catch (Exception e) { + throw new UnsupportedOperationException(e); + } + } + @Override public java.lang.String getFullDescription() { try { diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPraticaWrapper.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPraticaWrapper.java index faf626de..a22ff378 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPraticaWrapper.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/service/it/tref/liferay/portos/bo/model/DettPraticaWrapper.java @@ -8074,23 +8074,37 @@ public class DettPraticaWrapper implements DettPratica, } @Override - public java.lang.String getTitle(java.util.Locale locale) { - return _dettPratica.getTitle(locale); + public java.lang.String getFullDescription() { + return _dettPratica.getFullDescription(); } @Override - public java.lang.String getTitle() { - return _dettPratica.getTitle(); + public java.lang.String getMiddleDescription() { + return _dettPratica.getMiddleDescription(); } @Override - public java.lang.String getFullDescription() { - return _dettPratica.getFullDescription(); + public java.util.Set getSoggettiAsseveranti() + throws com.liferay.portal.kernel.exception.PortalException, + com.liferay.portal.kernel.exception.SystemException { + return _dettPratica.getSoggettiAsseveranti(); } @Override - public java.lang.String getMiddleDescription() { - return _dettPratica.getMiddleDescription(); + public java.util.Set getTipiSoggettiAsseveranti() + throws com.liferay.portal.kernel.exception.PortalException, + com.liferay.portal.kernel.exception.SystemException { + return _dettPratica.getTipiSoggettiAsseveranti(); + } + + @Override + public java.lang.String getTitle() { + return _dettPratica.getTitle(); + } + + @Override + public java.lang.String getTitle(java.util.Locale locale) { + return _dettPratica.getTitle(locale); } @Override diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/model/impl/DettPraticaImpl.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/model/impl/DettPraticaImpl.java index e199eac2..7e2527f9 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/model/impl/DettPraticaImpl.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/model/impl/DettPraticaImpl.java @@ -9,18 +9,30 @@ package it.tref.liferay.portos.bo.model.impl; import it.tref.liferay.portos.bo.model.IntPratica; +import it.tref.liferay.portos.bo.model.Soggetto; +import it.tref.liferay.portos.bo.service.DelegaLocalServiceUtil; import it.tref.liferay.portos.bo.service.IntPraticaLocalServiceUtil; +import it.tref.liferay.portos.bo.service.SoggettoLocalServiceUtil; import it.tref.liferay.portos.bo.shared.util.Constants; +import it.tref.liferay.portos.bo.shared.util.TipoIntegrazioneUtil; +import it.tref.liferay.portos.bo.shared.util.TipoSoggettoUtil; +import it.tref.liferay.portos.bo.util.AsseverazioniUtil; import it.tref.liferay.portos.bo.util.AzioniPraticheUtil; import it.tref.liferay.portos.bo.util.PraticaUtil; +import it.tref.liferay.portos.bo.util.ValidazionePraticaUtil; import java.sql.Types; import java.text.Format; import java.text.SimpleDateFormat; +import java.util.ArrayList; import java.util.HashMap; +import java.util.HashSet; +import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.Set; +import org.apache.commons.lang.ArrayUtils; import org.codehaus.jettison.json.JSONObject; import com.liferay.portal.kernel.exception.PortalException; @@ -34,6 +46,8 @@ import com.liferay.portal.kernel.util.LocaleUtil; import com.liferay.portal.kernel.util.StringPool; import com.liferay.portal.kernel.util.TimeZoneUtil; import com.liferay.portal.kernel.util.Validator; +import com.liferay.portal.model.User; +import com.liferay.portal.service.UserLocalServiceUtil; /** * The extended model implementation for the DettPratica service. Represents a row in the @@ -58,43 +72,6 @@ public class DettPraticaImpl extends DettPraticaBaseImpl { public DettPraticaImpl() {} - @Override - public String getTitle(Locale locale) { - - StringBuilder sb = new StringBuilder(); - IntPratica intPratica = null; - try { - intPratica = IntPraticaLocalServiceUtil.fetchIntPratica(getIntPraticaId()); - if (AzioniPraticheUtil.isDeposito(intPratica.getIntPraticaId())) { - sb.append("Deposito "); - } else if (AzioniPraticheUtil.isAutorizzazione(intPratica.getIntPraticaId())) { - sb.append("Autorizzazione "); - } - sb.append("n. "); - if (Validator.isNotNull(getProtocollo())) { - // TODO da decidere che data, per adesso si mette quella di creazione il numero protocollo sbagliato - // dovrebbe essere il primo - sb.append(intPratica.getNumeroProgetto()).append(" del ").append(sdf.format(intPratica.getDtPratica())); - } else { - if (Validator.isNotNull(intPratica.getNumeroProgetto())) { - sb.append(intPratica.getNumeroProgetto()).append(StringPool.SPACE).append(StringPool.DASH) - .append(StringPool.SPACE); - } - sb.append(getDettPraticaId()).append(" (Temporaneo) "); - } - sb.append(" - id ").append(intPratica.getIntPraticaId()); - } catch (PortalException | SystemException e) { - _log.error("Error on IntPratidaId=" + intPratica.getIntPraticaId(), e); - } - return sb.toString(); - } - - @Override - public String getTitle() { - - return getTitle(LocaleUtil.getSiteDefault()); - } - @Override public String getFullDescription() { @@ -140,62 +117,6 @@ public class DettPraticaImpl extends DettPraticaBaseImpl { return sb.toString(); } - @Override - public String serializeToVersioning() throws NoSuchFieldException, SecurityException { - - StringBuilder sb = new StringBuilder(); - sb.append("{\"version\":\"").append(Constants.DETTPRATICA_VERSION_IMPL).append("\",\"fields\":["); - Map modelAttributes = getModelValues(); - String privateUuid = "uuid_"; - Object[][] columns = DettPraticaModelImpl.TABLE_COLUMNS; - for (Object[] column_x : columns) { - String property = (String) column_x[0]; - if (privateUuid.equals(property)) { - property = "uuid"; - } - int type = (int) column_x[1]; - String className = StringPool.BLANK; - switch (type) { - case Types.BIGINT: - className = Long.class.getCanonicalName(); - break; - case Types.BOOLEAN: - case Types.TIMESTAMP: - case Types.VARCHAR: - className = String.class.getCanonicalName(); - break; - case Types.INTEGER: - className = Integer.class.getCanonicalName(); - break; - } - Object value = modelAttributes.get(property); - sb.append("{\"name\":\"").append(property).append("\",\"class\":\"").append(className) - .append("\",\"value\":") - .append(JSONObject.quote(String.valueOf(value)).replaceAll("[\r\n]", StringPool.SPACE)) - .append(StringPool.CLOSE_CURLY_BRACE).append(StringPool.COMMA); - } - sb.setLength(sb.length() - 1); - sb.append(StringPool.CLOSE_BRACKET).append(StringPool.CLOSE_CURLY_BRACE); - return sb.toString(); - } - - @Override - public String serializeToVersioningPage() throws NoSuchFieldException, SecurityException { - - StringBuilder sb = new StringBuilder(); - sb.append("{\"fields\":["); - Object[][] columns = DettPraticaModelImpl.TABLE_COLUMNS; - for (Object[] column_x : columns) { - String property = (String) column_x[0]; - if (!PraticaUtil.getDettPraticaHiddenFields().contains(property)) { - sb.append(StringPool.QUOTE).append(property).append(StringPool.QUOTE).append(StringPool.COMMA); - } - } - sb.setLength(sb.length() - 1); - sb.append(StringPool.CLOSE_BRACKET).append(StringPool.CLOSE_CURLY_BRACE); - return sb.toString(); - } - private Map getModelValues() { Map attributes = new HashMap(); @@ -771,4 +692,185 @@ public class DettPraticaImpl extends DettPraticaBaseImpl { attributes.put("dpdc", getDpdc() ? StringPool.TRUE : StringPool.FALSE); return attributes; } + + @Override + public Set getSoggettiAsseveranti() throws PortalException, SystemException { + + Set soggettiAsseveranti = new HashSet<>(); + IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(getIntPraticaId()); + if (TipoIntegrazioneUtil.RICHIESTA_INTEGRAZIONE.equalsIgnoreCase(getTipoIntegrazione()) + || TipoIntegrazioneUtil.VARIANTE.equalsIgnoreCase(getTipoIntegrazione()) + || TipoIntegrazioneUtil.VARIAZIONE_SOGGETTO.equalsIgnoreCase(getTipoIntegrazione())) { + Set nuoviSoggetti = new HashSet<>( + SoggettoLocalServiceUtil.getValidTmpByDettPratica(getDettPraticaId())); + List cfNuoviSoggetti = SoggettoLocalServiceUtil.getCfValidTmpByDettPratica(getDettPraticaId()); + List nuoviDelegati = new ArrayList( + DelegaLocalServiceUtil.findCfByDettPratica_Tipologia_InEsito(getDettPraticaId(), new String[] { + TipoSoggettoUtil.COMMITTENTE, TipoSoggettoUtil.DIRETTORE_LAVORI, TipoSoggettoUtil.GEOLOGO, + TipoSoggettoUtil.DITTA, TipoSoggettoUtil.PROGETTISTA }, + new String[] { AsseverazioniUtil.STATO_ESEGUITA })); + nuoviDelegati.removeAll(cfNuoviSoggetti); + for (String cfDelegato : nuoviDelegati) { + nuoviSoggetti.addAll(SoggettoLocalServiceUtil.getValidTmpByIntPratica_CodiceFiscale(getIntPraticaId(), + cfDelegato, 0L)); + } + if (TipoIntegrazioneUtil.RICHIESTA_INTEGRAZIONE.equalsIgnoreCase(getTipoIntegrazione())) { + User titolaredigitaleUser = UserLocalServiceUtil.getUser(intPratica.getUserId()); + // il titolare digitale potrebbe avere più ruoli + List titolareDigitali = SoggettoLocalServiceUtil.getValidTmpByIntPratica_CodiceFiscale( + getIntPraticaId(), titolaredigitaleUser.getScreenName(), 0); + for (Soggetto titolareDigitale : titolareDigitali) { + soggettiAsseveranti.add(titolareDigitale); + } + } else if (TipoIntegrazioneUtil.VARIANTE.equalsIgnoreCase(getTipoIntegrazione())) { + String[] tipoSoggetti = new String[] { TipoSoggettoUtil.COMMITTENTE, TipoSoggettoUtil.DIRETTORE_LAVORI, + TipoSoggettoUtil.DITTA, TipoSoggettoUtil.PROGETTISTA }; + if (ValidazionePraticaUtil.isA98Required(this)) { + tipoSoggetti = (String[]) ArrayUtils.removeElement(tipoSoggetti, TipoSoggettoUtil.COMMITTENTE); + } + nuoviSoggetti + .addAll(SoggettoLocalServiceUtil.getSoggettiPrincipaliValidTmpByDettPratica_TipologiaSoggetto( + getDettPraticaId(), tipoSoggetti)); + } + for (Soggetto soggetto : nuoviSoggetti) { + if (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(soggetto.getTipologiaSoggetto())) { + if (!ValidazionePraticaUtil.isA98Required(this)) { + soggettiAsseveranti.add(soggetto); + } + } else if (TipoSoggettoUtil.COLLAUDATORE.equalsIgnoreCase(soggetto.getTipologiaSoggetto())) { + if (getCodiceFiscalePrincipaleCollaudatore().equalsIgnoreCase(soggetto.getCodiceFiscale())) { + soggettiAsseveranti.add(soggetto); + } + } else { + soggettiAsseveranti.add(soggetto); + } + } + } else { + List soggetti = SoggettoLocalServiceUtil.getValidTmpByIntPratica(getIntPraticaId()); + boolean collaudatoreInserito = false; + for (Soggetto soggetto : soggetti) { + if (TipoSoggettoUtil.COLLAUDATORE.equalsIgnoreCase(soggetto.getTipologiaSoggetto()) + && getCodiceFiscalePrincipaleCollaudatore().equalsIgnoreCase(soggetto.getCodiceFiscale())) { + soggettiAsseveranti.add(soggetto); + collaudatoreInserito = true; + break; + } + } + for (Soggetto soggetto : soggetti) { + String tipologia = soggetto.getTipologiaSoggetto(); + if ((TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(tipologia) && !ValidazionePraticaUtil + .isA98Required(this)) + || TipoSoggettoUtil.DITTA.equalsIgnoreCase(tipologia) + || TipoSoggettoUtil.DIRETTORE_LAVORI.equalsIgnoreCase(tipologia) + || TipoSoggettoUtil.PROGETTISTA.equalsIgnoreCase(tipologia) + || (TipoSoggettoUtil.COLLAUDATORE.equalsIgnoreCase(tipologia) && !collaudatoreInserito)) { + soggettiAsseveranti.add(soggetto); + } + } + } + return soggettiAsseveranti; + } + + @Override + public Set getTipiSoggettiAsseveranti() throws PortalException, SystemException { + + Set tipi = new HashSet<>(); + for (Soggetto soggetto : getSoggettiAsseveranti()) { + tipi.add(soggetto.getTipologiaSoggetto()); + } + return tipi; + } + + @Override + public String getTitle() { + + return getTitle(LocaleUtil.getSiteDefault()); + } + + @Override + public String getTitle(Locale locale) { + + StringBuilder sb = new StringBuilder(); + IntPratica intPratica = null; + try { + intPratica = IntPraticaLocalServiceUtil.fetchIntPratica(getIntPraticaId()); + if (AzioniPraticheUtil.isDeposito(intPratica.getIntPraticaId())) { + sb.append("Deposito "); + } else if (AzioniPraticheUtil.isAutorizzazione(intPratica.getIntPraticaId())) { + sb.append("Autorizzazione "); + } + sb.append("n. "); + if (Validator.isNotNull(getProtocollo())) { + // TODO da decidere che data, per adesso si mette quella di creazione il numero protocollo sbagliato + // dovrebbe essere il primo + sb.append(intPratica.getNumeroProgetto()).append(" del ").append(sdf.format(intPratica.getDtPratica())); + } else { + if (Validator.isNotNull(intPratica.getNumeroProgetto())) { + sb.append(intPratica.getNumeroProgetto()).append(StringPool.SPACE).append(StringPool.DASH) + .append(StringPool.SPACE); + } + sb.append(getDettPraticaId()).append(" (Temporaneo) "); + } + sb.append(" - id ").append(intPratica.getIntPraticaId()); + } catch (PortalException | SystemException e) { + _log.error("Error on IntPratidaId=" + intPratica.getIntPraticaId(), e); + } + return sb.toString(); + } + + @Override + public String serializeToVersioning() throws NoSuchFieldException, SecurityException { + + StringBuilder sb = new StringBuilder(); + sb.append("{\"version\":\"").append(Constants.DETTPRATICA_VERSION_IMPL).append("\",\"fields\":["); + Map modelAttributes = getModelValues(); + String privateUuid = "uuid_"; + Object[][] columns = DettPraticaModelImpl.TABLE_COLUMNS; + for (Object[] column_x : columns) { + String property = (String) column_x[0]; + if (privateUuid.equals(property)) { + property = "uuid"; + } + int type = (int) column_x[1]; + String className = StringPool.BLANK; + switch (type) { + case Types.BIGINT: + className = Long.class.getCanonicalName(); + break; + case Types.BOOLEAN: + case Types.TIMESTAMP: + case Types.VARCHAR: + className = String.class.getCanonicalName(); + break; + case Types.INTEGER: + className = Integer.class.getCanonicalName(); + break; + } + Object value = modelAttributes.get(property); + sb.append("{\"name\":\"").append(property).append("\",\"class\":\"").append(className) + .append("\",\"value\":") + .append(JSONObject.quote(String.valueOf(value)).replaceAll("[\r\n]", StringPool.SPACE)) + .append(StringPool.CLOSE_CURLY_BRACE).append(StringPool.COMMA); + } + sb.setLength(sb.length() - 1); + sb.append(StringPool.CLOSE_BRACKET).append(StringPool.CLOSE_CURLY_BRACE); + return sb.toString(); + } + + @Override + public String serializeToVersioningPage() throws NoSuchFieldException, SecurityException { + + StringBuilder sb = new StringBuilder(); + sb.append("{\"fields\":["); + Object[][] columns = DettPraticaModelImpl.TABLE_COLUMNS; + for (Object[] column_x : columns) { + String property = (String) column_x[0]; + if (!PraticaUtil.getDettPraticaHiddenFields().contains(property)) { + sb.append(StringPool.QUOTE).append(property).append(StringPool.QUOTE).append(StringPool.COMMA); + } + } + sb.setLength(sb.length() - 1); + sb.append(StringPool.CLOSE_BRACKET).append(StringPool.CLOSE_CURLY_BRACE); + return sb.toString(); + } } diff --git a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/AsseverazioneLocalServiceImpl.java b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/AsseverazioneLocalServiceImpl.java index 5205954a..de09edc0 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/AsseverazioneLocalServiceImpl.java +++ b/liferay-plugins-sdk-6.2/portlets/portos-bo-portlet/docroot/WEB-INF/src/it/tref/liferay/portos/bo/service/impl/AsseverazioneLocalServiceImpl.java @@ -15,14 +15,12 @@ import it.tref.liferay.portos.bo.model.Soggetto; import it.tref.liferay.portos.bo.model.Territorio; import it.tref.liferay.portos.bo.service.base.AsseverazioneLocalServiceBaseImpl; import it.tref.liferay.portos.bo.shared.util.ConfigurazioneConstants; -import it.tref.liferay.portos.bo.shared.util.TipoIntegrazioneUtil; import it.tref.liferay.portos.bo.shared.util.TipoSoggettoUtil; import it.tref.liferay.portos.bo.util.AsseverazioniUtil; import it.tref.liferay.portos.bo.util.AvvisoUtil; import it.tref.liferay.portos.bo.util.Constants; import it.tref.liferay.portos.bo.util.DelegheUtil; import it.tref.liferay.portos.bo.util.PraticaUtil; -import it.tref.liferay.portos.bo.util.ValidazionePraticaUtil; import it.tref.liferay.portos.report.shared.constants.ReportConstants; import it.tref.liferay.portos.report.shared.dto.ReportDto; import it.tref.liferay.portos.report.shared.dto.ReportResultDto; @@ -31,17 +29,13 @@ import it.tref.liferay.portos.report.shared.util.ReportUtil; import java.io.IOException; import java.io.InputStream; import java.io.Serializable; -import java.util.ArrayList; import java.util.Date; import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.Locale; import java.util.Map; import java.util.Scanner; -import java.util.Set; -import org.apache.commons.lang.ArrayUtils; import org.apache.commons.lang.StringUtils; import com.liferay.portal.NoSuchUserException; @@ -57,7 +51,6 @@ import com.liferay.portal.kernel.util.MimeTypesUtil; import com.liferay.portal.kernel.util.OrderByComparator; import com.liferay.portal.kernel.util.StringPool; import com.liferay.portal.kernel.util.Validator; -import com.liferay.portal.model.User; import com.liferay.portal.security.permission.ActionKeys; import com.liferay.portal.service.ServiceContext; import com.liferay.portlet.documentlibrary.NoSuchFolderException; @@ -287,78 +280,10 @@ public class AsseverazioneLocalServiceImpl extends AsseverazioneLocalServiceBase PortalException { DettPratica dettPratica = dettPraticaLocalService.getDettPratica(dettPraticaId); - long intPraticaId = dettPratica.getIntPraticaId(); long userId = serviceContext.getUserId(); - IntPratica intPratica = intPraticaLocalService.getIntPratica(intPraticaId); - if (TipoIntegrazioneUtil.RICHIESTA_INTEGRAZIONE.equalsIgnoreCase(dettPratica.getTipoIntegrazione()) - || TipoIntegrazioneUtil.VARIANTE.equalsIgnoreCase(dettPratica.getTipoIntegrazione()) - || TipoIntegrazioneUtil.VARIAZIONE_SOGGETTO.equalsIgnoreCase(dettPratica.getTipoIntegrazione())) { - Set nuoviSoggetti = new HashSet<>(soggettoLocalService.getValidTmpByDettPratica(dettPraticaId)); - List cfNuoviSoggetti = soggettoLocalService.getCfValidTmpByDettPratica(dettPraticaId); - List nuoviDelegati = new ArrayList( - delegaLocalService.findCfByDettPratica_Tipologia_InEsito(dettPraticaId, new String[] { - TipoSoggettoUtil.COMMITTENTE, TipoSoggettoUtil.DIRETTORE_LAVORI, TipoSoggettoUtil.GEOLOGO, - TipoSoggettoUtil.DITTA, TipoSoggettoUtil.PROGETTISTA }, - new String[] { AsseverazioniUtil.STATO_ESEGUITA })); - nuoviDelegati.removeAll(cfNuoviSoggetti); - for (String cfDelegato : nuoviDelegati) { - nuoviSoggetti.addAll(soggettoLocalService.getValidTmpByIntPratica_CodiceFiscale(intPraticaId, - cfDelegato, 0L)); - } - if (TipoIntegrazioneUtil.RICHIESTA_INTEGRAZIONE.equalsIgnoreCase(dettPratica.getTipoIntegrazione())) { - User titolaredigitaleUser = userLocalService.getUser(intPratica.getUserId()); - // il titolare digitale potrebbe avere più ruoli - List titolareDigitali = soggettoLocalService.getValidTmpByIntPratica_CodiceFiscale( - intPraticaId, titolaredigitaleUser.getScreenName(), 0); - for (Soggetto titolareDigitale : titolareDigitali) { - addAsseverazione(userId, intPraticaId, dettPraticaId, titolareDigitale, serviceContext); - } - } else if (TipoIntegrazioneUtil.VARIANTE.equalsIgnoreCase(dettPratica.getTipoIntegrazione())) { - String[] tipoSoggetti = new String[] { TipoSoggettoUtil.COMMITTENTE, TipoSoggettoUtil.DIRETTORE_LAVORI, - TipoSoggettoUtil.DITTA, TipoSoggettoUtil.PROGETTISTA }; - if (ValidazionePraticaUtil.isA98Required(dettPratica)) { - tipoSoggetti = (String[]) ArrayUtils.removeElement(tipoSoggetti, TipoSoggettoUtil.COMMITTENTE); - } - nuoviSoggetti.addAll(soggettoLocalService.getSoggettiPrincipaliValidTmpByDettPratica_TipologiaSoggetto( - dettPraticaId, tipoSoggetti)); - } - for (Soggetto soggetto : nuoviSoggetti) { - if (TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(soggetto.getTipologiaSoggetto())) { - if (!ValidazionePraticaUtil.isA98Required(dettPratica)) { - addAsseverazione(userId, intPraticaId, dettPraticaId, soggetto, serviceContext); - } - } else if (TipoSoggettoUtil.COLLAUDATORE.equalsIgnoreCase(soggetto.getTipologiaSoggetto())) { - if (dettPratica.getCodiceFiscalePrincipaleCollaudatore().equalsIgnoreCase( - soggetto.getCodiceFiscale())) { - addAsseverazione(userId, intPraticaId, dettPraticaId, soggetto, serviceContext); - } - } else { - addAsseverazione(userId, intPraticaId, dettPraticaId, soggetto, serviceContext); - } - } - } else { - List soggetti = soggettoLocalService.getValidTmpByIntPratica(dettPratica.getIntPraticaId()); - boolean collaudatoreInserito = false; - for (Soggetto soggetto : soggetti) { - if (TipoSoggettoUtil.COLLAUDATORE.equalsIgnoreCase(soggetto.getTipologiaSoggetto()) - && dettPratica.getCodiceFiscalePrincipaleCollaudatore().equalsIgnoreCase( - soggetto.getCodiceFiscale())) { - addAsseverazione(userId, intPraticaId, dettPraticaId, soggetto, serviceContext); - collaudatoreInserito = true; - break; - } - } - for (Soggetto soggetto : soggetti) { - String tipologia = soggetto.getTipologiaSoggetto(); - if ((TipoSoggettoUtil.COMMITTENTE.equalsIgnoreCase(tipologia) && !ValidazionePraticaUtil - .isA98Required(dettPratica)) - || TipoSoggettoUtil.DITTA.equalsIgnoreCase(tipologia) - || TipoSoggettoUtil.DIRETTORE_LAVORI.equalsIgnoreCase(tipologia) - || TipoSoggettoUtil.PROGETTISTA.equalsIgnoreCase(tipologia) - || (TipoSoggettoUtil.COLLAUDATORE.equalsIgnoreCase(tipologia) && !collaudatoreInserito)) { - addAsseverazione(userId, intPraticaId, dettPraticaId, soggetto, serviceContext); - } - } + long intPraticaId = dettPratica.getIntPraticaId(); + for (Soggetto soggetto : dettPratica.getSoggettiAsseveranti()) { + addAsseverazione(userId, intPraticaId, dettPraticaId, soggetto, serviceContext); } } diff --git a/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/verify_fascicolo.jsp b/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/verify_fascicolo.jsp index 6139263c..30ce4561 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/verify_fascicolo.jsp +++ b/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/verify_fascicolo.jsp @@ -1,3 +1,5 @@ +<%@page import="java.util.HashSet"%> +<%@page import="java.util.Set"%> <%@page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="com.liferay.portal.kernel.util.UniqueList"%> <%@page import="it.tref.liferay.portos.bo.model.Asseverazione"%> @@ -22,7 +24,6 @@ long intPraticaId = ParamUtil.getLong(request, "intPraticaId", 0L); long dettPraticaId = ParamUtil.getLong(request, "dettPraticaId", 0L); IntPratica intPratica = IntPraticaLocalServiceUtil.getIntPratica(intPraticaId); DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId); - if (dettPratica == null) { dettPratica = DettPraticaServiceUtil.getLastEditableByIntPratica(intPraticaId); if (dettPratica == null) { @@ -31,165 +32,149 @@ if (dettPratica == null) { } %> - + - - + - - + - - + - - - - + + - - + - - + - -

Verifica Fascicolo

-
- - - +
+ + + linkCssClass='<%= ValidazionePraticaUtil.delegheCompilazioneIsEnable(dettPraticaId) ? "btn" + : "btn disabled" %>' + iconCssClass="fa fa-users" message="gestione-deleghe-compilazione" + url="<%= ValidazionePraticaUtil.delegheCompilazioneIsEnable(dettPraticaId) ? delegaURL + : StringPool.DASH %>" /> <% - boolean asseverazioniIsEnabled = ValidazionePraticaUtil.asseverazioniIsEnable(dettPraticaId); - StringBuilder tooltipAsseverazioni = new StringBuilder(); - if (!asseverazioniIsEnabled) { - tooltipAsseverazioni.append("
    "); - if (!ValidazionePraticaUtil.praticaIsCompleta(dettPraticaId)) { - tooltipAsseverazioni.append("
  • Domanda incompleta
  • "); - } - if (SoggettoLocalServiceUtil.countValidTmpByIntPratica(dettPratica.getIntPraticaId()) == 0) { - tooltipAsseverazioni.append("
  • Nessun soggetto
  • "); - } - if (DelegheUtil.hasDelegheCompilazioneAttive(dettPraticaId)) { - tooltipAsseverazioni.append("
  • Deleghe Attive
  • "); - } - tooltipAsseverazioni.append("
"); + boolean asseverazioniIsEnabled = ValidazionePraticaUtil.asseverazioniIsEnable(dettPraticaId); + StringBuilder tooltipAsseverazioni = new StringBuilder(); + if (!asseverazioniIsEnabled) { + tooltipAsseverazioni.append("
    "); + if (!ValidazionePraticaUtil.praticaIsCompleta(dettPraticaId)) { + tooltipAsseverazioni.append("
  • Domanda incompleta
  • "); } + if (SoggettoLocalServiceUtil.countValidTmpByIntPratica(dettPratica.getIntPraticaId()) == 0) { + tooltipAsseverazioni.append("
  • Nessun soggetto
  • "); + } + if (DelegheUtil.hasDelegheCompilazioneAttive(dettPraticaId)) { + tooltipAsseverazioni.append("
  • Deleghe Attive
  • "); + } + tooltipAsseverazioni.append("
"); + } %> " title="<%= tooltipAsseverazioni.toString() %>"> - + <% - boolean isEsente = dettPratica.getNormEsenteBollo() && dettPratica.getNormEsenteSpese(); + boolean isEsente = dettPratica.getNormEsenteBollo() && dettPratica.getNormEsenteSpese(); %> + linkCssClass='<%= ValidazionePraticaUtil.canCompleteDettPraticaEsente(dettPraticaId) + ? "btn btn-primary" : "btn btn-primary disabled" %>' + iconCssClass="fa fa-check" message="Concludi Domanda" + url="<%= completeDomandaEsenteURL %>" /> + linkCssClass='<%= ValidazionePraticaUtil.pagamentoIsEnable(dettPraticaId) + ? "btn btn-primary" : "btn btn-primary disabled" %>' + iconCssClass="fa fa-cogs" + message='<%= PagamentoLocalServiceUtil.countByClassPk(dettPraticaId) > 0 + ? LanguageUtil.get(pageContext, "dati-pagamento") + : LanguageUtil.get(pageContext, "calcola-importo") %>' + url="<%= ValidazionePraticaUtil.pagamentoIsEnable(dettPraticaId) ? calcolaURL + : StringPool.DASH %>" /> + linkCssClass='<%= ValidazionePraticaUtil.canCompleteIntegrazione(dettPraticaId) + ? "btn btn-primary" : "btn btn-primary disabled" %>' + iconCssClass="fa fa-check" message="Concludi Integrazione" + url="<%= completeIntegrazioneURL %>" />
<% - List sections = Arrays.asList(SezioniUtil.SEZIONE_DETTAGLI_PRINCIPALI, SezioniUtil.SEZIONE_ANAGRAFE_SOGGETTI, SezioniUtil.SEZIONE_DESCRIZIONE_EDIFICIO, SezioniUtil.SEZIONE_GEOLOGICA, SezioniUtil.SEZIONE_ALLEGATI); - List tipologiaAllegati = DocumentiPraticaUtil.getDocObbligatori(); - List tipologiaSoggetti = Arrays.asList(TipoSoggettoUtil.COMMITTENTE, TipoSoggettoUtil.DITTA, TipoSoggettoUtil.PROGETTISTA, TipoSoggettoUtil.DIRETTORE_LAVORI, TipoSoggettoUtil.GEOLOGO, TipoSoggettoUtil.COLLAUDATORE); +List sections = Arrays.asList(SezioniUtil.SEZIONE_DETTAGLI_PRINCIPALI, SezioniUtil.SEZIONE_ANAGRAFE_SOGGETTI, + SezioniUtil.SEZIONE_DESCRIZIONE_EDIFICIO, SezioniUtil.SEZIONE_GEOLOGICA, SezioniUtil.SEZIONE_ALLEGATI); +List tipologiaAllegati = DocumentiPraticaUtil.getDocObbligatori(); +List tipologiaSoggetti = Arrays.asList(TipoSoggettoUtil.COMMITTENTE, TipoSoggettoUtil.DITTA, TipoSoggettoUtil.PROGETTISTA, TipoSoggettoUtil.DIRETTORE_LAVORI, TipoSoggettoUtil.GEOLOGO, TipoSoggettoUtil.COLLAUDATORE); %> - -
-
+
+
- -
+
Compilazione Domanda -
-
+
+
-
+
Sezione
-
+
Completata
-
+
-<% + <% for (String section : sections) { -%> + %>
-
+
<%= LanguageUtil.get(pageContext, "sezione-" + section) %>
-
-<% +
+ <% List notCompleted = ValidazionePraticaUtil.notCompletedSection(section, dettPraticaId); boolean isSectionCompleted = (notCompleted.size() == 0); StringBuilder tooltipSection = new StringBuilder(); @@ -204,19 +189,19 @@ if (dettPratica == null) { tooltipSection.append(""); } } -%> + %>
-
+
<%= tooltipSection.toString() %>
- <% + <% String title = "Riepilogo Errori Sezione " + LanguageUtil.get(pageContext, "sezione-" + section); String buttonId = section + "_button"; String contentId = section + "_div"; %> - + @@ -232,36 +217,36 @@ if (dettPratica == null) {
-
-
+
+
-
+
Asseverazioni/Firme Allegati
-
+
Descrizione
-
-
+
+
<%= LanguageUtil.get(pageContext, "gc-soggetto-" + TipoSoggettoUtil.COMMITTENTE) %>
-
+
<%= LanguageUtil.get(pageContext, "gc-soggetto-" + TipoSoggettoUtil.DITTA) %>
-
+
<%= LanguageUtil.get(pageContext, "gc-soggetto-" + TipoSoggettoUtil.PROGETTISTA) %>
-
+
<%= LanguageUtil.get(pageContext, "gc-soggetto-" + TipoSoggettoUtil.DIRETTORE_LAVORI) %>
-
+
<%= LanguageUtil.get(pageContext, "gc-soggetto-" + TipoSoggettoUtil.GEOLOGO) %>
-
+
<%= LanguageUtil.get(pageContext, "gc-soggetto-" + TipoSoggettoUtil.COLLAUDATORE) %>
@@ -269,24 +254,26 @@ if (dettPratica == null) {
-
+
Asseverazioni Domanda
-
- <% - String[] esiti_complete = {AsseverazioniUtil.STATO_ESEGUITA}; - String[] esiti_incomplete = {AsseverazioniUtil.STATO_ASSEGNATA}; +
+ <% + String[] esiti_complete = { AsseverazioniUtil.STATO_ESEGUITA }; + String[] esiti_incomplete = { AsseverazioniUtil.STATO_ASSEGNATA }; + Set tipologieRichieste = dettPratica.getTipiSoggettiAsseveranti(); for (String tipoSoggetto : tipologiaSoggetti) { String clazz = StringPool.BLANK; String title = StringPool.BLANK; - - List asseverazioniCompletate = AsseverazioneLocalServiceUtil.findByDettPratica_Tipologia_InEsito(dettPraticaId, tipoSoggetto, esiti_complete , QueryUtil.ALL_POS, QueryUtil.ALL_POS, null); - List asseverazioniMancanti = AsseverazioneLocalServiceUtil.findByDettPratica_Tipologia_InEsito(dettPraticaId, tipoSoggetto, esiti_incomplete , QueryUtil.ALL_POS, QueryUtil.ALL_POS, null); - boolean isRequired = AsseverazioniUtil.isAsseverazioneDomandaRequiredByTipoSoggetto(dettPraticaId, tipoSoggetto); - boolean isRecommended = AsseverazioniUtil.isAsseverazioneDomandaRecommendedByTipoSoggetto(dettPraticaId, tipoSoggetto); - + List asseverazioniCompletate = AsseverazioneLocalServiceUtil + .findByDettPratica_Tipologia_InEsito(dettPraticaId, tipoSoggetto, esiti_complete, + QueryUtil.ALL_POS, QueryUtil.ALL_POS, null); + List asseverazioniMancanti = AsseverazioneLocalServiceUtil + .findByDettPratica_Tipologia_InEsito(dettPraticaId, tipoSoggetto, esiti_incomplete, + QueryUtil.ALL_POS, QueryUtil.ALL_POS, null); + boolean isRequired = tipologieRichieste.contains(tipoSoggetto); StringBuilder content = new StringBuilder(); - if (isRequired || isRecommended) { + if (isRequired) { clazz += " icon-asseverazioni fa "; if (isRequired) { if (asseverazioniMancanti.isEmpty() && asseverazioniCompletate.size() > 0) { @@ -301,80 +288,73 @@ if (dettPratica == null) { clazz += "fa-close txt-red"; } } - } else if (isRecommended) { - title = "Asseverazioni consigliate"; - clazz += "fa-circle txt-blue"; } - - content.append(""); if (asseverazioniCompletate.size() > 0) { content.append(asseverazioniCompletate.size()); } content.append(""); - } else if (!TipoIntegrazioneUtil.RICHIESTA_INTEGRAZIONE.equalsIgnoreCase(dettPratica.getTipoIntegrazione()) + } else if (!TipoIntegrazioneUtil.RICHIESTA_INTEGRAZIONE.equalsIgnoreCase(dettPratica + .getTipoIntegrazione()) && !TipoIntegrazioneUtil.VARIANTE.equalsIgnoreCase(dettPratica.getTipoIntegrazione()) && TipoSoggettoUtil.GEOLOGO.equalsIgnoreCase(tipoSoggetto) - && DelegaLocalServiceUtil.countByDettPratica_Tipologia_InEsito(intPraticaId, new String[]{DelegheUtil.TIPO_GEOLOGO}, new String[]{DelegheUtil.STATO_ESEGUITA}) > 0) { + && DelegaLocalServiceUtil.countByDettPratica_Tipologia_InEsito(intPraticaId, + new String[] { DelegheUtil.TIPO_GEOLOGO }, + new String[] { DelegheUtil.STATO_ESEGUITA }) > 0) { clazz = "icon-asseverazioni fa fa-check txt-green"; content.append(""); } else { content.append("-"); } - %> + %>
<%= content.toString() %>
- <% + <% } - %> + %>
- <% + <% for (String codiceDoc:tipologiaAllegati) { String nomeAllegato = codiceDoc + " - " + LanguageUtil.get(pageContext, "label-documenti-tipologia-"+codiceDoc); - %> -
-
- + %> +
+
+ +
-
<% - List docPraticas = DocPraticaLocalServiceUtil - .getValidTmpByIntPratica_Tipologia(intPraticaId, codiceDoc, QueryUtil.ALL_POS, QueryUtil.ALL_POS); + List docPraticas = DocPraticaLocalServiceUtil.getValidTmpByIntPratica_Tipologia(intPraticaId, + codiceDoc, QueryUtil.ALL_POS, QueryUtil.ALL_POS); if (docPraticas.isEmpty()) { %> - -
-
- Nessun allegato presente per la tipologia +
+
+ Nessun allegato presente per la tipologia +
-
- <% + <% } else { for (DocPratica docPratica : docPraticas) { - %> + %>
- <%= docPratica.getDescLong() %> + <%= docPratica.getDescLong() %>
- <% - FirmeBean firme = FirmeUtil.deserialize(docPratica.getJsonFirmatari()); - List signatures = firme.allSignatures(); - - boolean isEnoughOne = AsseverazioniUtil.isEnoughOne(codiceDoc); - - for (String tipoSoggetto : tipologiaSoggetti) { - String clazz= ""; - StringBuilder tooltipTitle = new StringBuilder(); - List signaturesPerSubject = new UniqueList(); - for (String sign : signatures) { - List soggetti = SoggettoLocalServiceUtil - .getValidTmpByIntPratica_CodiceFiscale(intPraticaId, sign, docPratica.getClassPk()); + <% + FirmeBean firme = FirmeUtil.deserialize(docPratica.getJsonFirmatari()); + List signatures = firme.allSignatures(); + boolean isEnoughOne = AsseverazioniUtil.isEnoughOne(codiceDoc); + for (String tipoSoggetto : tipologiaSoggetti) { + String clazz = StringPool.BLANK; + StringBuilder tooltipTitle = new StringBuilder(); + List signaturesPerSubject = new UniqueList(); + for (String sign : signatures) { + List soggetti = SoggettoLocalServiceUtil.getValidTmpByIntPratica_CodiceFiscale( + intPraticaId, sign, docPratica.getClassPk()); for (Soggetto soggetto: soggetti) { if (soggetto.getTipologiaSoggetto().equals(tipoSoggetto)){ signaturesPerSubject.add(sign); @@ -439,7 +419,7 @@ if (dettPratica == null) { } else if (tipoSoggetto.equals(TipoSoggettoUtil.GEOLOGO)) { boolean progettista = AsseverazioniUtil.signaturesContains(intPraticaId, TipoSoggettoUtil.PROGETTISTA, signatures); if (progettista || !signaturesPerSubject.isEmpty()) { - isValid = true; + isValid = true; } } else if (tipoSoggetto.equals(TipoSoggettoUtil.PROGETTISTA)) { boolean geologo = AsseverazioniUtil.signaturesContains(intPraticaId, TipoSoggettoUtil.GEOLOGO, signatures); @@ -509,9 +489,7 @@ if (dettPratica == null) { } else { boolean isRequired = AsseverazioniUtil.isAsseverazioneRequiredByCodiceDoc(codiceDoc, tipoSoggetto); boolean isRecommended = AsseverazioniUtil.isAsseverazioneRecommendedByCodiceDoc(codiceDoc, tipoSoggetto); - boolean direttoreLavoriNotRequired = dettPratica.getLavoriPubblici(); - if (tipoSoggetto.equalsIgnoreCase(TipoSoggettoUtil.DIRETTORE_LAVORI) && signaturesPerSubject.size() == 0) { isRequired = false; @@ -530,7 +508,7 @@ if (dettPratica == null) { } } %> -
+
<%= !clazz.isEmpty() && signaturesPerSubject.size() > 0 ? signaturesPerSubject.size() : StringPool.BLANK %> @@ -540,7 +518,6 @@ if (dettPratica == null) { %>
- <% } } @@ -548,20 +525,17 @@ if (dettPratica == null) { %>
- - window.parent.Liferay.fire('verifyPopup-ready'); - \ No newline at end of file +window.parent.Liferay.fire('verifyPopup-ready'); + diff --git a/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/verify_fascicolo_asseverazione.jsp b/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/verify_fascicolo_asseverazione.jsp index 1247f7f1..a1ce0f11 100644 --- a/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/verify_fascicolo_asseverazione.jsp +++ b/liferay-plugins-sdk-6.2/portlets/portos-fe-portlet/docroot/html/fascicolofe/verify_fascicolo_asseverazione.jsp @@ -8,19 +8,15 @@ <%@page import="it.tref.liferay.portos.bo.model.IntPratica"%> <%@page import="java.util.ArrayList"%> <%@page import="com.liferay.portal.kernel.portlet.LiferayWindowState"%> - <%@page import="it.tref.liferay.portos.bo.util.AsseverazioniUtil"%> <%@ include file="/html/fascicolofe/init.jsp" %> - <% - long dettPraticaId = ParamUtil.getLong(request, "dettPraticaId",0l); - DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId); - long intPraticaId = dettPratica.getIntPraticaId(); - - String formName = "fmasseverazioni"; - String buttonId = "btnasseverazioni"; - String backURL = ParamUtil.getString(request, "backURL"); - +long dettPraticaId = ParamUtil.getLong(request, "dettPraticaId", 0L); +DettPratica dettPratica = DettPraticaServiceUtil.getDettPratica(dettPraticaId); +long intPraticaId = dettPratica.getIntPraticaId(); +String formName = "fmasseverazioni"; +String buttonId = "btnasseverazioni"; +String backURL = ParamUtil.getString(request, "backURL"); %> @@ -32,27 +28,27 @@

Gestione Asseverazioni

+ cssClass="inline_toolbar" > - + - - + + - + - - + + - @@ -60,7 +56,7 @@
- + <% String orderByCol = ParamUtil.getString(renderRequest, SearchContainer.DEFAULT_ORDER_BY_COL_PARAM, "asseverazioneId"); @@ -134,15 +130,13 @@ DisplayTerms displayTerms = new DisplayTerms(renderRequest); - + <% request.setAttribute("comingFrom", "verify"); %> - -
\ No newline at end of file