Changes to email functionality.
This commit is contained in:
parent
d856912acf
commit
b8b05c03fc
5 changed files with 41 additions and 56 deletions
|
|
@ -40,33 +40,6 @@ public class EmailTemplateDAO extends GenericDAOHibernate<EmailTemplate, Long> i
|
||||||
return list(EmailTemplate.class);
|
return list(EmailTemplate.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public String initializeContent() {
|
|
||||||
try{
|
|
||||||
List<EmailTemplate> emailTemplates = list(EmailTemplate.class);
|
|
||||||
for ( int i = 0; i < emailTemplates.size(); i++)
|
|
||||||
// language.ordinal.equals(3) - English
|
|
||||||
if ( emailTemplates.get(i).getType().ordinal() == 0 && emailTemplates.get(i).getLanguage().ordinal() == 3)
|
|
||||||
return emailTemplates.get(i).getContent();
|
|
||||||
}catch (Exception e){}
|
|
||||||
|
|
||||||
return " ";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String initializeSubject() {
|
|
||||||
try{
|
|
||||||
List<EmailTemplate> emailTemplates = list(EmailTemplate.class);
|
|
||||||
for ( int i = 0; i < emailTemplates.size(); i++)
|
|
||||||
// language.ordinal.equals(3) - English
|
|
||||||
if ( emailTemplates.get(i).getType().ordinal() == 0 && emailTemplates.get(i).getLanguage().ordinal() == 3 )
|
|
||||||
return emailTemplates.get(i).getSubject();
|
|
||||||
}catch (Exception e){}
|
|
||||||
|
|
||||||
return " ";
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal) {
|
public String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal) {
|
||||||
for (int i = 0; i < list(EmailTemplate.class).size(); i++)
|
for (int i = 0; i < list(EmailTemplate.class).size(); i++)
|
||||||
|
|
@ -102,5 +75,4 @@ public class EmailTemplateDAO extends GenericDAOHibernate<EmailTemplate, Long> i
|
||||||
return list(EmailTemplate.class).get(i).getSubject();
|
return list(EmailTemplate.class).get(i).getSubject();
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -36,9 +36,6 @@ public interface IEmailTemplateDAO extends IGenericDAO<EmailTemplate, Long>{
|
||||||
|
|
||||||
List<EmailTemplate> getAll();
|
List<EmailTemplate> getAll();
|
||||||
|
|
||||||
String initializeContent();
|
|
||||||
String initializeSubject();
|
|
||||||
|
|
||||||
String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal);
|
String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal);
|
||||||
String getContentBySelectedTemplate(int emailTemplateTypeOrdinal, int languageOrdinal);
|
String getContentBySelectedTemplate(int emailTemplateTypeOrdinal, int languageOrdinal);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,9 +24,14 @@ import org.libreplan.business.common.exceptions.ValidationException;
|
||||||
import org.libreplan.business.settings.entities.Language;
|
import org.libreplan.business.settings.entities.Language;
|
||||||
|
|
||||||
import org.libreplan.business.email.entities.EmailTemplateEnum;
|
import org.libreplan.business.email.entities.EmailTemplateEnum;
|
||||||
|
import org.libreplan.business.users.daos.IUserDAO;
|
||||||
|
import org.libreplan.business.users.entities.User;
|
||||||
import org.libreplan.web.common.IMessagesForUser;
|
import org.libreplan.web.common.IMessagesForUser;
|
||||||
import org.libreplan.web.common.Level;
|
import org.libreplan.web.common.Level;
|
||||||
import org.libreplan.web.common.MessagesForUser;
|
import org.libreplan.web.common.MessagesForUser;
|
||||||
|
import org.libreplan.web.security.SecurityUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.zkoss.zk.ui.Component;
|
import org.zkoss.zk.ui.Component;
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -52,8 +57,12 @@ import static org.libreplan.web.I18nHelper._;
|
||||||
*/
|
*/
|
||||||
public class EmailTemplateController extends GenericForwardComposer{
|
public class EmailTemplateController extends GenericForwardComposer{
|
||||||
|
|
||||||
private IEmailTemplateModel emailTemplateModel;
|
@Autowired
|
||||||
|
private IUserDAO userDAO;
|
||||||
|
|
||||||
|
private User user;
|
||||||
|
|
||||||
|
private IEmailTemplateModel emailTemplateModel;
|
||||||
|
|
||||||
private IMessagesForUser messages;
|
private IMessagesForUser messages;
|
||||||
|
|
||||||
|
|
@ -79,8 +88,14 @@ public class EmailTemplateController extends GenericForwardComposer{
|
||||||
super.doAfterCompose(comp);
|
super.doAfterCompose(comp);
|
||||||
comp.setVariable("emailTemplateController", this, true);
|
comp.setVariable("emailTemplateController", this, true);
|
||||||
messages = new MessagesForUser(messagesContainer);
|
messages = new MessagesForUser(messagesContainer);
|
||||||
contentsTextbox.setValue(getInitialContentData());
|
|
||||||
subjectTextbox.setValue(getInitialSubjectData());
|
// Set default template and language for user
|
||||||
|
// And content and subject for it
|
||||||
|
setUser();
|
||||||
|
setSelectedLanguage(user.getApplicationLanguage());
|
||||||
|
|
||||||
|
getContentDataBySelectedLanguage();
|
||||||
|
getSubjectDataBySelectedLanguage();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean save(){
|
public boolean save(){
|
||||||
|
|
@ -162,28 +177,31 @@ public class EmailTemplateController extends GenericForwardComposer{
|
||||||
public void setSelectedContent(){
|
public void setSelectedContent(){
|
||||||
emailTemplateModel.setContent(contentsTextbox.getValue());
|
emailTemplateModel.setContent(contentsTextbox.getValue());
|
||||||
}
|
}
|
||||||
public String getInitialContentData(){
|
|
||||||
return emailTemplateModel.initializeContent();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setSelectedSubject(){
|
public void setSelectedSubject(){
|
||||||
emailTemplateModel.setSubject(subjectTextbox.getValue());
|
emailTemplateModel.setSubject(subjectTextbox.getValue());
|
||||||
}
|
}
|
||||||
public String getInitialSubjectData(){
|
|
||||||
return emailTemplateModel.initializeSubject();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void getContentDataBySelectedLanguage(){
|
private void getContentDataBySelectedLanguage(){
|
||||||
contentsTextbox.setValue(emailTemplateModel.getContentBySelectedLanguage(getSelectedLanguage().ordinal(), getSelectedEmailTemplateEnum().ordinal()));
|
contentsTextbox.setValue(emailTemplateModel.getContentBySelectedLanguage(getSelectedLanguage().ordinal(), getSelectedEmailTemplateEnum().ordinal()));
|
||||||
}
|
}
|
||||||
private void getContentDataBySelectedTemplate(){
|
private void getContentDataBySelectedTemplate(){
|
||||||
contentsTextbox.setValue( emailTemplateModel.getContentBySelectedTemplate( getSelectedEmailTemplateEnum().ordinal(), getSelectedLanguage().ordinal() ) );
|
contentsTextbox.setValue( emailTemplateModel.getContentBySelectedTemplate(getSelectedEmailTemplateEnum().ordinal(), getSelectedLanguage().ordinal()) );
|
||||||
}
|
}
|
||||||
|
|
||||||
private void getSubjectDataBySelectedLanguage(){
|
private void getSubjectDataBySelectedLanguage(){
|
||||||
subjectTextbox.setValue(emailTemplateModel.getSubjectBySelectedLanguage(getSelectedLanguage().ordinal(), getSelectedEmailTemplateEnum().ordinal()));
|
subjectTextbox.setValue(emailTemplateModel.getSubjectBySelectedLanguage(getSelectedLanguage().ordinal(), getSelectedEmailTemplateEnum().ordinal()));
|
||||||
}
|
}
|
||||||
private void getSubjectDataBySelectedTemplate(){
|
private void getSubjectDataBySelectedTemplate(){
|
||||||
subjectTextbox.setValue( emailTemplateModel.getContentBySelectedTemplate( getSelectedEmailTemplateEnum().ordinal(), getSelectedLanguage().ordinal() ) );
|
subjectTextbox.setValue( emailTemplateModel.getContentBySelectedTemplate(getSelectedEmailTemplateEnum().ordinal(), getSelectedLanguage().ordinal()) );
|
||||||
|
}
|
||||||
|
|
||||||
|
@Transactional
|
||||||
|
private void setUser(){
|
||||||
|
try {
|
||||||
|
user = userDAO.findByLoginName(SecurityUtils.getSessionUserLoginName());
|
||||||
|
} catch (InstanceNotFoundException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,10 @@ import org.libreplan.business.settings.entities.Language;
|
||||||
import org.libreplan.business.email.daos.IEmailTemplateDAO;
|
import org.libreplan.business.email.daos.IEmailTemplateDAO;
|
||||||
import org.libreplan.business.email.entities.EmailTemplate;
|
import org.libreplan.business.email.entities.EmailTemplate;
|
||||||
import org.libreplan.business.email.entities.EmailTemplateEnum;
|
import org.libreplan.business.email.entities.EmailTemplateEnum;
|
||||||
|
import org.libreplan.business.users.daos.IUserDAO;
|
||||||
|
import org.libreplan.business.users.entities.User;
|
||||||
import org.libreplan.web.common.concurrentdetection.OnConcurrentModification;
|
import org.libreplan.web.common.concurrentdetection.OnConcurrentModification;
|
||||||
|
import org.libreplan.web.security.SecurityUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.config.BeanDefinition;
|
import org.springframework.beans.factory.config.BeanDefinition;
|
||||||
import org.springframework.context.annotation.Scope;
|
import org.springframework.context.annotation.Scope;
|
||||||
|
|
@ -48,6 +51,9 @@ public class EmailTemplateModel implements IEmailTemplateModel {
|
||||||
@Autowired
|
@Autowired
|
||||||
private IEmailTemplateDAO emailTemplateDAO;
|
private IEmailTemplateDAO emailTemplateDAO;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IUserDAO userDAO;
|
||||||
|
|
||||||
private Language language = Language.ENGLISH_LANGUAGE;
|
private Language language = Language.ENGLISH_LANGUAGE;
|
||||||
|
|
||||||
private EmailTemplateEnum emailTemplateEnum = EmailTemplateEnum.TEMPLATE_TASK_ASSIGNED_TO_RESOURCE;
|
private EmailTemplateEnum emailTemplateEnum = EmailTemplateEnum.TEMPLATE_TASK_ASSIGNED_TO_RESOURCE;
|
||||||
|
|
@ -56,6 +62,8 @@ public class EmailTemplateModel implements IEmailTemplateModel {
|
||||||
|
|
||||||
private String subject;
|
private String subject;
|
||||||
|
|
||||||
|
private User user;
|
||||||
|
|
||||||
private EmailTemplate emailTemplate = new EmailTemplate();
|
private EmailTemplate emailTemplate = new EmailTemplate();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -103,11 +111,14 @@ public class EmailTemplateModel implements IEmailTemplateModel {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@Transactional
|
||||||
public Language getLanguage() {
|
public Language getLanguage() {
|
||||||
return this.emailTemplate.getLanguage();
|
return this.emailTemplate.getLanguage();
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void setLanguage(Language language){ this.emailTemplate.setLanguage(language);}
|
public void setLanguage(Language language){
|
||||||
|
this.emailTemplate.setLanguage(language);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public EmailTemplateEnum getEmailTemplateEnum() {
|
public EmailTemplateEnum getEmailTemplateEnum() {
|
||||||
|
|
@ -136,16 +147,6 @@ public class EmailTemplateModel implements IEmailTemplateModel {
|
||||||
this.emailTemplate.setSubject(subject);
|
this.emailTemplate.setSubject(subject);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
@Transactional
|
|
||||||
public String initializeContent() {
|
|
||||||
return emailTemplateDAO.initializeContent();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
@Transactional
|
|
||||||
public String initializeSubject() { return emailTemplateDAO.initializeSubject(); }
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional
|
@Transactional
|
||||||
public String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal) {
|
public String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal) {
|
||||||
|
|
|
||||||
|
|
@ -40,9 +40,6 @@ public interface IEmailTemplateModel {
|
||||||
|
|
||||||
List<EmailTemplate> getAll();
|
List<EmailTemplate> getAll();
|
||||||
|
|
||||||
String initializeContent();
|
|
||||||
String initializeSubject();
|
|
||||||
|
|
||||||
String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal);
|
String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal);
|
||||||
String getContentBySelectedTemplate(int emailTemplateTypeOrdinal, int languageOrdinal);
|
String getContentBySelectedTemplate(int emailTemplateTypeOrdinal, int languageOrdinal);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue