Add files that was rejected by Git.
This commit is contained in:
parent
e31a749f5a
commit
7add95e5ca
10 changed files with 419 additions and 43 deletions
|
|
@ -0,0 +1,42 @@
|
|||
package org.libreplan.business.templates.daos;
|
||||
|
||||
import org.libreplan.business.common.daos.GenericDAOHibernate;
|
||||
import org.libreplan.business.templates.entities.EmailTemplate;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* Created by
|
||||
* @author Vova Perebykivskiy <vova@libreplan-enterprise.com>
|
||||
* on 24.09.15.
|
||||
*/
|
||||
@Repository
|
||||
public class EmailTemplateDAO extends GenericDAOHibernate<EmailTemplate, Long> implements IEmailTemplateDAO{
|
||||
|
||||
@Override
|
||||
public String initializeContent() {
|
||||
for ( int i = 0; i < list(EmailTemplate.class ).size(); i++)
|
||||
if ( list(EmailTemplate.class).get(i).getType() == 1 && list(EmailTemplate.class).get(i).getLanguage() == 3) return list(EmailTemplate.class).get(i).getContent();
|
||||
return " ";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal) {
|
||||
for (int i = 0; i < list(EmailTemplate.class).size(); i++)
|
||||
if (list(EmailTemplate.class).get(i).getLanguage() == languageOrdinal &&
|
||||
// emailTemplateTypeOrdinal + 1, because first value is 0
|
||||
list(EmailTemplate.class).get(i).getType() == emailTemplateTypeOrdinal + 1)
|
||||
return list(EmailTemplate.class).get(i).getContent();
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getContentBySelectedTemplate(int emailTemplateTypeOrdinal, int languageOrdinal) {
|
||||
for (int i = 0; i < list(EmailTemplate.class).size(); i++)
|
||||
// emailTemplateTypeOrdinal + 1, because first value is 0
|
||||
if ( list(EmailTemplate.class).get(i).getType() == emailTemplateTypeOrdinal + 1 &&
|
||||
list(EmailTemplate.class).get(i).getLanguage() == languageOrdinal )
|
||||
return list(EmailTemplate.class).get(i).getContent();
|
||||
return "";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
package org.libreplan.business.templates.daos;
|
||||
|
||||
import org.libreplan.business.common.daos.IGenericDAO;
|
||||
import org.libreplan.business.templates.entities.EmailTemplate;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* DAO interface for the <code>EmailTemplate</code> entity.
|
||||
*
|
||||
* Created by
|
||||
* @author Vova Perebykivskiy <vova@libreplan-enterprise.com>
|
||||
* on 29.09.15.
|
||||
*/
|
||||
public interface IEmailTemplateDAO extends IGenericDAO<EmailTemplate, Long>{
|
||||
|
||||
String initializeContent();
|
||||
String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal);
|
||||
String getContentBySelectedTemplate(int emailTemplateTypeOrdinal, int languageOrdinal);
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
package org.libreplan.business.templates.entities;
|
||||
|
||||
import org.libreplan.business.common.BaseEntity;
|
||||
|
||||
/**
|
||||
* Created by
|
||||
* @author Vova Perebykivskiy <vova@libreplan-enterprise.com>
|
||||
* on 29.09.15.
|
||||
*/
|
||||
public class EmailTemplate extends BaseEntity {
|
||||
|
||||
private Integer type;
|
||||
|
||||
private Integer language;
|
||||
|
||||
private String content;
|
||||
|
||||
public int getType() {
|
||||
return type;
|
||||
}
|
||||
public void setType(Integer type) {
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
public Integer getLanguage() {
|
||||
return language;
|
||||
}
|
||||
public void setLanguage(Integer language) {
|
||||
this.language = language;
|
||||
}
|
||||
|
||||
public String getContent() {
|
||||
return content;
|
||||
}
|
||||
public void setContent(String content) {
|
||||
this.content = content;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
package org.libreplan.business.templates.entities;
|
||||
|
||||
import static org.libreplan.business.i18n.I18nHelper._;
|
||||
|
||||
/**
|
||||
* Available E-mail templates
|
||||
*
|
||||
* Created by
|
||||
* @author Vova Perebykivskiy <vova@libreplan-enterprise.com>
|
||||
* on 28.09.15.
|
||||
*
|
||||
* TEMPLATE_N(_("Template N")) - for i18n
|
||||
* TEMPLATE_A("Template A") - for general use (no internationalizing)
|
||||
*/
|
||||
public enum EmailTemplateEnum {
|
||||
|
||||
TEMPLATE_TASK_ASSIGNED_TO_RESOURCE(_("Task assigned to resource")),
|
||||
TEMPLATE_TEMPLATE_1("Test template");
|
||||
|
||||
private final String templateType;
|
||||
|
||||
EmailTemplateEnum(String templateType) {
|
||||
this.templateType = templateType;
|
||||
}
|
||||
|
||||
public String getTemplateType() {
|
||||
return templateType;
|
||||
}
|
||||
}
|
||||
|
|
@ -18,47 +18,6 @@
|
|||
*/
|
||||
package org.libreplan.business.users.bootstrap;
|
||||
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_CALENDARS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_CALENDAR_EXCEPTION_DAYS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_COMPANIES;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_COST_CATEGORIES;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_CREATE_PROJECTS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_CRITERIA;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_EDIT_ALL_PROJECTS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_ESTIMATED_PLANNED_HOURS_PER_TASK_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_EXPENSES;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_HOURS_TYPES;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_HOURS_WORKED_PER_RESOURCE_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_JOB_SCHEDULING;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_LABELS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_MACHINES;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_MAIN_SETTINGS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_MATERIALS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_MATERIALS_NEED_AT_DATE_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_MATERIAL_UNITS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_PLANNING;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_PROFILES;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_PROGRESS_TYPES;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_PROJECT_COSTS_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_PROJECT_STATUS_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_QUALITY_FORMS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_READ_ALL_PROJECTS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_RECEIVED_FROM_CUSTOMERS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_RECEIVED_FROM_SUBCONTRACTORS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_SEND_TO_CUSTOMERS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_SEND_TO_SUBCONTRACTORS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_TASK_SCHEDULING_STATUS_IN_PROJECT_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_TEMPLATES;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_TIMESHEETS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_TIMESHEETS_TEMPLATES;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_TIMESHEET_LINES_LIST;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_TOTAL_WORKED_HOURS_BY_RESOURCE_IN_A_MONTH_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_USER_ACCOUNTS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_VIRTUAL_WORKERS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_WORKERS;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_WORK_AND_PROGRESS_PER_PROJECT_REPORT;
|
||||
import static org.libreplan.business.users.entities.UserRole.ROLE_WORK_AND_PROGRESS_PER_TASK_REPORT;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
|
@ -66,16 +25,18 @@ import java.util.Set;
|
|||
import org.libreplan.business.users.entities.Profile;
|
||||
import org.libreplan.business.users.entities.UserRole;
|
||||
|
||||
import static org.libreplan.business.users.entities.UserRole.*;
|
||||
/**
|
||||
* Defines the default {@link org.libreplan.business.users.entities.Profile
|
||||
* Profiles}
|
||||
*
|
||||
* @author Manuel Rego Casasnovas <rego@igalia.com>
|
||||
* @author Vova Perebykivskiy <vova@libreplan-enterprise.com>
|
||||
*/
|
||||
public enum PredefinedProfiles {
|
||||
|
||||
SYSTEMS_ADMINISTRATOR("Systems Administrator", ROLE_MAIN_SETTINGS,
|
||||
ROLE_USER_ACCOUNTS, ROLE_PROFILES, ROLE_JOB_SCHEDULING),
|
||||
ROLE_USER_ACCOUNTS, ROLE_PROFILES, ROLE_JOB_SCHEDULING, ROLE_EDIT_EMAIL_TEMPLATES),
|
||||
|
||||
PROJECT_MANAGER("Project Manager", ROLE_READ_ALL_PROJECTS,
|
||||
ROLE_EDIT_ALL_PROJECTS, ROLE_CREATE_PROJECTS, ROLE_PLANNING,
|
||||
|
|
|
|||
|
|
@ -28,21 +28,26 @@ import static org.libreplan.business.i18n.I18nHelper._;
|
|||
*
|
||||
* @author Fernando Bellas Permuy <fbellas@udc.es>
|
||||
* @author Manuel Rego Casasnovas <rego@igalia.com>
|
||||
* @author Vova Perebykivskiy <vova@libreplan-enterprise.com>
|
||||
*/
|
||||
public enum UserRole {
|
||||
|
||||
// Access to all pages
|
||||
ROLE_SUPERUSER(_("Superuser")),
|
||||
|
||||
// Web services roles
|
||||
ROLE_WS_READER(_("Web service reader")),
|
||||
ROLE_WS_WRITER(_("Web service writer")),
|
||||
ROLE_WS_SUBCONTRACTING(_("Web service subcontractor operations")),
|
||||
|
||||
// Project operations roles
|
||||
ROLE_READ_ALL_PROJECTS(_("Read all projects")),
|
||||
ROLE_EDIT_ALL_PROJECTS(_("Edit all projects")),
|
||||
ROLE_CREATE_PROJECTS(_("Create projects")),
|
||||
|
||||
// Special role for bound users
|
||||
ROLE_BOUND_USER(_("Bound user")),
|
||||
|
||||
// Page roles
|
||||
ROLE_PLANNING(_("Planning")),
|
||||
ROLE_TEMPLATES(_("Templates")),
|
||||
|
|
@ -81,7 +86,9 @@ public enum UserRole {
|
|||
ROLE_PROJECT_COSTS_REPORT(_("Project Costs Report")),
|
||||
ROLE_TASK_SCHEDULING_STATUS_IN_PROJECT_REPORT(_("Task Scheduling Status In Project Report")),
|
||||
ROLE_MATERIALS_NEED_AT_DATE_REPORT(_("Materials Needed At Date Report")),
|
||||
ROLE_PROJECT_STATUS_REPORT(_("Project Status Report"));
|
||||
ROLE_PROJECT_STATUS_REPORT(_("Project Status Report")),
|
||||
|
||||
ROLE_EDIT_EMAIL_TEMPLATES(_("Edit E-mail Templates"));
|
||||
|
||||
private final String displayName;
|
||||
|
||||
|
|
|
|||
|
|
@ -91,4 +91,14 @@
|
|||
</joined-subclass>
|
||||
</class>
|
||||
|
||||
<class name="EmailTemplate" abstract="true" table="email_template">
|
||||
<id name="id" access="property" type="long">
|
||||
<generator class="hilo" >
|
||||
<param name="max_lo">100</param>
|
||||
</generator>
|
||||
</id>
|
||||
<property name="type" column="type" type="int"/>
|
||||
<property name="language" column="language" type="int"/>
|
||||
<property name="content" column="content" />
|
||||
</class>
|
||||
</hibernate-mapping>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,150 @@
|
|||
package org.libreplan.web.templates;
|
||||
|
||||
import org.libreplan.business.common.exceptions.ValidationException;
|
||||
import org.libreplan.business.settings.entities.Language;
|
||||
|
||||
import org.libreplan.business.templates.daos.EmailTemplateDAO;
|
||||
|
||||
import org.libreplan.business.templates.entities.EmailTemplateEnum;
|
||||
import org.libreplan.web.common.IMessagesForUser;
|
||||
import org.libreplan.web.common.Level;
|
||||
import org.libreplan.web.common.MessagesForUser;
|
||||
import org.zkoss.zk.ui.Component;
|
||||
|
||||
|
||||
import org.zkoss.zk.ui.Executions;
|
||||
import org.zkoss.zk.ui.util.GenericForwardComposer;
|
||||
|
||||
import org.zkoss.zul.Listitem;
|
||||
import org.zkoss.zul.ListitemRenderer;
|
||||
import org.zkoss.zul.Textbox;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import static org.libreplan.web.I18nHelper._;
|
||||
|
||||
/**
|
||||
* Created by
|
||||
* @author Vova Perebykivskiy <vova@libreplan-enterprise.com>
|
||||
* on 25.09.15.
|
||||
*/
|
||||
public class EmailTemplateController extends GenericForwardComposer{
|
||||
|
||||
private IEmailTemplateModel emailTemplateModel;
|
||||
|
||||
private EmailTemplateDAO emailTemplateDAO;
|
||||
|
||||
|
||||
private IMessagesForUser messages;
|
||||
|
||||
private Component messagesContainer;
|
||||
|
||||
private Textbox contentsTextbox;
|
||||
|
||||
|
||||
public static ListitemRenderer languagesRenderer = new ListitemRenderer() {
|
||||
@Override
|
||||
public void render(org.zkoss.zul.Listitem item, Object data)
|
||||
throws Exception {
|
||||
Language language = (Language) data;
|
||||
String displayName = language.getDisplayName();
|
||||
if (language.equals(Language.BROWSER_LANGUAGE)) {
|
||||
displayName = _(language.getDisplayName());
|
||||
}
|
||||
item.setLabel(displayName);
|
||||
}
|
||||
};
|
||||
|
||||
@Override
|
||||
public void doAfterCompose(Component comp) throws Exception {
|
||||
super.doAfterCompose(comp);
|
||||
comp.setVariable("emailTemplateController", this, true);
|
||||
messages = new MessagesForUser(messagesContainer);
|
||||
contentsTextbox.setValue(getInitialContentData());
|
||||
}
|
||||
|
||||
public boolean save(){
|
||||
try {
|
||||
setSelectedContent();
|
||||
emailTemplateModel.confirmSave();
|
||||
messages.clearMessages();
|
||||
messages.showMessage(Level.INFO, _("E-mail template saved"));
|
||||
return true;
|
||||
} catch (ValidationException e) {
|
||||
messages.showInvalidValues(e);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public void cancel() throws InterruptedException {
|
||||
Executions.getCurrent().sendRedirect("../planner/index.zul");
|
||||
}
|
||||
|
||||
public Language getSelectedLanguage() {
|
||||
return emailTemplateModel.getLanguage();
|
||||
}
|
||||
public void setSelectedLanguage(Language language){
|
||||
emailTemplateModel.setLanguage(language);
|
||||
|
||||
getContentDataBySelectedLanguage();
|
||||
}
|
||||
|
||||
public static ListitemRenderer getLanguagesRenderer() {
|
||||
return languagesRenderer;
|
||||
}
|
||||
public List<Language> getLanguages() {
|
||||
List<Language> languages = Arrays.asList(Language.values());
|
||||
Collections.sort(languages, new Comparator<Language>() {
|
||||
@Override
|
||||
public int compare(Language o1, Language o2) {
|
||||
if (o1.equals(Language.BROWSER_LANGUAGE)) {
|
||||
return -1;
|
||||
}
|
||||
if (o2.equals(Language.BROWSER_LANGUAGE)) {
|
||||
return 1;
|
||||
}
|
||||
return o1.getDisplayName().compareTo(o2.getDisplayName());
|
||||
}
|
||||
});
|
||||
return languages;
|
||||
}
|
||||
|
||||
|
||||
public EmailTemplateEnum getSelectedEmailTemplateEnum() {
|
||||
return emailTemplateModel.getEmailTemplateEnum();
|
||||
}
|
||||
public void setSelectedEmailTemplateEnum(EmailTemplateEnum emailTemplateEnum){
|
||||
emailTemplateModel.setEmailTemplateEnum(emailTemplateEnum);
|
||||
|
||||
getContentDataBySelectedTemplate();
|
||||
}
|
||||
|
||||
public ListitemRenderer getEmailTemplateEnumRenderer() {
|
||||
return new ListitemRenderer() {
|
||||
@Override
|
||||
public void render(Listitem item, Object data) throws Exception {
|
||||
EmailTemplateEnum template = (EmailTemplateEnum) data;
|
||||
item.setLabel(_(template.getTemplateType()));
|
||||
item.setValue(template);
|
||||
}
|
||||
};
|
||||
}
|
||||
public List<EmailTemplateEnum> getEmailTemplateEnum() {
|
||||
return Arrays.asList(EmailTemplateEnum.values());
|
||||
}
|
||||
|
||||
|
||||
public void setSelectedContent(){
|
||||
emailTemplateModel.setContent(contentsTextbox.getValue());
|
||||
}
|
||||
public String getInitialContentData(){
|
||||
return emailTemplateModel.initializeContent();
|
||||
}
|
||||
|
||||
private void getContentDataBySelectedLanguage(){
|
||||
contentsTextbox.setValue(emailTemplateModel.getContentBySelectedLanguage(getSelectedLanguage().ordinal(), getSelectedEmailTemplateEnum().ordinal()));
|
||||
}
|
||||
private void getContentDataBySelectedTemplate(){
|
||||
contentsTextbox.setValue( emailTemplateModel.getContentBySelectedTemplate( getSelectedEmailTemplateEnum().ordinal(), getSelectedLanguage().ordinal() ) );
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,90 @@
|
|||
package org.libreplan.web.templates;
|
||||
|
||||
import org.libreplan.business.settings.entities.Language;
|
||||
import org.libreplan.business.templates.daos.IEmailTemplateDAO;
|
||||
import org.libreplan.business.templates.entities.EmailTemplate;
|
||||
import org.libreplan.business.templates.entities.EmailTemplateEnum;
|
||||
import org.libreplan.web.common.concurrentdetection.OnConcurrentModification;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.config.BeanDefinition;
|
||||
import org.springframework.context.annotation.Scope;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
/**
|
||||
* Created by
|
||||
* @author Vova Perebykivskiy <vova@libreplan-enterprise.com>
|
||||
* on 25.09.15.
|
||||
*/
|
||||
@Service
|
||||
@Scope(BeanDefinition.SCOPE_PROTOTYPE)
|
||||
@OnConcurrentModification(goToPage = "/templates/email_templates.zul")
|
||||
public class EmailTemplateModel implements IEmailTemplateModel {
|
||||
|
||||
@Autowired
|
||||
private IEmailTemplateDAO emailTemplateDAO;
|
||||
|
||||
private Language language = Language.ENGLISH_LANGUAGE;
|
||||
|
||||
private EmailTemplateEnum emailTemplateEnum = EmailTemplateEnum.TEMPLATE_TASK_ASSIGNED_TO_RESOURCE;
|
||||
|
||||
private String content;
|
||||
|
||||
private EmailTemplate emailTemplate;
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void confirmSave(){
|
||||
emailTemplate = new EmailTemplate();
|
||||
|
||||
// + 1 because first ordinal = 0
|
||||
emailTemplate.setType(emailTemplateEnum.ordinal() + 1);
|
||||
emailTemplate.setLanguage(language.ordinal());
|
||||
emailTemplate.setContent(content);
|
||||
|
||||
emailTemplateDAO.save(emailTemplate);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Language getLanguage() {
|
||||
return language;
|
||||
}
|
||||
@Override
|
||||
public void setLanguage(Language language){ this.language = language; }
|
||||
|
||||
@Override
|
||||
public EmailTemplateEnum getEmailTemplateEnum() {
|
||||
return emailTemplateEnum;
|
||||
}
|
||||
@Override
|
||||
public void setEmailTemplateEnum(EmailTemplateEnum emailTemplateEnum) {
|
||||
this.emailTemplateEnum = emailTemplateEnum;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getContent() {
|
||||
return content;
|
||||
}
|
||||
@Override
|
||||
public void setContent(String content) {
|
||||
this.content = content;
|
||||
}
|
||||
@Override
|
||||
@Transactional
|
||||
public String initializeContent() {
|
||||
return emailTemplateDAO.initializeContent();
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal) {
|
||||
return emailTemplateDAO.getContentBySelectedLanguage(languageOrdinal, emailTemplateTypeOrdinal);
|
||||
}
|
||||
@Override
|
||||
@Transactional
|
||||
public String getContentBySelectedTemplate(int emailTemplateTypeOrdinal, int languageOrdinal) {
|
||||
return emailTemplateDAO.getContentBySelectedTemplate(emailTemplateTypeOrdinal, languageOrdinal);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
package org.libreplan.web.templates;
|
||||
|
||||
import org.libreplan.business.common.exceptions.ValidationException;
|
||||
import org.libreplan.business.settings.entities.Language;
|
||||
import org.libreplan.business.templates.entities.EmailTemplateEnum;
|
||||
|
||||
/**
|
||||
* Model E-mail Templates
|
||||
*
|
||||
* Created by
|
||||
* @author Vova Perebykivskiy <vova@libreplan-enterprise.com>
|
||||
* on 28.09.15.
|
||||
*/
|
||||
public interface IEmailTemplateModel {
|
||||
|
||||
void confirmSave() throws ValidationException;
|
||||
|
||||
Language getLanguage();
|
||||
void setLanguage(Language language);
|
||||
|
||||
EmailTemplateEnum getEmailTemplateEnum();
|
||||
void setEmailTemplateEnum(EmailTemplateEnum emailTemplateEnum);
|
||||
|
||||
String getContent();
|
||||
void setContent(String content);
|
||||
String initializeContent();
|
||||
String getContentBySelectedLanguage(int languageOrdinal, int emailTemplateTypeOrdinal);
|
||||
String getContentBySelectedTemplate(int emailTemplateTypeOrdinal, int languageOrdinal);
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue