package com.ciandt.techgallery.service.model.email; import com.ciandt.techgallery.Constants; import com.ciandt.techgallery.persistence.model.TechGalleryUser; import com.ciandt.techgallery.utils.timezone.TimezoneManager; import org.apache.commons.lang.StringUtils; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; /** * TO used for sending emails with mustache template. * * @author bliberal */ public class TechGalleryActivitiesEmailTemplateTO { TechGalleryUser follower; List<TechnologyActivitiesEmailTemplateTO> technologyActivitiesTo; Date timestamp; String appName; String techgalleryLink; public TechGalleryActivitiesEmailTemplateTO(String applicationName, TechGalleryUser followerUser, List<TechnologyActivitiesEmailTemplateTO> activitiesList) { super(); this.timestamp = new Date(); this.appName = applicationName; this.follower = followerUser; this.technologyActivitiesTo = activitiesList; } public TechGalleryActivitiesEmailTemplateTO() { } public TechGalleryUser getFollower() { return follower; } public void setFollower(TechGalleryUser follower) { this.follower = follower; } public List<TechnologyActivitiesEmailTemplateTO> getTechnologyActivitiesTo() { return technologyActivitiesTo; } public void setTechnologyActivitiesTo( List<TechnologyActivitiesEmailTemplateTO> technologyActivitiesTo) { this.technologyActivitiesTo = technologyActivitiesTo; } public String getFormattedTimestamp() { SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy"); return formatter.format(TimezoneManager.getInstance().convertToUserTimezone(this.timestamp)); } public Date getTimestamp() { return timestamp; } public void setTimestamp(Date timestamp) { this.timestamp = timestamp; } public String getAppName() { return appName; } public void setAppName(String appName) { this.appName = appName; } /** * Get link to application page according to runtime enviroment. Ex.: localhost, version-dot-. * * @return link to application page. */ public String getTechgalleryLink() { String environment = System.getProperty(Constants.RUNTIME_ENVIRONMENT_PROPERTY); if (StringUtils.equals(Constants.PRODUCTION_PROPERTY, environment)) { return "https://" + Constants.LINK_PRODUCTION; } else { return Constants.LINK_LOCALHOST; } } }