package de.flower.rmt.ui.page.base; import de.flower.common.ui.alert.AlertMessage; import de.flower.common.ui.alert.AlertMessagePanel; import de.flower.rmt.service.IApplicationService; import org.apache.commons.lang3.StringUtils; import org.apache.wicket.injection.Injector; import org.apache.wicket.model.IModel; import org.apache.wicket.model.Model; import org.apache.wicket.spring.injection.annot.SpringBean; /** * @author flowerrrr */ public class MessageOfTheDayMessage extends AlertMessage { @SpringBean private IApplicationService applicationService; public MessageOfTheDayMessage() { super(null, null); Injector.get().inject(this); // to make @SpringBean work setMessageModel(getMOTDModel()); } @Override public boolean onClick(final AlertMessagePanel alertMessagePanel) { throw new UnsupportedOperationException("This message does not display a clickable button!"); } @Override public boolean isVisible(final AlertMessagePanel alertMessagePanel) { return !StringUtils.isBlank(getMessageModel().getObject()); } IModel<String> getMOTDModel() { return Model.of(applicationService.getMessageOfTheDay()); } /** * Motd might contain html markup. * @return */ @Override public boolean getEscapeModelStrings() { return false; } }