Search in sources :

Example 6 with Event

use of alfio.model.Event in project alf.io by alfio-event.

the class ConfigurationManager method loadCategoryConfig.

public Map<ConfigurationKeys.SettingCategory, List<Configuration>> loadCategoryConfig(int eventId, int categoryId, String username) {
    User user = userManager.findUserByUsername(username);
    Event event = eventRepository.findById(eventId);
    int organizationId = event.getOrganizationId();
    if (!userManager.isOwnerOfOrganization(user, organizationId)) {
        return Collections.emptyMap();
    }
    Map<ConfigurationKeys.SettingCategory, List<Configuration>> existing = configurationRepository.findCategoryConfiguration(organizationId, eventId, categoryId).stream().sorted().collect(groupByCategory());
    return groupByCategory(CATEGORY_CONFIGURATION, existing);
}
Also used : User(alfio.model.user.User) Event(alfio.model.Event)

Example 7 with Event

use of alfio.model.Event in project alf.io by alfio-event.

the class ConfigurationManager method deleteEventLevelByKey.

public void deleteEventLevelByKey(String key, int eventId, String username) {
    Event event = eventRepository.findById(eventId);
    Validate.notNull(event, "Wrong event id");
    Validate.isTrue(userManager.isOwnerOfOrganization(userManager.findUserByUsername(username), event.getOrganizationId()), "User is not owner of the organization. Therefore, delete is not allowed.");
    configurationRepository.deleteEventLevelByKey(key, eventId);
}
Also used : Event(alfio.model.Event)

Example 8 with Event

use of alfio.model.Event in project alf.io by alfio-event.

the class SmtpMailer method send.

@Override
public void send(Event event, String to, List<String> cc, String subject, String text, Optional<String> html, Attachment... attachments) {
    MimeMessagePreparator preparator = (mimeMessage) -> {
        MimeMessageHelper message = html.isPresent() || !ArrayUtils.isEmpty(attachments) ? new MimeMessageHelper(mimeMessage, true, "UTF-8") : new MimeMessageHelper(mimeMessage, "UTF-8");
        message.setSubject(subject);
        message.setFrom(configurationManager.getRequiredValue(Configuration.from(event.getOrganizationId(), event.getId(), SMTP_FROM_EMAIL)), event.getDisplayName());
        String replyTo = configurationManager.getStringConfigValue(Configuration.from(event.getOrganizationId(), event.getId(), MAIL_REPLY_TO), "");
        if (StringUtils.isNotBlank(replyTo)) {
            message.setReplyTo(replyTo);
        }
        message.setTo(to);
        if (cc != null && !cc.isEmpty()) {
            message.setCc(cc.toArray(new String[cc.size()]));
        }
        if (html.isPresent()) {
            message.setText(text, html.get());
        } else {
            message.setText(text, false);
        }
        if (attachments != null) {
            for (Attachment a : attachments) {
                message.addAttachment(a.getFilename(), new ByteArrayResource(a.getSource()), a.getContentType());
            }
        }
        message.getMimeMessage().saveChanges();
        message.getMimeMessage().removeHeader("Message-ID");
    };
    toMailSender(event).send(preparator);
}
Also used : MimeMessageHelper(org.springframework.mail.javamail.MimeMessageHelper) MailParseException(org.springframework.mail.MailParseException) MessagingException(javax.mail.MessagingException) ArrayUtils(org.apache.commons.lang3.ArrayUtils) StringUtils(org.apache.commons.lang3.StringUtils) ByteArrayResource(org.springframework.core.io.ByteArrayResource) PropertiesLoaderUtils(org.springframework.core.io.support.PropertiesLoaderUtils) EncodedResource(org.springframework.core.io.support.EncodedResource) Properties(java.util.Properties) JavaMailSender(org.springframework.mail.javamail.JavaMailSender) IOException(java.io.IOException) MimeMessage(javax.mail.internet.MimeMessage) StandardCharsets(java.nio.charset.StandardCharsets) List(java.util.List) MimeMessagePreparator(org.springframework.mail.javamail.MimeMessagePreparator) JavaMailSenderImpl(org.springframework.mail.javamail.JavaMailSenderImpl) Configuration(alfio.model.system.Configuration) Log4j2(lombok.extern.log4j.Log4j2) FileTypeMap(javax.activation.FileTypeMap) Session(javax.mail.Session) Optional(java.util.Optional) Event(alfio.model.Event) AllArgsConstructor(lombok.AllArgsConstructor) MailException(org.springframework.mail.MailException) ConfigurationKeys(alfio.model.system.ConfigurationKeys) InputStream(java.io.InputStream) MimeMessagePreparator(org.springframework.mail.javamail.MimeMessagePreparator) ByteArrayResource(org.springframework.core.io.ByteArrayResource) MimeMessageHelper(org.springframework.mail.javamail.MimeMessageHelper)

