18 package org.turro.publication.util;
20 import java.io.PrintWriter;
21 import java.util.ArrayList;
22 import java.util.Collection;
23 import java.util.List;
24 import java.util.logging.Level;
25 import java.util.logging.Logger;
26 import org.amic.util.string.Strings;
27 import org.turro.action.Contacts;
28 import org.turro.elephant.context.ElephantContext;
29 import org.turro.elephant.context.HeadlessApplication;
30 import org.turro.elephant.context.IConstructor;
31 import org.turro.elephant.entities.db.QueueOptions;
32 import org.turro.elephant.impl.util.Parser;
33 import org.turro.i18n.I_;
34 import org.turro.mail.impl.MailPool;
35 import org.turro.mail.queue.QueueManager;
36 import org.turro.plugin.contacts.IContact;
37 import org.turro.plugin.contacts.MailContact;
38 import org.turro.publication.entity.Publication;
39 import org.turro.publication.entity.PublicationCategory;
40 import org.turro.publication.zul.portal.PublicationContent;
48 private String mailStr, templatePublication;
51 List<Publication> pubs, String path) {
56 String start = extractStart(), end = extractEnd();
57 PrintWriter out = constructor.
getOut();
58 if(Strings.isBlank(start)) {
63 if(Strings.isBlank(templatePublication)) {
66 out.print(
PublicationContent.
getPublicationsTemplateStr(templatePublication, pubs,
null,
true,
true,
true,
true, path,
false,
null, constructor));
68 if(Strings.isBlank(end)) {
73 }
catch(Exception ex) {
100 ArrayList<IContact> list =
new ArrayList<>();
102 if(qo.getIdContact() !=
null) {
120 private String extractStart() {
122 if(templatePublication !=
null) {
123 int p = templatePublication.indexOf(
"#start#");
125 start = templatePublication.substring(0, p);
126 templatePublication = templatePublication.substring(p + 7);
132 private String extractEnd() {
134 if(templatePublication !=
null) {
135 int p = templatePublication.indexOf(
"#end#");
137 end = templatePublication.substring(p + 5);
138 templatePublication = templatePublication.substring(0, p);
144 private void doSend(PublicationCategory pubcat) {
145 MailContact.sendToIPlayers(
147 pubcat.getName() +
" - " + ElephantContext.getSiteName(),
148 pubcat.getName() +
" - " + ElephantContext.getSiteName(),
152 "IMailPool_Publication");
IImplementation getImplementation(String name)
static String getSiteName()
static String logMsg(String msg)
static HeadlessApplication getInstance()
static String escapeGrouping(String sequence)
static String get(String msg)
String getTemplateString(String attribute)
Collection< QueueOptions > getSubcribers(String idCategory)
static String convertId(PublicationCategory category)
void sendMail(IConstructor constructor, PublicationCategory pubcat)
void prepareMail(IConstructor constructor, PublicationCategory pubcat, List< Publication > pubs, String path)
static String getPublicationsStr(List< Publication > publications, String sclass, boolean title, boolean details, boolean summary, boolean body, String path, boolean asMail, String readAll, IConstructor constructor)
static String getPublicationsTemplateStr(String template, List< Publication > publications, String sclass, boolean title, boolean details, boolean summary, boolean body, String path, boolean asMail, String readAll, IConstructor constructor)