Back | Home
الـ Path الحالي: /home/picotech/domains/instantly.picotech.app/public_html/public/uploads/./../css/../js/customer/.
الملفات الموجودة في هذا الـ Path:
.
..
campaign.js
campaign_statistic.js
compose.js
contact.js
dashboard.js
domain.js
email_account.js
email_template.js
form.js
group.js
inbox.js
label.js
lead_finder.js
list_builder.js
queue.js
sender.js
sent.js
settings.js
ticket.js
مشاهدة ملف: campaign.js
"use strict";
$('#campaign').DataTable({
processing: true,
serverSide: true,
responsive:true,
ajax:'/get/campaigns',
columns: [
{ "data": "title","name":"campaigns.title" },
{ "data": "start_date" },
{ "data": "end_date" },
{ "data": "start_time" },
{ "data": "end_time" },
{ "data": "status" },
{ "data": "action" },
]
});
$.validator.addMethod("phone_number", function (value, element) {
return new RegExp(/^[0-9\-\+]{9,15}$/).test(value);
}, 'Invalid phone number');
$('#forward_to_dial_code,#contact_dial_code').select2();
$(document).on('click', '.campaign_side_bar', function (e) {
const type = $(this).attr('data-type');
$('.campaign_side_bar').removeClass('active');
$(this).addClass('active');
$('.campaign_section').hide();
$('#' + type + '_section').show();
if (type == 'rate') {
$('button[type="submit"]').removeClass('disabled').removeClass('d-none');
} else {
$('button[type="submit"]').addClass('disabled').addClass('d-none');
}
});
$(".group, .active_btn").on('click', function (e) {
var curPos = document.getElementById("to_emails").selectionStart;
let to_emails = $("#to_emails").val();
let id = $(this).attr('data-id');
const pre_btn = $(this).hasClass('active_btn');
let that = $(this);
let preData = that.attr('data-value');
if (!isLoading && !preData) {
isLoading = true;
$('.group').addClass('disabled').attr('disabled','disabled');
$.ajax({
method: 'get',
url: '/group/get/numbers',
data: {id: id},
success: function (res) {
if (res.status == 'success') {
let insert_text = res.data;
let numbersInString='';
$.each(insert_text, function (key, data) {
if (key != insert_text.length - 1) {
data = data.trim() + ', ';
} else {
data = data.trim();
}
numbersInString+=data;
});
if (pre_btn) {
that.removeClass('active_btn').addClass('group');
$('#to_emails').val($("#to_emails").val().replaceAll(numbersInString, ''));
} else {
$("#to_emails").val(to_emails.slice(0, curPos) + numbersInString + ', ' + to_emails.slice(curPos));
that.addClass('active_btn').removeClass('group');
}
that.attr('data-value',numbersInString);
isLoading = false;
$('.group').removeClass('disabled').removeAttr('disabled');
}
}
})
} else {
isLoading = true;
$('.group').addClass('disabled').attr('disabled','disabled');
if (preData) {
let insert_text = preData.split(", ");
let numbersInString='';
$.each(insert_text, function (key, data) {
if (key != insert_text.length - 1) {
data = data.trim() + ', ';
} else {
data = data.trim();
}
numbersInString+=data;
});
if (pre_btn) {
that.removeClass('active_btn').addClass('group');
$('#to_emails').val($("#to_emails").val().replaceAll(numbersInString, ''));
} else {
$("#to_emails").val(to_emails.slice(0, curPos) + numbersInString + ', ' + to_emails.slice(curPos));
that.addClass('active_btn').removeClass('group');
}
}
isLoading = false;
$('.group').removeClass('disabled').removeAttr('disabled');
}
})
$(function () {
$('#range_5').ionRangeSlider({
min: 1,
max: 500,
type: 'single',
step: 1,
postfix: ' ',
prettify: false,
hasGrid: true
})
});
$(function () {
$('.date_range').daterangepicker({
autoUpdateInput: true,
singleDatePicker: true,
timePicker: false,
locale: {
format: 'YYYY/MM/DD'
}
});
});
var select2 = $('#campaignFromNumber').select2({
minimumInputLength: 1,
tags: true,
tokenSeparators: [",", " "],
})
$('#template').select2({
placeholder: "Select an template",
allowClear: true
}).on('select2:select', function (e) {
let data = e.params.data;
const name = $(data.element).attr('data-name');
const body = $(data.element).attr('data-body');
const id = $(data.element).attr('data-id');
$('#custom_tabs_one_tabContent').append(`
<div class="tab-pane fade " id="custom_tabs_one_home_tab_${id}" role="tabpanel" aria-labelledby="custom-tabs-one-home-tab">
<textarea name="template_body[]" class="form-control" id="email_template_body_${id}" cols="4" rows="10"></textarea>
</div>`);
$('#email_template_body_'+ id).summernote('destroy');
$('#email_template_body_'+ id).summernote('pasteHTML',body);
$('#custom_tabs_one_tab').append(`
<li class="nav-item">
<a class="nav-link select_template" id="nav_tab_${id}" data-toggle="pill" href="#custom_tabs_one_home_tab_${id}" role="tab" data-id="${id}" aria-controls="custom-tabs-one-home" aria-selected="true">${name}</a>
</li>`);
$('.select_template').last().trigger('click');
}).on('select2:unselect', function (e){
let data = e.params.data;
const id = $(data.element).attr('data-id');
$('#custom_tabs_one_home_tab_' + id).remove();
$('#nav_tab_' + id).remove();
});
$(document).on('click', '.select_template', function (e) {
e.preventDefault();
const id = $(this).attr('data-id');
console.log(id)
$('#template_active_nav').val(id);
});
$('#campaignFromNumber').select2({
tags: false,
placeholder: 'Select an from number'
});
function typeInTextarea(newText, el = document.activeElement) {
const [start, end] = [el.selectionStart, el.selectionEnd];
el.setRangeText(newText, start, end, 'select');
}
$('.email_template_variable').on('click', function (e) {
e.preventDefault()
let text_to_insert = $(this).attr('data-name');
const id = $('#template_active_nav').val();
if (id){
typeInTextarea(text_to_insert,document.getElementById('email_template_body_' + id));
}
let newValue = $('#email_template_body_'+ id).val();
$('#email_template_body_'+ id).summernote('destroy');
$('#email_template_body_'+ id).summernote('setRangeText', newValue);
$('#email_template_body_' + id).focus();
});
$(document).on('keyup or click', '#email_template_body', function (e) {
const character = $(this).val().length;
var messageValue = $(this).val();
var div = parseInt(parseInt(messageValue.length - 1) / 160) + 1;
if (div <= 1) {
$("#count").text("Characters left: " + (160 - messageValue.length));
} else $("#count").text("Characters left: " + (160 * div - messageValue.length) + "/" + div);
});