Example 9 with Event

use of alfio.model.Event in project alf.io by alfio-event.

the class TemplateProcessorTest method assertDimensionsUnder300x150.

private void assertDimensionsUnder300x150(Pair<String, String> p) {
    Map<String, String> parameters = new HashMap<>();
    parameters.put(FileBlobMetadata.ATTR_IMG_WIDTH, p.getLeft());
    parameters.put(FileBlobMetadata.ATTR_IMG_HEIGHT, p.getRight());
    FileBlobMetadata metadata = mock(FileBlobMetadata.class);
    when(metadata.getAttributes()).thenReturn(parameters);
    Event e = mock(Event.class);
    when(e.getFileBlobIdIsPresent()).thenReturn(true);
    FileUploadManager fileUploadManager = mock(FileUploadManager.class);
    when(fileUploadManager.findMetadata(e.getFileBlobId())).thenReturn(Optional.of(metadata));
    TemplateProcessor.extractImageModel(e, fileUploadManager).ifPresent(imageData -> {
        assertTrue(imageData.getImageWidth() <= 300);
        assertTrue(imageData.getImageHeight() <= 150);
    });
}
Also used : HashMap(java.util.HashMap) FileBlobMetadata(alfio.model.FileBlobMetadata) Event(alfio.model.Event) FileUploadManager(alfio.manager.FileUploadManager)

Example 10 with Event

use of alfio.model.Event in project alf.io by alfio-event.

the class ConfigurationManagerIntegrationTest method testOverrideMechanism.

@Test
public void testOverrideMechanism() {
    Organization organization = organizationRepository.findByName("org").get();
    Event event = eventManager.getSingleEvent("eventShortName", "test");
    TicketCategory tc = eventManager.loadTicketCategories(event).get(0);
    // 
    // check override level up to event level
    assertEquals(5, configurationManager.getIntConfigValue(Configuration.from(event.getOrganizationId(), event.getId(), MAX_AMOUNT_OF_TICKETS_BY_RESERVATION), -1));
    configurationRepository.insertOrganizationLevel(organization.getId(), MAX_AMOUNT_OF_TICKETS_BY_RESERVATION.getValue(), "6", "desc");
    assertEquals(6, configurationManager.getIntConfigValue(Configuration.from(event.getOrganizationId(), event.getId(), MAX_AMOUNT_OF_TICKETS_BY_RESERVATION), -1));
    configurationRepository.insertEventLevel(organization.getId(), event.getId(), MAX_AMOUNT_OF_TICKETS_BY_RESERVATION.getValue(), "7", "desc");
    assertEquals(7, configurationManager.getIntConfigValue(Configuration.from(event.getOrganizationId(), event.getId(), MAX_AMOUNT_OF_TICKETS_BY_RESERVATION), -1));
    configurationRepository.insertTicketCategoryLevel(organization.getId(), event.getId(), tc.getId(), MAX_AMOUNT_OF_TICKETS_BY_RESERVATION.getValue(), "8", "desc");
    assertEquals(7, configurationManager.getIntConfigValue(Configuration.from(event.getOrganizationId(), event.getId(), MAX_AMOUNT_OF_TICKETS_BY_RESERVATION), -1));
}
Also used : Organization(alfio.model.user.Organization) Event(alfio.model.Event) TicketCategory(alfio.model.TicketCategory) Test(org.junit.Test)

Aggregations

Event (alfio.model.Event)71 Test (org.junit.Test)28 Ticket (alfio.model.Ticket)24 TicketCategory (alfio.model.TicketCategory)21 Organization (alfio.model.user.Organization)13 java.util (java.util)11 ZonedDateTime (java.time.ZonedDateTime)10 Autowired (org.springframework.beans.factory.annotation.Autowired)10 BigDecimal (java.math.BigDecimal)9 TicketReservation (alfio.model.TicketReservation)7 ConfigurationKeys (alfio.model.system.ConfigurationKeys)7 Collectors (java.util.stream.Collectors)7 Log4j2 (lombok.extern.log4j.Log4j2)7 StringUtils (org.apache.commons.lang3.StringUtils)7 ConfigurationManager (alfio.manager.system.ConfigurationManager)6 Configuration (alfio.model.system.Configuration)5 TicketRepository (alfio.repository.TicketRepository)5 Pair (org.apache.commons.lang3.tuple.Pair)5 Triple (org.apache.commons.lang3.tuple.Triple)5 UserManager (alfio.manager.user.UserManager)4