You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

877 lines
45 KiB

var email_template = (function ($, window, jQuery) {
var _vars_ = {};
return {
"set_vars": function (options) {
$.extend(_vars_, options || {});
},
"get_vars": function () {
return _vars_;
},
"_create" : {
"modal" : function(email_type_id, email_type){
app.modal.focusout_solution("on");
app.modal.activate_tinymce("on");
var _form = $("form#emailTemplateForm");
_form.data("email_type_id", email_type_id);
$.ajax({
url : app.get_vars().baseurl+"email/email_template/get_default_template",
type : "POST",
data : {
email_type_id : email_type_id
},
success : function(result){
bootbox.dialog({
"title": app.get_vars().email.title.create_template + "&nbsp;&nbsp;<i class='fa fa-chevron-right fa-1'></i> "+email_type,
"className" : "my-modal-with-large",
"message": _form,
"show": false,
"buttons" : [
{
"label": app.get_vars()._app.btn._close,
"class": "btn btn-default",
"callback": function () {
}
}, {
"label": app.get_vars().email.btn.create_new_template,
"class": "btn btn-success",
"callback": function () {
email_template._validate._init('add');
return false;
}
}
]
}).on('shown.bs.modal', function() {
$("#email_tpl_name").focus();
$(this).off('shown.bs.modal');
}).on('hide.bs.modal', function(e) {
try {
tinymce.remove();
$("#email_tpl_detail").html('');
} catch (e) {}
app._form._reset(this);
app._form._resetFormValidation("#emailTemplateForm");
$("#email_tpl_detail").html("");
app.modal.focusout_solution("off");
app.modal.activate_tinymce("off");
$(this).data('bs.modal', null);
$(this).off('hidden.bs.modal');
})
.modal('show')
alert("Reakky")
.init(function(){
//load wysiwyg html editor
try {
$("#email_tpl_detail").html(result.mdata.email_type_template);
email_template._editor._preview('#preview_tpl_detail');
email_template._editor._load("#email_tpl_detail");
$("#email_tpl_status option[value='2']").prop('selected',true);
$("#email_tpl_subject").val(result.mdata.email_type_subject);
$("#email_tpl_creation_status").show(function(){
$("input[name='email_tpl_creation_status'][value='CUSTOMIZED']").prop("checked", true);
});
/* save default email subject on temp var, this will be displayed on the cofirmation dialog
and will be a replacement for empty subject */
email_template.set_vars({email_type_subject : result.mdata.email_type_subject});
//tinymce.EditorManager.execCommand('mceAddEditor',true, 'email_tpl_detail');
} catch (e) {}
});
}
});
},
"save" : function(form){
var wait_loader = null,
email_tpl_status = $("#email_tpl_status option:selected").val();
$.ajax({
"url" : app.get_vars().baseurl+"create_email_template",
"type" : "POST",
"dataType": "json",
"data" : email_template._prepare._data_to_server("add"),
"beforeSend" : function(){
if(email_tpl_status == 2) {
wait_loader = bootbox.dialog({
message: '<p class="text-center"><i class="fa fa-spin fa-spinner"/> '+app.get_vars().email.pub_email_tpl.publishing_email_template+'</p>',
closeButton: false
});
}
},
"success" : function(result){
//hide loder modal
if(email_tpl_status == 2){
wait_loader.modal("hide");
}
if(app.isalive(result)) {
app._notify(result.mtype, result.message);
if (result.mtype == "success") {
//reload grid
//bootbox.hideAll();
// (event_reminder.get_vars()._event_reminder).ajax.reload( null, false );
// location.reload();
window.setTimeout(function(){window.location.href = app.get_vars().baseurl+"email_template";},500);
}
}
}
});
}
},
"_update" : {
"modal" : function(row){
app.modal.focusout_solution("on");
app.modal.activate_tinymce("on");
var rowData = (email_template.get_vars()._email_template).row(row).data();
var _form = $("#emailTemplateForm");
_form.data("email_tpl", {"email_tpl_id" : rowData.action.email_tpl_id, "email_type_id" : rowData.action.email_type_id});
if((rowData.email_tpl_creation_status).toUpperCase() == "DEFAULT"){
$("div#email_tpl_creation_status").hide();
} else {
$("div#email_tpl_creation_status").show();
}
bootbox.dialog({
"title": app.get_vars().email.title.edit_template + "&nbsp;&nbsp;<i class='fa fa-chevron-right fa-1'></i> "+rowData.email_tpl_name ,
"className" : "my-modal-with-large",
"message": _form,
"show": false, /* We will show it manually later */
"buttons" : [
{
"label": app.get_vars()._app.btn._close,
"class": "btn btn-default",
"callback": function () {
}
}, {
"label": app.get_vars().email.btn.save_changes,
"class": "btn btn-success",
"callback": function () {
email_template._validate._init('edit');
return false;
}
}
]
}).on('shown.bs.modal', function() {
$("#email_tpl_name").focus();
$(this).off('shown.bs.modal');
}).on('hide.bs.modal', function(e) {
try {
//tinymce.EditorManager.execCommand('mceRemoveEditor',false, 'email_tpl_detail');
tinymce.remove();
} catch (e) {}
app._form._resetFormValidation("#emailTemplateForm");
app._form._reset(this);
$("#email_tpl_detail").html("");
app.modal.focusout_solution("off");
app.modal.activate_tinymce("off");
$(this).data('bs.modal', null);
$(this).off('hidden.bs.modal');
})
.modal('show')
.init(function(){
//set tinymce content
email_template._editor._preview('#preview_tpl_detail');
email_template._prepare._set_data(rowData);
//submit form on keypress or enter
app._form._form_submit_on_keypress("emailTemplateForm", function(){
email_template._validate._init('edit');
});
});
},
"save" : function(form){
var wait_loader = null,
email_tpl_status = $("input#status option:selected").val(),
_form = $("#emailTemplateForm").data("email_tpl");
$.ajax({
"url" : app.get_vars().baseurl+"update_email_template/"+_form.email_tpl_id,
type : "POST",
dataType : "json",
data : email_template._prepare._data_to_server("edit"),
beforeSend : function(){
if(email_tpl_status == 2) {
wait_loader = bootbox.dialog({
message: '<p class="text-center"><i class="fa fa-spin fa-spinner"/> '+app.get_vars().email.pub_email_tpl.publishing_email_template+'</p>',
closeButton: false
});
}
},
success : function(result){
//hide loder modal
if(email_tpl_status == 2){
wait_loader.modal("hide");
}
if(app.isalive(result)) {
app._notify(result.mtype, result.message);
if (result.mtype == "success") {
//reload grid
//bootbox.hideAll();
//(event_reminder.get_vars()._event_reminder).ajax.reload( null, false );
window.setTimeout(function(){window.location.href = app.get_vars().baseurl+"email_template";},500);
// location.reload();
}
}
}
});
}
},
"_delete" : {
"confirm" : function(email_tpl_id){
app.modal.confirm_box({
"message" : app.get_vars().email.cmsg.delete_email_template+"<br/><br><span class='label label-danger' style='font-size: 12px;'>"+app.get_vars()._app.cma_msg.note+"</span>",
"_continue" : function() {
email_template._delete.save(email_tpl_id);
},
"id" : "delete_confirm_box",
"className" : "delete_confirm_box"
});
},
"save" : function(email_tpl_id){
$.ajax({
"url" : app.get_vars().baseurl+"check_template_dependencies/"+email_tpl_id,
"type" : "POST",
"dataType" : "json",
"success" : function(result){
if(app.isalive(result)) {
app._notify(result.mtype, result.message);
if (result.mtype == "success") {
//reload grid
bootbox.hideAll();
(email_template.get_vars()._email_template).ajax.reload(null, false);
//window.setTimeout(function(){window.location.href = app.get_vars().baseurl+"event_reminder";},1000);
}
}
}
});
}
},
"_view" : {
"modal": function (row) {
var data = (email_template.get_vars()._email_template).row(row).data();
$.ajax({
"url" : app.get_vars().baseurl+"get_email_template_content/"+data.action.email_tpl_id,
"type" : "POST",
"dataType" : "json",
"success": function (result) {
if (app.isalive(result)) {
if (result.mtype == "success") {
//set content in a dialog
try {
bootbox.dialog({
"title": data.email_tpl_name,
"className": 'my-modal-with-medium',
"message": '<iframe id="preview_event_content" style="width : 100%; min-height : 500px; max-height: 560px; ' +
'overflow-x: hidden !important; overflow-y: auto;" src="" frameborder="0.5" allowfullscreen></iframe>',
"buttons": [
{
"label": app.get_vars()._app.btn._close,
"class": "btn btn-default w-mb",
"callback": function () {
}
}
]
}).on('shown.bs.modal', function () {
var previewcontent = email_template._preview._changevariables(result.mdetail[0].email_tpl_detail);
$("iframe#preview_event_content").contents().find('html').html(previewcontent);
$(this).off('shown.bs.modal');
});
} catch (e) {
}
}
}
}
});
}
},
"_editor" :{
"_load" : function(selector, initcallback){
var dynamicVars = app.get_vars().email.dynamicVars, items="";
$.map(dynamicVars, function(val, index){ items +=index+" ";});
tinymce.init({
selector: selector,
height: 300,
theme: 'modern',
language: 'fr_FR',
invalid_elements : "script",
file_browser_callback_types: 'file image media',
convert_urls: true,
relative_urls: false,
remove_script_host: false,
plugins: [
'autolink lists link charmap anchor preview code'
],
toolbar: 'undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | PreviewButton | uploadtpl code',
menu : {
file : {title : "Fichier" , items : 'newdocument'},
edit : {title : 'Editer' , items : 'undo redo | cut copy paste pastetext | selectall'},
insert : {title : 'Insérer', items : 'link media | template hr'},
view : {title : 'Vue' , items : 'visualaid'},
format : {title : 'Format', items : 'bold italic underline strikethrough superscript subscript | formats | removeformat'},
tools : {title : 'Outils' , items : 'spellchecker code'},
variables: {title : 'Variables dynamiques', items : items}
},
setup: function(editor) {
var originalcontent;
var previewcontent;
email_template.menuItems._add(editor);
// email_template._editor._addTplForm();
editor.addButton('PreviewButton', {
text: "Aperçu de l'email",
icon: 'preview',
context: 'previewbutton',
onclick: function()
{
var editor = tinymce.get('email_tpl_detail'); // use your own editor id here - equals the id of your textarea
var preview = tinymce.get('preview_tpl_detail');
originalcontent = editor.getContent();
previewcontent = email_template._preview._changevariables(originalcontent);
preview.setContent(previewcontent);
preview.execCommand('mcePreview');
return;
}
});
},
init_instance_callback : (typeof initcallback != "undefined")?initcallback:function(){}
});
},
"_preview" : function(selector){
tinymce.init({
selector: selector,
height: 300,
theme: 'modern',
language: 'fr_FR',
convert_urls: true,
relative_urls: false,
remove_script_host: false,
//element_format : 'html',
//entity_encoding : 'raw',
file_browser_callback_types: 'file image media',
plugins: [
'autolink lists link charmap anchor preview'
]
});
}
},
"_grid" : {
"load" : function(){
var table = $('#email_template_list').DataTable({
"dom" : '<"top"l><"toolbar">rt<"bottom"ip><"clear">',
//"dom": '<"toolbar"><"top"lf>rt',
"autoWidth": true,
"responsive": true,
"processing": true, //Feature control the processing indicator.
"serverSide": true, //Feature control DataTables' server-side processing mode.
"order": [], //Initial no order.
"oLanguage": fr_onload_lang.oLanguage,
// Load data for the table's content from an Ajax source
"ajax": {
"url": app.get_vars().baseurl+"get_email_template_list",
"type": "POST" ,
"data" : function(d){
//var da_ta = $("#custom_filter_search_form").serializeArray();
//if(da_ta.length > 0) {
// var x=0;
// $.map(da_ta, function(val, index){
// if(val.name != "custom_filter_search" && x==0){
// d.keyname = val.name;
// x++;
// }
// d[val.name] = val.value;
// });
//}
}
},
"columns": [
{ "data": "email_tpl_order" },
{ "data": "email_tpl_name"},
{ "data": "email_type"},
{ "data": "email_tpl_creation_status", render : function(data, type, full, meta){
if(full.email_tpl_creation_status == "DEFAULT"){
return "OUI";
}
return "NON";
}},
{ "data": "email_tpl_status" },
{ "data": "email_tpl_author" },
{ "data": "action" , render : function(data, type, full, meta){
var action_btns = "";
if (authorize(PAGE_CODE['email'], PRIVS[PAGE_CODE['email']]['template_edit'])) {
action_btns += app.grid.create_action_btn(app.get_vars()._app.action._edit, "pencil", "success", "email_template._update.modal("+meta.row+")");
}
if (authorize(PAGE_CODE['email'], PRIVS[PAGE_CODE['email']]['template_view'])) {
action_btns += app.grid.create_action_btn(app.get_vars()._app.action._openpreview, "eye","info", "email_template._view.modal("+meta.row+")");
}
if (
authorize(PAGE_CODE['email'], PRIVS[PAGE_CODE['email']]['template_delete']) &&
(full.email_tpl_creation_status).toUpperCase() != "DEFAULT"
) {
action_btns +=app.grid.create_action_btn(app.get_vars()._app.action._delete, "trash", "danger", "email_template._delete.confirm("+full.action.email_tpl_id +")");
}
return '<div class="row-fluid" align="center"><div class="row" align="center">'+action_btns+'</div></div>';
}},
{ "data": "email_tpl_date_created" },
{ "data": "email_tpl_subject" }
],
"fnDrawCallback": function() {
app._tooltip._hide();
$('#email_template_list tbody tr td').each( function(x, y) {
var _this = $(this);
if(_this.hasClass('truncate-content-text')){
_this.css('max-width', '180px');
this.setAttribute( 'title', _this.text());
this.setAttribute( 'data-toggle',"tooltip");
}
});
app._tooltip._pop();
},
//Set column definition initialisation properties.
"columnDefs": [
{ "targets": [0], "orderable": false},
{ "targets": [6], "orderable": false},
{ "targets": [3], "orderable": true},
{ "targets": [5], "orderable": true, className : "truncate-content-text custom-popover-tooltip"},
{ "targets": [4], "orderable": true},
{ "targets": [1], width: "20%", className : "truncate-content-text custom-popover-tooltip"},
{ "targets": [8], "orderable": false, "visible": true }
],
"initComplete": function(settings, json) {
//run tooltip
app._tooltip._hide();
app._tooltip._pop();
$("div#email_template_list_length").css({"width" : "20%", "float":"left"});
$("select[name='email_template_list_length']").css({"width" : "70px"});
if (authorize(PAGE_CODE['email'], PRIVS[PAGE_CODE['email']]['template_add'])) {
$("div.toolbar").html('<div class="btn-group dropdown pull-right">'
+'<button class="btn btn-primary btn-sm" type="button" id="dropdownMenu2" data-toggle="dropdown">'
+'<i class="fa fa-plus fa-1"></i> '+app.get_vars().email.btn.create_new_template
+'</button>'
+'<button type="button" class="btn btn-primary dropdown-toggle btn-sm" data-toggle="dropdown">'
+'<span class="caret"></span>'
+'<span class="sr-only">Toggle Dropdown</span>'
+'</button>'
+'<ul class ="dropdown-menu" id="emailtemplatetype" role="menu">'
+'<li><a class="" href="#"><p><i class="fa fa-spin fa-spinner"></i> Loading...</p></a></li>'
+'</ul>'
+'</div>');
}
email_template.util.load_email_type();
}
});
email_template.set_vars({_email_template : table});
}
},
"_preview" : {
"_changevariables" : function(originalcontent){
var mapVar = {},eVars="";
var dynamicVars = app.get_vars().email.dynamicVars,
dynamicVarsCount = dynamicVars.length;
$.map(dynamicVars, function(items, index){
mapVar[items.code] = items.val;
var tmp = (items.code).replace("[[", "\\[\\["),
sep = ((dynamicVarsCount-1) != index)?"|":"";
eVars +=tmp+sep;
});
previewcontent = originalcontent.replace(new RegExp(eVars,"g"),
function(matched){
return mapVar[matched];
}
);
return previewcontent;
}
},
"menuItems" : {
"_add" : function(editor){
var menuItem = app.get_vars().email.dynamicVars;
$.map(menuItem, function(item, index){
editor.addMenuItem(index, {
text: item.text,
context: 'newmenu',
onclick: function () {
editor.insertContent(item.code);
}
});
});
}
},
"_prepare" : {
"_get_surheader" : function(template){
var tinymceTmpContent = $(template),
extractSurheader = tinymceTmpContent.find("a[href*='new_tab_url']").parent().parent(),
extractContent = tinymceTmpContent.find("table.body:first"),
email_tpl_surheader = {name: "email_tpl_surheader", value: ""};
$.each(extractSurheader.find("div"), function(index,div){
var getText = $(div).children() //select all the children
.remove() //remove all the children
.end() //again go back to selected element
.text().trim();
if(getText != "") {
email_tpl_surheader.name = "email_tpl_surheader";
email_tpl_surheader.value = "<div style='font-size:0px;line-height:0px;width:0px;'>"
+ getText +" | "
+ (extractContent.text().replace(/\n/g," ").trim()).replace(/\s+/g, " ").substr(0, 700)+"<br>\n"
+ "...</div>";
return false;
}
});
return email_tpl_surheader;
},
"_data_to_server" : function(action){
var _form = $("form#emailTemplateForm"),
form_data = _form.serializeArray(),
tinymceTmpContent = tinyMCE.get("email_tpl_detail").getContent(),
checker = 0;
//extract the surheader
form_data.push(email_template._prepare._get_surheader(tinymceTmpContent));
//check email template subject
(($("#email_tpl_subject").val().trim().length > 0)
? app.get_vars().email.cmsg.create_new_template
: (app.get_vars().email.cmsg.empty_subject + '\"<b>'+email_template.get_vars().email_type_subject+'</b>\"')
)
$.map(form_data, function(x, t){
if(x.name == "email_tpl_detail") {
form_data[t].value = tinymceTmpContent;
checker = 1;
} else if(x.name == "email_tpl_subject") {
form_data[t].value = (((form_data[t].value).trim().length > 0)
? form_data[t].value
: email_template.get_vars().email_type_subject);
}
});
if(checker == 0){
form_data.push({"name" : "email_tpl_detail", "value" : tinymceTmpContent});
}
if(action == "edit"){
var form_data_ = _form.data("email_tpl");
form_data.push({"name" : "email_type_id", "value" : form_data_.email_type_id});
} else {
form_data.push({"name" : "email_type_id", "value" :_form.data("email_type_id")});
}
return form_data;
},
"_set_data" : function(data){
$.ajax({
"url" : app.get_vars().baseurl+"get_email_template_content/"+data.action.email_tpl_id,
"type" : "POST",
"dataType" : "json",
"success" : function(result){
if(app.isalive(result)) {
if (result.mtype == "success") {
try {
email_template._editor._load("#email_tpl_detail", function(){
tinyMCE.get('email_tpl_detail').setContent(result.mdetail[0].email_tpl_detail);
});
//set values
$("input[name='email_tpl_creation_status'][value='" + data.email_tpl_creation_status + "']").prop("checked", true).change();
$("#email_tpl_name").val(data.email_tpl_name);
$("#email_tpl_subject").val(data.email_tpl_subject);
/* save default email subject on temp var, this will be displayed on the cofirmation dialog
and will be a replacement for empty subject */
email_template.set_vars({email_type_subject : data.action.email_type_subject});
switch(data.action.email_tpl_id){
case '3': $("#email_tpl_subject").attr('placeholder', "Confirmation de votre réservation pour `Nom de l'evenement`");
break;
case '5': $("#email_tpl_subject").attr('placeholder', "Annulation de votre réservation pour `Nom de l'evenement`");
break;
case '6': $("#email_tpl_subject").attr('placeholder', "Réservation sur la liste d'attente");
break;
default: $("#email_tpl_subject").attr('placeholder', "Nom de l'evenement");
break;
}
$("#email_tpl_status").val(data.action.email_tpl_status);
} catch (e) {}
} else {
app._notify(result.mtype, result.message);
}
}
}
});
}
},
"_validate" : {
"_init": function (action) {
var options = {
boot_box: {
"action" : action,
"message": (action == "add")
? (($("#email_tpl_subject").val().trim().length > 0)
? app.get_vars().email.cmsg.create_new_template
: (app.get_vars().email.cmsg.empty_subject + '\"<b>'+email_template.get_vars().email_type_subject+'</b>\"')
)
: (($("#email_tpl_subject").val().trim().length > 0)
? app.get_vars().email.cmsg.edit_template
: (app.get_vars().email.cmsg.empty_subject + '\"<b>'+email_template.get_vars().email_type_subject+'</b>\"')
)
,
"_continue": function () {
var _form_ = $("form#emailTemplateForm");
(action == "add")
? email_template._create.save(_form_)
: email_template._update.save(_form_)
}
},
"validation": {
"custom" : {
"rules": {
"check_email_tpl_desc": {
"_fnc": function (value, element, options) {
var mail_content = tinyMCE.get('email_tpl_detail').getContent();
if (mail_content.trim() == "") {
tinymce.execCommand('mceFocus', false, 'email_tpl_detail');
return false;
}
return true;
},
msg: app.get_vars().email.val.description_req
}
},
"informal_val": {
"_rules": function (action) {
app._form._resetFormValidation("#emailTemplateForm");
var error = [], message = "";
var _form = $("#emailTemplateForm");
if(action == "add") {
//check email type
var email_type_id = _form.data("email_type_id");
if (typeof email_type_id == "undefined" || parseInt(email_type_id) <= 0) {
message += "* " + app.get_vars().email.val.template_type_req+"<br/>";
error.push(1);
}
} else {
//check email type
var email_tpl = _form.data("email_tpl");
if (typeof email_tpl == "undefined" || parseInt(email_tpl) <= 0) {
error.push(1);
message += "* " + app.get_vars().email.val.email_tpl_req+"<br/>";
}
}
if (message != "") {
$("#help-block-msg").html(message);
}
return error;
},
"_callback": function (error) {
if (error.length >= 1) {
//scroll to top
for (i = 0; i < error.length; i++) {
return false;
}
}
}
}
},
"form_id": "form#emailTemplateForm",
"ignore": "",
"rules": {
"email_tpl_status": {
"required": true
},
"email_tpl_subject": {
"required": false
},
"email_tpl_detail": {
"check_email_tpl_desc": true
},
"email_type_id": {
"required": true
},
"email_tpl_name": {
"minlength" : 3
},
"email_tpl_creation_status": {
"required": true
}
}
}
};
app._form._validate(options);
},
check_email_tpl_status : function(){
var email_tpl_status = $("#email_tpl_status option:selected").val();
if(parseInt(email_tpl_status) == 2 && email_tpl_status !="") {
return true;
} else {
return false;
}
}
},
"_default_tmplt" : {
"modal" : function(email_type_id, email_type){
app.modal.focusout_solution("on");
app.modal.activate_tinymce("on");
var _form = $("form#emailTemplateForm");
_form.data("email_type_id", email_type_id);
$.ajax({
url : app.get_vars().baseurl+"email/email_template/get_default_tmplt",
type : "POST",
data : {
email_type_id : email_type_id
},
success : function(result){
bootbox.dialog({
"title": app.get_vars().email.title.create_template + "&nbsp;&nbsp;<i class='fa fa-chevron-right fa-1'></i> "+email_type,
"className" : "my-modal-with-large",
"message": _form,
"show": false,
"buttons" : [
{
"label": app.get_vars()._app.btn._close,
"class": "btn btn-default",
"callback": function () {
}
}, {
"label": app.get_vars().email.btn.create_new_template,
"class": "btn btn-success",
"callback": function () {
email_template._validate._init('add');
return false;
}
}
]
}).on('shown.bs.modal', function() {
$("#email_tpl_name").focus();
$(this).off('shown.bs.modal');
}).on('hide.bs.modal', function(e) {
try {
tinymce.remove();
$("#email_tpl_detail").html('');
} catch (e) {}
app._form._reset(this);
app._form._resetFormValidation("#emailTemplateForm");
$("#email_tpl_detail").html("");
app.modal.focusout_solution("off");
app.modal.activate_tinymce("off");
$(this).data('bs.modal', null);
$(this).off('hidden.bs.modal');
})
.modal('show')
.init(function(){
//load wysiwyg html editor
try {
$("#email_tpl_detail").html(result.mdata.email_tpl_detail);
email_template._editor._preview('#preview_tpl_detail');
email_template._editor._load("#email_tpl_detail");
$("#email_tpl_status option[value='2']").prop('selected',true);
$("#email_tpl_subject").val(result.mdata.email_tpl_subject);
$("#email_tpl_creation_status").show(function(){
$("input[name='email_tpl_creation_status'][value='CUSTOMIZED']").prop("checked", true);
});
/* save default email subject on temp var, this will be displayed on the cofirmation dialog
and will be a replacement for empty subject */
email_template.set_vars({email_type_subject : result.mdata.email_type_subject});
//tinymce.EditorManager.execCommand('mceAddEditor',true, 'email_tpl_detail');
} catch (e) {}
});
}
});
},
"save" : function(form){
var wait_loader = null,
email_tpl_status = $("#email_tpl_status option:selected").val();
$.ajax({
"url" : app.get_vars().baseurl+"create_email_template",
"type" : "POST",
"dataType": "json",
"data" : email_template._prepare._data_to_server("add"),
"beforeSend" : function(){
if(email_tpl_status == 2) {
wait_loader = bootbox.dialog({
message: '<p class="text-center"><i class="fa fa-spin fa-spinner"/> '+app.get_vars().email.pub_email_tpl.publishing_email_template+'</p>',
closeButton: false
});
}
},
"success" : function(result){
//hide loder modal
if(email_tpl_status == 2){
wait_loader.modal("hide");
}
if(app.isalive(result)) {
app._notify(result.mtype, result.message);
if (result.mtype == "success") {
//reload grid
//bootbox.hideAll();
// (event_reminder.get_vars()._event_reminder).ajax.reload( null, false );
// location.reload();
window.setTimeout(function(){window.location.href = app.get_vars().baseurl+"email_template";},500);
}
}
}
});
}
},
util : {
loader : function(el){
el.html('<p><i class="fa fa-spin fa-spinner"></i> Loading...</p>');
},
load_email_type : function(){
$.get(app.get_vars().baseurl+"load_email_type/tpl_list/", function(data) {
var datalen = data.length, options = "";
if(datalen > 0) {
$.map(data, function(val, i){
options += "<li data-email_type='"+val.email_type_id+"' onclick=\"email_template._default_tmplt.modal("+val.email_type_id+", \`"+val.email_type+"\`);\">" +
"<a class='' href='#'>"+val.email_type+" <span class='spinner-msg'></span></a></li>";
if(i == 0 || (i+1) != datalen){ options += '<li class="divider"></li>';}
});
$("#emailtemplatetype").html(options);
} else { $("#emailtemplatetype").html('<li><a class="" href="#"No email type added!</a></li>'); }
});
}
}
};//end of return
// Pass in jQuery.
})(jQuery, this);
$(function() {
//load datatable
email_template._grid.load();
$("input.email_tpl_creation_status").on("change", function(){
var val = $(this).val();
if(val == "DEFAULT"){
$("#email_tpl_status").find("option[value='1']").prop("disabled", true);
} else{
$("#email_tpl_status").find("option[value='1']").prop("disabled", false);
}
$("#email_tpl_status").find("option[value='2']").prop("selected", true);
});
});