email-templates-library/src/main/java/org/gcube/portal/mailing/templates/TemplateDowntimeAnnouncemen...

48 lines
29 KiB
Java
Raw Normal View History

package org.gcube.portal.mailing.templates;
import java.util.Base64;
import org.gcube.common.portal.mailing.templates.AbstractTemplate;
import org.gcube.common.portal.mailing.templates.Template;
/**
*
* @author Massimiliano Assante, CNR-ISTI
*
*/
public class TemplateDowntimeAnnouncement extends AbstractTemplate implements Template {
private final String encodedTemplateHTML = "PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXN0cmljdC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+CjxoZWFkPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCI+Cgk8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoIj4KCQk8dGl0bGU+VGl0bGU8L3RpdGxlPgo8L2hlYWQ+Cjxib2R5CglzdHlsZT0iLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IE1hcmdpbjogMDsgYmFja2dyb3VuZDogI2YzZjNmMyAhaW1wb3J0YW50OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBjb2xvcjogIzBhMGEwYTsgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTZweDsgZm9udC13ZWlnaHQ6IDQwMDsgbGluZS1oZWlnaHQ6IDEuMzsgbWFyZ2luOiAwOyBtaW4td2lkdGg6IDEwMCU7IHBhZGRpbmc6IDA7IHRleHQtYWxpZ246IGxlZnQ7IHdpZHRoOiAxMDAlICFpbXBvcnRhbnQiPgoJPHN0eWxlPgpAbWVkaWEgb25seSBzY3JlZW4gewoJaHRtbCB7CgkJbWluLWhlaWdodDogMTAwJTsKCQliYWNrZ3JvdW5kOiAjZjNmM2YzCgl9Cn0KCkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo1OTZweCkgewoJLnNtYWxsLWZsb2F0LWNlbnRlciB7CgkJbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDsKCQlmbG9hdDogbm9uZSAhaW1wb3J0YW50OwoJCXRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50Cgl9Cgkuc21hbGwtdGV4dC1jZW50ZXIgewoJCXRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50Cgl9Cgkuc21hbGwtdGV4dC1sZWZ0IHsKCQl0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQKCX0KCS5zbWFsbC10ZXh0LXJpZ2h0IHsKCQl0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50Cgl9Cn0KCkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDo1OTZweCkgewoJLmhpZGUtZm9yLWxhcmdlIHsKCQlkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OwoJCXdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7CgkJb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDsKCQltYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7CgkJZm9udC1zaXplOiBpbmhlcml0ICFpbXBvcnRhbnQ7CgkJbGluZS1oZWlnaHQ6IGluaGVyaXQgIWltcG9ydGFudAoJfQp9CgpAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NTk2cHgpIHsKCXRhYmxlLmJvZHkgdGFibGUuY29udGFpbmVyIC5oaWRlLWZvci1sYXJnZSwgdGFibGUuYm9keSB0YWJsZS5jb250YWluZXIgLnJvdy5oaWRlLWZvci1sYXJnZQoJCXsKCQlkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OwoJCXdpZHRoOiAxMDAlICFpbXBvcnRhbnQKCX0KfQoKQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjU5NnB4KSB7Cgl0YWJsZS5ib2R5IHRhYmxlLmNvbnRhaW5lciAuY2FsbG91dC1pbm5lci5oaWRlLWZvci1sYXJnZSB7CgkJZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OwoJCXdpZHRoOiAxMDAlICFpbXBvcnRhbnQKCX0KfQoKQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjU5NnB4KSB7Cgl0YWJsZS5ib2R5IHRhYmxlLmNvbnRhaW5lciAuc2hvdy1mb3ItbGFyZ2UgewoJCWRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsKCQl3aWR0aDogMDsKCQltc28taGlkZTogYWxsOwoJCW92ZXJmbG93OiBoaWRkZW4KCX0KfQoKQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjU5NnB4KSB7Cgl0YWJsZS5ib2R5IGltZyB7CgkJd2lkdGg6IGF1dG87CgkJaGVpZ2h0OiBhdXRvCgl9Cgl0YWJsZS5ib2R5IGNlbnRlciB7CgkJbWluLXdpZHRoOiAwICFpbXBvcnRhbnQKCX0KCXRhYmxlLmJvZHkgLmNvbnRhaW5lciB7CgkJd2lkdGg6IDk1JSAhaW1wb3J0YW50Cgl9Cgl0YWJsZS5ib2R5IC5jb2x1bW4sIHRhYmxlLmJvZHkgLmNvbHVtbnMgewoJCWhlaWdodDogYXV0byAhaW1wb3J0YW50OwoJCS1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsKCQktd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7CgkJYm94LXNpemluZzogYm9yZGVyLWJveDsKCQlwYWRkaW5nLWxlZnQ6IDE2cHggIWltcG9ydGFudDsKCQlwYWRkaW5nLXJpZ2h0OiAxNnB4ICFpbXBvcnRhbnQKCX0KCXRhYmxlLmJvZHkgLmNvbHVtbiAuY29sdW1uLCB0YWJsZS5ib2R5IC5jb2x1bW4gLmNvbHVtbnMsIHRhYmxlLmJvZHkgLmNvbHVtbnMgLmNvbHVtbiwKCQl0YWJsZS5ib2R5IC5jb2x1bW5zIC5jb2x1bW5zIHsKCQlwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsKCQlwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQKCX0KCXRhYmxlLmJvZHkgLmNvbGxhcHNlIC5jb2x1bW4sIHRhYmxlLmJvZHkgLmNvbGxhcHNlIC5jb2x1bW5zIHsKCQlwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsKCQlwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQKCX0KCXRkLnNtYWxsLTEsIHRoLnNtYWxsLTEgewoJCWRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OwoJCXdpZHRoOiA4LjMzMzMzJSAhaW1wb3J0YW50Cgl9Cgl0ZC5zbWFsbC0yLCB0aC5zbWFsbC0yIHsKCQlkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDsKCQl3aWR0aDogMTYuNjY2NjclICFpbXBvcnRhbnQKCX0KCXRkLnNtYWxsLTMsIHRoLnNtYWxsLTMgewoJCWRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OwoJCXdpZHRoOiAyNSUgIWltcG9ydGFudAoJfQoJdGQuc21hbGwtNCwgdGguc21hbGwtNCB7CgkJZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7CgkJd2lkdGg6IDMzLjMzMzMzJSAhaW1wb3J0YW50Cgl9Cgl0ZC5zbWFsbC01LCB0aC5zbW
private final String encodedTemplateTEXT = "e3tHQVRFV0FZX05BTUV9fQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkRlYXIge3tHQVRFV0FZX05BTUV9fSB1c2VyLAoKd2Ugd2FudCB0byBtYWtlIHlvdSBhd2FyZSB0aGF0IHRoaXMgVGh1cnNkYXksIEZlYnJ1YXJ5IDE4dGggYXQgMjozMHBtIENFVCwgdGhlcmUgd2lsbCBiZSBzY2hlZHVsZWQgZG93bnRpbWUgZm9yIGFwcHJveGltYXRlbHkgMyBob3Vycy4gCgpUaGlzIHBlcmlvZCBvZiBkb3dudGltZSBpcyBmb3IgbmVjZXNzYXJ5IHVwZGF0ZXMgdG8gdGhlIElkZW50aXR5IGFuZCBBY2Nlc3MgTWFuYWdlbWVudCAoSUFNKSBzZXJ2aWNlLCByZXN1bHRpbmcgaW4gYSBuZXcgU2lnbiBJbiBmZWF0dXJlIHRvIGFjY2VzcyB0aGlzIGdhdGV3YXkuCgpXZSBhcHByZWNpYXRlIHlvdXIgcGF0aWVuY2UgYW5kIHVuZGVyc3RhbmRpbmcgYW5kIHdpbGwgbWFrZSBldmVyeSBlZmZvcnQgdG8gbWluaW1pemUgdGhpcyBtYWludGVuYW5jZSB3aW5kb3cuCQkJCQkJCgpJZiB5b3Ugd2lzaCB0byBrbm93IHRoZSBwcm9ncmVzcyBmb2xsb3cgRDRTY2llbmNlIG9uIFR3aXR0ZXIgYXQgaHR0cHM6Ly90d2l0dGVyLmNvbS9kNHNjaWVuY2U=";
/**
*
* @param theUserWhoLeft
* @param theVRE
* @param optionalMessage
* @param gatewayName
* @param gatewayURL
*/
public TemplateDowntimeAnnouncement(String gatewayName, String gatewayURL) {
super(gatewayName, gatewayURL);
}
@Override
public String compile(String templateContent) {
return new String(Base64.getDecoder().decode(templateContent))
.replace("{{GATEWAY_LOGO:URL}}", getGatewayLogoURL())
.replace("{{GATEWAY_URL}}", getGatewayURL())
.replace("{{GATEWAY_NAME}}", getGatewayName());
}
@Override
public String getTextHTML() {
return compile(encodedTemplateHTML);
}
@Override
public String getTextPLAIN() {
return compile(encodedTemplateTEXT);
}
}