var table_id = $("table#resend_email_table"); var modal_resend_email = $("#resend_email"); var btn_close = $("#btn_resend_email_close"); var btn_send = $("#btn_resend_email_send"); const event_resend_email = { onreset : function(retain){ $("input#email_type_id").val(''); $('input#select-all-send').prop('checked',false); if(!retain){ $("input#event_schedule_id").val(''); } }, check_uncheck : function(e,index){ var checked = $('.ref-ids-'+index); if(!checked.prop("checked")){ //unchecked if(index.toString()=="01"){ $(".ref-ids").prop("checked", false); }else{ $(".ref-ids"+'-01').prop("checked", false); checked.prop("checked", false); } }else { //checked if(index.toString()=="01"){ $(".ref-ids").prop("checked", true); }else{ $('.invitee-01').prop("checked", false); checked.prop("checked", true); } } //check if all rows are checked var get_all_rows = $(".ref-ids-01").data("rows"); if($(".ref-ids:checked").length == parseInt(get_all_rows) && get_all_rows >0){ $(".ref-ids-01").prop("checked", true); } }, "confirm_resend" : function(recipients){ app.modal.confirm_box({ "message" : "Resend "+$("#sel_template_type option:selected").text()+" email to "+recipients+" subscriber"+((recipients>1)?"s":"")+"?", "_continue" : function() { Helper.help.ajax_loader( app.get_vars().baseurl+"insert_reference_id", "post" , $('form#form_resend_email').serialize() , " Chargement" ,function(result){ app._notify(result.mtype, result.message); if( result.mtype == 'success'){ $('table#resend_email_table').DataTable().ajax.reload(null, false); $(".ref-ids-01").prop("checked", false); } }); }, "id" : "delete_confirm_box", "className" : "delete_confirm_box" }); }, "remove_from_onqueue" : function(email_recipient_id) { app.modal.confirm_box({ "message" : "Remove email from queue?", "_continue" : function() { Helper.help.ajax_loader( app.get_vars().baseurl+"cancel_resend_email", "post" , {"email_recipient_id" : email_recipient_id} , " Chargement" ,function(result){ app._notify(result.mtype, result.message); if(result.mtype == "success"){ $('table#resend_email_table').DataTable().ajax.reload(null, false); $(".ref-ids-01").prop("checked", false); } }); }, "id" : "delete_confirm_box", "className" : "delete_confirm_box" }); }, create_select : function() { var opts; Helper.help.ajax( app.get_vars().baseurl+"get_email_template_type", 'post' , false , function(result){ Helper.help.loop( result , function(i,v){ opts += ''; }); $("select#sel_template_type").append(opts); }); $("div#resend_email_table_filter").append(""); }, select_email_type :function(event_schedule_id) { $("#sel_template_type").off('change').on('change', function() { if ($(this).val() > 0){ var val = $(this).val(); event_resend_email.onreset(true); $('input#select-all-send').prop('checked',false); $("input#email_type_id").val(val); $('table#resend_email_table').DataTable().ajax.url(app.get_vars().baseurl+'list_resend_email/'+val+'/'+event_schedule_id).load(); Helper.dtable.console_alert("table#resend_email_table", function(err){ console.log(err); }); } }); }, dTable : function(email_type_id, event_schedule_id){ $('table#resend_email_table').DataTable({ "lengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]], "searching": true, "paging": true, // "pagingType": "full_numbers", "bInfo" : false, "autoWidth": false, "responsive": true, "processing": false, "serverSide": true, "order": [0], "oLanguage": fr_onload_lang.oLanguage, "ajax": { "url": app.get_vars().baseurl+"list_resend_email/"+email_type_id+"/"+event_schedule_id, "type": "POST" }, "destroy" : true , "columns": [ { "data": "reference_id", orderable : false, render : function(data, type, full, meta){ switch(full.email_status){ case '1': //SENT var chekbox = "" break; case '0' || '2' || '3':// ONQUEUE var chekbox = ''; break; default: var chekbox = "" break; } return '
'+chekbox+'
'; }}, { "data": "last_name"}, { "data": "first_name"}, { "data": "email"}, { "data": "email_status" , render : function(data, type, full, meta){ var chekbox = ""; var Email_status =""; switch(data){ case '1': Email_status = (full.email_description).toUpperCase(); break; case '0': Email_status ="ONQUEUE"; break; case '2': Email_status ="Email invalide"; break; case '3': Email_status ="BLOCKED"; break; default: Email_status =""; break; } return '
'+Email_status+'
'; }} ], "fnDrawCallback": function() { $(".ref-ids-01").data("rows", $("input.ref-ids").length); } }); Helper.dtable.console_alert("table#resend_email_table", function(err){ console.log(err); }); }, get_default_template : function(callback) { Helper.help.ajax( app.get_vars().baseurl+"get_email_template_type", 'post' , false , function(result){ Helper.help.loop( result , function(i,v){ callback( i , v ); }); }); }, set_default_template : function(){ //get first index of email_template_id and append as default selected option event_resend_email.get_default_template(function(i, v){ if( i === 0){ //console.log( v.email_type_id ) $("input#email_type_id").val( v.email_type_id ); } }) }, redirect_noshow : function(event_id,event_schedule_id) { window.location.href = app.get_vars().baseurl+'attendance/'+event_id+'/'+event_schedule_id; }, modal : function(event_schedule_id) { //show modal resend email modal modal_resend_email.modal('show'); //default select email type $("input#email_type_id").val(3); //append event schedule id $("input#event_schedule_id").val(event_schedule_id); //create datatable with default values event_resend_email.dTable(3, event_schedule_id); //create select options template event_resend_email.create_select(); //reload datatable after selecting template type event_resend_email.select_email_type(event_schedule_id); $("#btn_resend_email_send").off("click").on('click' , function(e){ var count_checked = $(".ref-ids:checked").length; if(count_checked<=0){ app._notify("warning", "S'il vous plaît sélectionner le destinataire!"); } else { event_resend_email.confirm_resend(count_checked); } return false; }); //destroy datable caches modal_resend_email.on('hidden.bs.modal', function () { //destroy table $('table#resend_email_table').DataTable().clear(); table_id.dataTable().fnDestroy(); //get default template // event_resend_email.set_default_template(); $(this).data('bs.modal', null); $(this).off('hidden.bs.modal'); }); } } $(function() { //get default template event_resend_email.set_default_template(); });