$(function() {
$('.left-menu').slimScroll({
height: "100%",
position: "right",
size: "6px",
color: "#dcdcdc"
});
$('.fr-send-presentation__modal .inner').slimScroll({
height: "100%",
width: "100%",
position: "right",
size: "6px",
color: "#000",
disableFadeOut: true
});
$(document).tooltip({
show: {
duration: 200
},
position: {
my: "center bottom-10",
at: "center top",
collision: "flipfit",
using: function(position, feedback) {
$(this).css(position, feedback);
$("
")
.addClass("arrow")
.addClass(feedback.vertical)
.addClass(feedback.horizontal)
.appendTo(this);
}
}
});
});
testIfResendAllCanBeActive();
var add_knban = true;
var page_kanban = 1;
var phone2Index = 0;
$(function () {
var lastScrollTop = 0;
kanbanScrollHandler = async function () {
var st = $('#kanban___list').scrollTop();
if (st < lastScrollTop) {
} else {
checkTop();
if ($('.view-kanban.active').length > 0) {
var skroll_top = $('.kanban').scrollTop();
var hw = $('.kanban').height();
var top_kanban = $('.kanban__items-lists').offset().top;
var hk = $('.kanban__items-lists').height();
const divUl = $('.kanban__items-lists').find('.kanban__items-list');
if(divUl){
for(let i=0; i
= heigthLi && add_knban) {
console.log('clients li');
add_knban = false;
page_kanban++;
get_list();
lastScrollTop = st;
}
}
}
}
if (document.location.pathname === '/clients.php') {
if (skroll_top + hw >= hk && add_knban) {
console.log('clients');
add_knban = false;
page_kanban++;
get_list();
lastScrollTop = st;
}
}
//console.log((skroll_top + hw)+' '+(top_kanban + hk));
}
}
//lastScrollTop = st;
};
});
function parseQueryString(queryString) {
if (!queryString) {
return false;
}
let queries = queryString.substr(1).split("&"),
params = {},
temp;
for (let i = 0, l = queries.length; i < l; i++) {
temp = queries[i].split('=');
if (temp[1] !== '') {
params[temp[0]] = temp[1];
}
}
return params;
}
function checkTop() {
if (localStorage['collapse_push'] > 0) {
$(".confirm_mess").css('top', '200px').css('width', '50px').css('height', '80px').css('overflow', 'hidden').css('position', 'fixed');
} else {
var bH = window.innerHeight;
var readmoreBlock = $(".confirm_mess");
if (readmoreBlock.length) {
var point = readmoreBlock.offset().top;
var heigthReadmore = readmoreBlock.height();
var windowTop = $(window).scrollTop();
readmoreBlock.css("top", (bH - heigthReadmore + windowTop) + "px").css('width', 'unset').css('height', 'unset').css('overflow', 'none').css('position', 'absolute');
}
}
}
function get_mes_clients() {
//console.log($('#session_user_id').val());
$.get("/ajax/getEventsClient.php?user_id=" + $('#session_user_id').val(), function(data) {
//console.log('Полученные события:', data);
data = JSON.parse(data);
var mainTotal = 0;
if(data.total !== undefined){
mainTotal = data.total;
} else {
mainTotal = data;
}
//console.log(mainTotal);
if (mainTotal != 0) {
const total = data.total;
let othersData = data.others || [];
const extension_reservations = data.extension_reservations || [];
const confirm_and_unconfirm_extension_reservations = data.confirm_and_unconfirm_extension_reservations || [];
// Получаем все существующие уведомления на странице
const existingNotifications = $('.confirm_mess .client-confirm[id^="client-confirm_message_other_"]');
// Собираем ID из DOM
const existingIds = Array.from(existingNotifications).map(el => el.id.replace('client-confirm_message_other_', ''));
// Собираем ID из новых данных
const newIds = othersData.map(item => item.id.toString());
// Находим ID, которых больше нет в новых данных
const removedIds = existingIds.filter(id => !newIds.includes(id));
// Удаляем устаревшие уведомления
removedIds.forEach(id => {
$('#client-confirm_message_other_' + id).remove();
});
if (localStorage['collapse_push'] > 0) {
$('.confirm_mess').html('' + total + '
');
} else {
$('.confirm_mess').html(""); // очистка, чтобы не дублировать
for (var i = 0; i < othersData.length; i++) {
if ($('.confirm_mess #client-confirm_message_other_' + othersData[i].id).length == 0) {
var text = othersData[i].post + ' ' + othersData[i].fio + ' передал вам клиента' + othersData[i].objects;
if (othersData[i].req_id > 0) {
text = othersData[i].post + ' ' + othersData[i].fio + ' передал вам заявку' + othersData[i].objects;
}
if (othersData[i].tr == 1) {
text = othersData[i].post + ' ' + othersData[i].fio + ' приглашает вас к совместной работе' + othersData[i].objects;
}
var part_text = 'Взять клиента ' + othersData[i].fio_client + ' в работу?';
if (othersData[i].req_id > 0) {
part_text = 'Взять заявку ' + othersData[i].fio_client + ' в работу?';
}
var html = '' +
'
' +
'
' + text + '. ' +
'
' + part_text + ' ' +
'
' +
'
' +
'
' +
'
' +
'
' +
'
';
$('.confirm_mess').prepend(html);
}
}
if (extension_reservations.length)
{
extension_reservations.forEach((val, _) => {
if (!$('.confirm_mess #client-confirm_message_extension_reservation_' + val.id).length)
{
var html = ``;
$('.confirm_mess').prepend(html);
}
})
}
if (confirm_and_unconfirm_extension_reservations.length)
{
confirm_and_unconfirm_extension_reservations.forEach((val, _) => {
if (!$('.confirm_mess #client-confirm_and_unconfirm_extension_reservations_' + val.id).length)
{
var html = ``;
$('.confirm_mess').prepend(html);
}
})
}
if (total > 0 && $("#confirm_button_group").length == 0) {
var html = '';
html += '';
$('.confirm_mess').append(html);
}
}
} else {
let objects = $('.confirm_mess .object-confirm').length;
//console.log(objects);
if (objects == 0) {
$('.confirm_mess').html('');
}
}
checkTop();
});
}
function get_mes_objects() {
$.get("/ajax/getSendedObjects.php?user_id=" + $('#session_user_id').val(), function(data) {
// console.log(data);
$('.confirm_mess').css({
'max-width': '400px',
'width': '100%',
});
if (data != 0) {
var res = JSON.parse(data);
var total = res.length;
if (localStorage['collapse_push'] > 0) {
$('.confirm_mess').html('' + total + '
');
} else {
var res = JSON.parse(data);
for (var i = 0; i < res.length; i++) {
if ($('.confirm_mess #object-confirm_message' + res[i].id).length == 0) {
var html = '' +
'
' +
'
' + res[i].first_line + ' ' +
'
' + res[i].sec_line + ' ' +
'
' +
'
' +
'
' +
'
' +
'
' +
'
';
$('.confirm_mess').prepend(html);
}
}
if (total > 0 && $("#confirm_button_group").length == 0) {
var html = '';
html += '';
$('.confirm_mess').append(html);
}
}
} else {
let clients = $('.confirm_mess .client-confirm').length;
if (clients == 0) {
$('.confirm_mess').html('');
}
}
checkTop();
});
}
function get_objects_list(page, sort, param = {}) {
$('#objects').hide();
$('.object-content__preloader').show();
var page_script = window.location.pathname;
var is_custom = 0;
if(page_script == '/my-objects2.php'){
is_custom = 1
}
param.is_custom = is_custom;
if (page)
param.page = page;
if ($('.jw__page__tabs .tab.selected').length > 0) {
param.selected = $('.jw__page__tabs .tab.selected').attr('data-id');
} else {
param.selected = 'active';
}
var states = [];
if ($('#filter-ads-status-objects').val() !== null && $('#filter-ads-status-objects').val() != '') {
states = $('#filter-ads-status-objects').val();
}
$('.filter-popup-type').each(function() {
if ($(this).hasClass('active')) {
param[$(this).attr('data-id')] = 1;
}
});
if (param.rent && $('#objects').length) {
param.sale = 0;
window.history.pushState(null, null, "my-objects.php");
}
if (param.id_agent) {
param.sale = 0;
param.rent = 0;
}
if ($('.view-changer .view-adv-table.active').length > 0)
param.view = 'table';
else
param.view = 'list';
if(param.view == 'table'){
if(param.selected == 'active'){
$('.showAdvertMyObject').show();
} else {
$('.showAdvertMyObject').hide();
}
} else {
$('.showAdvertMyObject').hide();
}
if ($('#filter-object-employee').val() !== null && $('#filter-object-employee').val() != '')
param.filter_employee = JSON.stringify($('#filter-object-employee').val());
if ($('#filter-object-type').val() !== null && $('#filter-object-type').val() != '')
param.filter_type = JSON.stringify($('#filter-object-type').val());
if ($('#filter-object-activities').val() !== null && $('#filter-object-activities').val() != '')
param.filter_activities = JSON.stringify($('#filter-object-activities').val());
param.dealTypes = '';
if (param.sale && param.sale == 1) {
if ($('#filter-object-deal-type').val() !== null && $('#filter-object-deal-type').val() != '') {
param.dealTypes = JSON.stringify($('#filter-object-deal-type').val());
}
}
if ($('#objects_filter_cena_ot').val() != '')
param.object_cena_ot = $('#objects_filter_cena_ot').val();
if ($('#objects_filter_cena_do').val() != '')
param.object_cena_do = $('#objects_filter_cena_do').val();
if ($('#objects_filter_commission').val() != '')
param.object_commission = $('#objects_filter_commission').val();
if ($('#objects_filter_commission_to').val() != '')
param.object_commission_to = $('#objects_filter_commission_to').val();
if ($(".filter-obj-komnat").css('display') == 'block' && $('#objects_filter_komnat_from').val() != '')
param.object_komnat_from = $('#objects_filter_komnat_from').val();
if ($(".filter-obj-komnat").css('display') == 'block' && $('#objects_filter_komnat_to').val() != '')
param.object_komnat_to = $('#objects_filter_komnat_to').val();
if ($('#search_filter_input').val() != '')
param.search = $('#search_filter_input').val();
if (typeof param.id_agent !== "undefined")
param.id_agent = $('#session_user_id').val();
if (param.selected == 'potential' || param.selected == 'favor') {
$('.search-toolbar .selectedToOtherUser').hide();
$('.search-toolbar .showAddObjectsToArchiveWin').hide();
} else {
$('.search-toolbar .selectedToOtherUser').show();
if (param.selected == 'archive') {
$('.search-toolbar .showDeleteMyObjectsWindow').show();
$('.search-toolbar .selectedFromArchive').show();
$('.search-toolbar .showAddObjectsToArchiveWin').hide();
} else {
$('.search-toolbar .showDeleteMyObjectsWindow').hide();
$('.search-toolbar .selectedFromArchive').hide();
$('.search-toolbar .showAddObjectsToArchiveWin').show();
}
}
param.not_advert = states.includes('1') ? 1 : 0;
param.ads_errors = states.includes('3') ? 1 : 0;
param.ads_sended = states.includes('2') ? 1 : 0;
param.ads_good_adv = states.includes('4') ? 1 : 0;
param.removed_publication = states.includes('5') ? 1 : 0;
param.object_fields = $('#filter-object-fields').attr('data-active');
param.is_reports = $('#filter_is_reports').attr('data-active');
param.is_free = $('#filter_is_free').attr('data-active');
param.filter_is_package = $('#filter_is_package').attr('data-active');
param.addToAvitoFilter = 0;
param.addToCianFilter = 0;
param.addToDomClickFilter = 0;
param.addToEMLSFilter = 0;
param.addToYandexFilter = 0;
if ($('#filter_is_promotion').attr('data-active') > 0) {
let form = $('#searchPromotionForm');
param.avito_highlight = (form.find('[name="avito_highlight"]').prop('checked')) ? 1 : 0;
param.avito_xl = (form.find('[name="avito_xl"]').prop('checked')) ? 1 : 0;
param.avito_x2_1 = (form.find('[name="avito_x2_1"]').prop('checked')) ? 1 : 0;
param.avito_x2_7 = (form.find('[name="avito_x2_7"]').prop('checked')) ? 1 : 0;
param.avito_x5_1 = (form.find('[name="avito_x5_1"]').prop('checked')) ? 1 : 0;
param.avito_x5_7 = (form.find('[name="avito_x5_7"]').prop('checked')) ? 1 : 0;
param.avito_x10_1 = (form.find('[name="avito_x10_1"]').prop('checked')) ? 1 : 0;
param.avito_x10_7 = (form.find('[name="avito_x10_7"]').prop('checked')) ? 1 : 0;
param.cian_highlight = (form.find('[name="cian_highlight"]').prop('checked')) ? 1 : 0;
param.cian_standard = (form.find('[name="cian_standard"]').prop('checked')) ? 1 : 0;
param.cian_paid = (form.find('[name="cian_paid"]').prop('checked')) ? 1 : 0;
param.cian_premium = (form.find('[name="cian_premium"]').prop('checked')) ? 1 : 0;
param.cian_top3 = (form.find('[name="cian_top3"]').prop('checked')) ? 1 : 0;
param.cian_bet = form.find('[name="cian_bet"]').val();
param.cian_ignore_pkg = (form.find('[name="cian_ignore_pkg"]').prop('checked')) ? 1 : 0;
param.yandex_premium = (form.find('[name="yandex_premium"]').prop('checked')) ? 1 : 0;
param.yandex_raise = (form.find('[name="yandex_raise"]').prop('checked')) ? 1 : 0;
param.yandex_promotion = (form.find('[name="yandex_promotion"]').prop('checked')) ? 1 : 0;
param.domclick_express = (form.find('[name="domclick_express"]').prop('checked')) ? 1 : 0;
param.domclick_premium = (form.find('[name="domclick_premium"]').prop('checked')) ? 1 : 0;
param.domclick_top = (form.find('[name="domclick_top"]').prop('checked')) ? 1 : 0;
}
if ($('#addToAvitoFilter').hasClass('active')) {
param.addToAvitoFilter = 1;
}
if ($('#addToCianFilter').hasClass('active')) {
param.addToCianFilter = 1;
}
if ($('#addToDomClickFilter').hasClass('active')) {
param.addToDomClickFilter = 1;
}
if ($('#addToEMLSFilter').hasClass('active')) {
param.addToEMLSFilter = 1;
}
if ($('#addToYandexFilter').hasClass('active')) {
param.addToYandexFilter = 1;
}
param.filter_ads_state_objects = JSON.stringify(states)
if (typeof client_fields_filtr != "undefined") {
param.is_contract = client_fields_filtr.filtr.is_contract;
param.type_contract = client_fields_filtr.filtr.type_contract;
param.numder_contract = client_fields_filtr.filtr.numder_contract;
param.onDateContract = $('#contractClientOnDate').val();
param.offDateContract = $('#contractClientOffDate').val();
}
let query = parseQueryString(window.location.search);
if (typeof query === "object") {
var param_temp = query;
for (var i in param_temp) {
param[i] = param_temp[i];
}
}
if (localStorage['edit_object_prev_url'] && localStorage['edit_object_prev_url'] != 0) {
param = localStorage['param_get_object'];
} else {
localStorage['param_get_object'] = param;
}
if (sort) {
param.sort_order = sort;
} else {
if (sort === 0) {
param.sort_order = sort;
}
}
console.log(param);
$.post('/ajax/getObjectsView.php', param, function(data) {
$('#objects').html(data);
$('#objects .fotorama').fotorama();
$('#objects .fotorama').on('fotorama:ready', function(e, fotorama, extra) {
$('.object-content__preloader').hide();
});
if (typeof param.selected !== "undefined") {
$('.jw__page__tabs .tab').removeClass('selected');
$('.jw__page__tabs .tab[data-id="' + param.selected + '"]').addClass('selected');
}
$('.view-changer .view-adv-list, .view-changer .view-adv-table').removeClass('active');
if (param.view == 'list') {
$('.view-changer .view-adv-list').addClass('active');
} else if (param.view == 'table') {
$('.view-changer .view-adv-table').addClass('active');
}
$('.object-content__preloader').hide();
$('#objects').show();
get_bar_obj();
getReSearchObjectsCounts();
getClientsForObjects();
getTaskCountersForObjects();
});
}
function getClientsForObjects() {
const objectIds = [];
const elementsMap = {};
$('.object_clients').each(function() {
const objectId = $(this).data("oid");
if (objectId) {
objectIds.push(objectId);
elementsMap[objectId] = $(this);
}
});
if (objectIds.length === 0) return;
$.ajax({
url: "/ajax/getObjectClients.php",
method: "GET",
data: {
object_ids: objectIds.join(',')
},
dataType: 'json',
success: function(response) {
console.log(response);
if (response.success) {
// Обрабатываем данные для каждого объекта
response.data.forEach(objectData => {
const element = elementsMap[objectData.object_id];
if (element) {
element.html(renderClients(objectData));
}
});
}
getNoClientsForObjects(response.hidden_objects || []);
},
error: function(xhr, status, error) {
console.error("Error fetching clients data:", error);
getNoClientsForObjects([]);
}
});
}
function getNoClientsForObjects(hiddenObjects = []){
const hiddenObjectsSet = new Set(hiddenObjects.map(id => parseInt(id)));
const isSalePage = window.location.pathname.indexOf('/sale.php') !== -1;
$('.object_clients').each(function() {
const objectId = $(this).data("oid");
const allowEdit = $(this).attr("data-allow-edit");
if (objectId) {
const shouldHideButton = hiddenObjectsSet.has(objectId);
if($(this).find('.obj_client').length == 0 && allowEdit > 0 && !shouldHideButton && !isSalePage) {
let html = '';
html += ``;
$(this).html(html);
} else if (shouldHideButton && $(this).find('.obj_client').length == 0) {
$(this).html('');
}
}
});
}
/**
* Возвращает tooltip-строку с контактами клиента в формате "телефон, email".
* Пустые/null значения пропускаются, запятая ставится только между РЕАЛЬНО заполненными полями.
* client = {phone: "+79...", email: "i@x.ru"} → "+79..., i@x.ru"
* client = {phone: "+79...", email: null} → "+79..."
* client = {phone: "+79...", email: "null"} → "+79..." (строка "null" из JSON тоже отсекается)
* client = {phone: null, email: "i@x.ru"} → "i@x.ru"
* client = {phone: null, email: null} → ""
*/
function buildClientContactsTooltip(client) {
const parts = [];
if (client.phone) parts.push(client.phone);
if (client.email && client.email !== 'null') parts.push(client.email);
return parts.join(', ');
}
function renderClients(data) {
let html = '';
const firstClient = data.clients[0];
html += ``;
if (firstClient.can_edit) {
html += `
${firstClient.fio}
`;
} else {
html += `
${firstClient.fio}
`;
}
if (data.clients_count > 1) {
html += `
`;
}
html += `
`;
return html;
}
function getTaskCountersForObjects(container = '.jw__objects', item = '.jw__object') {
const ids = []
$(`${container} ${item}`).each(function() {
ids.push($(this).attr("id").replace("item", ""))
})
$.ajax({
url: `/ajax/getLogSummaryForEvents.php?object_ids=${JSON.stringify(ids)}`,
success: function(result) {
if (!result) return;
JSON.parse(result).map((el) => {
if (el.schedule_group === "1") {
el.color = 'dd6360';
} else if (el.schedule_group === "2") {
el.color = 'efcd81';
} else {
el.color = '4CAF50';
}
$(`${item}#item${el.object_id}`).find('.jw__action-button .tasks').append(
$(`${el.total} `)
)
})
},
})
}
function get_funnels(funnel_id, section, use_custom) {
let filter = $('#crm_filter_left');
// Получаем состояния фильтров
const filter_stage_work = filter.find('#filter_stage_work').hasClass('active') ? 1 : 0;
const filter_stage_close = filter.find('#filter_stage_close').hasClass('active') ? 1 : 0;
const filter_stage_hit = filter.find('#filter_stage_hit').hasClass('active') ? 1 : 0;
const filter_stage_send = filter.find('#filter_stage_send').hasClass('active') ? 1 : 0;
const filter_stage_hot = filter.find('#filter_stage_hot').hasClass('active') ? 1 : 0;
const filter_confirm = filter.find('#filter_confirm').hasClass('active') ? 1 : 0;
// Проверяем, все ли фильтры равны 0
const allFiltersOff = (
filter_stage_work === 0 &&
filter_stage_close === 0 &&
filter_stage_hit === 0 &&
filter_stage_send === 0 &&
filter_stage_hot === 0 &&
filter_confirm === 0
);
return $.post('/ajax/getFunnels.php', {
funnel_id: funnel_id,
section: section,
use_custom: use_custom,
filter_stage_work: filter_stage_work,
filter_stage_close: filter_stage_close,
filter_stage_hit: filter_stage_hit,
filter_stage_send: filter_stage_send,
filter_stage_hot: filter_stage_hot,
filter_confirm: filter_confirm,
filter_emp: allFiltersOff ? 1 : 0, // добавляем filter_emp
}, function(data) {
$('#app_clients .funnels_client .funnels_list').replaceWith($(data));
}).promise();
}
function goToClientsPage(event, input) {
if (event.keyCode === 13) {
var pageNum = $(input).val();
if (pageNum) {
get_list(pageNum);
}
}
}
function applyChangesForFilter() {
get_list();
$('.crm__filter-popup').removeClass("is__show");
}
function get_params(){
var app_clients_li = $('#funnelIdClients').val();
var param = {};
param.get_list_count = 1;
param.all = 'all';
if ($('#order').prop("checked")) {
param.order = 1;
}
if ($('#todayTasks').prop("checked")) {
param.todayTasks = 1;
}
if ($('#overTasks').prop("checked")) {
param.overTasks = 1;
}
if ($('#isPartner').prop("checked")) {
param.isPartner = 1;
}
if ($('#noTasks').prop("checked")) {
param.noTasks = 1;
}
if ($('.filter-priority1').hasClass('active')) {
param.priority1 = 1;
}
if ($('.filter-priority2').hasClass('active')) {
param.priority2 = 1;
}
if ($('.filter-priority3').hasClass('active')) {
param.priority3 = 1;
}
if ($('.filter-priority4').hasClass('active')) {
param.priority4 = 1;
}
if (app_clients_li != '') {
param.funnel = app_clients_li;
}
if ($('#of_objects').val()) {
param.of_objects = $('#of_objects').val();
}
param.date_tasks = $('#date_tasks [name=date_tasks]:checked').val();
if (typeof client_fields_filtr != "undefined") {
param.fields = client_fields_filtr.filtr.fields;
param.is_contract = client_fields_filtr.filtr.is_contract;
param.type_contract = client_fields_filtr.filtr.type_contract;
param.numder_contract = client_fields_filtr.filtr.numder_contract;
param.onDateContract = $('#contractClientOnDate').val();
param.offDateContract = $('#contractClientOffDate').val();
}
var queryParams = parseQueryString(window.location.search);
if (queryParams) {
if (queryParams.emp !== undefined) {
param.emp = queryParams.emp;
}
if (queryParams.filter_stage !== undefined) {
param.filter_stage = queryParams.filter_stage;
}
if (queryParams.denial !== undefined) {
param.denial = queryParams.denial;
}
if (queryParams.objects !== undefined) {
param.objects = queryParams.objects;
}
if (queryParams.step !== undefined) {
param.step = queryParams.step;
}
if (queryParams.source !== undefined) {
param.source = queryParams.source;
}
if (queryParams.transmitted !== undefined) {
param.transmitted = queryParams.transmitted;
}
if (queryParams.accepted !== undefined) {
param.accepted = queryParams.accepted;
}
if (queryParams.expired_stages !== undefined) {
param.expired_stages = queryParams.expired_stages;
}
}
//console.log(queryParams);
if ($('#search_filter_input').val() != '') param.search = $('#search_filter_input').val();
var period = $('.ms-crm-client-period').val();
if (period && period != '') {
param.period = period;
}
if (period == 'period') {
param.onDate = $('#onDate').val();
param.offDate = $('#offDate').val();
}
$('.filter-popup-type').each(function() {
if ($(this).hasClass('active')) {
param[$(this).attr('id')] = 1;
}
});
if ($('#filter_emp').val() !== null && $('#filter_emp').val() != '') {
param.filter_emp = JSON.stringify($('#filter_emp').val());
}
if ($('#filter-client-type').val() !== null && $('#filter-client-type').val() != '') {
param.filter_client_type = JSON.stringify($('#filter-client-type').val());
}
if ($('#filter-client-objects-type').val() !== null && $('#filter-client-objects-type').val() != '') {
param.filter_client_objects_type = JSON.stringify($('#filter-client-objects-type').val());
}
if ($('#filter_source').val() !== null && $('#filter_source').val() != '') {
param.filter_source = JSON.stringify($('#filter_source').val());
}
if ($('#filter_partner').val() !== null && $('#filter_partner').val() != '') {
param.filter_partner = JSON.stringify($('#filter_partner').val());
}
if ($('#filter_activities').val() !== null && $('#filter_activities').val() != '') {
param.filter_activities = JSON.stringify($('#filter_activities').val());
}
if ($('#filter_client_rol').val() !== null && $('#ffilter_client_rol').val() != '') {
param.filter_client_rol = JSON.stringify($('#filter_client_rol').val());
}
if ($('#filter_etap').val() !== null && $('#filter_etap').val() != '') {
param.filter_etap = JSON.stringify($('#filter_etap').val());
}
if ($('#filter_denial_work').val() !== null && $('#filter_denial_work').val() != '') {
param.filter_denial_work = JSON.stringify($('#filter_denial_work').val());
}
var page = 1;
if (page) {
param.page = page;
}
// sort_order = 0;
param.sort_order = 0;
//}
//$('#sortOrder select[name="sort_order"]').prop('selectedIndex', sort_order);
if ($('.view-kanban.active').length > 0) {
ac.kanban = true;
param.kanban = 1;
param.kanban_page = page_kanban;
$('#groupClients').hide();
}
if ($('.view-list.active').length > 0) {
param.list_view = 1;
$('#groupClients').show();
}
if ($('.view-table.active').length > 0) {
param.table_view = 1;
$('#groupClients').hide();
}
return param;
}
function get_count_clients(){
let param = get_params();
$.post('/ajax/getClientsView.php', param, function(data) {
if(data){
let count = $('.kanban__rails[data-count]').data('count') || $('.clients[data-count]').data('count') || $('.crm__table[data-count]').data('count');
let res_count = JSON.parse(data);
Object.entries(res_count).forEach(([key, value]) => {
let index = key;
//$('.kanban__head').eq(index).find('.task-count').text(value);
let countTd = parseInt(value);
let rawPercent = (countTd / count) * 100 || 0;
const percent = Number.isInteger(rawPercent) ? rawPercent.toString() : rawPercent.toFixed(2) || 0;
const color = $('.stage-step-'+index).find('.task-count-percent').css('color') || '#43A047';
let htmlTd = `
${percent}%
${countTd}
`;
$('.stage-step-'+index).find('.task-count-holder').html(htmlTd);
});
}
});
}
function get_list(page, sort_order, preloader) {
if (typeof preloader == "undefined")
preloader = true;
let funnel_id = $('#funnelIdClients').val();
let use_custom_funnel = $('#useCustomFunnel').val();
get_funnels(funnel_id, 'clients', use_custom_funnel);
$('#changeClientAllDiv').removeClass('active');
$('.changeClientInput').prop('checked', false);
if (preloader && !$('.view-changer .view-kanban.active').length) {
$('.object-content__preloader').show();
$('#clients_list').hide();
}
var app_clients_li = $('#funnelIdClients').val();
var param = {};
param.get_list = 'all';
param.all = 'all';
if ($('#order').prop("checked")) {
param.order = 1;
}
if ($('#todayTasks').prop("checked")) {
param.todayTasks = 1;
}
if ($('#overTasks').prop("checked")) {
param.overTasks = 1;
}
if ($('#isPartner').prop("checked")) {
param.isPartner = 1;
}
if ($('#noTasks').prop("checked")) {
param.noTasks = 1;
}
if ($('.filter-priority1').hasClass('active')) {
param.priority1 = 1;
}
if ($('.filter-priority2').hasClass('active')) {
param.priority2 = 1;
}
if ($('.filter-priority3').hasClass('active')) {
param.priority3 = 1;
}
if ($('.filter-priority4').hasClass('active')) {
param.priority4 = 1;
}
if (app_clients_li != '') {
param.funnel = app_clients_li;
}
if ($('#of_objects').val()) {
param.of_objects = $('#of_objects').val();
}
param.date_tasks = $('#date_tasks [name=date_tasks]:checked').val();
if (typeof client_fields_filtr != "undefined") {
param.fields = client_fields_filtr.filtr.fields;
param.is_contract = client_fields_filtr.filtr.is_contract;
param.type_contract = client_fields_filtr.filtr.type_contract;
param.numder_contract = client_fields_filtr.filtr.numder_contract;
param.onDateContract = $('#contractClientOnDate').val();
param.offDateContract = $('#contractClientOffDate').val();
}
var queryParams = parseQueryString(window.location.search);
if (queryParams) {
if (queryParams.emp !== undefined) {
param.emp = queryParams.emp;
}
if (queryParams.filter_stage !== undefined) {
param.filter_stage = queryParams.filter_stage;
}
if (queryParams.denial !== undefined) {
param.denial = queryParams.denial;
}
if (queryParams.objects !== undefined) {
param.objects = queryParams.objects;
}
if (queryParams.step !== undefined) {
param.step = queryParams.step;
}
if (queryParams.source !== undefined) {
param.source = queryParams.source;
}
if (queryParams.transmitted !== undefined) {
param.transmitted = queryParams.transmitted;
}
if (queryParams.accepted !== undefined) {
param.accepted = queryParams.accepted;
}
if (queryParams.expired_stages !== undefined) {
param.expired_stages = queryParams.expired_stages;
}
}
//console.log(queryParams);
if ($('#search_filter_input').val() != '') param.search = $('#search_filter_input').val();
var period = $('.ms-crm-client-period').val();
if (period && period != '') {
param.period = period;
}
if (period == 'period') {
param.onDate = $('#onDate').val();
param.offDate = $('#offDate').val();
}
$('.filter-popup-type').each(function() {
if ($(this).hasClass('active')) {
param[$(this).attr('id')] = 1;
}
});
if ($('#filter_emp').val() !== null && $('#filter_emp').val() != '') {
param.filter_emp = JSON.stringify($('#filter_emp').val());
}
if ($('#filter-client-type').val() !== null && $('#filter-client-type').val() != '') {
param.filter_client_type = JSON.stringify($('#filter-client-type').val());
}
if ($('#filter-client-objects-type').val() !== null && $('#filter-client-objects-type').val() != '') {
param.filter_client_objects_type = JSON.stringify($('#filter-client-objects-type').val());
}
if ($('#filter_source').val() !== null && $('#filter_source').val() != '') {
param.filter_source = JSON.stringify($('#filter_source').val());
}
if ($('#filter_partner').val() !== null && $('#filter_partner').val() != '') {
param.filter_partner = JSON.stringify($('#filter_partner').val());
}
if ($('#filter_activities').val() !== null && $('#filter_activities').val() != '') {
param.filter_activities = JSON.stringify($('#filter_activities').val());
}
if ($('#filter_client_rol').val() !== null && $('#ffilter_client_rol').val() != '') {
param.filter_client_rol = JSON.stringify($('#filter_client_rol').val());
}
if ($('#filter_etap').val() !== null && $('#filter_etap').val() != '') {
param.filter_etap = JSON.stringify($('#filter_etap').val());
}
if ($('#filter_denial_work').val() !== null && $('#filter_denial_work').val() != '') {
param.filter_denial_work = JSON.stringify($('#filter_denial_work').val());
}
//var page = -1;
if (page) {
param.page = page;
page_kanban = page;
}
if (sort_order) {
param.sort_order = sort_order;
} else {
sort_order = 0;
param.sort_order = sort_order;
}
//$('#sortOrder select[name="sort_order"]').prop('selectedIndex', sort_order);
if ($('.view-kanban.active').length > 0) {
ac.kanban = true;
param.kanban = 1;
param.kanban_page = page_kanban;
$('#groupClients').hide();
}
if ($('.view-list.active').length > 0) {
param.list_view = 1;
$('#groupClients').show();
}
if ($('.view-table.active').length > 0) {
param.table_view = 1;
$('#groupClients').hide();
}
$.post('/ajax/getClientsView.php', param, function(data) {
//console.log(data);
/* if (preloader)
$('.object-content__preloader').hide();*/
if ($('.view-kanban.active').length > 0 && page_kanban == 1) {
if($('#clients_list').length > 0){
$('#clients_list').html(data);
$(".kanban__sortable").sortable({
connectWith: ".connectedSortable",
helper: "clone",
placeholder: "is__highlight",
update: function(event, ui) {
var id = $('.funnels_client li.active').data("id");
var stage = $(ui.item).closest('.kanban__sortable').data("stage");
var idclient = $(ui.item).attr("id").replace("kanban_item_li_", "");
if (id === undefined || id === 0) {
//console.log($(event));
var turn = 0;
var turns = {};
$(ui.item).closest('.kanban__sortable').find('li').each(function(index) {
// console.log($(this).attr("id"));
if ($(this).attr("id") == "kanban_item_li_" + idclient) {
turn = (index + 1);
}
turns[$(this).attr("id").replace("kanban_item_li_", "")] = (index + 1);
});
if (stage === 8) {
if (!$("#del_client_bg").is(":visible")) {
$("#del_client_bg").fadeIn(500);
$("#del_client").toggle(10);
$("#del_client").find('input[name="id_funnel_client"]').val('0');
$("#del_client").find('input[name="id_del_client"]').val(idclient);
set_select_denial_work(0);
$("body").addClass("lock");
}
} else {
$.post('/ajax/addEditClient.php', {
stage_edit: stage,
id: idclient,
turn: JSON.stringify(turns)
},
function() {
delete param.get_list;
param.get_list_count = 1;
$.post('/ajax/getClientsView.php', param, function(data) {
if(data){
let count = $('.kanban__rails[data-count]').data('count') || $('.clients[data-count]').data('count') || $('.crm__table[data-count]').data('count');
let res_count = JSON.parse(data);
Object.entries(res_count).forEach(([key, value]) => {
let index = key - 1;
//$('.kanban__head').eq(index).find('.task-count').text(value);
let countTd = parseInt(value);
let rawPercent = (countTd / count) * 100 || 0;
const percent = Number.isInteger(rawPercent) ? rawPercent.toString() : rawPercent.toFixed(2) || 0;
const color = $('.kanban__head').eq(index).find('.task-count-percent').css('color') || '#43A047';
let htmlTd = `
${percent}%
${countTd}
`;
$('.kanban__head').eq(index).find('.task-count-holder').html(htmlTd);
});
}
});
});
}
} else {
$.post('/ajax/funnel_step_check_close.php', { 'step': stage, 'client': idclient }, function(checkRes) {
//console.log(checkRes);
var resParsed = JSON.parse(checkRes);
if (resParsed.result === '0') {
//showAfterStageFail();
ac.clientId = idclient;
ac.openPrevStep();
//return;
//$(".kanban__sortable").sortable("cancel");
} else {
if (app_clients_li != '' && app_clients_li == 0) {
} else {
$.post('/ajax/funnel_step_close.php', {
'step': resParsed.etap,
'client': idclient
}, function(res) {
ac.closesStep = true;
ac.kanban = true;
ac.step = JSON.parse(res);
ac.clientId = idclient;
ac.stepId = resParsed.etap;
ac.openStep();
});
}
}
});
}
}
});
$('#kanban___list').on('scroll', kanbanScrollHandler);
$(".kanban__sortable").disableSelection();
$(".kanban").overscroll({
direction: 'horizontal',
cancelOn: '.kanban__item',
// dragHold: true,
captureWheel: true,
showThumbs: false
});
}
} else {
if ($('.view-kanban.active').length > 0 && page_kanban > 1) {
var res = JSON.parse(data);
//console.log(res.source);
if (res.source == 'done') {
for (var classUl in res) {
for (var li in res[classUl]) {
$('.' + classUl + ' ul').append(res[classUl][li]);
}
}
add_knban = true;
$('head').append(res.scriptToExec);
}
} else {
$('#clients_list').html(data);
$('#clients_list .clients').show();
check_client_all_filter();
}
}
let count = $('.kanban__rails[data-count]').data('count') || $('.clients[data-count]').data('count') || $('.crm__table[data-count]').data('count');
document.querySelectorAll('td.task-count').forEach(td => {
const countTd = parseFloat(td.textContent) || 0;
const newTd = document.createElement('td');
newTd.className = 'task-count-holder';
let rawPercent = (countTd / count) * 100 || 0;
const percent = Number.isInteger(rawPercent) ? rawPercent.toString() : rawPercent.toFixed(2) || 0;
const color = window.getComputedStyle(td).backgroundColor || '#00aaff';
newTd.innerHTML = `
${percent}%
${countTd}
`;
td.replaceWith(newTd);
});
if (typeof count !== "undefined") {
$('#totalCount .text').text(count);
$('#totalCount').show();
} else {
$('#totalCount .text').text(0);
$('#totalCount').hide();
}
$('#clients_list').show();
});
}
function pagination(page) {
let sort_order = $('select[name=sort_order]').val();
get_list(page, sort_order);
}
var search_option = 0;
function show_options_search() {
var val = 0;
if ($('.ms-crm-client-period').val() != 'all') {
val++;
}
if ($('#order').prop("checked")) {
val++;
}
if ($('.filter-priority1').hasClass('active')) {
val++;
}
if ($('.filter-priority2').hasClass('active')) {
val++;
}
if ($('.filter-priority3').hasClass('active')) {
val++;
}
if ($('.filter-priority4').hasClass('active')) {
val++;
}
if ($('#noTasks').prop("checked")) {
val++;
}
$('.filter-popup-type').each(function() {
if ($(this).hasClass('active')) val++;
});
if ($('#filter_emp').val() && $('#filter_emp').val() != '') val++;
if ($('#filter-client-type').val() && $('#filter-client-type').val() != '') val++;
if ($('#filter-client-objects-type').val() && $('#filter-client-objects-type').val() != '') val++;
if ($('#filter_source').val() && $('#filter_source').val() != '') val++;
if ($('#filter_partner').val() && $('#filter_partner').val() != '') val++;
if ($('#filter_activities').val() && $('#filter_activities').val() != '') val++;
if ($('#filter_client_rol').val() && $('#filter_client_rol').val() != '') val++;
if ($('#filter_denial_work').val() && $('#filter_denial_work').val() != '') val++;
if ($('#filter_etap').val() && $('#filter_etap').val() != '') val++;
if ($('#of_objects').val() && $('#of_objects').val() != '') val++;
if (val > 0) {
$(".search-query-item.crm_clients").show();
var text = val + " опции";
if (val == 1) text = val + " опция";
if (val > 4) text = val + " опций";
$(".search-query-item.crm_clients span").text(text);
} else {
$(".search-query-item.crm_clients").hide();
}
}
function show_objects_options_search() {
let val = 0;
$('.filter-popup-type').each(function() {
if ($(this).hasClass('active')) val++;
});
if ($('#filter-object-employee').val() && $('#filter-object-employee').val() != '') val++;
if ($('#filter-object-type').val() && $('#filter-object-type').val() != '') val++;
if ($('#filter-object-activities').val() && $('#filter-object-activities').val() != '') val++;
if ($('#filter-object-deal-type').val() && $('#filter-object-deal-type').val() != '') val++;
if ($('#objects_filter_commission').val() && $('#objects_filter_commission').val() != '') val++;
if ($('#objects_filter_cena_ot').val() && $('#objects_filter_cena_ot').val() != '') val++;
if ($('#objects_filter_cena_do').val() && $('#objects_filter_cena_do').val() != '') val++;
if ($('#objects_filter_commission_to').val() && $('#objects_filter_commission_to').val() != '') val++;
if ($('#objects_filter_komnat_from').val() && $('#objects_filter_komnat_from').val() != '') val++;
if ($('#objects_filter_komnat_to').val() && $('#objects_filter_komnat_to').val() != '') val++;
if ($('#filter-not-advert[data-active="1"]').length) val++;
if ($('#filter-ads-errors[data-active="1"]').length) val++;
if ($('#filter-object-fields[data-active="1"]').length) val++;
if ($('#filter_is_reports[data-active="1"]').length) val++;
if ($('#filter_is_free[data-active="1"]').length) val++;
if ($('#filter_is_package[data-active="1"]').length) val++;
if ($('#filter_is_promotion[data-active="1"]').length) val++;
if ($('#addToAvitoFilter').hasClass('active')) {
val++;
}
if ($('#addToCianFilter').hasClass('active')) {
val++;
}
if ($('#addToDomClickFilter').hasClass('active')) {
val++;
}
if ($('#addToEMLSFilter').hasClass('active')) {
val++;
}
if ($('#addToYandexFilter').hasClass('active')) {
val++;
}
if (val >= 0) {
$(".search-query-item.crm_objects").show();
let text = val + " опции";
if (val == 1)
text = val + " опция";
if (val > 4)
text = val + " опций";
$(".search-query-item.crm_objects span").text(text);
}
}
function get_kanban_li(id, stage, priority) {
console.log(id);
console.log(stage);
if (typeof priority != 'undefined') {
document.getElementById('kanban_item_li_' + id).className = 'kanban__item p' + priority;
}
$.post("/ajax/getClientsView.php", { get_kanban_li: id }, function(data) {
//console.log(data);
$('#kanban_item_li_' + id).html(data);
var satage_parent = $('#kanban_item_li_' + id).closest('.connectedSortable').data("stage");
//console.log(satage_parent);
if (stage != satage_parent) {
var temp_html = $('#kanban_item_li_' + id).html();
var c = document.getElementById('kanban_item_li_' + id).classList.length > 1 ?
' ' + document.getElementById('kanban_item_li_' + id).classList[1] : '';
var p = priority ? ' p' + priority : c;
$('#kanban_item_li_' + id).remove();
$('.connectedSortable').each(function() {
if ($(this).data("stage") == stage) {
$(this).prepend('' + temp_html + ' ');
}
});
}
});
}
function salesPlanUser(id) {
//console.log(id);
$("#send_bg_plan").fadeIn(500);
$("#send_plan").show(10);
$("body").addClass("lock");
$('#send_bg_plan #user_sales_plan').val(id);
$('#send_bg_plan .monthPicker').datepicker().data('datepicker').selectDate(new Date());
getSalesPlan();
return false;
}
function getSalesPlan() {
var month = $("#month_sales_plan").val();
var year = $("#year_sales_plan").val();
var user_id = $('#send_bg_plan #user_sales_plan').val();
/*var html = ''+
'
'+
'
';
$('#users_plans').html(html); */
$.post('/ajax/sales_plan.php', { get_users_plan: 'get_users_plan', month: month, year: year, user_id: user_id }, function(data) {
console.log(data);
if (data) {
var res = JSON.parse(data);
$('#send_plan input[name=plan]').val(res.summa);
$('#send_plan input[name=quantity]').val(res.quantity);
$('#send_plan .tabs__caption span').text(res.fio);
}
})
}
function openMes(id) {
$("#merepriation_bg").show();
$("#merepriation-history").show();
$("body").addClass("lock");
$.post('/ajax/getCharts.php', { event_id: id }, function(data) {
$('#merepriation-info-block').html(data);
});
}
function updateMes(id) {
if ($('#client-history__bg').css('display') == 'block') {
$.post('/ajax/getCharts.php', { update_event_id: id }, function(data) {
//console.log(data);
$('#chat_content_' + id).html(data);
});
} else {
openMes(id);
}
}
function initTaskWin() {
$('.datepicker-here').datepicker();
$('.ms-big-add-client').fastselect({
placeholder: 'Клиент'
});
$('#addTask .ms-crm-client-work').fastselect({
onItemCreate: function(item, model) {
if ($('#addTask .ms-crm-client-work').find('option[value=' + model.value + ']').hasClass('bolt')) {
$(item).addClass('bolt');
}
},
placeholder: 'Ответственный',
onItemSelect: function(item) {
var divId = 'addTask';
var mainDivClass = $('#' + divId + ' .tabs__caption .active').data("id");
var res = $('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-crm-client-work').val();
// $('.tabs__content.'+mainDivClass+' .ms-big-add-client').closest('.inputs').html('');
$.post('/ajax/getCharts.php', { getSelectClients: 'getSelectClients', responsible: JSON.stringify(res), user_id: $('#session_user_id').val(), users_admin: $('#session_user_admin').val() }, function(data) {
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').closest('.crm__filter-input').html(data);
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').fastselect({
placeholder: 'Клиент'
});
});
},
onItemDelete: function() {
var divId = 'addTask';
var mainDivClass = $('#' + divId + ' .tabs__caption .active').data("id");
var res = $('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-crm-client-work').val();
// $('.tabs__content.'+mainDivClass+' .ms-big-add-client').closest('.inputs').html('');
$.post('/ajax/getCharts.php', { getSelectClients: 'getSelectClients', responsible: JSON.stringify(res), user_id: $('#session_user_id').val(), users_admin: $('#session_user_admin').val() }, function(data) {
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').closest('.crm__filter-input').html(data);
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').fastselect({
placeholder: 'Клиент'
});
});
}
});
}
function cancelPartner(partnerId, clientId, reqId) {
if (confirm("Вы точно хотите отключить партнера?")) {
$.post('/ajax/cancelPartner.php', {
partnerId: partnerId,
clientId: clientId,
reqId: reqId
}, function() {
var url = '/ajax/getClientLogForEventsNew.php?id=' + clientId;
if (reqId > 0) {
url += '&req_id=' + reqId;
}
$.ajax({
url: url,
success: function(data) {
$('#client-info-block').html(data);
$('#client_history .history__chat-n').animate({
scrollTop: $('#client-info-block').prop("scrollHeight")
}, 500, function() {
$('#client_history .history__chat-n').slimScroll({ scrollTo: $('#client-info-block').prop("scrollHeight") + 'px' });
});
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
});
}
}
function editEvent(id, type, client_id, req_id) {
$.ajax({
url: '/ajax/modals/addTaskWinContent.php',
success: function(data) {
$("#addTaskBg").html(data);
$('#addTask .event .otvetstven1').hide();
initTaskWin();
$("#addTaskBg").show();
$("#addTask").show();
$("body").addClass("lock");
$('#clientIdEvent').val('');
$('#callTelphin_1').prop('checked', false);
$('#intervalTo_1').hide();
$('#intervalToLabel_1').hide();
$('#spanFromInterval_1').hide();
$('.intervalBlock .label').css('float', 'left');
// console.log($('#addTask .tabs__caption li'));
$('#addTask .tabs__caption li').css('visibility', 'hidden');
if (type == 'even') {
$('#addTask .event').click();
$('#addTask .event').css('visibility', 'unset');
}
if (type == 'meet') {
$('#addTask .meet').click();
$('#addTask .meet').css('visibility', 'unset');
}
if (type == 'call') {
$('#addTask .call').click();
$('#addTask .call').css('visibility', 'unset');
}
if (type == 'show') {
$('#addTask .show').click();
$('#addTask .show').css('visibility', 'unset');
}
if (type == 'deal') {
$('#addTask .deal').click();
$('#addTask .deal').css('visibility', 'unset');
}
$('#addTask .modal-submit button').text('Сохранить');
$('#addTask .modal-submit button').removeAttr('data-id');
$('#addTask .modal-submit button').attr('data-id', id);
if (id == 0) {
if (type == 'even') {
var section = 'client';
var selector = '#addTask';
var id_par = 0;
$('#addTask .event #eventName').val('');
$('#addTask .event #dealComment').val('');
$('#addTask .event #dealDatetime').datepicker().data('datepicker').selectDate(new Date());
$('#addTask .event .otvetstven').hide();
$('#addTask .event .otvetstven1').show();
$('#addTask .event .klient').hide();
if (client_id) {
$('#clientIdEvent').val(client_id);
id_par = client_id;
}
if (req_id) {
section = 'req';
id_par = req_id;
$('#reqIdEvent').val(req_id);
}
get_select_who_work_task(selector, section, id_par);
}
} else {
$.post("/ajax/getEventForId.php", { event_id: id }, function(data) {
var res = JSON.parse(data);
if (type == 'even') {
$('#addTask .event #eventName').val(res.name);
$('#addTask .event #dealComment').val(res.comment);
$('#addTask .event #dealDatetime').datepicker().data('datepicker').selectDate(new Date(res.schedule_date));
$('#addTask .event .otvetstven').hide();
$('#addTask .event .klient').hide();
if (client_id) {
$('#clientIdEvent').val(client_id);
}
if (req_id) {
$('#reqIdEvent').val(req_id);
}
}
if (type == 'meet') {
$('#addTask .meet #meetDatetime').datepicker().data('datepicker').selectDate(new Date(res.schedule_date));
$('#addTask .meet #meetComment').val(res.comment);
$('#addTask .meet #meetAddress').val(res.address);
$('#addTask .meet .otvetstven').hide();
$('#addTask .meet .klient').hide();
}
if (type == 'call') {
$('#addTask .call #showDatetime').datepicker().data('datepicker').selectDate(new Date(res.schedule_date));
$('#addTask .call #callComment').val(res.comment);
$('#addTask .call .otvetstven').hide();
$('#addTask .call .klient').hide();
if (res.tracking && res.tracking == 1) {
$('#callTelphin_1').prop('checked', true);
$('#intervalTo_1').show();
$('#intervalToLabel_1').show();
$('#spanFromInterval_1').show();
$('#to_showDatetime_1').datepicker().data('datepicker').selectDate(new Date(res.schedule_date_to));
$('.intervalBlock .label').css('float', 'initial');
}
}
if (type == 'show') {
$('#addTask .show #meetDatetime').datepicker().data('datepicker').selectDate(new Date(res.schedule_date));
$('#addTask .show #meetComment').val(res.comment);
$('#addTask .show #meetAddress').val(res.address);
$('#addTask .show .otvetstven').hide();
$('#addTask .show .klient').hide();
}
if (type == 'deal') {
$('#addTask .deal #dealDatetime').datepicker().data('datepicker').selectDate(new Date(res.schedule_date));
$('#addTask .deal #dealComment').val(res.comment);
$('#addTask .deal #dealSum').val(res.sum);
$('#addTask .deal .otvetstven').hide();
$('#addTask .deal .klient').hide();
}
});
}
}
});
return false;
}
function editEventObj(id, type) {
if (type != 'comment') {
$("#addTaskBgObj").show();
$("#addTaskObj").show();
$("body").addClass("lock");
$('#addTaskObj .tabs__caption li').css('visibility', 'hidden');
$('#addTaskObj .action_obj_call').text('Сохранить');
$('#addTaskObj .action_obj_call').removeAttr('data-id');
$('#addTaskObj .action_obj_call').attr("data-id", id);
$('#addTaskObj .action_obj_call').removeAttr('data-type');
$('#addTaskObj .action_obj_call').attr("data-type", type);
}
if (type == 'even') {
$('#addTaskObj .event').click();
$('#addTaskObj .event').css('visibility', 'unset');
}
if (type == 'meet') {
$('#addTaskObj .meet').click();
$('#addTaskObj .meet').css('visibility', 'unset');
}
if (type == 'call') {
$('#addTaskObj .call').click();
$('#addTaskObj .call').css('visibility', 'unset');
}
if (type == 'show') {
$('#addTaskObj .show').click();
$('#addTaskObj .show').css('visibility', 'unset');
}
if (type == 'deal') {
$('#addTaskObj .deal').click();
$('#addTaskObj .deal').css('visibility', 'unset');
}
$('#addTaskObj .event').hide();
$('#addTaskObj .meet').hide();
$('#addTaskObj .call').hide();
$('#addTaskObj .show').hide();
$('#addTaskObj .deal').hide();
if (id == 0) {
if (type == 'even') {
$('#addTaskObj .event').show();
$('#addTaskObj .event #eventName').val('');
$('#addTaskObj .event #dealComment').val('');
$('#addTaskObj .event #dealDatetime').datepicker().data('datepicker').selectDate(new Date());
$('#addTaskObj .event .otvetstven').hide();
$('#addTaskObj .event .klient').hide();
/*if (client_id) {
$('#clientIdEvent').val(client_id);
}*/
}
} else {
$.post("/ajax/getEventForObjId.php", { event_id: id }, function(data) {
var res = JSON.parse(data);
//console.log(type);
//console.log(data);
$('#addTaskBgObj .action_obj_call').attr("data-objectid", res.object_id);
if (type == 'comment') {
if ($('#object-history').css('display') != 'none') {
$('#object-history .chat-form #cancelTextButton').click();
$('#object-history .chat-form #submitTextButton').attr('data-id', res.object_id);
$('#object-history .chat-form #submitTextButton').attr('data-event-id', res.id);
$('#object-history .chat-form #chatTextArea').val(res.comment);
$('#object-history .chat-form #cancelTextButton').show();
$('#object-history .chat-form .chat-textarea').css({ 'margin-left': "15px" });
$('#object-history .chat-form .submit').css({ 'width': "120px" });
$('#object-history .chat-form .task').hide();
if ($('#chat_content_' + res.id).length > 0) {
$('#chat_content_' + res.id).closest('.chat-block').css({
'opacity': "0.42",
'pointer-events': "none"
});
}
}
/*if (client_id) {
$('#clientIdEvent').val(client_id);
}*/
}
if (type == 'even') {
$('#addTaskObj .event').show();
$('#addTaskObj .event #eventName').val(res.name);
$('#addTaskObj .event #dealComment').val(res.comment);
$('#addTaskObj .event #dealDatetime').datepicker().data('datepicker').selectDate(new Date(res.schedule_date.replace(' ', 'T')));
$('#addTaskObj .event .otvetstven').hide();
$('#addTaskObj .event .klient').hide();
/*if (client_id) {
$('#clientIdEvent').val(client_id);
}*/
}
if (type == 'meet') {
$('#addTaskObj .meet').show();
$('#addTaskObj .meet #meetDatetime').datepicker().data('datepicker').selectDate(new Date(res.schedule_date.replace(' ', 'T')));
$('#addTaskObj .meet #meetComment').val(res.comment);
$('#addTaskObj .meet #meetAddress').val(res.address);
$('#addTaskObj .meet .otvetstven').hide();
$('#addTaskObj .meet .klient').hide();
}
if (type == 'call') {
$('#addTaskObj .call').show();
$('#addTaskObj .call .callDatetime').datepicker().data('datepicker').selectDate(new Date(res.schedule_date.replace(' ', 'T')));
$('#addTaskObj .call .callComment').val(res.comment);
$('#addTaskObj .call .otvetstven').hide();
$('#addTaskObj .call .klient').hide();
}
if (type == 'show') {
$('#addTaskObj .show').show();
$('#addTaskObj .show #showDatetime').datepicker().data('datepicker').selectDate(new Date(res.schedule_date.replace(' ', 'T')));
$('#addTaskObj .show #showComment').val(res.comment);
$('#addTaskObj .show #showAddress').val(res.address);
$('#addTaskObj .show .otvetstven').hide();
$('#addTaskObj .show .klient').hide();
$('#showRequisitionsEditInput').html('');
$("#showRequisitionsEditInput").html(' ');
$('#showRequisitionsEdit').val(parseInt(res.req_id));
$("#showRequisitionsEdit").attr('data-initial-value', JSON.stringify(res.req));
$('#showRequisitionsEdit').fastselect({
placeholder: 'Заявка',
});
}
if (type == 'deal') {
$('#addTaskObj .deal').show();
$('#addTaskObj .deal #dealDatetime').datepicker().data('datepicker').selectDate(new Date(res.schedule_date.replace(' ', 'T')));
$('#addTaskObj .deal #dealComment').val(res.comment);
$('#addTaskObj .deal #dealSum').val(res.sum);
$('#addTaskObj .deal .otvetstven').hide();
$('#addTaskObj .deal .klient').hide();
}
});
}
return false;
}
function editNoteObj(id) {
$.post("/ajax/getNoteForObjId.php", { note_id: id }, function(data) {
let res = JSON.parse(data);
//console.log(data);
if ($('#object-notes').css('display') != 'none') {
$('#object-notes .chat-form #cancelTextButton2').click();
$('#object-notes .chat-form #submitTextButton2').attr('data-id', res.object_id);
$('#object-notes .chat-form #submitTextButton2').attr('data-note-id', res.id);
$('#object-notes .chat-form #chatTextArea2').val(res.message);
$('#object-notes .chat-form #cancelTextButton2').show();
$('#object-notes .chat-form .submit').css({ 'width': "120px" });
if ($('#chat_content_' + res.id).length > 0) {
$('#chat_content_' + res.id).closest('.chat-block').css({
'opacity': "0.42",
'pointer-events': "none"
});
}
}
});
return false;
}
function sendEventFiles() {
if ($(this).is(':disabled'))
return false;
let form = $('form#send_event_files_form');
let from = form.find('[name="from"]').val();
let event_id = form.find('[name="event_id"]').val();
let client_id = form.find('[name="client_id"]').val();
let email = form.find('[name="email"]').val();
let theme = form.find('[name="theme"]').val();
let text = form.find('[name="txt"]').val();
if (event_id && (client_id || email) && theme) {
$('#send_event_files_modal .modal-submit [type="button"]').addClass('loading');
$.post("/ajax/sendEventFiles.php", {
from: from,
event_id: event_id,
client_id: client_id,
email: email,
theme: theme,
text: text
}, function(data) {
//console.log(data);
var result = JSON.parse(data);
if (result.result == true) {
$('#send_event_files_modal .result_msg').text('Файл(ы) был(и) успешно отправлен(ы)!');
$('#send_event_files_modal .error_msg').hide();
$('#send_event_files_modal .error_msg').empty();
$('#send_event_files_modal .result_msg').show();
$('#send_event_files_modal .modal-submit [type="button"]').removeClass('loading');
setTimeout(() => {
$("#send_event_files_modal_bg").fadeOut(10);
$("#send_event_files_modal").toggle(10);
$("body").removeClass("lock");
}, 2000);
} else {
$('#send_event_files_modal .modal-submit [type="button"]').removeClass('loading');
$('#send_event_files_modal .error_msg').text('Произошла ошибка при отправке файла(ов).');
$('#send_event_files_modal .error_msg').show();
$('#send_event_files_modal .result_msg').hide();
$('#send_event_files_modal .result_msg').empty();
}
});
}
}
function sendEventFilesWin(id, from) {
let form = $('form#send_event_files_form');
form.find('[name="email"]').val('');
form.find('[name="theme"]').val('');
form.find('[name="txt"]').val('');
form.find('[name="event_id"]').val(id);
form.find('[name="from"]').val(from);
let user_id = $('#session_user_id').val();
let agency_id = $('#session_agency_id').val();
let client_id = $('.full_modal-bg.clients .chat-block .client').attr('id').replace('client__', '');
$("#send_event_files_modal_bg").css({
zIndex: 100002
});
$.get("/ajax/getEventFiles.php", {
event_id: id,
from: from
}, function(data) {
let result = JSON.parse(data);
if (result.length) {
$.each(result, function(indx, file) {
let link = '' + file['name'] + ' ';
form.find('.files .files-list').append('' + link + ' ');
});
form.find('.files .files-list');
form.find('.files').show();
}
});
form.find('[name="client_id"]').closest(".inputs").html(' ');
let non_sel = 'Указать произвольный адрес эл. почты ';
form.find('[name="client_id"]').html(non_sel);
form.find('[name="client_id"]').fastselect({
placeholder: 'Выберите клиента'
});
$.get("/ajax/getInnerSources.php", {
user_id: user_id,
agency_id: agency_id,
section: 'clients',
required: 'email',
view: 'option'
}, function(result) {
if (result.length) {
form.find('[name="client_id"]').html(non_sel + result);
if (typeof client_id !== "undefined")
form.find('[name="client_id"] option[value="' + client_id + '"]').prop("selected", true);
form.find('[name="client_id"]').fastselect({
placeholder: 'Выберите клиента'
});
form.find('[name="client_id"]').closest(".inputs").find(".fstControls .fstResults .fstResultItem").first().css({ color: "red" });
form.find('[name="client_id"]').closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
form.find('[name="client_id"]').closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');
form.find('.client-id-input').fadeIn();
}
});
form.find('[name="client_id"] option').prop("selected", false);
$('#send_event_files_modal .modal-submit button[type="button"]').attr('disabled', 'disabled');
$('#send_event_files_modal .error_msg').empty();
$('#send_event_files_modal .error_msg').hide();
$('#send_event_files_modal .result_msg').empty();
$('#send_event_files_modal .result_msg').hide();
let as_client = true;
let selector = '[name="email"], [name="theme"]';
if (as_client)
selector = '[name="client_id"], [name="theme"]';
form.find('[name="client_id"]').on("change", function() {
if (parseInt($(this).val()) !== 0 && typeof $(this).val() !== "undefined") {
form.find('.email-input').fadeOut();
as_client = true;
} else {
form.find('.email-input').fadeIn();
as_client = false;
}
if (as_client)
selector = '[name="client_id"], [name="theme"]';
else
selector = '[name="email"], [name="theme"]';
});
form.find(selector).on("change", function() {
let valid = true;
let inputs = selector.split(',');
$.each(inputs, function(index, elemn) {
let value = form.find(elemn).val();
if (typeof value == "undefined" || parseInt(value) == 0) {
valid = false;
}
});
if (valid)
$('#send_event_files_modal .modal-submit button[type="button"]').removeAttr('disabled');
else
$('#send_event_files_modal .modal-submit button[type="button"]').attr('disabled', 'disabled');
});
$("#send_event_files_modal_bg").fadeIn(500);
$("#send_event_files_modal").toggle(10);
$("body").addClass("lock");
}
function deleteEvent(id, from) {
if (confirm("Вы точно хотите удалить эту задачу?")) {
$.post('/ajax/deleteEvent.php', {
deleteId: id,
from: from || null
}, function() {
if ($('#chat_content_' + id).length > 0) {
$('#chat_content_' + id).closest('.chat-block').remove();
}
$("#merepriation_bg").hide();
$("#merepriation-history").hide();
$("body").removeClass("lock");
getCalendar();
});
}
}
function showEventSubComment(id, from, event, sub_id) {
let comment_area = $('#addEventSubComment_' + id);
var subId = 0;
if (!isEmpty(sub_id)) {
subId = sub_id;
}
$('#addEventSubComment_' + id + ' .edit-btn.save').attr('data-sub', subId);
if (typeof comment_area !== "undefined") {
if ($('#addEventSubComment_' + id).is(':visible')) {
$('#addEventSubComment_' + id).hide();
} else {
$('#addEventSubComment_' + id).show();
}
if (event == "moderation") {
$('#addEventSubComment_' + id + ' textarea').html('');
$('#addEventSubComment_' + id + ' .sub_comment_who_work').show();
$.ajax({
url: '/ajax/dataClass/dataModerationClass.php',
method: "post",
data: {
'get_user_event_moderation': 1,
'event_id': id,
'sub_id': subId,
},
success: function(data) {
//console.log(data);
var res = JSON.parse(data);
$('#addEventSubComment_' + id + ' textarea').html(res.text);
$('#sub_comment_who_work_input_' + id).html(res.html);
$('#sub_comment_who_work_' + id).fastselect({
placeholder: 'Ответственные',
})
}
});
} else {
$('#addEventSubComment_' + id + ' .sub_comment_who_work').hide();
}
}
}
function addEventSubComment(id, from, id_object, req_id, type = null) {
user_for = 0;
if (!isEmpty(type) && type == 'moderation') {
user_for = $('#sub_comment_who_work_' + id).val();
}
var sub_id = 0;
if ($('#addEventSubComment_' + id + ' .edit-btn.save').attr('data-sub')) {
sub_id = $('#addEventSubComment_' + id + ' .edit-btn.save').attr('data-sub');
}
let comment_area = $('#sub_comment_' + id);
if (typeof comment_area !== "undefined") {
let sub_comment = comment_area.val();
$.post('/ajax/addEventSubComment.php', {
eventId: id,
reqId: req_id || null,
from: from || null,
sub_comment: sub_comment,
type: type,
user_for: user_for,
sub_id: sub_id,
}, function() {
$.ajax({
url: '/ajax/getObjectInfoForEvents.php?id=' + id_object,
success: function(data) {
$('#object-info-block').html(data);
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
}
});
setTimeout(function() {
$('#object-info-block .fotorama').fotorama();
initializeMapOnEventWindow();
}, 100);
}
});
});
}
}
function deleteEventSubComment(id, from, id_object, sub_id) {
var subId = 0;
if (!isEmpty(sub_id)) {
subId = sub_id;
}
if (confirm("Вы точно хотите удалить комментарий МОП?")) {
$.post('/ajax/deleteEventSubComment.php', {
eventId: id,
from: from || null,
sub_id: subId
}, function() {
$.ajax({
url: '/ajax/getObjectInfoForEvents.php?id=' + id_object,
success: function(data) {
$('#object-info-block').html(data);
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
}
});
setTimeout(function() {
$('#object-info-block .fotorama').fotorama();
initializeMapOnEventWindow();
}, 100);
}
});
});
}
}
function deleteNoteObj(id) {
if (confirm("Вы точно хотите удалить данное примечание?")) {
$.post('/ajax/deleteNote.php', {
deleteId: id
}, function() {
if ($('#chat_content_' + id).length > 0) {
let chat = $('#chat_content_' + id).closest('#object-notes');
let object_id = chat.find('#submitTextButton2').data('id');
$('#chat_content_' + id).closest('.chat-block').remove();
if (chat.find('.chat-block').length == 0)
$('.addEditNote[data-id="' + object_id + '"]').removeClass('haveNotes');
}
$("body").removeClass("lock");
});
}
}
//Отменить задачу
function cancelEvent(id) {
if (confirm("Вы точно хотите отменить эту задачу?")) {
$.post('/ajax/cancelEvent.php', { cancelId: id }, function() {
if ($('#chat_content_' + id).length > 0) {
$('#chat_content_' + id).closest('.chat-message').addClass('cancel');
}
$('#groupAB__' + id).attr("data-cancel", "1");
/*$("#merepriation_bg").hide();
$("#merepriation-history").hide();
$("body").removeClass("lock");*/
getCalendar();
});
}
}
//Для фильтра клиентов в отправке презентаций
function get_prz_clients(type = 0) {
var params = {};
var user_id = $('#komy_user_id').val();
var agency_id = $('#komy_agency_id').val();
var type_send = false;
params.prz_user = user_id;
params.prz_agency = agency_id;
params.type = type;
if ($('#filter-prz-responsible').val() !== null && $('#filter-prz-responsible').val() != '') {
params.filter_prz_responsible = JSON.stringify($('#filter-prz-responsible').val());
type_send = true;
}
if ($('#filter-prz-type').val() !== null && $('#filter-prz-type').val() != '') {
params.filter_prz_type = JSON.stringify($('#filter-prz-type').val());
type_send = true;
}
if ($('#filter_prz_source').val() !== null && $('#filter_prz_source').val() != '') {
params.filter_prz_source = JSON.stringify($('#filter_prz_source').val());
type_send = true;
}
if ($('#filter_prz_activities').val() !== null && $('#filter_prz_activities').val() != '') {
params.filter_prz_activities = JSON.stringify($('#filter_prz_activities').val());
type_send = true;
}
if ($('#filter_prz_rol').val() !== null && $('#filter_prz_rol').val() != '') {
params.filter_prz_rol = JSON.stringify($('#filter_prz_rol').val());
type_send = true;
}
$.post("/ajax/getPrzClients.php", params, function(res) {
if (type == 0) {
$('#komy').html(res);
$('#komy').select2({
language: "ru",
theme: "bootstrap",
placeholder: 'Выберите клиента(ов)...'
});
} else if (type == 1) {
if (type_send == true) {
$("#komy_list").val(res);
if (res.length > 0) {
$("#send_mail_btn").trigger('click');
} else {
$('#error_txt_filter').text('Клиентов не найдено!').show();
}
} else {
$("#komy_list").val("");
$('#error_txt_filter').text('Не выбраны фильтры!').show();
}
}
});
}
function renewClient(id_client) {
console.log({ id_client });
let params = {
client_id: id_client
};
$.post('/ajax/renewClients.php',
params,
function(data) {
let result = JSON.parse(data);
if (result.success == true) {
let sort_order = $('select[name=sort_order]').val();
let page = $('.pagination li.active a').text();
if ($('#client_history').css('display') != 'none') {
openClientEventsWindowNew(id_client, $('#session_to_send').val(), 1);
}
if ($('.view-kanban.active').length > 0) {
let stage = $('#kanban_item_li_' + id_client).closest('.kanban__sortable').data("stage");
get_kanban_li(id_client, stage, 0);
} else {
get_list(page, sort_order, false);
}
}
}
);
}
function renewReq(req_id) {
console.log(req_id);
let params = {
req_id: req_id,
};
$.post('ajax/renewReq.php',
params,
function(data) {
console.log({ data });
let result = JSON.parse(data);
if (result.success == true) {
let sort_order = $('select[name=sort_order]').val();
let page = $('.pagination li.active a').text();
if ($('#client_history').css('display') != 'none') {
openClientEventsWindowNew(null, $('#session_user_id').val(), 1, req_id);
}
if ($('.view-kanban.active').length > 0) {
requisitions.getList();
} else {
get_list(page, sort_order, false);
}
}
}
);
}
function isNationalPhone(phone) {
// hide_client_contacts: маска содержит звёздочки, автодетект не делаем —
// считаем телефон обычным (российским) и оставляем чекбокс выключенным.
if (typeof phone === 'string' && phone.indexOf('*') !== -1) {
return 0;
}
if (!phone.startsWith('+7')) {
return 1;
}
if (String(phone).replace(/[^0-9]/g,"").length !== 11) {
return 1;
}
return 0;
}
function renewClients(id_clients) {
//console.log({ id_clients });
var all = 0;
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
id_clients = ['all'];
}
let params = {
clients_id: id_clients,
all: all
};
$.post('/ajax/renewClients.php',
params,
function(data) {
console.log(data);
let result = JSON.parse(data);
if (result.success == true) {
let sort_order = $('select[name=sort_order]').val();
let page = $('.pagination li.active a').text();
get_list(page, sort_order, false);
}
}
);
}
function editClientNew(id, funnelId) {
// hide_client_contacts: возвращаем модалку в edit-режим (disabled+warning),
// т. к. add_client_new() в этой же сессии мог переключить её в add-режим.
setAddEditNewContactsState('edit');
if (typeof requisitions_client == 'object') {
requisitions_client.clientId = id;
}
if (typeof deals_client == 'object') {
deals_client.clientId = id;
}
//кастомные поля
if (typeof client_fields != "undefined") {
client_fields.client_id = id;
client_fields.getClientFields();
}
if ($('#client-history__bg').css('display') == 'block') {
$('#client-history__bg').css('zIndex', '99987');
}
$('#ms-new-client-source-input').closest(".form-block").show();
$('#liObject').removeClass('active').show();
$('#liReq').removeClass('active').show();
$('#liInnerDocs').removeClass('active').show();
$('#liInnerDocs .tabs-li__icon').text('6');
$('#liGlobal').click();
$('#addEditNew .error_msg').hide();
$('#addObjectClientForm').attr('href', '/add-object.php?sobstv_object=' + id);
$('#addEditNew .stagebar .stage').removeClass('active');
$('#addEditNew .form-block__hot-client').removeClass('active');
clearSelect();
$('#addEditNew .form-block [name=phone2]').each(function() {
$(this).closest('.form-block').remove();
});
$("#addEditNew").find('input').val("");
$("#addEditNew").find('textarea').val('');
$("#addEditNew select").val('');
$('#addEditNew select').parent('.fstElement').find('.fstChoiceRemove').each(function() {
$(this).click();
});
$('#addEditNew .form-block [name=phone2]').each(function() {
$(this).closest('.form-block').remove();
});
$('#rynok_1').prop('checked', true);
$('#addEditNew [name=yes_object]').prop('checked', false);
$('#addEditNew [name=yes_doc]').prop('checked', false);
$('#addEditNew [name=yes_bank]').prop('checked', false);
$('#addEditNew [name=yes_resolve]').prop('checked', false);
$('#addEditNew [name=yes_issue]').prop('checked', false);
$('#resolve_1').prop('checked', false);
$('#resolve_2').prop('checked', false);
$('#resolve_3').prop('checked', false);
$('.prodoc').addClass('hidden');
$('.probank').addClass('hidden');
$('.proresolve').addClass('hidden');
$('.proissue').addClass('hidden');
$('#addEditNew [name=summa_object]').val(0);
$('#addEditNew [name=relationship]').val('');
$("#addEditNew [name=age]").val('');
$("#addEditNew [name=co_borrower_fio]").val('');
$("#addEditNew [name=co_borrower_age]").val('');
$("#addEditNew [name=contacts]").val('');
$("#addEditNew [name=co_borrower_dohod]").val('');
$("#addEditNew [name=income]").val('');
$("#addEditNew [name=credit_load]").val('');
$('#persone_no_ip').prop('checked', true);
$('#persone_yes_ip').prop('checked', false);
$('#persone_gender_man').prop('checked', true);
$('#persone_gender_woman').prop('checked', false);
$("#union_clients_form_open").show();
$("#union_clients_form_open").attr("data-id",id);
$('#block_client_kredit .form-block').each(function() {
$(this).find('input[type=checkbox]').each(function() {
$(this).prop('checked', false);
});
$(this).find('input[type=radio]').each(function() {
$(this).prop('checked', false);
});
});
$('.probank ul').html('');
$('#proresolve-yes').html('');
$.get('/ajax/getIpoteka.php?id=' + id, { dataType: "json" }, function(datai) {
if (datai) {
var data = JSON.parse(datai);
console.log(data);
$('#rynok_' + data.rynok).prop('checked', true);
if (data.yes_object == 1) {
$('#addEditNew [name=yes_object]').prop('checked', true);
}
if (data.yes_doc == 1) {
$('#addEditNew [name=yes_doc]').prop('checked', true);
$('.prodoc').removeClass('hidden');
}
if (data.yes_bank == 1) {
$('#addEditNew [name=yes_bank]').prop('checked', true);
$('.probank').removeClass('hidden');
}
if (data.yes_resolve == 1) {
$('#addEditNew [name=yes_resolve]').prop('checked', true);
$('.proresolve').removeClass('hidden');
}
if (data.yes_resolve == 1) {
$('#addEditNew [name=yes_resolve]').prop('checked', true);
$('.proresolve').removeClass('hidden');
}
if (data.yes_issue == 1) {
$('#addEditNew [name=yes_issue]').prop('checked', true);
$('.proissue').removeClass('hidden');
}
if(!isEmpty(data.date_send_web_hook)){
$('#send_web_hook_date').text(data.date_send_web_hook).css('color', 'red');
} else {
$('#send_web_hook_date').text('').css('color', '#757575')
}
$("#addEditNew").find('input[name="ante_pr"]').val(data.ante_pr);
$("#addEditNew").find('input[name="ante_rub"]').val(data.ante_rub);
$("#addEditNew").find('textarea[name="comment"]').val(data.comment.replace(/ /g, "\n"));
$("#addEditNew").find('[name="comment_resolve"]').val(data.comment_resolve.replace(/ /g, "\n"));
$("#addEditNew").find('input[name="date_bank"]').val(data.date_bank);
$("#addEditNew").find('input[name="date_doc"]').val(data.date_doc);
$("#addEditNew").find('input[name="doc_komis"]').val(data.doc_komis);
$("#addEditNew").find('input[name="doc_komis_pr"]').val(data.doc_komis_pr);
$("#addEditNew").find('input[name="employee_bank"]').val(data.employee_bank);
$("#addEditNew").find('input[name="number_doc"]').val(data.number_doc);
$("#addEditNew").find('input[name="rate_issue"]').val(data.rate_issue);
$("#addEditNew").find('input[name="term_issue"]').val(data.term_issue);
$("#addEditNew").find('input[name="send_web_hook"]').prop('checked', false);
$("#addEditNew").find('input[name="relationship"]').val(data.relationship);
$("#addEditNew").find('input[name="summa_object"]').val(data.summa_object);
$("#addEditNew").find('input[name="age"]').val(data.age);
$("#addEditNew").find('input[name="co_borrower_fio"]').val(data.co_borrower_fio);
$("#addEditNew").find('input[name="co_borrower_age"]').val(data.co_borrower_age);
$("#addEditNew").find('input[name="contacts"]').val(data.contacts.replace(/ /g, "\n"));
$("#addEditNew").find('input[name="co_borrower_dohod"]').val(data.co_borrower_dohod);
$("#addEditNew").find('input[name="income"]').val(data.income);
$("#addEditNew").find('input[name="credit_load"]').val(data.credit_load);
var html = '' + $("#ms-new-client-bank-issue").html() + ' ';
$("#ms-new-client-bank-issue").closest(".inputs").html(html);
if (data.bank_issue && data.bank_issue != 'null') {
var bank_issue = JSON.parse(data.bank_issue);
for (var i = 0; i < bank_issue.length; i++) {
$("#ms-new-client-bank-issue option[value=" + bank_issue[i] + "]").prop("selected", true)
}
}
$("#ms-new-client-bank-issue").fastselect({ placeholder: 'Банк выдачи' });
if (data.banks && data.banks != 'null') {
var banks = JSON.parse(data.banks);
Object.entries(banks).forEach(([key, value]) => {
if(!isEmpty(value)){
let li = ''+value.name+' ' +
'' +
'' +
' ' +
' ' +
'' +
'Удалить ' +
' ' +
' ' +
' '
$('.probank ul').append(li);
}
});
}
if (data.resolve && data.resolve != 'null') {
var resolve = JSON.parse(data.resolve);
Object.entries(resolve).forEach(([key, value]) => {
if(!isEmpty(value)){
let li = '' +
''+value.name+' ' +
'' +
' ' +
'' +
'Удалить ' +
' ' +
' ' +
' ';
$('#proresolve-yes').append(li);
}
});
}
var jc = null;
if (data.jc && data.jc != 'null') {
jc = JSON.parse(data.jc);
}
setSelectsFastselect('ms_new_blocks', jc, 'select_form_blocks.php', 'Жилые комплексы');
}
});
$.ajax({
url: '/ajax/getClient.php?id=' + id,
dataType: "json",
success: function(data) {
console.log(data);
if (funnelId > 0) {
$.post('/ajax/getStageBar.php', { client_id: id, funnel_id: funnelId }, function(result) {
$('#editClientStagebar').html(result);
});
} else {
var stage = (data.stage - 1);
// console.log(data.deleted);
if (data.deleted == 1) {
stage = 7;
}
$("#addEditNew .crm__small-stage").each(function(index) {
if (index <= stage) {
$(this).parent().addClass("active");
} else {
$(this).parent().removeClass("active");
}
});
}
$('#confirm').val(data.confirm);
if (data.hot > 0) {
$('#addEditNew .form-block__hot-client').addClass('active');
}
if (data.priority > 0) {
$('#addEditNew .form-block__p' + data.priority + '-client').addClass('active');
}
//$("#addEditNew .error_msg").next().html(data.fio);
$('#addEditNew .modal-title').html(data.fio);
$("#addEditNew").find('input[name="fio"]').val(data.fio);
$("#addEditNew").find('input[name="email"]').val(data.email);
$("#addEditNew").find('input[name="phone"]').val(data.phone);
// Явно ставим состояние свитчера — иначе при последовательном редактировании
// foreign → russian-клиента флажок может остаться в TRUE от предыдущей карточки.
// Для замаскированных значений isNationalPhone вернёт 0, переключатель не активируется.
$("#addEditNew").find('#national_phone').prop('checked', !!isNationalPhone(data.phone));
$("#addEditNew").find('input[name="budget"]').val(data.budget);
$("#addEditNew").find('[name="opis"]').val(data.opis.replace(/ /g, "\n"));
$("#addEditNew").find('input[name="id"]').val(data.id);
$("#addReqClientForm").attr("data-client", data.id);
$("#addEditNew").find('input[name="confirm"]').val(data.confirm);
$("#addEditNew").find('input[name="birthday"]').val(data.birthday);
if(data.persone_no_ip > 0) {
$('#persone_yes_ip').prop('checked', true);
$('.persone_yas_ip').removeClass('hidden');
$('.persone_no_ip').addClass('hidden');
}
// console.log(data.persone_info_bank,"vot zdes");
function normalizeContactText(rawHtml) {
return rawHtml
.replace(/ /gi, '\n')
.replace(/[^\S\r\n]{2,}/g, ' ')
.replace(/[\r\n]{2,}/g, '\n')
.replace(/[^\w\sА-Яа-яёЁ.,:()\-+]/g, '')
.trim();
}
if(data.persone_gender > 0) $('#persone_gender_woman').prop('checked', true);
$("#addEditNew").find('input[name="passport"]').val(data.passport);
$("#addEditNew").find('input[name="date_of_issue_passport"]').val(data.date_of_issue_passport);
$("#addEditNew").find('input[name="passport_issued_by"]').val(data.passport_issued_by);
$("#addEditNew").find('input[name="birthplace"]').val(data.birthplace);
$("#addEditNew").find('[name="registration_address"]').val(data.registration_address);
$("#addEditNew").find('[name="post_address"]').val(data.post_address);
$("#addEditNew").find('[name="persone_info_bank"]').val(normalizeContactText(data.persone_info_bank));
$("#addEditNew").find('input[name="persone_snils"]').val(data.persone_snils);
$("#addEditNew").find('input[name="persone_nationality"]').val(data.persone_nationality);
$("#addEditNew").find('input[name="persone_full_name"]').val(data.persone_full_name);
$("#addEditNew").find('input[name="persone_short_name"]').val(data.persone_short_name);
$("#addEditNew").find('input[name="persone_ogrn"]').val(data.persone_ogrn);
$("#addEditNew").find('input[name="persone_inn"]').val(data.persone_inn);
$("#addEditNew").find('input[name="persone_kpp"]').val(data.persone_kpp);
$("#addEditNew").find('[name="persone_legal_address"]').val(data.persone_legal_address);
$("#addEditNew").find('[name="persone_fact_address"]').val(data.persone_fact_address);
$("#addEditNew").find('input[name="persone_name_bank"]').val(data.persone_name_bank);
$("#addEditNew").find('input[name="persone_bik_bank"]').val(data.persone_bik_bank);
$("#addEditNew").find('input[name="persone_rs_bank"]').val(data.persone_rs_bank);
$("#addEditNew").find('input[name="persone_kors_bank"]').val(data.persone_kors_bank);
$("#addEditNew").find('input[name="persone_fio_rukovod"]').val(data.persone_fio_rukovod);
$("#addEditNew").find('input[name="persone_powers"]').val(data.persone_powers);
$("#addEditNew").find('input[name="persone_kod_podrazdelenia"]').val(data.persone_kod_podrazdelenia);
$('#of_objects').val(data.of_objects);
var html = '' + $("#ms-new-client-type").html() + ' ';
$("#ms-new-client-type").closest(".inputs").html(html);
if (data.work_type && data.work_type != 'null') {
var wor_type = JSON.parse(data.work_type);
for (var i = 0; i < wor_type.length; i++) {
$("#ms-new-client-type option[value='" + wor_type[i] + "']").prop("selected", true)
}
}
$("#ms-new-client-type").fastselect({
placeholder: 'Тип',
onItemDelete: function(item, val) {
if (typeof this.fastsearch.itemModels != 'undefined' && this.fastsearch.itemModels[4] !== undefined && !this.fastsearch.itemModels[4].selected) {
$('#ms-new-client-activities').parent('.fstElement').find('.fstChoiceRemove').each(function() {
$(this).click();
});
}
}
});
var html = '' + $("#ms-new-client-rol").html() + ' ';
$("#ms-new-client-rol").closest(".inputs").html(html);
if (data.role && data.role != 'null') {
let roleArray;
try {
roleArray = JSON.parse(data.role);
if (!Array.isArray(roleArray)) {
roleArray = [roleArray];
}
} catch (e) {
roleArray = [data.role];
}
for (var i = 0; i < roleArray.length; i++) {
var escapedRoleValue = roleArray[i].toString().replace(/'/g, "\\'");
$("#ms-new-client-rol option[value='" + escapedRoleValue + "']").prop("selected", true);
}
}
$("#ms-new-client-rol").fastselect({ placeholder: 'Роль клиента' });
var activities = null;
if (data.activities && data.activities != 'null') {
activities = JSON.parse(data.activities);
}
setSelectsFastselect('ms-new-client-activities', activities, 'select_form_activities.php', 'Теги');
var html = '' + $("#ms-new-client-objects-type").html() + ' ';
$("#ms-new-client-objects-type").closest(".inputs").html(html);
//console.log(data.type);
if (data.type && data.type != 'null') {
var type = JSON.parse(data.type);
for (var i = 0; i < type.length; i++) {
$("#ms-new-client-objects-type option[value=" + type[i] + "]").prop("selected", true)
}
}
$("#ms-new-client-objects-type").fastselect({ placeholder: 'Тип недвижимости' });
var html = '' + $("#ms-new-client-object").html() + ' ';
if (data.objects && data.objects != 'null') {
$.post('/ajax/getClientsView.php', { get_clients_objects: data.objects, user_id: $('#sid').data("id") },
function(result) {
if (result == 0) {
$("#ms-new-client-object").closest(".inputs").html(html);
} else {
$("#ms-new-client-object").closest(".inputs").html('' + result + ' ');
}
var objects = JSON.parse(data.objects);
for (var i = 0; i < objects.length; i++) {
$("#ms-new-client-object option[value=" + objects[i] + "]").prop("selected", true);
}
$("#ms-new-client-object").fastselect({ placeholder: 'Объекты' });
}
);
} else {
$.post('/ajax/getClientsView.php', { get_clients_objects: '', user_id: $('#sid').data("id") },
function(result) {
// console.log(result);
if (result == 0) {
$("#ms-new-client-object").closest(".inputs").html(' ');
} else {
$("#ms-new-client-object").closest(".inputs").html('' + result + ' ');
}
$("#ms-new-client-object").fastselect({ placeholder: 'Объекты' });
}
);
}
req_fastselect('ms-new-client-req-input', 'ms-new-client-req', data.req);
$.post('/ajax/getClientsView.php', { get_objects: data.objects, user_id: $('#sid').data("id"), to_send: $('#s_to_send').val() }, function(data) {
$('#addEditNew .jw__objects').html(data);
$('#addEditNew .fotorama').fotorama();
if (typeof koala_loader == "function") {
koala_loader();
}
});
var who_user = $('#sid').attr('data-id');
if (data.who_work) {
who_user = data.who_work;
}
setSelectsFastselect('ms-new-client-work', who_user, 'select_form_client-work.php', 'Ответственный');
var source_id = 0;
if (data.source) {
source_id = data.source;
}
if(data.source_see == 0){
setSelectsFastselect('ms-new-client-source', source_id, 'select_form_source.php', 'Источник');
$('#ms-new-client-source-input').closest(".form-block").hide();
} else
setSelectsFastselect('ms-new-client-source', source_id, 'select_form_source.php', 'Источник');
var emplode_id_ms = 0;
if (data.employee_id) {
emplode_id_ms = data.employee_id;
}
setSelectsFastselect('ms-new-client-partner', emplode_id_ms, 'select_form_partner.php', 'Партнёр');
var funnel_id = 0;
if (data.funnel_id) {
funnel_id = data.funnel_id;
}
setSelectsFastselect('ms-new-funnel', funnel_id, 'select_form_funnel.php', 'Воронка', 'client');
$("#ms-new-funnel").fastselect({ placeholder: 'Воронка' });
var html = '' + $("#ms_new_bancks_credit").html() + ' ';
$("#ms_new_bancks_credit").closest(".inputs").html(html);
if (data.bancks_credit && (data.bancks_credit).toLowerCase() != 'null') {
var bancks_credit = JSON.parse(data.bancks_credit);
for (var i = 0; i < bancks_credit.length; i++) {
$("#ms_new_bancks_credit option[value=" + bancks_credit[i] + "]").prop("selected", true);
}
}
$("#ms_new_bancks_credit").fastselect({ placeholder: 'Банковский продукт' });
setSelectsFastselect('ms-new-client-bank-denial', null, 'select_form_bank-denial.php', 'Банк (отказ)');
setSelectsFastselect('ms-new-client-bank-revisal', null, 'select_form_bank-denial.php', 'Банк (пересмотр)');
setSelectsFastselect('ms-new-client-bank-issue', null, 'select_form_bank-denial.php', 'Банк выдачи');
$('#block_client_kredit .form-block').each(function() {
$(this).find('input[type=text]').each(function() {
if (data[$(this).attr('name')]) {
$(this).val(data[$(this).attr('name')]);
}
});
$(this).find('input[type=checkbox]').each(function() {
if (data[$(this).attr('name')] == 1) {
$(this).prop('checked', true);
}
});
$(this).find('input[type=radio]').each(function() {
if (data[$(this).attr('name')] == $(this).attr('id')) {
$(this).prop('checked', true);
}
});
});
if (data.phone2 && data.phone2 != 'null') {
var phone2 = JSON.parse(data.phone2);
if (phone2.length > 0) {
for (var i = 0; i < phone2.length; i++) {
var inputId = 'input_phone_' + phone2Index;
var checkboxId = 'checkbox_phone_' + phone2Index;
// hide_client_contacts: значение приходит как "+X *** *** ** **"
// — звёздочки в строке считаем явным признаком маски.
var isMaskedPhone2 = typeof phone2[i] === 'string' && phone2[i].indexOf('*') !== -1;
var formBloc = document.createElement('div');
formBloc.classList.add('form-block');
var labelDiv = document.createElement('div');
labelDiv.classList.add('label');
labelDiv.textContent = 'Дополнительный телефон';
formBloc.appendChild(labelDiv)
var inputsDiv = document.createElement('div');
inputsDiv.classList.add('inputs');
var inputPhone = document.createElement('input');
// Для замаскированных значений не подключаем phoneMask, иначе jQuery-плагин
// .mask("+79999999999") перезатрёт код страны на "+7".
if (isMaskedPhone2) {
inputPhone.classList.add('text');
inputPhone.disabled = true;
inputPhone.title = 'Контакты клиента скрыты для вашей учётной записи';
} else {
inputPhone.classList.add('text', 'phoneMask');
}
inputPhone.id = inputId;
inputPhone.type = 'text';
inputPhone.style.width = '400px';
inputPhone.name = 'phone2';
inputPhone.value = phone2[i];
inputsDiv.appendChild(inputPhone);
formBloc.appendChild(inputsDiv);
var checkboxDiv = document.createElement('div');
checkboxDiv.classList.add('checkbox', 'inline-block');
checkboxDiv.style = 'display: inline-block;min-height: unset; padding-left: 0px; margin-top: 0px; margin-bottom: 0px;';
var inputCheckbox = document.createElement('input');
inputCheckbox.id = checkboxId;
inputCheckbox.type = 'checkbox';
inputCheckbox.checked = !!(isNationalPhone(phone2[i]));
if (isMaskedPhone2) {
inputCheckbox.disabled = true;
}
checkboxDiv.appendChild(inputCheckbox);
var labelCheckbox = document.createElement('label');
labelCheckbox.classList.add('label', 'ml-5', 'whitespace-nowrap');
labelCheckbox.setAttribute('for', checkboxId);
labelCheckbox.textContent = 'Зарубежный телефон';
checkboxDiv.appendChild(labelCheckbox);
formBloc.appendChild(checkboxDiv);
inputCheckbox.addEventListener('change', function() {
if (inputCheckbox.checked) {
$('#' + inputId).unmask();
inputPhone.value = '+'
inputPhone.addEventListener('input', function() {
var phoneNumber = inputPhone.value;
// Проверка на наличие первого символа "+"
if (phoneNumber.startsWith('+')) {
// Удаление всех нецифровых символов, кроме "+"
phoneNumber = phoneNumber.replace(/[^\d+]/g, '');
inputPhone.value = phoneNumber;
} else {
inputPhone.value = '';
}
});
inputPhone.focus();
} else {
$('#' + inputId).mask("+79999999999");
inputPhone.focus();
}
});
$('#add_phone2').closest('.form-block').before(formBloc);
if (!isNationalPhone(phone2[i]) && !isMaskedPhone2) {
$('#' + inputId).mask("+79999999999");
}
phone2Index++;
}
}
}
$("#send_bg_new").fadeIn(500);
$("#send_new").toggle(10);
$('#send_log_new').hide();
$('#send_form_new').show();
$("body").addClass("lock");
get_contracts_client(id);
}
})
}
function advertsSwitch(elemn) {
let object_id = $(elemn).attr("data-id");
console.log(object_id);
let user_id = $("#session_user_id");
let state = $(elemn).is(":checked");
console.log(state);
/*if(object_id == 'all'){
state = !state;
}*/
if (!state) {
if (confirm("Убрать объект из рекламы? Если показ в рекламе уже был начат, то все ротации по объекту будут остановлены.")) {
$('#advertisings__' + object_id + ' .action-button').removeClass('active');
switchToAdvert(object_id, user_id, +state);
} else {
$(elemn).prop("checked", true);
}
return false;
} else if (state) {
switchToAdvert(object_id, user_id, +state);
}
return false;
}
function switchCanAdModr(elemn) {
let state = $(elemn).hasClass("active");
if (state) {
if (confirm("Убрать объект из рекламы? Если показ в рекламе уже был начат, то все ротации по объекту будут остановлены.")) {
switchCanAd(elemn);
} else {
// $(elemn).prop("checked", true);
}
return false;
} else if (!state) {
switchCanAd(elemn);
}
}
function switchCanAvitoAdModr(elemn) {
let state = $(elemn).hasClass("active");
if (state) {
if (confirm("Убрать объект из рекламы? Если показ в рекламе уже был начат, то все ротации по объекту будут остановлены.")) {
switchCanAvitoAd(elemn);
} else {
// $(elemn).prop("checked", true);
}
return false;
} else if (!state) {
switchCanAvitoAd(elemn);
}
}
function switchCanCianAdModr(elemn) {
let state = $(elemn).hasClass("active");
if (state) {
if (confirm("Убрать объект из рекламы? Если показ в рекламе уже был начат, то все ротации по объекту будут остановлены.")) {
switchCanCianAd(elemn);
} else {
// $(elemn).prop("checked", true);
}
return false;
} else if (!state) {
switchCanCianAd(elemn);
}
}
function switchDomAdModr(elemn) {
let state = $(elemn).hasClass("active");
if (state) {
if (confirm("Убрать объект из рекламы? Если показ в рекламе уже был начат, то все ротации по объекту будут остановлены.")) {
switchDomAd(elemn);
} else {
// $(elemn).prop("checked", true);
}
return false;
} else if (!state) {
switchDomAd(elemn);
}
}
function switchCanEmlsAdModr(elemn) {
let state = $(elemn).hasClass("active");
if (state) {
if (confirm("Убрать объект из рекламы? Если показ в рекламе уже был начат, то все ротации по объекту будут остановлены.")) {
switchCanEmlsAd(elemn);
} else {
// $(elemn).prop("checked", true);
}
return false;
} else if (!state) {
switchCanEmlsAd(elemn);
}
}
function switchBnAdModr(elemn) {
let state = $(elemn).hasClass("active");
if (state) {
if (confirm("Убрать объект из рекламы? Если показ в рекламе уже был начат, то все ротации по объекту будут остановлены.")) {
switchBnAd(elemn);
} else {
// $(elemn).prop("checked", true);
}
return false;
} else if (!state) {
switchBnAd(elemn);
}
}
function advertsModerationSwitch(elemn) {
let object_id = $(elemn).data("id");
//console.log(object_id);
let user_id = $("#session_user_id").val();
let state = $(elemn).prop("checked");
$(".actionAdv").hide();
$('#advertisings_moderation__' + object_id).show();
$(elemn).prop("checked", !state);
//if ($object_id > 0) {
$.ajax({
url: '/ajax/dataClass/dataModerationClass.php',
method: "post",
data: {
'get_user_moderation': 1,
'user_id': user_id,
'object_id': object_id,
},
success: function(data) {
// console.log(data);
var res = JSON.parse(data);
if (!isEmpty(res.modr) || !isEmpty(res.obj)) {
console.log(res.obj.add_to_avito_feed);
if (res.modr.add_to_yandex_feed > 0 || res.obj.add_to_yandex_feed > 0) {
$('#advertisings_moderation__' + object_id + ' .addToFreeAdv').addClass('active');
} else {
$('#advertisings_moderation__' + object_id + ' .addToFreeAdv').removeClass('active');
}
if (res.modr.add_to_avito_feed > 0 || res.obj.add_to_avito_feed > 0) {
$('#advertisings_moderation__' + object_id + ' .addToAvito').addClass('active');
} else {
$('#advertisings_moderation__' + object_id + ' .addToAvito').removeClass('active');
}
if (res.modr.add_to_cian_feed > 0 || res.obj.add_to_cian_feed > 0) {
$('#advertisings_moderation__' + object_id + ' .addToCian').addClass('active');
} else {
$('#advertisings_moderation__' + object_id + ' .addToCian').removeClass('active');
}
if (res.modr.add_to_domclick_feed > 0 || res.obj.add_to_domclick_feed > 0) {
$('#advertisings_moderation__' + object_id + ' .addToDomClick').addClass('active');
} else {
$('#advertisings_moderation__' + object_id + ' .addToDomClick').removeClass('active');
}
if (res.modr.add_to_emls_feed > 0 || res.obj.add_to_emls_feed > 0) {
$('#advertisings_moderation__' + object_id + ' .addToEMLS').addClass('active');
} else {
$('#advertisings_moderation__' + object_id + ' .addToEMLS').removeClass('active');
}
if (res.modr.add_to_bn_feed > 0 || res.obj.add_to_bn_feed > 0) {
$('#advertisings_moderation__' + object_id + ' .addToBn').addClass('active');
} else {
$('#advertisings_moderation__' + object_id + ' .addToBn').removeClass('active');
}
}
if (!isEmpty(res.modr)) {
$('#advertisings_moderation__' + object_id + ' .send_moderaion').hide();
$('#advertisings_moderation__' + object_id + ' .done_send_moderation').show();
if (res.modr.is_moderation == 1) {
$('#advertisings_moderation__' + object_id + ' .done_send_moderation').text("Подтверждено");
}
} else {
$('#advertisings_moderation__' + object_id + ' .send_moderaion').show();
$('#advertisings_moderation__' + object_id + ' .done_send_moderation').hide();
}
$('#moderation_who_work_input_' + object_id).html(res.html);
$('#moderation_who_work_' + object_id).fastselect({
placeholder: 'Ответственные',
})
}
});
return false;
}
function send_moderation(object_id) {
var arr_who_work = $('#moderation_who_work_' + object_id).val();
var select_place = false;
//console.log(arr_who_whork);
$('#advertisings_moderation__' + object_id + ' .actionJW').each(function() {
if ($(this).hasClass('active')) {
select_place = true;
}
});
if (!select_place) {
alert("Вы не выбрали рекламные площадки!");
} else if (isEmpty(arr_who_work)) {
alert("Не выбраны модераторы!");
} else {
var comment = $('#moderation_comment_' + object_id).val();
// console.log(comment);
$.ajax({
url: '/ajax/dataClass/dataModerationClass.php',
method: "post",
data: {
'send_moderation': 1,
'object_id': object_id,
'who_work': JSON.stringify(arr_who_work),
'comment': comment,
},
success: function(data) {
//console.log(data);
var res = JSON.parse(data);
if (res.result == 'done') {
$('#addToAdvertSwitcher__' + object_id).prop('checked', true);
$('#advertisings_moderation__' + object_id + ' .send_moderaion').hide();
$('#advertisings_moderation__' + object_id + ' .done_send_moderation').show();
$('#advertisings_moderation__' + object_id + ' .done_send_moderation').text("Отправлено");
}
}
});
}
}
function confirm_moderation(object_id) {
$.ajax({
url: '/ajax/dataClass/dataModerationClass.php',
method: "post",
data: {
'confirm_moderation': 1,
'object_id': object_id,
},
success: function(data) {
console.log(data);
var res = JSON.parse(data);
if (res.result == 'done') {
$('#addToAdvertSwitcher__' + object_id).prop('checked', true);
$('#advertisings__' + object_id + ' .send_moderaion').hide();
$('#advertisings__' + object_id + ' .done_send_moderation').show();
}
}
});
}
function check_metro_add_object() {
if ($('#country_list_add_object').val() == 171) {
if ($('.id_rf_region option:selected').val() === '1' || $('.id_rf_region option:selected').val() === '19' ||
$('.id_rf_region option:selected').val() === '37' || $('.id_rf_region option:selected').val() === '55' ||
$('.id_rf_region option:selected').val() === '57' || $('.id_rf_region option:selected').val() === '66' || $('.id_rf_region option:selected').val() === '69') {
$('.metro_spb').hide();
$('.metro_other').show();
$('.custom-time-metro').show();
} else if ($('.id_rf_region option:selected').val() === '2') {
$('.metro_spb').show();
$('.custom-time-metro').show();
$('.metro_other').hide();
} else {
$('.metro_spb').hide();
$('.metro_other').hide();
$('.custom-time-metro').hide();
}
} else {
$('.metro_spb').hide();
$('.metro_other').hide();
$('.custom-time-metro').hide();
}
}
function confirmOnClients(clients) {
var user_id = $('#session_user_id').val();
var all = 0;
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
}
var clients_id = clients;
axios.post('/ajax/ajax_vue_requisitions.php', {
request: 'confirm_on_clients',
clients_id: clients_id,
user_id: user_id,
all: all,
}, )
.then((response) => {
console.log(response.data);
let funnel_id = $('#funnelIdClients').val();
let use_custom_funnel = $('#useCustomFunnel').val();
let section = 'clients';
// if (req_id != 0) {
section = 'requisitions';
// if (document.location.pathname == '/requisitions.php') {
get_list();
// }
// }
//console.log('conf' + section);
// get_funnels(funnel_id, section, use_custom_funnel);
/*closeConfirmReq();
this.getList();*/
})
.catch(function(error) {
console.log(error);
});
}
function open_stagebars_funnels(reqId){
if($('#funnels_adjacent_a_req_'+reqId).hasClass('active_show')){
close_stagebars_funnels(reqId);
} else {
$('#funnels_adjacent_a_req_'+reqId).addClass('active_show');
$('#funnels_adjacent_list_req_'+reqId).show();
}
}
function close_stagebars_funnels(reqId){
$('#funnels_adjacent_a_req_'+reqId).removeClass('active_show');
$('#funnels_adjacent_list_req_'+reqId).hide();
}
function get_select_who_work_task(selector, section, id){
if(section == 'client' && id == 0){
id = $('#submitClientInfoTextButtonNew').attr('data-id');
}
if(section == 'object' && id == 0){
id = $('#submitTextButton').attr('data-id');
}
$(selector+" .check_who_work").html(' ');
if(id > 0) {
//if ($(selector+" .check_who_work .who_work_tasks").length < 1) {
axios.post('/ajax/select_form_who_work_tasks.php',
{
id: id,
section: section
}
).then((response) => {
$(selector+" .check_who_work").html(response.data);
// $(selector+" .check_who_work .who_work_tasks").val(who_work);
$(selector+" .check_who_work .who_work_tasks").fastselect({
placeholder: 'Ответственный',
// onItemCreate: function() { $(this).find('.fstQueryInput').hide() },
});
})
.catch(function(error) {
console.log(error);
});
/* } else {
$(selector+" .check_who_work .who_work_tasks").fastselect().data('fastselect').destroy();
//$('#req-new-client-work-input').html(html);
//$(selector+" .check_who_work .who_work_tasks").val(who_work);
$(selector+" .check_who_work .who_work_tasks").fastselect({
placeholder: 'Ответственный',
onItemCreate: function() { $(this).find('.fstQueryInput').hide() },
});
}*/
}
}
function show_advert_all(){
$('.card-advert-all').removeClass('hidden');
$('#checkdox_avito_feed_all').prop('checked', true);
$('#checkdox_cian_feed_all').prop('checked', true);
$('#checkdox_yandex_feed_all').prop('checked', true);
$('#checkdox_dom_feed_all').prop('checked', true);
$('#checkdox_free_feed_all').prop('checked', true);
$('#checkdox_jcat_feed_all').prop('checked', true);
$('#checkdox_advert_all').prop('checked', true);
//$('#cian_promo_price_all').val('').attr('disabled', 'disabled');
}
function hide_advert_all() {
$('.card-advert-all').addClass('hidden');
}
$(document).ready(function() {
customSelect(".my-objects .card-advert-all select");
get_mes_clients();
get_mes_objects();
setInterval(get_mes_clients, 10000);
setInterval(get_mes_objects, 10000);
let area = $('body');
let areaHasLoaded = false;
if ($('.jw-new-residence').length)
area = $('.jw-new-residence');
/*if ($('.jw__objects').length)
area = $('.jw__objects');*/
if ($('.fr-system__objects').length)
area = $('.fr-system__objects');
if ($('.fr__users .users').length)
area = $('.fr__users .users');
if ($('.fr__users .partners').length)
area = $('.fr__users .partners');
if ($('.my-docs #docs_info_tab').length)
area = $('.my-docs #docs_info_tab');
/*if ($('.crm.new').length)
area = $('.crm.new');*/
if ($('#clients_list .clients').length)
area = $('#clients_list .clients');
/*if (area)
area.hide();*/
let preloaderDisabled = false;
if ($('.view-changer .view-kanban.active').length)
preloaderDisabled = true;
if (!area.hasClass('my-objects') && !area.hasClass('jw-clients') && !area.hasClass('jw-requisitions') && !area.hasClass('jw-agency-objects')) {
if (!preloaderDisabled) {
let loaderInterval = setInterval(() => {
if (area) {
//console.log({area});
if (
$('.object-content__preloader').css('display') == 'block' &&
!area.text().trim().length == 0
) {
$('.object-content__preloader').hide();
if (area.css('display') == 'none' || area.hasClass('hidden'))
area.show();
areaHasLoaded = true;
} else {
$('.object-content__preloader').show();
}
}
if (areaHasLoaded || area) {
$('.object-content__preloader').hide();
if (area) {
if (area.css('display') == 'none' || area.hasClass('hidden'))
area.show();
}
clearInterval(loaderInterval);
}
}, 600);
} else {
$('.object-content__preloader').hide();
}
}
$('body').on('click', '#confirm_button_group .confirmClient, .confirmExtensionRequisition, .unconfirmExtensionRequisition, .view_history_tasks', function() {
localStorage['collapse_push'] = 1;
checkTop();
$('.confirm_mess').html('');
get_mes_clients();
get_mes_objects();
});
$('body').on('click', '#total_confirm', function() {
localStorage['collapse_push'] = 0;
checkTop();
$('.confirm_mess').html('');
get_mes_clients();
get_mes_objects();
});
$('body').on('click', '.acceptAllClient', function () {
$('.confirm_mess .client-confirm[id^="client-confirm_message_other_"]').each(function () {
const messageId = $(this).attr('id').replace('client-confirm_message_other_', '');
const clientId = $(this).find('.confirmClient').attr('data-id');
const whoWork = $(this).find('.confirmClient').attr('data-manager');
const reqId = $(this).find('.confirmClient').attr('data-req');
const tr = $(this).find('.confirmClient').attr('data-tr');
//console.log({messageId, clientId, whoWork, reqId, tr});
// Убираем уведомление с экрана
$(this).remove();
// Формируем параметры запроса
let param = 'id=' + clientId +
'&who_work=' + whoWork +
'&tr=' + tr +
'&req_id=' + reqId;
// Отправляем AJAX-запрос на сервер
$.ajax({
url: '/ajax/confirmClient.php?' + param,
success: function(res) {
//console.log("Клиент принят", res);
// Обновляем интерфейс
let sort_order = $('select[name=sort_order]').val();
if ($('.pagination li.active a').text()) {
get_list($('.pagination li.active a').text(), sort_order, false);
} else {
get_list(null, sort_order, false);
}
// Удаляем бейджики
$("#menu_clients .jw__counter.new").remove();
$("#filter_confirm .counter").remove();
// Добавляем новые (если есть)
if (res != 0) {
var html = '' + res + ' ';
var html2 = '' + res + ' ';
$("#menu_clients span").after(html);
$("#filter_confirm a").after(html2);
}
// Обновляем воронки и уведомления
let funnel_id = $('#funnelIdClients').val();
let use_custom_funnel = $('#useCustomFunnel').val();
let section = 'clients';
if (reqId != 0) {
section = 'requisitions';
if (document.location.pathname == '/requisitions.php') {
requisitions.getList();
}
}
get_funnels(funnel_id, section, use_custom_funnel);
get_mes_clients(); // обновляем список уведомлений
}
});
});
// Удаляем кнопки "Свернуть всё" и "Принять всё", если уведомлений больше нет
if ($('.confirm_mess .object-confirm, .confirm_mess .client-confirm').length === 0) {
$('#confirm_button_group').remove();
}
checkTop();
});
$('body').on('click', '.acceptAllObjects', function () {
const $notifications = $('.confirm_mess .object-confirm');
const total = $notifications.length;
let completed = 0;
if (total === 0) {
alert("Нет объектов для принятия.");
return;
}
// Показываем прелоадер и скрываем кнопки
$notifications.each(function () {
const objectId = $(this).find('.confirmObject').attr('data-record-id');
if (objectId) {
$('#object-confirm__preloader__' + objectId).show();
$('#object-confirm__buttons__' + objectId).hide();
// Отправляем AJAX-запрос
$.ajax({
url: '/ajax/confirmObject.php?id=' + objectId,
success: function() {
console.log("Объект принят:", objectId);
completed++;
// Удаляем уведомление из DOM
$('#object-confirm_message' + objectId).remove();
// Если все запросы выполнены — перезагружаем страницу
if (completed === total) {
window.location.reload();
}
},
error: function() {
completed++;
if (completed === total) {
window.location.reload();
}
}
});
} else {
completed++;
}
});
// На случай, если все элементы не имеют `objectId` — избегаем бесконечного ожидания
if (total === completed) {
window.location.reload();
}
});
$(".complete-button").click(function() {
var id = $(this).attr('data-id');
$("#groupAB__" + id).toggleClass("active");
return false;
});
// Отправка формы добавлени/редактирования Клиента
$('#addEditNew').submit(function(e) {
e.preventDefault();
var ellada = $('#elladaAgency').attr("data-value");
var fio = $('#addEditNew [name=fio]').val();
var email = $('#addEditNew [name=email]').val();
var phone = $('#addEditNew [name=phone]').val();
var client_type = $("#ms-new-client-type").val();
var wazzap_chat_type = $("#wazzap_chat_type").val();
var wazzap_chat_id = $("#wazzap_chat_id").val();
var wazzap_channel_id = $("#wazzap_channel_id").val();
var wazzap_user_id = $("#wazzap_user_id").val();
var wazzap_integration_id = $("#wazzap_integration_id").val();
var client_rol = $("#ms-new-client-rol").val();
var property_type = $("#ms-new-client-objects-type").val();
var object_type = $("#ms-new-client-object").val();
var budget = $('#addEditNew [name=budget]').val();
var comment = $('#addEditNew [name=opis]').val().replace(/\n/g, " ");
var who_work = 0;
who_work = $("#ms-new-client-work").val();
var source = $("#ms-new-client-source").val();
var employee = $("#ms-new-client-partner").val();
var birthday = $('#addEditNew [name=birthday]').val();
var dArr = birthday.split(".");
var date = dArr[2] + "-" + dArr[1] + "-" + dArr[0];
var stage = 1;
$("#addEditNew .stagebar .stage.active .crm__small-stage").each(function() {
stage = $(this).data("stage");
});
var hot = 0
if ($('#addEditNew .form-block__hot-client').hasClass('active')) {
hot = 1;
}
var priority = 0
if ($('#addEditNew .form-block__p1-client').hasClass('active')) {
priority = 1;
}
if ($('#addEditNew .form-block__p2-client').hasClass('active')) {
priority = 2;
}
if ($('#addEditNew .form-block__p3-client').hasClass('active')) {
priority = 3;
}
if ($('#addEditNew .form-block__p4-client').hasClass('active')) {
priority = 4;
}
var id = $('#addEditNew [name=id]').val();
var confirm = 0;
confirm = $('#addEditNew #confirm').val();
var of_objects = $('#of_objects').val();
var phone2 = [];
$("#addEditNew [name=phone2]").each(function() {
if ($(this).val() != '') {
phone2.push($(this).val());
}
});
var objects = '';
if (object_type) {
objects = JSON.stringify(object_type);
}
var funnel_id = $("#ms-new-funnel").val();
// console.log(client_rol);
var text = "";
var error = false;
$(this).find('input, textarea, checkbox, select').each(function() {
if ($(this).attr('required') && $(this).val() === '') {
let label = $(this).closest('.form-block').find('label, .label').text();
text += 'Поле «' + label + '» обязательно к заполнению. ';
$(this).addClass('invalid');
} else {
$(this).removeClass('invalid');
}
});
var id_reqs = '';
id_reqs = $("#ms-new-client-req").val();
var persone_no_ip = 0;
if($('#persone_yes_ip').prop('checked')){
persone_no_ip = 1;
}
var persone_gender = 0;
if($('#persone_gender_woman').prop('checked')){
persone_gender = 1;
}
var agencyID = $('#session_agency_id').val();
if (ellada === '0' && agencyID != 8257 && agencyID != 7384 && agencyID != 11082 && agencyID != 11082
&& agencyID != 12556 && agencyID != 13154 && agencyID != 14134 && agencyID != 11417
&& agencyID != 12028 && agencyID != 18237 && agencyID != 19111
&& agencyID != 19794 && agencyID != 22666) {
if (agencyID == 8435 && funnel_id == 283) {
} else {
if (client_rol == null) {
text += "Не заполнено поле Роль клиента ";
error = true;
$('#addEditNew #ms-new-client-rol').addClass('invalid');
$('#addEditNew #ms-new-client-rol').closest('.fstElement').addClass('invalid');
// $('#addEditNew .error_msg').html(text).show();
} else {
$('#addEditNew #ms-new-client-rol').removeClass('invalid');
$('#addEditNew #ms-new-client-rol').closest('.fstElement').removeClass('invalid');
}
if (client_type == null) {
text += "Не заполнено поле Тип клиента ";
error = true;
$('#addEditNew #ms-new-client-type').addClass('invalid');
$('#addEditNew #ms-new-client-type').closest('.fstElement').addClass('invalid');
//$('#addEditNew .error_msg').html(text).show();
} else {
$('#addEditNew #ms-new-client-type').removeClass('invalid');
$('#addEditNew #ms-new-client-type').closest('.fstElement').removeClass('invalid');
}
}
}
//Ввод обязательных полей для ПИА (email, рекламный источник)
if (agencyID == 4135 || agencyID == 7384 || agencyID == 7864 || agencyID == 13154 || agencyID ==19111) {
/*if(ac.isEmpty(email)){
text += "Не заполнено поле email ";
error = true;
$('#addEditNew input[name="email"]').addClass('invalid');
} else {
if(ac.validateEmail(email) === false){
text += "Неверный формат email ";
error = true;
$('#addEditNew input[name="email"]').addClass('invalid');
} else {
$('#addEditNew input[name="email"]').removeClass('invalid');
}
}*/
//console.log(source);
if (isEmpty(source) || source == 0) {
text += "Не выбран рекламный источник ";
error = true;
$('#addEditNew #ms-new-client-source').addClass('invalid');
$('#addEditNew #ms-new-client-source').closest('.fstElement').addClass('invalid');
} else {
$('#addEditNew #ms-new-client-source').removeClass('invalid');
$('#addEditNew #ms-new-client-source').closest('.fstElement').removeClass('invalid');
}
}
var poles = {};
if (typeof client_fields != "undefined") {
if (!client_fields.isEmpty(client_fields.clientFields)) {
for (var i = 0; i < client_fields.clientFields.length; i++) {
if (!client_fields.isEmpty(client_fields.fieldModels['model_' + client_fields.clientFields[i].id]) && client_fields.fieldModels['model_' + client_fields.clientFields[i].id]) {
if (client_fields.clientFields[i].type == 4) {
poles['model_' + client_fields.clientFields[i].id] = 1;
} else {
poles['model_' + client_fields.clientFields[i].id] = client_fields.fieldModels['model_' + client_fields.clientFields[i].id];
}
}
if (client_fields.clientFields[i].is_podgroup > 0) {
for (var j = 0; j < client_fields.clientFields[i].podgroups.length; j++) {
//console.log(client_fields.fieldModels['modelp_11']);
if (!client_fields.isEmpty(client_fields.fieldModels['modelp_' + client_fields.clientFields[i].podgroups[j].id]) && client_fields.fieldModels['modelp_' + client_fields.clientFields[i].podgroups[j].id]) {
if (client_fields.clientFields[i].podgroups[j].type == 4) {
poles['modelp_' + client_fields.clientFields[i].podgroups[j].id] = 1;
} else {
poles['modelp_' + client_fields.clientFields[i].podgroups[j].id] = client_fields.fieldModels['modelp_' + client_fields.clientFields[i].podgroups[j].id];
}
}
}
}
if (client_fields.clientFields[i].is_required > 0) {
if (client_fields.isEmpty(client_fields.fieldModels['model_' + client_fields.clientFields[i].id])) {
error = true;
text += "Не заполнено поле: " + client_fields.clientFields[i].title + "
";
$('#custom_client_' + client_fields.clientFields[i].id).addClass('invalid');
} else {
$('#custom_client_' + client_fields.clientFields[i].id).removeClass('invalid');
}
}
}
}
}
var rynok = 1;
if ($('#rynok_2').prop('checked')) {
rynok = 2;
}
//console.log(rynok);
var yes_object = 0;
if ($('#addEditNew [name=yes_object]').prop('checked')) {
yes_object = 1;
}
var yes_doc = 0;
if ($('#addEditNew [name=yes_doc]').prop('checked')) {
yes_doc = 1;
}
var yes_bank = 0;
if ($('#addEditNew [name=yes_bank]').prop('checked')) {
yes_bank = 1;
}
var yes_resolve = 0;
if ($('#addEditNew [name=yes_resolve]').prop('checked')) {
yes_resolve = 1;
}
var send_web_hook = 0;
if ($('#addEditNew [name=send_web_hook]').prop('checked')) {
send_web_hook = 1;
}
var yes_issue = 0;
if ($('#addEditNew [name=yes_issue]').prop('checked')) {
yes_issue = 1;
}
var yes_brak = 0;
if ($('#addEditNew [name=yes_brak]').prop('checked')) {
yes_brak = 1;
}
var banks = {};
$('.probank .list_bank').each(function() {
var bank = {};
var bankid = $(this).find('.adv_activities').attr("data-id");
var bankname = $(this).find('.adv_activities').text();
var bankemp = $(this).find('.adv_activities').attr("data-employee");
var bankdate = $(this).find('.adv_activities').attr("data-date");
bank.employee = bankemp;
bank.date = bankdate;
bank.name = bankname;
banks[bankid] = bank;
});
var resolve = {};
$('.proresolve .list_bank').each(function() {
var resol = {};
var resolid = $(this).find('.adv_activities').attr("data-id");
var resolname = $(this).find('.adv_activities').text();
var resolsumma = $(this).find('.adv_activities').attr("data-summa");
var resolprstavka = $(this).find('.adv_activities').attr("data-prstavka");
var resolsrok = $(this).find('.adv_activities').attr("data-srok");
var resolusloviya = $(this).find('.adv_activities').attr("data-usloviya");
resol.name = resolname;
resol.summa = resolsumma;
resol.prstavka = resolprstavka;
resol.srok = resolsrok;
resol.usloviya = resolusloviya;
resolve[resolid] = resol;
});
var contracts = [];
$('#list_contracts_client_form div label').each(function() {
var contr = $(this).closest("div");
if (contr.length > 0 && contr.attr("data-client") == 0 && contr.attr("data-contract") == 0) {
contracts.push(JSON.parse(contr.attr("data-data")));
}
})
var params = {
add_edit_client: 'add_edit_client',
fio: fio,
email: email,
phone: phone,
phone2: JSON.stringify(phone2),
work_type: JSON.stringify(client_type),
role: JSON.stringify(client_rol),
activities: JSON.stringify($('#ms-new-client-activities').val()),
type: JSON.stringify(property_type),
objects: objects,
budget: budget,
opis: comment,
who_work: who_work,
source: source,
employee: employee,
birthday: date,
confirm: confirm,
status: stage,
stage: stage,
hot: hot,
priority: priority,
id: id,
of_objects: of_objects,
rynok: rynok,
yes_object: yes_object,
jc: JSON.stringify($('#ms_new_blocks').val()),
ante_pr: $('#addEditNew [name=ante_pr]').val(),
ante_rub: $('#addEditNew [name=ante_rub]').val(),
comment_ipoteka: $('#addEditNew [name=comment]').val(),
yes_doc: yes_doc,
number_doc: $('#addEditNew [name=number_doc]').val(),
date_doc: $('#addEditNew [name=date_doc]').val(),
doc_komis_pr: $('#addEditNew [name=doc_komis_pr]').val(),
doc_komis: $('#addEditNew [name=doc_komis]').val(),
yes_bank: yes_bank,
date_bank: $('#addEditNew [name=date_bank]').val(),
employee_bank: $('#addEditNew [name=employee_bank]').val(),
banks: JSON.stringify(banks),
yes_resolve: yes_resolve,
resolve: JSON.stringify(resolve),
comment_resolve: $('#addEditNew [name=comment_resolve]').val(),
yes_issue: yes_issue,
bank_issue: JSON.stringify($('#addEditNew #ms-new-client-bank-issue').val()),
rate_issue: $('#addEditNew [name=rate_issue]').val(),
term_issue: $('#addEditNew [name=term_issue]').val(),
send_web_hook: send_web_hook,
yes_brak: yes_brak,
relationship: $('#addEditNew [name=relationship]').val(),
summa_object: $('#addEditNew [name=summa_object]').val(),
age: $('#addEditNew [name=age]').val(),
co_borrower_fio: $('#addEditNew [name=co_borrower_fio]').val(),
co_borrower_age: $('#addEditNew [name=co_borrower_age]').val(),
contacts: $('#addEditNew [name=contacts]').val(),
co_borrower_dohod: $('#addEditNew [name=co_borrower_dohod]').val(),
income: $('#addEditNew [name=income]').val(),
credit_load: $('#addEditNew [name=credit_load]').val(),
contracts: JSON.stringify(contracts),
wazzap_chat_type: wazzap_chat_type,
wazzap_chat_id: wazzap_chat_id,
wazzap_channel_id: wazzap_channel_id,
wazzap_user_id: wazzap_user_id,
wazzap_integration_id: wazzap_integration_id,
persone_no_ip: persone_no_ip,
passport: $('#addEditNew [name=passport]').val(),
date_of_issue_passport: $('#addEditNew [name=date_of_issue_passport]').val(),
passport_issued_by: $('#addEditNew [name=passport_issued_by]').val(),
birthplace: $('#addEditNew [name=birthplace]').val(),
registration_address: $('#addEditNew [name=registration_address]').val(),
post_address: $('#addEditNew [name=post_address]').val(),
persone_info_bank: $('#addEditNew [name=persone_info_bank]').val(),
persone_snils: $('#addEditNew [name=persone_snils]').val(),
persone_nationality: $('#addEditNew [name=persone_nationality]').val(),
persone_gender: persone_gender,
persone_full_name: $('#addEditNew [name=persone_full_name]').val(),
persone_short_name: $('#addEditNew [name=persone_short_name]').val(),
persone_ogrn: $('#addEditNew [name=persone_ogrn]').val(),
persone_inn: $('#addEditNew [name=persone_inn]').val(),
persone_kpp: $('#addEditNew [name=persone_kpp]').val(),
persone_legal_address: $('#addEditNew [name=persone_legal_address]').val(),
persone_fact_address: $('#addEditNew [name=persone_fact_address]').val(),
persone_name_bank: $('#addEditNew [name=persone_name_bank]').val(),
persone_bik_bank: $('#addEditNew [name=persone_bik_bank]').val(),
persone_rs_bank: $('#addEditNew [name=persone_rs_bank]').val(),
persone_kors_bank: $('#addEditNew [name=persone_kors_bank]').val(),
persone_fio_rukovod: $('#addEditNew [name=persone_fio_rukovod]').val(),
persone_powers: $('#addEditNew [name=persone_powers]').val(),
persone_kod_podrazdelenia: $('#addEditNew [name=persone_kod_podrazdelenia]').val(),
id_reqs: id_reqs
}
if (funnel_id != '') {
params['funnel_id'] = funnel_id;
params['new_funnel_id'] = funnel_id;
//console.log(var stage = $('#kanban_item_li_' + id_client).closest('.kanban__sortable').data("stage"););
}
if ($("#ms-new-funnel").is(":visible")) {
params['new_funnel_id'] = $("#ms-new-funnel").val();
}
$('#block_client_kredit .form-block').each(function() {
$(this).find('select').each(function() {
params[$(this).attr('name')] = JSON.stringify($(this).val());
});
$(this).find('input[type=text]').each(function() {
params[$(this).attr('name')] = $(this).val();
});
$(this).find('input[type=checkbox]').each(function() {
if ($(this).prop('checked')) {
params[$(this).attr('name')] = 1;
} else {
params[$(this).attr('name')] = 0;
}
});
$(this).find('input[type=radio]:checked').each(function() {
params[$(this).attr('name')] = $(this).attr('id');
});
});
// Поля для заполнения интерактивных документов
$('#addEditNew input[name^="variables"]').each(function() {
params[$(this).attr('name')] = ((typeof $(this).val() !== "undefined") ? $(this).val() : "");
});
if (error) {
$('#addEditNew .error_msg').html(text).show();
if ($(this).find('.invalid:visible').length > 0) {
let offset = Math.abs($(this).offset().top - $(this).find('.invalid:visible').first().offset().top);
console.log(offset);
$('.full_modal-bg').stop().animate({ scrollTop: Math.round(offset) }, '300');
} else {
$('.full_modal-bg').stop().animate({ scrollTop: 0 }, '500');
}
} else {
if($('#session_user_id').val() == 5238 || $('#session_user_id').val() == 14050){
if(confirm == 0){
confirm_object_req_check.check_obj(id, who_work).then(data => {
console.log(data);
if(data != 0 && data.length > 0){
confirm_object_req_check.open();
} else {
save_client(params, funnel_id, poles);
}
});
} else {
save_client(params, funnel_id, poles);
}
/**/
} else {
$('#addEditNew .load-bar').removeClass('hidden');
$('#newClient').addClass('hidden');
//console.log(params);
$.post('/ajax/addEditClient.php',
params,
function(data) {
// console.log(data);
// console.log(funnel_id);
if (data > 1) {
//console.log(funnel_id);
if ($('.view-kanban.active').length > 0) {
if (id && id !== undefined) {
if (funnel_id != 0) {
stage = $('#kanban_item_li_' + id).closest('.kanban__sortable').data("stage");
//console.log(stage);
}
if(document.location.pathname == '/clients.php'){
get_kanban_li(id, stage, priority);
// console.log(funnel_id);
let globalFunnel = $('#funnelIdClients').val();
if(funnel_id != globalFunnel){
$(`#kanban_item_li_${id}`).hide();
get_count_clients();
}
}
} else {
let sort_order = $('select[name=sort_order]').val();
get_list(null, sort_order, false);
}
} else {
let sort_order = $('select[name=sort_order]').val();
if ($('.pagination li.active a').text()) {
get_list($('.pagination li.active a').text(), sort_order, false);
} else {
get_list(null, sort_order, false);
}
}
//Сохранение кастомных полей
if (typeof client_fields != "undefined") {
client_fields.addEditFields(poles, data);
}
// console.log(id_reqs.split(','));
if (id_reqs != '') {
if (document.location.pathname == '/requisitions.php') {
var reqs = id_reqs.split(',');
for (var req_id in reqs) {
if (!isNaN(parseInt(reqs[req_id]))) {
var req_client = requisitions.req['req' + reqs[req_id]];
if (req_client && !isEmpty(req_client.client)) {
requisitions.req['req' + reqs[req_id]].client.fio = fio;
}
}
}
//requisitions.getList();
//console.log()
//getClient(data, JSON.parse(id_reqs)[0]);
}
axios.post('/ajax/ajax_vue_requisitions.php', {
request: 'update_req',
req_id: id_reqs,
object_id: objects,
client_id: data,
},
)
.then((response) => {
//console.log(response.data);
// var res = response.data;
// this.closeReqform();
})
.catch(function(error) {
console.log(error);
});
}
if (window.location.pathname == '/add-object.php') {
getSelectClients(data);
add_object_new_client_input_vue(data);
}
if (window.location.pathname == '/my-objects.php' || window.location.pathname == '/agency-objects.php') {
add_object_new_client_input_vue(data);
}
if ($('#client-history__bg').css("display") == 'block') {
if(document.location.pathname == '/requisitions.php'){
if(parseInt($("#client_history").attr("data-active-req")) == id){
openClientEventsWindowNew(id, $('#session_to_send').val());
}
} else {
openClientEventsWindowNew(id, $('#session_to_send').val());
}
}
$('#send_bg_new').fadeOut(500);
$("#send_bg_new .edit-modal").toggle(10);
$("body").removeClass("lock");
var komy = 0;
$('#komy option').each(function() {
if ($(this).val() == email) komy++;
});
if (komy == 0) {
$('#komy').prepend('' + fio + ' ');
}
if (typeof req_form == 'object') {
if (req_form.isClientForm) {
req_form.clientId = parseInt(data);
req_form.isClientForm = false;
req_form.openReqForm(1);
$('#req_form').removeAttr("style");
}
}
$('#addEditNew .load-bar').addClass('hidden');
$('#newClient').removeClass('hidden');
} else {
$('#addEditNew .error_msg').html(data).show();
//$('#addEditNew .error_msg').next().text('Клиент '+fio);
$('#addEditNew .modal-title').text('Клиент ' + fio);
$(".full_modal-bg").stop().animate({ scrollTop: 0 }, 500);
$('#addEditNew .load-bar').addClass('hidden');
$('#newClient').removeClass('hidden');
}
});
}
}
//console.log(fio);
return false;
});
$("body").on('click', '#send_bg_plan .closer', function() {
$("#send_bg_plan").fadeOut(500);
$("#send_plan").hide(10);
$("body").removeClass("lock");
return false;
});
$('body').on('click', '#liObject', function() {
$('#liGlobal').removeClass('active');
$('#liIpoteka').removeClass('active');
$('#liCredit').removeClass('active');
$('#liReq').removeClass('active');
$('#liDeals').removeClass('active');
$(this).addClass('active');
$('#addEditNew .tabs__content').hide();
$('#addEditNew .tabs__content:eq(1)').show();
});
$('body').on('click', '#liGlobal', function() {
$('#liObject').removeClass('active');
$('#liIpoteka').removeClass('active');
$('#liCredit').removeClass('active');
$('#liReq').removeClass('active');
$('#liInnerDocs').removeClass('active');
$('#liDeals').removeClass('active');
$(this).addClass('active');
$('#addEditNew .tabs__content').hide();
$('#addEditNew .tabs__content:eq(0)').show();
});
$('body').on('click', '#liIpoteka', function() {
$('#liObject').removeClass('active');
$('#liGlobal').removeClass('active');
$('#liCredit').removeClass('active');
$('#liReq').removeClass('active');
$('#liInnerDocs').removeClass('active');
$('#liDeals').removeClass('active');
$(this).addClass('active');
$('#addEditNew .tabs__content').hide();
$('#addEditNew .tabs__content:eq(2)').show();
});
$('body').on('click', '#liCredit', function() {
$('#liObject').removeClass('active');
$('#liGlobal').removeClass('active');
$('#liIpoteka').removeClass('active');
$('#liReq').removeClass('active');
$('#liInnerDocs').removeClass('active');
$('#liDeals').removeClass('active');
$(this).addClass('active');
$('#addEditNew .tabs__content').hide();
$('#addEditNew .tabs__content:eq(3)').show();
});
$('body').on('click', '#liReq', function() {
$('#liObject').removeClass('active');
$('#liGlobal').removeClass('active');
$('#liIpoteka').removeClass('active');
$('#liCredit').removeClass('active');
$('#liInnerDocs').removeClass('active');
$('#liDeals').removeClass('active');
$(this).addClass('active');
$('#addEditNew .tabs__content').hide();
$('#addEditNew .tabs__content:eq(4)').show();
if (typeof requisitions_client == 'object') {
requisitions_client.getList();
}
});
$('body').on('click', '#liDeals', function() {
$('#liObject').removeClass('active');
$('#liGlobal').removeClass('active');
$('#liIpoteka').removeClass('active');
$('#liCredit').removeClass('active');
$('#liReq').removeClass('active');
$('#liInnerDocs').removeClass('active');
$(this).addClass('active');
$('#addEditNew .tabs__content').hide();
$('#addEditNew .tabs__content:eq(6)').show();
if (typeof deals_client == 'object') {
deals_client.getList();
}
});
$('body').on('click', '#liInnerDocs', function() {
$('#liObject').removeClass('active');
$('#liGlobal').removeClass('active');
$('#liIpoteka').removeClass('active');
$('#liCredit').removeClass('active');
$('#liReq').removeClass('active');
$('#liDeals').removeClass('active');
$(this).addClass('active');
$('#addEditNew .tabs__content').hide();
$('#addEditNew .tabs__content:eq(5)').show();
let source_id = $('#addEditNew input[name="id"]').val();
getFormVariables("clients", source_id);
});
// Открыть блок с подробностями
$('body').on('click', '#clients_list .toggleClient', function() {
var id = $(this).data("id");
var user_allow_edit = $(this).data("allow-edit");
if ($('#client__' + id + ' .main-info').hasClass("hidden")) {
$.get("/ajax/getClientMainInfo.php?id=" + id + "&user_allow_edit=" + user_allow_edit, function(data) {
$('#client__' + id + ' .main-info').replaceWith(data);
$('#client__' + id + ' .main-info').toggleClass('hidden');
$('#client__' + id + ' .client_row').toggleClass('hidden');
});
} else {
$('#client__' + id + ' .main-info').toggleClass('hidden');
$('#client__' + id + ' .client_row').toggleClass('hidden');
}
});
// Кнопка добавить клиента
$('body').on('click', '.add_client_new', function() {
$("#addReqClientForm").hide();
var object = $(this).data("object");
var add_user = $(this).data("adduser");
var req_id = null;
if ($(this).attr("data-req")) {
req_id = $(this).attr("data-req");
}
var client_name = null;
if ($(this).attr("data-client-name")) {
client_name = $(this).attr("data-client-name");
}
add_client_new(object, add_user, req_id, client_name);
return false;
});
$('body').on('click', '.complete-action-button', function() {
var event_id = $(this).attr('id').replace('groupAB__', '');
var cancel = parseInt($(this).attr("data-cancel"));
//console.log(isNaN(cancel));
if (cancel == 0 || isNaN(cancel)) {
var done = 0;
$(this).toggleClass('active');
if ($(this).hasClass('active')) {
done = 1;
}
if (done == 0) {
$(this).closest('.chat-complete').find('.evCancel').removeClass('hidden');
} else {
$(this).closest('.chat-complete').find('.evCancel').addClass('hidden');
}
// console.log(done);
$.post('/ajax/addEditClient.php', { done_event: event_id, done: done }, function(data) {
getCalendar();
});
}
});
$('body').on('click', '.complete-action-button-obj', function() {
var event_id = $(this).attr('id').replace('groupAB__', '');
var done = 0;
$(this).toggleClass('active');
if ($(this).hasClass('active')) {
done = 1;
}
//console.log(done);
$.post('/ajax/addEditObject.php', { done_event: event_id, done: done }, function(data) {
//console.log(data);
if (typeof type_calendar == 'object') {
type_calendar = 'object';
}
getCalendar();
});
});
// Кнопка inssmart
$("body").on('click', '.openInssmartModule', () => {
$('#inssmart_modal').show();
$('#inssmart_modal').css('zIndex', '99987000');
});
$("body").on('click', '.ti-close', () => {
$("#inssmart_modal").hide();
});
//Кнопка редактирование
$("body").on('click', '.neweditClient', function() {
$('#addReqClientForm').show();
var id = $(this).attr('data-id');
var funnelId = $(this).data("funnel");
if (funnelId === undefined || funnelId == 0) {
$.post("/ajax/getFunnelFirst.php", function(dataf) {
console.log(dataf);
var res_funnels = JSON.parse(dataf);
if(res_funnels.is_stage == 0){
$('#is_show_funnel_null').val(0);
} else {
$('#is_show_funnel_null').val(1);
}
})
}
var req_id = 0;
if ($(this).attr("data-req")) {
req_id = $(this).attr("data-req");
}
if (req_id > 0) {
if (typeof requisitions == 'object') {
requisitions.getReq("req" + req_id);
} else if (typeof requisitions_client == 'object') {
requisitions_client.getReq("req" + req_id);
}
if ($('#client-history__bg').css('display') == 'block') {
$('#client-history__bg').css('zIndex', '99987');
}
} else {
editClientNew(id, funnelId);
}
return false;
});
// Возврат клиента из Закрытых
$("body").on('click', '.renewClient', function(e) {
e.preventDefault();
let id = $(this).attr('data-id');
if (confirm('Вы точно желаете восстановить этого клиента?')) {
renewClient(id);
}
return false;
});
// Возврат заявки из Закрытых
$("body").on('click', '.renewReq', function(e) {
e.preventDefault();
let id = $(this).attr('data-id');
if (confirm('Вы точно желаете восстановить эту заявку?')) {
renewReq(id, true);
}
return false;
});
// Отправка формы добавлени/редактирования Объекта
$('#upload-form [type="submit"]').on('click', function(e) {
e.preventDefault();
let form = $(this).closest('#upload-form');
let text = "";
let error = false;
$(form).find('input, textarea, checkbox, select').each(function() {
if ($(this).attr('required') && $(this).val() === '') {
let label = $(this).closest('.form-block').find('label, .label').text();
if (label)
text += 'Поле «' + label + '» обязательно к заполнению. ';
$(this).addClass('invalid');
error = true;
} else {
$(this).removeClass('invalid');
}
});
$(form).find('#customFieldsInputsForm').find('input, textarea, checkbox').each(function() {
//console.log($(this).attr('name') + ': '+ $(this).val());
//if (!$(this).hasClass('invalid')) { // уже отвалидирован и не валиден
if ($(this).attr('required') && (!$(this).val() || $(this).val() === '')) {
let label = $(this).closest('.title-line').find('label, .label').text();
if (label)
text += 'Дополнительное поле «' + label + '» обязательно к заполнению. ';
$(this).addClass('invalid');
error = true;
} else {
$(this).removeClass('invalid');
}
//}
});
$(form).find('#customFieldsInputsForm').find('select').each(function() {
//console.log($(this).attr('name') + ': '+ $(this).val());
//if (!$(this).closest('.fstElement').hasClass('invalid')) { // уже отвалидирован и не валиден
if (!$(this).val() || $(this).val() == 0)
$(this).val('');
if ($(this).attr('required') && (!$(this).val() || $(this).val() === '')) {
let label = $(this).closest('.title-line').find('label, .label').text();
if (label)
text += 'Дополнительное поле «' + label + '» обязательно к заполнению. ';
$(this).closest('.fstElement').addClass('invalid');
error = true;
} else {
$(this).closest('.fstElement').removeClass('invalid');
}
//}
});
let ob_operation_type = $(form).find('[name="operation_type"]:checked').val();
let ob_type = $(form).find('[name="type"]:checked').val();
if ($('.cadastral-number').is(":visible")) {
if ($('input[name=cadastral_number]').is(":visible")) {
let cadastral = $('input[name=cadastral_number]');
if (($('#session_agency_id').val() === '13386' ||
(($('#session_agency_id').val() === '14794' || $('#session_agency_id').val() === '10982') && ob_type == 7) ||
($('#session_agency_id').val() === '12061' && ob_operation_type && ob_operation_type == 0 && ob_type && (ob_type == 1 || ob_type == 2 || ob_type == 3 || ob_type == 7))) && (!cadastral.val() || cadastral.val() === '')) {
text += "Необходимо указать Кадастровый номер ";
error = true;
cadastral.addClass('invalid');
} else {
cadastral.removeClass('invalid');
}
}
}
if ($('.cadastral-number-land').is(":visible")) {
if ($('input[name=cadastral_number_land]').is(":visible")) {
let cadastralLand = $('input[name=cadastral_number_land]');
if (($('#session_agency_id').val() === '13386' || (($('#session_agency_id').val() === '14794' || $('#session_agency_id').val() === '10982') && (ob_type == 3 || ob_type == 5)) ||
($('#session_agency_id').val() === '12061' && ob_operation_type && ob_type && (
(ob_operation_type == 0 && (ob_type == 1 || ob_type == 2 || ob_type == 3 || ob_type == 7)) ||
(ob_operation_type == 1 && (ob_type == 3 || ob_type == 7))
))) && (!cadastralLand.val() || cadastralLand.val() === '')) {
text += "Необходимо указать Кадастровый номер участка ";
error = true;
cadastralLand.addClass('invalid');
} else {
cadastralLand.removeClass('invalid');
}
}
}
if (!ob_operation_type) {
text += "Необходимо указать раздел ";
error = true;
$(form).find('[name="operation_type"]').closest('.button-row').addClass('invalid');
} else {
$(form).find('[name="operation_type"]').closest('.button-row').removeClass('invalid');
}
if (!ob_type) {
text += "Необходимо указать тип объекта ";
error = true;
$(form).find('[name="type"]').closest('.button-row').addClass('invalid');
} else {
$(form).find('[name="type"]').closest('.button-row').removeClass('invalid');
}
let ob_srok = $(form).find('[name="srok"]:checked').val();
if (ob_operation_type == 0 && !ob_srok) {
text += "Необходимо указать срок ";
error = true;
$(form).find('[name="srok"]').closest('.button-row').addClass('invalid');
} else {
$(form).find('[name="srok"]').closest('.button-row').removeClass('invalid');
}
let ob_adres = $(form).find('[name="adres"]').val();
let ob_address = $(form).find('[name="address"]').val();
if ((ob_address == 0 || typeof ob_address == "undefined") || (!ob_adres)) {
text += "Необходимо указать адрес объекта ";
error = true;
$(form).find('[name="address"]').addClass('invalid');
} else {
$(form).find('[name="address"]').removeClass('invalid');
}
let ob_comm_obj_id = $(form).find('[name="commercial_object_id"]:checked').val();
let ob_deal_type = $(form).find('[name="deal_type"]').val();
if (ob_type != 3 && ob_type != 5 && ob_type != 7 && ob_comm_obj_id != 6 && ob_comm_obj_id != 7 && ob_comm_obj_id != 9) {
let ob_etazh = $(form).find('[name="etazh"]').val();
if (ob_etazh == 0 || typeof ob_etazh == "undefined") {
text += "Необходимо указать этаж объекта ";
error = true;
$(form).find('[name="etazh"]').addClass('invalid');
} else {
$(form).find('[name="etazh"]').removeClass('invalid');
}
}
if (ob_type == 1 || ob_type == 2) {
let komnat = $(form).find('[name="komnat"]').val();
let ploshad_komn = $(form).find('[name="ploshad_komn"]').val();
if (!komnat) {
if (ob_type === 1) {
text += "Необходимо заполнить поле Комнат ";
} else {
text += "Необходимо заполнить поле Всего комнат в квартире ";
}
error = true;
$(form).find('[name="komnat"]').addClass('invalid');
} else {
$(form).find('[name="komnat"]').removeClass('invalid');
}
if (!ploshad_komn) {
text += "Необходимо заполнить поле Площадь комнат ";
error = true;
$(form).find('[name="ploshad_komn"]').addClass('invalid');
} else {
$(form).find('[name="ploshad_komn"]').removeClass('invalid');
}
}
if (ob_type == 2) {
let roomsCount = $(form).find('[name="vsego_komn"]').val();
if (!roomsCount) {
error = true;
text += "Необходимо заполнить поле Кол-во комнат в сделке ";
$(form).find('[name="vsego_komn"]').addClass('invalid');
} else {
$(form).find('[name="vsego_komn"]').removeClass('invalid');
}
}
$(form).find('.renovation-star').css('display', 'none');
if (ob_type == 1) {
let komType = $(form).find('[name="avito_room_type_id"]').val();
if (komType == 0 || typeof komType == "undefined") {
text += "Необходимо указать Тип комнат ";
error = true;
$(form).find('[name="avito_room_type_id"]').addClass('invalid');
} else {
$(form).find('[name="avito_room_type_id"]').removeClass('invalid');
}
if (ob_deal_type == 1 || ob_deal_type == 2)
{
// Get and clean the values
let ob_ploshad = parseFloat($(form).find('[name="ploshad"]').val().replace(/,/g, ""));
if (isNaN(ob_ploshad) || ob_ploshad <= 0) {
text += "Необходимо указать общую площадь ";
error = true;
$(form).find('[name="ploshad"]').addClass('invalid');
}
let ob_ploshad_k = parseFloat($(form).find('[name="ploshad_k"]').val().replace(/,/g, ""));
if (isNaN(ob_ploshad_k) || ob_ploshad_k <= 0) {
text += "Необходимо указать площадь кухни ";
error = true;
$(form).find('[name="ploshad_k"]').addClass('invalid');
}
let ob_renovation = $(form).find('[name="renovation"]').val();
if (ob_renovation <= 0 || typeof ob_renovation == "undefined") {
text += "Необходимо указать информацию о ремонте ";
error = true;
$(form).find('[name="renovation"]').addClass('invalid');
$(form).find('.renovation-star').css('display', 'inline-block');
}
}
}
if (ob_type != 7 && ob_comm_obj_id != 7 && ob_comm_obj_id != 9) {
let ob_etazhnost = $(form).find('[name="etazhnost"]').val();
if (ob_etazhnost == 0 || typeof ob_etazhnost == "undefined") {
text += "Необходимо указать общее количество этажей объекта ";
error = true;
$(form).find('[name="etazhnost"]').addClass('invalid');
} else {
$(form).find('[name="etazhnost"]').removeClass('invalid');
}
}
if (ob_type == 7 || ob_type == 3) {
let ob_land_area = $(form).find('[name="land_area"]').val();
if (ob_land_area == 0 || typeof ob_land_area == "undefined") {
text += "Необходимо указать площадь участка ";
error = true;
$(form).find('[name="land_area"]').addClass('invalid');
} else {
$(form).find('[name="land_area"]').removeClass('invalid');
}
}
if (ob_type == 7 || ob_type == 3 || ob_type == 5) {
let ob_land_ut = $(form).find('[name="land_usage_type_id"]').val();
if (ob_land_ut == 0 || typeof ob_land_ut == "undefined") {
text += "Необходимо указать Использование земли ";
error = true;
$(form).find('[name="land_usage_type_id"]').addClass('invalid');
} else {
$(form).find('[name="land_usage_type_id"]').removeClass('invalid');
}
}
if (ob_type == 3) {
let ob_ploshad = $(form).find('[name="ploshad"]').val();
if (ob_ploshad == 0 || typeof ob_ploshad == "undefined") {
text += "Необходимо указать общую площадь ";
error = true;
$(form).find('[name="ploshad"]').addClass('invalid');
} else {
12
$(form).find('[name="ploshad"]').removeClass('invalid');
}
let ob_house_category = $(form).find('[name="house_category"]:checked').val();
if (!ob_house_category) {
text += "Необходимо указать тип дома ";
error = true;
$(form).find('[name="house_category"]').closest('.button-row').addClass('invalid');
} else {
$(form).find('[name="house_category"]').closest('.button-row').removeClass('invalid');
}
}
if (ob_type == 4 && ob_comm_obj_id == 1) {
let ob_layout_id = $(form).find('[name="layout_id"]').val();
if (!ob_layout_id || ob_layout_id == 0) {
text += "Необходимо указать Планировку ";
error = true;
$(form).find('[name="layout_id"]').addClass('invalid');
} else {
$(form).find('[name="layout_id"]').removeClass('invalid');
}
}
if (ob_operation_type == 0) {
if (ob_type == 1 || ob_type == 2) {
let ob_house_type = $(form).find('[name="rent_house_type_id"]').val();
if (ob_house_type <= 0 || typeof ob_house_type == "undefined") {
text += "Необходимо указать тип дома ";
error = true;
$(form).find('[name="rent_house_type_id"]').addClass('invalid');
} else {
$(form).find('[name="rent_house_type_id"]').removeClass('invalid');
}
}
if (ob_type == 1) {
// Get and clean the values
let ob_ploshad = parseFloat($(form).find('[name="ploshad"]').val().replace(/,/g, ""));
if (isNaN(ob_ploshad) || ob_ploshad <= 0) {
text += "Необходимо указать общую площадь ";
error = true;
$(form).find('[name="ploshad"]').addClass('invalid');
}
let ob_ploshad_k = parseFloat($(form).find('[name="ploshad_k"]').val().replace(/,/g, ""));
if (isNaN(ob_ploshad_k) || ob_ploshad_k <= 0) {
text += "Необходимо указать площадь кухни ";
error = true;
$(form).find('[name="ploshad_k"]').addClass('invalid');
}
let ob_renovation = $(form).find('[name="renovation"]').val();
if (ob_renovation <= 0 || typeof ob_renovation == "undefined") {
text += "Необходимо указать информацию о ремонте ";
error = true;
$(form).find('[name="renovation"]').addClass('invalid');
$(form).find('.renovation-star').css('display', 'inline-block');
}
}
}
if (ob_type == 3 || ob_type == 5) {
let ob_renovation = $(form).find('[name="renovation"]').val();
if (ob_renovation <= 0 || typeof ob_renovation == "undefined") {
text += "Необходимо указать информацию о ремонте ";
error = true;
$(form).find('[name="renovation"]').addClass('invalid');
$(form).find('.renovation-star').css('display', 'inline-block');
}
let ob_country_wall_type = $(form).find('[name="country_wall_type_id"]').val();
if (ob_country_wall_type <= 0 || typeof ob_country_wall_type == "undefined") {
text += "Необходимо указать информацию о материале стен ";
error = true;
$(form).find('[name="country_wall_type_id"]').addClass('invalid');
}
}
if (ob_operation_type == 1) {
if (ob_type != 3 && ob_type != 4 && ob_type != 5 && ob_type != 7) {
let ob_house_type = $(form).find('[name="house_type"]').val();
if (ob_house_type == -1 || typeof ob_house_type == "undefined") {
text += "Необходимо указать тип дома ";
error = true;
$(form).find('[name="house_type"]').addClass('invalid');
} else {
$(form).find('[name="house_type"]').removeClass('invalid');
}
let ob_house_material = $(form).find('[name="house_material"]').val();
if (ob_house_material == -1 || typeof ob_house_material == "undefined") {
text += "Необходимо указать материал дома ";
error = true;
$(form).find('[name="house_material"]').addClass('invalid');
} else {
$(form).find('[name="house_material"]').removeClass('invalid');
}
}
if (ob_deal_type == -1 || typeof ob_deal_type == "undefined") {
text += "Необходимо указать тип сделки ";
error = true;
$(form).find('[name="deal_type"]').addClass('invalid');
} else {
$(form).find('[name="deal_type"]').removeClass('invalid');
}
}
if (ob_deal_type == 4 || ob_deal_type == 5 || ob_deal_type == 6) {
var complex_id = $('#complex_id').val();
let ob_newbuilding_id = $(form).find('[name="newbuilding_id"]').prop('value');
if (!ob_newbuilding_id && !(complex_id > 0)) {
text += "Необходимо указать ЖК ";
error = true;
$(form).find('[name="newbuilding_id"]').parent('.inputs-group').find('.select2').addClass('invalid');
} else {
$(form).find('[name="newbuilding_id"]').parent('.inputs-group').find('.select2').removeClass('invalid');
}
let ob_nb_end_date = $(form).find('[name="nb_end_date"]').val();
if (ob_nb_end_date == 0 || typeof ob_nb_end_date == "undefined") {
text += "Необходимо указать Срок сдачи ";
error = true;
$(form).find('[name="nb_end_date"]').addClass('invalid');
} else {
$(form).find('[name="nb_end_date"]').removeClass('invalid');
}
}
let ob_stoim_ot = $(form).find('[name="stoim_ot"]').val();
if (ob_stoim_ot == 0 || typeof ob_stoim_ot == "undefined") {
text += "Необходимо указать цену ";
error = true;
//$(form).find('[name="stoim_ot"]').addClass('invalid');
$(form).find('[name="stoim_ot"]').closest('.fr-input').addClass('invalid');
} else {
//$(form).find('[name="stoim_ot"]').removeClass('invalid');
$(form).find('[name="stoim_ot"]').closest('.fr-input').removeClass('invalid');
}
if (ob_type == 4 && ob_comm_obj_id != 7 && ob_comm_obj_id != 9) {
let ob_com_building_type = $(form).find('[name="commerc_building_type_id"]').val();
if (ob_com_building_type == 0 || typeof ob_com_building_type == "undefined") {
text += "Необходимо указать Тип здания ";
error = true;
$(form).find('[name="commerc_building_type_id"]').addClass('invalid');
} else {
$(form).find('[name="commerc_building_type_id"]').removeClass('invalid');
}
}
if (ob_type == 4 && ob_comm_obj_id == 9) {
let ob_land_category = Number($(form).find('[name="commerc_land_category_id"]').val());
if (!ob_land_category || ob_land_category === 0) {
text += "Необходимо указать Категорию земли ";
error = true;
$(form).find('[name="commerc_land_category_id"]').addClass('invalid');
} else {
$(form).find('[name="commerc_land_category_id"]').removeClass('invalid');
}
let ob_permitted_use = Number($(form).find('[name="commerc_permitted_use_id"]').val());
if (!ob_permitted_use || ob_permitted_use === 0) {
text += "Необходимо указать Вид разрешённого использования ";
error = true;
$(form).find('[name="commerc_permitted_use_id"]').addClass('invalid');
} else {
$(form).find('[name="commerc_permitted_use_id"]').removeClass('invalid');
}
let ob_commerc_site = Number($(form).find('[name="commerc_site"]').val());
if (!ob_commerc_site || ob_commerc_site === 0) {
text += "Необходимо указать площадь в поле Участок ";
error = true;
$(form).find('[name="commerc_site"]').addClass('invalid');
} else {
$(form).find('[name="commerc_site"]').removeClass('invalid');
}
}
if (error) {
$(form).find('.jw__error').html(text).show();
if ($(form).find('.invalid:visible').length > 0) {
let offset = $(form).find('.invalid:visible').first().offset().top - 40;
console.log(offset);
$('body,html').stop().animate({ scrollTop: Math.round(offset) }, '300');
} else {
$('body,html').stop().animate({ scrollTop: 0 }, '500');
}
} else {
$(".add-object-button").addClass("hidden");
$(".add-object-loader").removeClass("hidden");
form.submit();
}
return false;
});
$('#ms-new-client-type').fastselect({
placeholder: 'Тип'
});
$('.ms-crm-client-rol').fastselect({
placeholder: 'Роль клиента'
});
$('.ms-crm-client-source').fastselect({
placeholder: 'Источник',
});
$('.ms-new-client-activities').fastselect({
placeholder: 'Теги',
});
$('.ms-crm-client-stage').fastselect({
placeholder: 'Этап'
});
$('#ms-new-client-objects-type').fastselect({
placeholder: 'Тип недвижимости'
});
$('#ms-new-client-object').fastselect({
placeholder: 'Объекты'
});
$('#ms-new-client-work').fastselect({
placeholder: 'Ответственный',
onItemCreate: function() { $(this).find('.fstQueryInput').hide() },
onItemSelect: function() {
$('#addEditNew [name=confirm]').val("0");
}
});
$('.ms-big-add-client').fastselect({
placeholder: 'Клиент'
});
$('.ms-crm-client-period').fastselect({
placeholder: 'Период',
onItemSelect: function(item, val) {
if (val.value == 'period') {
$('.period').removeClass('hidden');
} else {
$('.period').addClass('hidden');
}
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
}
});
$('#filter_denial_work').fastselect({
placeholder: 'Причина закрытия',
onItemSelect: function(item, val) {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
},
onItemDelete: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
}
});
$('#filter_emp').fastselect({
placeholder: 'Ответственный',
onItemCreate: function(item, model) {
if ($('#filter_emp').find('option[value=' + model.value + ']').hasClass('bolt')) {
$(item).addClass('bolt');
}
},
onItemSelect: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
},
onItemDelete: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
}
});
$('#filter-client-objects-type').fastselect({
placeholder: 'Тип недвижимости',
onItemSelect: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
},
onItemDelete: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
}
});
$('#filter-client-type').fastselect({
placeholder: 'Тип',
onItemSelect: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
},
onItemDelete: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
}
});
$('#filter_source').fastselect({
placeholder: 'Источник',
onItemCreate: function(item, model) {
if ($('#filter_source').find('option[value=' + model.value + ']').hasClass('bolt')) {
$(item).addClass('bolt');
}
},
onItemSelect: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
},
onItemDelete: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
}
});
$('#filter_partner').fastselect({
placeholder: 'Партнёры',
onItemSelect: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
this.$controls.find('.fstChoiceItem').each(function() {
let value = $(this).data('value');
let label = $('#filter_partner option[value="' + value + '"]').data("label");
if (label) {
this.childNodes[0].nodeValue = label;
}
});
},
onItemDelete: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
}
});
$('#filter_partner').closest('.fstElement').find('.fstChoiceItem').each(function() {
let value = $(this).data('value');
let label = $('#filter_partner option[value="' + value + '"]').data("label");
if (label) {
this.childNodes[0].nodeValue = label;
}
});
$('#filter_activities').fastselect({
placeholder: 'Теги',
onItemSelect: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
},
onItemDelete: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
}
});
$('#filter_client_rol').fastselect({
placeholder: 'Роль клиента',
onItemSelect: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
},
onItemDelete: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
}
});
reCreateFilterEtapClients();
// Фильтр в Мои объекты
$('.fr-system__objects #filter-object-employee').fastselect({
placeholder: 'Ответственный',
onItemCreate: function(item, model) {
if ($('#filter-object-employee').find('option[value=' + model.value + ']').hasClass('bolt')) {
$(item).addClass('bolt');
}
},
onItemSelect: function() {
show_objects_options_search();
},
onItemDelete: function() {
show_objects_options_search();
}
});
$('.fr-system__objects #filter-object-type').fastselect({
placeholder: 'Тип объекта',
onItemSelect: function() {
checkType();
show_objects_options_search();
},
onItemDelete: function() {
checkType();
show_objects_options_search();
}
});
$('#country_list_add_object').fastselect({
placeholder: 'Страна',
onItemSelect: function(item, val) {
if (parseInt(val.value) == 171) {
$('#id_rf_region_add_object').show();
let region_kladr = $('[name="id_rf_region"] option:selected').data('kladr');
let region_label = $('[name="id_rf_region"] option:selected').data('label');
let new_kladr_ids = getConstraints(region_kladr, region_label);
daDataInit(new_kladr_ids);
} else {
$('#id_rf_region_add_object').hide();
var iso = $('#country_list_add_object [value=' + parseInt(val.value) + ']').attr("data-iso");
daDataInit([], iso);
}
check_metro_add_object();
},
onItemDelete: function(item, val) {
}
});
function checkType() {
if ($('.fr-system__objects #filter-object-type') && $('.fr-system__objects #filter-object-type').val()) {
$val = $('#filter-object-type').val();
if ($val.indexOf('Квартиры') >= 0) {
$('.filter-obj-komnat').show();
} else {
$('.filter-obj-komnat').hide();
}
} else {
$('.filter-obj-komnat').hide();
}
}
checkType();
$('.fr-system__objects #filter-not-advert').click(function() {
if ($('.fr-system__objects #filter-not-advert').attr('data-active') == 1) {
$('.fr-system__objects #filter-not-advert').attr('data-active', 0);
show_objects_options_search();
//get_objects_list();
} else {
$('.fr-system__objects #filter-not-advert').attr('data-active', 1);
show_objects_options_search();
//get_objects_list();
}
});
$('.fr-system__objects #filter_is_reports').click(function() {
if ($('.fr-system__objects #filter_is_reports').attr('data-active') == 1) {
$('.fr-system__objects #filter_is_reports').attr('data-active', 0);
show_objects_options_search();
//get_objects_list();
} else {
$('.fr-system__objects #filter_is_reports').attr('data-active', 1);
show_objects_options_search();
//get_objects_list();
}
});
$('.fr-system__objects #filter_is_free').click(function() {
if ($('.fr-system__objects #filter_is_free').attr('data-active') == 1) {
$('.fr-system__objects #filter_is_free').attr('data-active', 0);
show_objects_options_search();
//get_objects_list();
} else {
$('.fr-system__objects #filter_is_free').attr('data-active', 1);
show_objects_options_search();
//get_objects_list();
}
});
$('.fr-system__objects #filter_is_package').click(function() {
if ($('.fr-system__objects #filter_is_package').attr('data-active') == 1) {
$('.fr-system__objects #filter_is_package').attr('data-active', 0);
show_objects_options_search();
//get_objects_list();
} else {
$('.fr-system__objects #filter_is_package').attr('data-active', 1);
show_objects_options_search();
//get_objects_list();
}
});
$('.num-of-rooms #rn1').click(function() {
if ($('.num-of-rooms #rn1').attr('data-active') == 1) {
$('.num-of-rooms #rn1').attr('data-active', 0);
$('.num-of-rooms input[name=rn1]').val("0")
} else {
$('.num-of-rooms #rn1').attr('data-active', 1);
$('.num-of-rooms input[name=rn1]').val("1");
}
});
$('.num-of-rooms #rn2').click(function() {
if ($('.num-of-rooms #rn2').attr('data-active') == 1) {
$('.num-of-rooms #rn2').attr('data-active', 0);
$('.num-of-rooms input[name=rn2]').val("0")
} else {
$('.num-of-rooms #rn2').attr('data-active', 1);
$('.num-of-rooms input[name=rn2]').val("1");
}
});
$('.num-of-rooms #rn3').click(function() {
if ($('.num-of-rooms #rn3').attr('data-active') == 1) {
$('.num-of-rooms #rn3').attr('data-active', 0);
$('.num-of-rooms input[name=rn3]').val("0")
} else {
$('.num-of-rooms #rn3').attr('data-active', 1);
$('.num-of-rooms input[name=rn3]').val("1");
}
});
$('.num-of-rooms #rn4').click(function() {
if ($('.num-of-rooms #rn4').attr('data-active') == 1) {
$('.num-of-rooms #rn4').attr('data-active', 0);
$('.num-of-rooms input[name=rn4]').val("0")
} else {
$('.num-of-rooms #rn4').attr('data-active', 1);
$('.num-of-rooms input[name=rn4]').val("1");
}
});
$('.num-of-rooms #rnStudio').click(function() {
if ($('.num-of-rooms #rnStudio').attr('data-active') == 1) {
$('.num-of-rooms #rnStudio').attr('data-active', 0);
$('.num-of-rooms input[name=rnStudio]').val("0")
} else {
$('.num-of-rooms #rnStudio').attr('data-active', 1);
$('.num-of-rooms input[name=rnStudio]').val("1");
}
});
$('#addToAvitoFilter').click(function() {
console.log('tttttttttttttttttttt');
if ($('#addToAvitoFilter').hasClass('active')) {
$('#addToAvitoFilter').removeClass('active');
show_objects_options_search();
//get_objects_list();
} else {
$('#addToAvitoFilter').addClass('active');
show_objects_options_search();
//get_objects_list();
}
});
$('#addToCianFilter').click(function() {
if ($('#addToCianFilter').hasClass('active')) {
$('#addToCianFilter').removeClass('active');
show_objects_options_search();
//get_objects_list();
} else {
$('#addToCianFilter').addClass('active');
show_objects_options_search();
//get_objects_list();
}
});
$('#addToDomClickFilter').click(function() {
if ($('#addToDomClickFilter').hasClass('active')) {
$('#addToDomClickFilter').removeClass('active');
show_objects_options_search();
//get_objects_list();
} else {
$('#addToDomClickFilter').addClass('active');
show_objects_options_search();
//get_objects_list();
}
});
$('#addToEMLSFilter').click(function() {
if ($('#addToEMLSFilter').hasClass('active')) {
$('#addToEMLSFilter').removeClass('active');
show_objects_options_search();
//get_objects_list();
} else {
$('#addToEMLSFilter').addClass('active');
show_objects_options_search();
//get_objects_list();
}
});
$('#addToYandexFilter').click(function() {
if ($('#addToYandexFilter').hasClass('active')) {
$('#addToYandexFilter').removeClass('active');
show_objects_options_search();
//get_objects_list();
} else {
$('#addToYandexFilter').addClass('active');
show_objects_options_search();
//get_objects_list();
}
});
$('.fr-system__objects #filter-ads-errors').click(function() {
if ($('.fr-system__objects #filter-ads-errors').attr('data-active') == 1) {
$('.fr-system__objects #filter-ads-errors').attr('data-active', 0);
show_objects_options_search();
// get_objects_list();
} else {
$('.fr-system__objects #filter-ads-errors').attr('data-active', 1);
show_objects_options_search();
//get_objects_list();
}
});
$('.fr-system__objects #filter-object-fields').click(function() {
showObjectFieldsSearchModal('my-objects');
});
$('.fr-system__objects #filter-object-fields-reset').click(function() {
$.ajax({
url: '/ajax/unsetObjectFieldsFilter.php',
method: "get",
success: function() {
$('.fr-system__objects #filter-object-fields').attr('data-active', 0);
$('.fr-system__objects #filter-object-fields-reset').css('display', 'none');
show_objects_options_search();
get_objects_list();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
});
$('.fr-system__objects #filter-object-activities').fastselect({
placeholder: 'Теги',
onItemSelect: function() {
show_objects_options_search();
},
onItemDelete: function() {
show_objects_options_search();
}
});
$('body').on('change', '.fr-system__objects #objects_filter_commission', function() {
show_objects_options_search();
});
$('body').on('change', '.fr-system__objects #objects_filter_cena_ot', function() {
show_objects_options_search();
});
$('body').on('change', '.fr-system__objects #objects_filter_cena_do', function() {
show_objects_options_search();
});
$('body').on('change', '.fr-system__objects #objects_filter_commission_to', function() {
show_objects_options_search();
});
$('body').on('change', '.fr-system__objects #objects_filter_komnat_from', function() {
show_objects_options_search();
});
$('body').on('change', '.fr-system__objects #objects_filter_komnat_to', function() {
show_objects_options_search();
});
// Фильтр в Реклама
$('.crm.new #filter-object-activities').fastselect({
placeholder: 'Теги'
});
//Фильтр в отправках презентаций
$('body').on('click', '#open_dop_list_clients', function() {
$('.block_filter_prz').toggleClass('hidden');
});
$('#filter-prz-responsible').fastselect({
placeholder: 'Ответственный',
onItemSelect: function() {
get_prz_clients();
},
onItemDelete: function() {
get_prz_clients();
}
});
$('#filter-prz-type').fastselect({
placeholder: 'Тип',
onItemSelect: function() {
get_prz_clients();
},
onItemDelete: function() {
get_prz_clients();
}
});
$('#filter_prz_activities').fastselect({
placeholder: 'Теги',
onItemSelect: function() {
get_prz_clients();
},
onItemDelete: function() {
get_prz_clients();
}
});
$('#filter_prz_rol').fastselect({
placeholder: 'Роль клиента',
onItemSelect: function() {
get_prz_clients();
},
onItemDelete: function() {
get_prz_clients();
}
});
$('#filter_prz_source').select2({
language: "ru",
theme: "bootstrap",
placeholder: 'Источник',
ajax: {
url: 'ajax/datasource/getAdvertisingSources.php',
dataType: 'json',
delay: 250,
data: function(params) {
return {
searchTerm: params.term,
page: params.page
};
},
processResults: function(data, params) {
params.page = params.page || 1;
return {
results: data.items,
pagination: {
pagination: {
more: false
}
}
};
},
type: "post"
}
});
$('#filter_prz_source').on("select2:select", function(e) { get_prz_clients(); });
$('#filter_prz_source').on("select2:unselect", function(e) { get_prz_clients(); });
$('body').on('click', '#filter_add_clients_btn', function() {
get_prz_clients(1);
});
//**************************************************************//
$("body").on('click', '.crm__small-stage', function(e) {
if ($(e.target).closest('#req_info').length > 0 || $(e.target).closest('#client_info').length > 0 || $(e.target).closest('.no_event_stagebars').length > 0 || $(this).hasClass('not_clicked')) {
} else {
var idStage = parseInt($(this).data("stage"));
var indexStage = parseInt($(this).data("stage")) - 1;
var elem = $(this);
var nextStage = $(this).next().text();
var idClient = 0;
var reqId = 0;
if (elem.closest('.client').length > 0) {
idClient = elem.closest('.client').attr('id').replace("client__", "");
if (idClient.indexOf("req") > -1) {
idClient = 0;
reqId = elem.closest('.client').attr('id').replace("req__", "");
}
} else {
idClient = $('#addEditNew .modal-submit [name=id]').val();
}
if (elem.attr("data-req")) {
reqId = elem.attr("data-req");
}
if (idStage == 8) {
$("#del_client_bg").fadeIn(500);
$("#del_client").toggle(10);
var id = idClient;
$("#del_client").find('input[name="id_del_client"]').val(id);
$("#del_client").find('input[name="id_funnel_client"]').val('0');
$("#del_client #id_del_req").val(reqId);
set_select_denial_work(reqId);
$("body").addClass("lock");
return false;
} else {
$.post('/ajax/addEditClient.php', {
stage_edit: idStage,
id: idClient,
id_req: reqId,
},
function(data) {
if (reqId > 0) {
if (typeof requisitions !== 'undefined' && requisitions.req['req' + reqId]) {
requisitions.req['req' + reqId].steps.stageId = indexStage + 1;
requisitions.req['req' + reqId].steps.stage = nextStage;
}
if (typeof reqobj !== 'undefined' && reqobj[reqId]) {
//console.log(reqobj);
reqobj[reqId].steps.stageId = indexStage + 1;
reqobj[reqId].steps.stage = nextStage;
}
}
elem.closest(".client-inner").find(".stagebar-title").text(nextStage);
$('#client__' + idClient + ' .stagebar-title').text(nextStage);
$('#client__' + idClient + ' .crm__small-stage').each(function(index) {
// console.log(index);
if (index <= indexStage) {
$(this).parent().addClass("active");
} else {
$(this).parent().removeClass("active");
}
});
elem.closest(".crm__small-stagebar").find(".crm__small-stage").each(function(index) {
// console.log(index);
if (index <= indexStage) {
$(this).parent().addClass("active");
} else {
$(this).parent().removeClass("active");
}
});
});
}
}
});
$('body').on('click', '.client_info', function() {
var id = $(this).attr("data-id");
client__info.open(id);
});
$("body").click(function(e) {
if (!$(e.target).hasClass('fstChoiceRemove')) {
if ($(e.target).closest(".crm__filter-popup").length == 0 && $(e.target).closest(".search-filter").length == 0 && $(e.target).closest(".datepicker--cell").length == 0 && $(e.target).closest('.datepicker').length == 0 && $(e.target).closest('.datepicker--nav-title').length == 0 && $(e.target).closest('.datepicker--nav-action').length == 0 && $(e.target).closest('.vs__selected').length == 0) $(".crm__filter-popup").removeClass("is__show").addClass("is__hide");
if ($(e.target).closest(".jw__add-popup").length == 0) $(".jw__add-popup").removeClass("is__show");
}
});
$("body").on('click', '.search-filter__filter', function(e) {
$(".crm__filter-popup").removeClass("is__hide").toggleClass("is__show");
});
$('.datepicker-here2').datepicker({
autoClose: 'true'
});
$('#dates_contract_client .datepicker-filter').datepicker({
autoClose: 'true',
onSelect: function() {
client_fields_filtr.checkFields();
}
});
$('body').on('click', '.jw__small-popup', function(e) {
if ($(e.target).closest('.contracts').length == 0){
var id = $(this).attr('data-id');
$(".jw__popup.actions-menu.show").removeClass("show");
if (typeof filtr !== 'undefined' && filtr.filtr && filtr.filtr.stages && filtr.filtr.stages.close == 1) {
$('.confirm__reqs').hide();
$('#transfer_reqs_closed').show();
} else {
$('.confirm__reqs').show();
$('#transfer_reqs_closed').hide();
}
$('#popup__clients .closed_all').show();
$('.confirm__clients').show();
if ((document.location.pathname == '/sale.php' || document.location.pathname == '/main.php')) {
console.log($("#popup__" + id + ' a').length);
var show = false;
if ($("#popup__" + id + ' a').length > 0) {
$("#popup__" + id + ' a').each(function() {
if (!$(this).hasClass('hidden')) {
show = true;
}
})
}
if (show) {
$("#popup__" + id).toggleClass("show");
}
} else {
$("#popup__" + id).toggleClass("show");
if($('#user_allow_edit_all').length > 0 && $('#user_allow_edit_all').val() == 0){
if(document.location.pathname == '/requisitions.php' && id == 'reqs'){
if(typeof filtr !== undefined){
if(filtr.filtr.stages.ahency > 0){
$('.confirm__reqs').hide();
$('.closed_all').hide();
}
}
} else if (document.location.pathname == '/clients.php' && id == 'clients'){
if($('#filter_work_ahency').length > 0 && $('#filter_work_ahency').hasClass('active')){
$('.confirm__clients').hide();
$('.closed_all').hide();
}
}
} else {
if (document.location.pathname == '/clients.php' && id == 'clients'){
if($('#filter_work_ahency').length > 0 && $('#filter_work_ahency').hasClass('active')){
$('.closed_all').hide();
}
}
}
}
}
return false;
});
$('body').on('click', '.jw__clients_popup', function() {
let id = $(this).attr('data-id');
$("#popup_clients__" + id + " > .jw__popup").toggleClass("show");
return false;
});
$("body").on('click', '.search-filter .filtrObjects.ti-search', function() {
get_objects_list();
});
$('body').on('click', '.search-filter .filtrObjects.ti-close', function() {
window.history.pushState(null, null, "my-objects.php");
$('#search_filter_input').val('');
get_objects_list();
});
$('body').on('click', '.search-query-item.crm_objects .ti-close', function() {
window.history.pushState(null, null, "my-objects.php");
$('.filter-popup-type').each(function() {
$(this).removeClass('active');
});
$("#searchPromotionBg").empty();
$('.___1').each(function() {
$(this).attr('data-active', '0');
});
$('.steel').each(function() {
$(this).attr('data-active', '0');
});
$('.action-button.actionJW.actionAdvButton').each(function() {
$(this).removeClass('active');
});
$('.filter-popup__right select[multiple]').each(function() {
$(this).parent('.fstElement').find('.fstChoiceRemove').each(function() {
$(this).click();
});
});
$('#objects_filter_cena_ot').val('');
$('#objects_filter_cena_do').val('');
$('#objects_filter_commission').val('');
$('#objects_filter_commission_to').val('');
$('#objects_filter_komnat_from').val('');
$('#objects_filter_komnat_to').val('');
show_objects_options_search();
get_objects_list();
});
//Поиск в Клиенты
$("body").on('click', '.filtrClient.ti-search', function() {
if ($(".view-kanban.active").length > 0) {
$('.view-kanban').removeClass('active');
$('.view-list').addClass('active');
}
window.history.pushState(null, null, "clients.php?funnelId=all");
$(".crm__filter-popup").addClass("is__hide").removeClass("is__show");
$('#funnelIdClients').val('all');
get_list();
});
$('body').on('click', '.crm__filter-popup .medium-button', function() {
$(".crm__filter-popup").addClass("is__hide").removeClass("is__show");
});
$('body').on('change', '#order', function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
});
$('body').on('change', '#of_objects', function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
});
$('body').on('change', '#noTasks', function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
});
$('body').on('change', '#todayTasks', function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
});
$('body').on('change', '#overTasks', function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
});
$('body').on('change', '#isPartner', function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
});
$('body').on('click', '.search-query-item.crm_clients .ti-close', function() {
window.history.pushState(null, null, "clients.php");
if (typeof client_fields_filtr != "undefined") {
client_fields_filtr.clearField();
}
if ($('.funnels_client li.active').length == 1) {
var funnelID = $(".funnels_client li.active").data("id");
window.history.pushState(null, null, "clients.php?funnelId=" + funnelID);
$('#funnelIdClients').val(funnelID);
}
$('#period').prop("checked", false);
$('.period').addClass('hidden');
var html = '' + $(".ms-crm-client-period").html() + ' ';
$(".ms-crm-client-period").closest(".crm__filter-input").html(html);
$('.ms-crm-client-period option[value=all]').prop("selected", true);
$('.ms-crm-client-period').fastselect({
placeholder: 'Период',
onItemSelect: function(item, val) {
if (val.value == 'period') {
$('.period').removeClass('hidden');
} else {
$('.period').addClass('hidden');
}
show_options_search();
page_kanban = 1;
add_knban = true;
get_list();
}
});
for (let i = 1; i <= 4; i++) {
$('.filter-priority' + i).removeClass('active');
}
$('.filter-popup-type').each(function() {
$(this).removeClass('active');
});
$('.filter-popup__right select[multiple]').each(function() {
$(this).parent('.fstElement').find('.fstChoiceRemove').each(function() {
$(this).click();
});
});
$('#order').prop('checked', false);
show_options_search();
page_kanban = 1;
add_knban = true;
get_list();
});
$('body').on('click', '.search-filter .filtrClient.ti-close', function() {
window.history.pushState(null, null, "clients.php");
if ($('.funnels_client li.active').length == 1) {
var funnelID = $(".funnels_client li.active").data("id");
window.history.pushState(null, null, "clients.php?funnelId=" + funnelID);
$('#funnelIdClients').val(funnelID);
}
$('#search_filter_input').val('');
page_kanban = 1;
add_knban = true;
get_list();
});
$('#date_tasks input').change(function() {
// console.log($(this).val());
//get_list();
});
$('body').on('click', '#filter_time .filter-popup-type', function(e) {
var isDates = false;
if ($(e.target).closest("#dates_period").length == 1) {
var id = 'dates';
$('#filter_time .filter-popup-type').each(function() {
if ($(this).attr('id') == id) {
if ($(this).hasClass('active')) {
isDates = true;
}
$(this).addClass('active');
} else {
//if((id == 'filter_stage_work' && $(this).attr('id') == 'filter_stage_hot') || (id == 'filter_stage_hot' && $(this).attr('id') == 'filter_stage_work')){}
//else {
$(this).removeClass('active');
//}
}
});
} else {
var id = $(this).attr('id');
$('#filter_time .filter-popup-type').each(function() {
if ($(this).attr('id') == id) {
$(this).toggleClass('active');
} else {
//if((id == 'filter_stage_work' && $(this).attr('id') == 'filter_stage_hot') || (id == 'filter_stage_hot' && $(this).attr('id') == 'filter_stage_work')){}
//else {
$(this).removeClass('active');
//}
}
});
}
var page = window.location.pathname;
if (page == '/clients.php') {
show_options_search();
page_kanban = 1;
add_knban = true;
get_list();
} else if (page == '/charts.php') {
show_options_search_charts();
/*if (!isDates) {
if ($('.tab.selected').data("tab") == 'stats') {
getStats();
} else if ($('.tab.selected').data("tab") == 'tasks') {
getCalendar();
} else if ($('.tab.selected').data("tab") == 'telephony') {
getTelephony();
} else if ($('.tab.selected').data("tab") == 'stats_objects') {
getStatsObjects();
} else if ($('.tab.selected').data("tab") == 'tasks_objects') {
getCalendarObject();
} else {
getDashboard(1);
}
}*/
}
});
$('body').on('click', '#filter_task .filter-popup-type', function(e) {
var isDates = false;
var id = $(this).attr('id');
$('#filter_task .filter-popup-type').each(function() {
if ($(this).attr('id') == id) {
$(this).toggleClass('active');
} else {
//if((id == 'filter_stage_work' && $(this).attr('id') == 'filter_stage_hot') || (id == 'filter_stage_hot' && $(this).attr('id') == 'filter_stage_work')){}
//else {
$(this).removeClass('active');
//}
}
});
var page = window.location.pathname;
if (page == '/clients.php') {
show_options_search();
page_kanban = 1;
add_knban = true;
get_list();
} else if (page == '/charts.php') {
show_options_search_charts();
if (!isDates) {
if ($('.tab.selected').data("tab") == 'stats') {
getStats();
} else if ($('.tab.selected').data("tab") == 'tasks') {
getCalendar();
} else if ($('.tab.selected').data("tab") == 'telephony') {
getTelephony();
} else if ($('.tab.selected').data("tab") == 'tasks_objects') {
getCalendarObject();
} else {
getDashboard();
}
}
}
});
$('body').on('click', '#crm_filter_left .filter-popup-type', function(e) {
var isDates = false;
var id = $(this).attr('id');
if (id == 'filter_stage_close' && !$(this).hasClass('active')) {
$('#date_tasks').removeClass('hidden');
$('#renew_all_reqs').removeClass('hidden');
$('#mass_take_from_closed').addClass('hidden');
} else {
$('#date_tasks').addClass('hidden');
$('#renew_all_reqs').addClass('hidden');
$('#mass_take_from_closed').removeClass('show');
}
$('#crm_filter_left .filter-popup-type').each(function() {
if ($(this).attr('id') == id) {
$(this).toggleClass('active');
} else {
//if((id == 'filter_stage_work' && $(this).attr('id') == 'filter_stage_hot') || (id == 'filter_stage_hot' && $(this).attr('id') == 'filter_stage_work')){}
//else {
$(this).removeClass('active');
//}
}
});
var page = window.location.pathname;
if (page == '/clients.php') {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
} else if (page == '/charts.php') {
show_options_search_charts();
if (!isDates) {
if ($('.tab.selected').data("tab") == 'stats') {
getStats();
} else if ($('.tab.selected').data("tab") == 'tasks') {
getCalendar();
} else if ($('.tab.selected').data("tab") == 'telephony') {
getTelephony();
} else {
getDashboard();
}
}
}
});
$("body").on('click', '#clients_list .client-events-new', function(e) {
e.stopPropagation();
$('.object-content__preloader').show();
var id_client = $(this).attr('data-id');
openClientEventsWindowNew(id_client, $('#session_to_send').val());
return false;
});
$(".jw__group-action-button").click(function() {
var id = $(this).attr('data-id');
$("#groupAB__" + id).toggleClass("active");
return false;
});
$(".form-block__hot-client").click(function() {
$(this).toggleClass("active");
return false;
});
$("#addEditNew .form-block__p1-client").click(function() {
const active = $(this).hasClass("active");
clearSelect();
if (!active) {
$(this).toggleClass("active");
}
return false;
});
$("#addEditNew .form-block__p2-client").click(function() {
const active = $(this).hasClass("active");
clearSelect();
if (!active) {
$(this).toggleClass("active");
}
return false;
});
$("#addEditNew .form-block__p3-client").click(function() {
const active = $(this).hasClass("active");
clearSelect();
if (!active) {
$(this).toggleClass("active");
}
return false;
});
$("#addEditNew .form-block__p4-client").click(function() {
const active = $(this).hasClass("active");
clearSelect();
if (!active) {
$(this).toggleClass("active");
}
return false;
});
$(".filter-priority1").click(function() {
$(this).toggleClass("active");
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
show_options_search_charts();
//get_sourse_filter();
return false;
});
$(".filter-priority2").click(function() {
$(this).toggleClass("active");
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
show_options_search_charts();
//get_sourse_filter();
return false;
});
$(".filter-priority3").click(function() {
$(this).toggleClass("active");
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
show_options_search_charts();
//get_sourse_filter();
return false;
});
$(".filter-priority4").click(function() {
$(this).toggleClass("active");
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
show_options_search_charts();
//get_sourse_filter();
return false;
});
$(".big-add-button").click(function() {
$(".jw__add-popup").toggleClass("is__show");
return false;
});
$("#jw__add-task, .jw__add-task").click(function() {
$(".jw__add-popup").removeClass("is__show");
$.ajax({
url: '/ajax/modals/addTaskWinContent.php',
success: function(data) {
$("#addTaskBg").html(data);
initTaskWin();
$("#addTaskBg").show();
$("#addTask").show();
$("body").addClass("lock");
$('#addTask .modal-submit button').removeAttr('data-id').text("Добавить");
$('#addTask .klient').show();
$('#addTask .otvetstven').show();
$('#addTask .otvetstven1').hide();
$('#addTask .tabs__caption li').css('visibility', 'unset');
}
});
return false;
});
$("#jw__add-event").click(function() {
$.ajax({
url: '/ajax/modals/addEventWinContent.php',
success: function(data) {
$("#addEventBg").html(data);
$('.datepicker-here').datepicker();
$('.ms-big-add-client').fastselect({
placeholder: 'Клиент'
});
$('#addEvent .ms-crm-client-work').fastselect({
placeholder: 'Ответственный',
onItemSelect: function(item) {
var divId = 'addEvent';
var mainDivClass = $('#' + divId + ' .tabs__caption .active').data("id");
var res = $('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-crm-client-work').val();
// $('.tabs__content.'+mainDivClass+' .ms-big-add-client').closest('.inputs').html('');
$.post('/ajax/getCharts.php', { getSelectClients: 'getSelectClients', responsible: JSON.stringify(res), user_id: $('#session_user_id').val(), users_admin: $('#session_user_admin').val() }, function(data) {
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').closest('.crm__filter-input').html(data);
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').fastselect({
placeholder: 'Клиент'
});
});
},
onItemDelete: function() {
var divId = 'addEvent';
var mainDivClass = $('#' + divId + ' .tabs__caption .active').data("id");
var res = $('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-crm-client-work').val();
// $('.tabs__content.'+mainDivClass+' .ms-big-add-client').closest('.inputs').html('');
$.post('/ajax/getCharts.php', { getSelectClients: 'getSelectClients', responsible: JSON.stringify(res), user_id: $('#session_user_id').val(), users_admin: $('#session_user_admin').val() }, function(data) {
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').closest('.crm__filter-input').html(data);
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').fastselect({
placeholder: 'Клиент'
});
});
}
});
$("#addEventBg").show();
$("#addEvent").show();
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
return false;
});
//Удаление
$('body').on('click', '#del_client_submit', function() {
var id_client = $('#del_client input[name=id_del_client]').val();
var req_id = $('#del_client #id_del_req').val();
var reason = $('#del_client [name=reason]').val();
var tempid = $('#del_client #temp_id').val();
var datazakl = $('#datazakl').val();
var dataZZ = datazakl['6']+datazakl['7']+datazakl['8']+datazakl['9']+'-'+datazakl['3']+datazakl['4']+'-'+datazakl['0']+datazakl['1']+'T00:00:00';
var param = { id_del_client: id_client, reason: reason, req_id: req_id, tempid: tempid };
$("#del_client_bg [name=reason]").val('');
if ($('#luck').prop('checked')) {
if (isNaN(parseInt($('#summa_sdelki').val()))) {
alert("Введите сумму сделки");
} else {
param.luck = 10;
param.summa = parseInt($('#summa_sdelki').val());
param.datazakl = Date.parse(dataZZ)
if (window.dealCloseData && window.dealCloseData.id) {
var factPayload = {};
var factPrice = $('#fact_contract_price').val();
var factCommission = $('#fact_agent_commission').val();
if (factPrice !== '') factPayload.contract_price = parseInt(factPrice) || 0;
if (factCommission !== '') factPayload.agent_commission = parseInt(factCommission) || 0;
if (Object.keys(factPayload).length > 0) {
$.ajax({
url: '/deal/index.php?path=deals/' + window.dealCloseData.id,
type: 'PUT',
contentType: 'application/json',
data: JSON.stringify(factPayload)
});
}
}
$.post('/ajax/delClient.php', param, function(data) {
//console.log(data)
$('#client__' + id_client + ' .stage').addClass('active');
$('#addEditNew .stage').addClass('active');
requisitions_client.getList();
$("#del_client_bg").fadeOut(500);
$("#del_client").toggle(10);
$("body").removeClass("lock");
//$('#client__'+id_client+' .stagebar-title').text('Закрыт');
//console.log($('#client_history').css('display'));
if ($('#client_history').css('display') != 'none') {
if (req_id > 0) {
openClientEventsWindowNew(0, $('#session_to_send').val(), 1, req_id);
} else {
openClientEventsWindowNew(id_client, $('#session_to_send').val(), 1);
}
}
if ($('.view-kanban.active').length > 0) {
var stage = $('#kanban_item_li_' + id_client).closest('.kanban__sortable').data("stage");
if (document.location.pathname == '/requisitions.php') {
requisitions.getList();
} else {
get_kanban_li(id_client, stage, 0);
}
} else {
if ($('#requisitions_list_object').css('display') == 'none') {
let sort_order = $('select[name=sort_order]').val();
get_list($('.pagination li.active a').text(), sort_order, false);
if (document.location.pathname == '/requisitions.php') {
requisitions.getList();
}
} else {
requisitions_object.getList();
}
}
$('#del_client #temp_id').val(0);
});
}
} else {
param.denial = $('#denial_work').val();
//console.log(reason);
if (reason == '') {
alert("Введите комментарий");
} else {
d = new Date;
dd = d.toISOString();
param.datazakl = Math.floor(Date.parse(dd.slice(0, -5)) / 1000)
param.note = 1
$.post('/ajax/delClient.php', param, function(data) {
console.log(data);
$('#client__' + id_client + ' .stage').addClass('active');
$('#addEditNew .stage').addClass('active');
requisitions_client.getList();
$("#del_client_bg").fadeOut(500);
$("#del_client").toggle(10);
$("body").removeClass("lock");
//$('#client__'+id_client+' .stagebar-title').text('Закрыт');
if ($('#client_history').css('display') != 'none') {
if (req_id > 0) {
openClientEventsWindowNew(0, $('#session_to_send').val(), 1, req_id);
} else {
openClientEventsWindowNew(id_client, $('#session_to_send').val(), 1);
}
}
if ($('.view-kanban.active').length > 0) {
var stage = $('#kanban_item_li_' + id_client).closest('.kanban__sortable').data("stage");
if (document.location.pathname == '/requisitions.php') {
requisitions.getList();
} else {
get_kanban_li(id_client, stage);
}
} else {
if ($('#requisitions_list_object').css('display') == 'none') {
let sort_order = $('select[name=sort_order]').val();
get_list($('.pagination li.active a').text(), sort_order, false);
if (document.location.pathname == '/requisitions.php') {
requisitions.getList();
}
} else {
requisitions_object.getList();
}
}
$('#del_client #temp_id').val(0);
});
}
}
get_list()
return false;
});
$('body').on('click', '#del_client .ti-close', function() {
var id_funnel_client = $('#del_client input[name=id_funnel_client]').val();
var id_client = $('#del_client input[name=id_del_client]').val();
var id_req = $('#del_client #id_del_req').val();
if (id_funnel_client > 0) {
$("body").removeClass("lock");
if (confirm("При закрытии этого окна этап будет открыт!!!")) {
axios.post('/ajax/ajax_vue_clients.php', {
request: 'openPrevStep',
client_id: id_client,
req_id: id_req,
}, )
.then(function(response) {
//console.log(response.data);
ac.stepPrev = response.data;
ac.saveOpenPrevStep();
$("#del_client_bg").hide(10);
$("#del_client").hide(10);
$('#del_client #temp_id').val(0);
})
.catch(function(error) {
console.log(error);
});
}
} else {
$("#del_client_bg").hide(10);
$("#del_client").hide(10);
$('#del_client #temp_id').val(0);
}
});
$('body').on('click', '#stats_objects_list__bg .ti-close', function() {
$("#stats_objects_list__bg").hide(10);
$("#stats_objects_list").hide(10);
$("body").removeClass("lock");
});
$("body").on("click", "#export_objects", function() {
var that = this;
let section = $(this).data('section');
let state = $(this).data('state');
if (state === 'ready') {
$(this).data('state', 'loading');
$("#export_objects_loader").show();
$.post("/ajax/export_excel_objects.php", {
section: section,
columns: JSON.stringify($("#object_list_table").bootstrapTable("getVisibleColumns")),
}, function(data) {
$(that).data('state', 'ready');
$("#export_objects_loader").hide();
console.debug(data);
let res = JSON.parse(data);
if (res.result == 'ok') {
let $a = $(" ");
$a.attr("href", res.file);
$("body").append($a);
$a.attr("download", res.name);
$a[0].click();
$a.remove();
}
});
}
});
$('body').on('click', '#del_client_all_submit', function() {
var id_clients = $('#del_client_all input[name=id_del_clients]').val();
var clients = JSON.parse(id_clients);
var id_reqs = $('#del_client_all input[name=id_del_reqs]').val();
var reqs = JSON.parse(id_reqs);
var all = 0;
if ($("#del_client_all").find('input[name="del_all"]')) {
all = $("#del_client_all").find('input[name="del_all"]').val();
}
$("#del_client_all").find('input[name="del_all"]').val(0);
var ids = [];
var datazakl = $('#datazakl_all').val();
var dataZZ = datazakl['6']+datazakl['7']+datazakl['8']+datazakl['9']+'-'+datazakl['3']+datazakl['4']+'-'+datazakl['0']+datazakl['1']+'T00:00:00';
var reason = $('#del_client_all [name=reason]').val();
var param = { reason: reason };
if (clients != 0) {
if (localStorage['ids_exception_client']) {
var ids_exception_req = localStorage.getItem('ids_exception_client');
ids = JSON.parse(ids_exception_client);
}
param = { id_del_client_all: id_clients, reason: reason, all: all,ids_exception: ids};
} else if (reqs != 0) {
if (localStorage['ids_exception_req']) {
var ids_exception_req = localStorage.getItem('ids_exception_req');
ids = JSON.parse(ids_exception_req);
}
param = { id_del_req_all: id_reqs, reason: reason, all: all, ids_exception: ids };
}
//console.log(param);
$("#del_client_all [name=reason]").val('');
if ($('#luck_all').prop('checked')) {
if (isNaN(parseInt($('#summa_sdelki_all').val()))) {
alert("Введите сумму сделки");
} else {
param.luck = 10;
param.summa = parseInt($('#summa_sdelki_all').val());
param.datazakl = Date.parse(dataZZ)
$.post('/ajax/delClient.php', param, function(data) {
//$('#client__' + id_client + ' .stage').addClass('active');
console.log(reqs);
if (reqs != 0) {
requisitions.getList();
}
$('#addEditNew .stage').addClass('active');
$("#del_client_all_bg").fadeOut(500);
$("#del_client_all").toggle(10);
$("body").removeClass("lock");
//$('#client__'+id_client+' .stagebar-title').text('Закрыт');
//console.log($('#client_history').css('display'));
if ($('#client_history').css('display') != 'none') {
openClientEventsWindowNew(id_client, $('#session_to_send').val(), 1);
}
if ($('.view-kanban.active').length > 0) {
var stage = $('#kanban_item_li_' + id_client).closest('.kanban__sortable').data("stage");
get_kanban_li(id_client, stage, 0);
} else {
let sort_order = $('select[name=sort_order]').val();
get_list($('.pagination li.active a').text(), sort_order, false);
}
});
}
} else {
param.denial = $('#denial_work_all').val();
//console.log(reason);
if (reason == '') {
alert("Введите комментарий");
} else {
d = new Date;
dd = d.toISOString();
param.datazakl = Math.floor(Date.parse(dd.slice(0, -5)) / 1000)
param.note = 1
$.post('/ajax/delClient.php', param, function(data) {
//console.log(data);
if (reqs != 0) {
requisitions.getList();
}
//$('#client__' + id_client + ' .stage').addClass('active');
$('#addEditNew .stage').addClass('active');
$("#del_client_all_bg").fadeOut(500);
$("#del_client_all").toggle(10);
$("body").removeClass("lock");
//$('#client__'+id_client+' .stagebar-title').text('Закрыт');
if ($('#client_history').css('display') != 'none') {
openClientEventsWindowNew(id_client, $('#session_to_send').val(), 1);
}
if ($('.view-kanban.active').length > 0) {
var stage = $('#kanban_item_li_' + id_client).closest('.kanban__sortable').data("stage");
get_kanban_li(id_client, stage, 0);
} else {
let sort_order = $('select[name=sort_order]').val();
get_list($('.pagination li.active a').text(), sort_order, false);
}
});
}
}
return false;
});
$('body').on('click', '#del_client_all .ti-close', function() {
$("#del_client_all_bg").hide(10);
$("#del_client_all").hide(10);
});
$('body').on('click', '#scroll', function() {
$('#client_history .history__chat-n').animate({
scrollTop: 0
}, 500, function() {
$('#client_history .history__chat-n').animate({
scrollTop: $('#client-info-block').prop("scrollHeight")
}, 500);
});
});
$('body').on('click', '.show_object', function() {
var id_obj = [$(this).data("id")];
var id = $(this).data("client");
if (typeof requisitions_client == 'object') {
requisitions_client.clientId = id;
}
if (typeof deals_client == 'object') {
deals_client.clientId = id;
}
//console.log(id);
$('#liGlobal').removeClass('active').show();
$('#liObject').click();
$('#addEditNew .error_msg').hide();
$('#addEditNew .stagebar .stage').removeClass('active');
$('#addEditNew .form-block__hot-client').removeClass('active');
clearSelect();
$('#addEditNew select').parent('.fstElement').find('.fstChoiceRemove').each(function() {
$(this).click();
});
$('#addEditNew .form-block [name=phone2]').each(function() {
$(this).closest('.form-block').remove();
});
$('#persone_no_ip').prop('checked', true);
$('#persone_yes_ip').prop('checked', false);
$('#persone_gender_man').prop('checked', true);
$('#persone_gender_woman').prop('checked', false);
$('.persone_no_ip').removeClass('hidden');
$('.persone_yes_ip').addClass('hidden');
$.ajax({
url: '/ajax/getClient.php?id=' + id,
dataType: "json",
success: function(data) {
//console.log(data);
var stage = (data.stage - 1);
// console.log(data.deleted);
if (data.deleted == 1) {
stage = 6;
}
$("#addEditNew .crm__small-stage").each(function(index) {
if (index <= stage) {
$(this).parent().addClass("active");
} else {
$(this).parent().removeClass("active");
}
});
$('#confirm').val(data.confirm);
if (data.hot > 0) {
$('#addEditNew .form-block__hot-client').addClass('active');
}
for (let i = 1; i < 5; i++) {
$('#addEditNew .form-block__p' + i + '-client').removeClass('active');
}
if (data.priority > 0) {
$('#addEditNew .form-block__p' + data.priority + '-client').addClass('active');
}
//$("#addEditNew .error_msg").next().html(data.fio);
$('#addEditNew .modal-title').html(data.fio);
$("#addEditNew").find('input[name="fio"]').val(data.fio);
$("#addEditNew").find('input[name="email"]').val(data.email);
$("#addEditNew").find('input[name="phone"]').val(data.phone);
$("#addEditNew").find('input[name="budget"]').val(data.budget);
$("#addEditNew").find('[name="opis"]').val(data.opis);
$("#addEditNew").find('input[name="id"]').val(data.id);
$("#addReqClientForm").attr("data-client", data.id);
$("#addEditNew").find('input[name="confirm"]').val(data.confirm);
$("#addEditNew").find('input[name="birthday"]').val(data.birthday);
var html = '' + $("#ms-new-client-type").html() + ' ';
$("#ms-new-client-type").closest(".inputs").html(html);
if (data.work_type && data.work_type != 'null') {
var wor_type = JSON.parse(data.work_type);
for (var i = 0; i < wor_type.length; i++) {
$("#ms-new-client-type option[value='" + wor_type[i] + "']").prop("selected", true)
}
}
$("#ms-new-client-type").fastselect({
placeholder: 'Тип',
onItemDelete: function(item, val) {
if (!this.fastsearch.itemModels[4].selected) {
$('#ms-new-client-activities').parent('.fstElement').find('.fstChoiceRemove').each(function() {
$(this).click();
});
}
}
});
var html = '' + $("#ms-new-client-rol").html() + ' ';
$("#ms-new-client-rol").closest(".inputs").html(html);
if (data.role && data.role != 'null') {
var role = JSON.parse(data.role);
for (var i = 0; i < role.length; i++) {
$("#ms-new-client-rol option[value='" + role[i] + "']").prop("selected", true)
}
}
$("#ms-new-client-rol").fastselect({ placeholder: 'Роль клиента' });
var html = '' + $("#ms-new-client-objects-type").html() + ' ';
$("#ms-new-client-objects-type").closest(".inputs").html(html);
if (data.type && data.type != 'null') {
var type = JSON.parse(data.type);
for (var i = 0; i < type.length; i++) {
$("#ms-new-client-objects-type option[value=" + type[i] + "]").prop("selected", true)
}
}
$("#ms-new-client-objects-type").fastselect({ placeholder: 'Тип недвижимости' });
var activities = null;
if (data.activities && data.activities != 'null') {
activities = JSON.parse(data.activities);
}
setSelectsFastselect('ms-new-client-activities', data.activities, 'select_form_activities.php', 'Теги');
var html = '' + $("#ms-new-client-object").html() + ' ';
//$("#ms-new-client-object").closest(".inputs").html(html);
if (data.objects && data.objects != 'null') {
$.post('/ajax/getClientsView.php', { get_clients_objects: data.objects, user_id: $('#sid').data("id") },
function(result) {
//console.log(result);
if (result == 0) {
$("#ms-new-client-object").closest(".inputs").html(html);
} else {
$("#ms-new-client-object").closest(".inputs").html('' + result + ' ');
}
var objects = JSON.parse(data.objects);
for (var i = 0; i < objects.length; i++) {
$("#ms-new-client-object option[value=" + objects[i] + "]").prop("selected", true);
}
$("#ms-new-client-object").fastselect({ placeholder: 'Объекты' });
}
);
} else {
$.post('/ajax/getClientsView.php', { get_clients_objects: '', user_id: $('#sid').data("id") },
function(result) {
if (result == 0) {
$("#ms-new-client-object").closest(".inputs").html(' ');
} else {
$("#ms-new-client-object").closest(".inputs").html('' + result + ' ');
}
$("#ms-new-client-object").fastselect({ placeholder: 'Объекты' });
}
);
}
$.post('/ajax/getClientsView.php', { get_objects: data.objects, user_id: $('#sid').data("id"), to_send: $('#s_to_send').val() }, function(data) {
$('#addEditNew .jw__objects').html(data);
$('.fotorama').fotorama();
koala_loader();
});
var who_user = $('#sid').attr('data-id');
if (data.who_work) {
who_user = data.who_work;
}
setSelectsFastselect('ms-new-client-work', who_user, 'select_form_client-work.php', 'Ответственный');
var source_id = 0;
if (data.source) {
source_id = data.source;
}
setSelectsFastselect('ms-new-client-source', source_id, 'select_form_source.php', 'Источник');
var emplode_id_ms = 0;
if (data.employee_id) {
emplode_id_ms = data.employee_id;
}
setSelectsFastselect('ms-new-client-partner', emplode_id_ms, 'select_form_partner.php', 'Партнёр');
var funnel_id = 0;
if (data.funnel_id) {
funnel_id = data.funnel_id;
}
setSelectsFastselect('ms-new-funnel', funnel_id, 'select_form_funnel.php', 'Воронка', 'client');
$("#send_bg_new").fadeIn(500);
$("#send_new").toggle(10);
$('#send_log_new').hide();
$('#send_form_new').show();
$("body").addClass("lock");
get_contracts_client(id);
}
});
return false;
});
$('body').on('change', '#luck', function() {
var today = new Date().toLocaleDateString();
if ($(this).prop('checked')) {
$('#datazaklgr').show();
$('#summa_sdelki').show();
$('#denial_work').hide();
$('#denial_work').val(0);
$('#datazakl').val(today);
$('#denial_work-input').hide();
$('#denial_work').val(0);
} else {
$('#datazaklgr').hide();
$('#summa_sdelki').hide();
$('#denial_work').show();
$('#denial_work').val(1);
$('#denial_work-input').show();
$('#denial_work').val(0);
}
});
$('body').on('change', '#luck_all', function() {
var today = new Date().toLocaleDateString();
if ($(this).prop('checked')) {
$('#datazaklgr_all').show();
$('#summa_sdelki_all').show();
$('#denial_work_all').hide();
$('#denial_worka_all').val(0);
$('#datazakl_all').val(today);
$('#denial_work_all-input').hide();
} else {
$('#datazaklgr_all').hide();
$('#summa_sdelki_all').hide();
$('#denial_work_all').show();
$('#denial_work_all').val(1);
$('#denial_work_all-input').show();
}
});
$('body').on('click', '.reload_object', function() {
var id = $(this).data("id");
var item = '#item' + id;
// console.log(item);
$(item + ' .oneObj').addClass('hidden');
$(item + ' .object-content__preloader').removeClass('hidden');
$.post('/ajax/getClientsView.php', { get_object: id, to_send: $('#s_to_send').val() }, function(data) {
///console.log(data);
$(item).html(data);
$('#clients_list .clients').show();
$('.fotorama').fotorama();
koala_loader();
});
});
$("body").on('click', '.archive_my_object', function() {
var id = $(this).data("id");
var item = '#item' + id;
// console.log(item);
$(item + ' .oneObj').addClass('hidden');
$(item + ' .object-content__preloader').removeClass('hidden');
$.ajax({
url: '/ajax/archiveUserObject.php?objId=' + $(this).attr('data-id'),
success: function(data) {
$.post('/ajax/getClientsView.php', { get_object: id, to_send: $('#s_to_send').val() }, function(data) {
///console.log(data);
$(item).html(data);
$('#clients_list .clients').show();
$('.fotorama').fotorama();
koala_loader();
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
});
$("body").on('click', '.un_archive_my_object', function() {
var id = $(this).data("id");
var item = '#item' + id;
// console.log(item);
$(item + ' .oneObj').addClass('hidden');
$(item + ' .object-content__preloader').removeClass('hidden');
$.ajax({
url: '/ajax/unArchiveUserObject.php?objId=' + $(this).attr('data-id'),
success: function(data) {
$.post('/ajax/getClientsView.php', { get_object: id, to_send: $('#s_to_send').val() }, function(data) {
///console.log(data);
$(item).html(data);
$('.fotorama').fotorama();
koala_loader();
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
});
$("body").on('click', '.open_folder', function() {
var id = $(this).data("id");
$('.link' + id).toggleClass('hidden');
$('.history__results').slimScroll({
height: "300px",
width: "100%",
position: "right",
size: "8px",
color: "#585858",
alwaysVisible: false
});
$('.history__variants').slimScroll({
height: "50%",
width: "100%",
position: "right",
size: "8px",
color: "#585858",
alwaysVisible: true
});
$('.log_client').slimScroll({
height: "100%",
width: "34%",
position: "right",
size: "8px",
color: "#585858",
alwaysVisible: true
});
});
$("body").on('click', '.variants-search__action', function() {
var id = $(this).data("id");
var filter = $('.variants-search__input').val();
var html = '';
$('#client_history .presentations').html(html);
if (filter != '') {
$.post('/ajax/getClientsView.php', { client_id: id, filter_pre: filter, to_send: $("#session_to_send").val() }, function(data) {
$('#client_history .presentations').html(data);
});
}
});
$("body").on('click', '.crm__filter-popup .closer', function() {
$('.crm__filter-popup').removeClass("is__show");
});
$("body").on("click", ".view-kanban", function() {
if ($('#funnelIdClients').val() == 'all' && document.location.pathname == '/requisitions.php') {
var funnelId = $('.funnels_client li.active').attr('data-id');
$('#funnelIdClients').val(funnelId);
window.history.pushState(null, null, "clients.php?funnelId=" + funnelId);
}
$(this).addClass('active');
$('.view-list').removeClass('active');
$('.view-table').removeClass('active');
$('#groupClients').hide();
if (document.location.pathname == '/requisitions.php') {
requisitions.view = 'kanban';
requisitions.page = 1;
requisitions.isPreloader = 1;
requisitions.getList();
} else {
get_list();
}
});
$("body").on("click", ".view-list", function() {
$(this).addClass('active');
$('.view-kanban').removeClass('active');
$('.view-table').removeClass('active');
$('#groupClients').show();
page_kanban = 1;
add_knban = true;
if (document.location.pathname == '/requisitions.php') {
requisitions.view = 'list';
requisitions.page = 1;
requisitions.isPreloader = 1;
requisitions.getList();
} else {
get_list();
}
});
$("body").on("click", ".view-table", function() {
$(this).addClass('active');
$('.view-kanban').removeClass('active');
$('.view-list').removeClass('active');
$('#groupClients').hide();
page_kanban = 1;
add_knban = true;
if (document.location.pathname == '/requisitions.php') {
requisitions.view = 'table';
requisitions.page = 1;
requisitions.isPreloader = 1;
requisitions.getList();
} else {
get_list();
}
});
$('body').on('click', '.kanban__item__add-task', function() {
var id = $(this).data("id");
$('#kanban_task_add_' + id).toggleClass("show");
$('#kanban_task_add_' + id).mouseover(function(e) {
e.preventDefault();
$('#kanban_task_add_' + id).addClass("show");
}).mouseleave(function(e) {
e.preventDefault();
$('#kanban_task_add_' + id).removeClass("show");
});
});
$(".monthPicker").datepicker({
dateFormat: 'MM yyyy',
autoClose: 'true',
view: "months",
minView: "months",
onSelect: function(dateText, inst) {
console.log(inst);
var month = new Date(inst).getMonth();
var year = new Date(inst).getFullYear();
// $(this).val($.datepicker.formatDate('MM yy', new Date(year, month, 1)));
$("#month_sales_plan").val(parseInt(month) + 1);
$("#year_sales_plan").val(year);
getSalesPlan();
}
});
/* $(".monthPicker").focus(function () {
$(".ui-datepicker-calendar").hide();
$("#ui-datepicker-div").position({
my: "center top",
at: "center bottom",
of: $(this)
});
});*/
$('body').on('submit', '#send_plan form', function() {
var arrPlan = {};
var month = $("#month_sales_plan").val();
var year = $("#year_sales_plan").val();
var user_id = $('#send_plan #user_sales_plan').val();
var summa = $('#send_plan [name=plan]').val();
var quantity = $('#send_plan [name=quantity]').val();
arrPlan[user_id] = summa;
$.post('/ajax/sales_plan.php', { users_plan: JSON.stringify(arrPlan), quantity: quantity, month: month, year: year }, function(data) {
$("#send_bg_plan").fadeOut(500);
$("#send_plan").hide(10);
$("body").removeClass("lock");
});
return false;
});
$('body').on('click', '#addTask .jw-tabs li', function() {
$('#addTask .jw-tabs li').removeClass('active');
var action = $(this).attr("class");
// var mainId = "#"+$(this).closest(".full_modal").attr("id");
// console.log(mainId);
$('#addTask .jw-tabs li.' + action).addClass('active');
$('#addTask .modal-inner .tabs__content').hide();
$('#addTask .modal-inner .tabs__content.' + action).show();
$('#addTask .modal-submit button').removeAttr("class");
$('#addTask .modal-submit button').addClass("action_" + action);
$('#addEvent .modal-submit button').removeAttr("class");
$('#addEvent .modal-submit button').addClass("action_" + action);
});
/*$('body').on('click', '#addTaskObj .jw-tabs li', function(){
$('#addTaskObj .jw-tabs li').removeClass('active');
var action = $(this).attr("class");
// var mainId = "#"+$(this).closest(".full_modal").attr("id");
// console.log(mainId);
$('#addTaskObj .jw-tabs li.'+action).addClass('active');
$('#addTaskObj .modal-inner .tabs__content').hide();
$('#addTaskObj .modal-inner .tabs__content.'+action).show();
$('#addTaskObj .modal-submit button').removeAttr("class");
$('#addTaskObj .modal-submit button').addClass("action_"+action);
});*/
$('body').on('click', '#addEvent .jw-tabs li', function() {
$('#addEvent .jw-tabs li').removeClass('active');
var action = $(this).attr("class");
// var mainId = "#"+$(this).closest(".full_modal").attr("id");
// console.log(mainId);
$('#addEvent .jw-tabs li.' + action).addClass('active');
$('#addEvent .modal-inner .tabs__content').hide();
$('#addEvent .modal-inner .tabs__content.' + action).show();
$('#addEvent .modal-submit button').removeAttr("class");
$('#addEvent .modal-submit button').addClass("action_" + action);
});
//Слежение за звонками телефонии свитчер
$("body").on('change', '#callTelphin', function() {
if ($(this).prop('checked')) {
$('#intervalTo').show();
$('#intervalToLabel').show();
$('#spanFromInterval').show();
$('#to_callDatetime').datepicker().data('datepicker').selectDate(new Date());
$('.intervalBlock .label').css('float', 'initial');
} else {
$('#intervalTo').hide();
$('#intervalToLabel').hide();
$('#spanFromInterval').hide();
$('.intervalBlock .label').css('float', 'left');
}
});
$("body").on('change', '#callTelphin_1', function() {
if ($(this).prop('checked')) {
$('#intervalTo_1').show();
$('#intervalToLabel_1').show();
$('#spanFromInterval_1').show();
$('#to_showDatetime_1').datepicker().data('datepicker').selectDate(new Date());
$('.intervalBlock .label').css('float', 'initial');
} else {
$('#intervalTo_1').hide();
$('#intervalToLabel_1').hide();
$('#spanFromInterval_1').hide();
$('.intervalBlock .label').css('float', 'left');
}
});
$("body").on('click', '.action_call', function(e) {
e.stopPropagation();
var mainId = "#" + $(this).closest(".full_modal").attr("id");
var text = $(mainId + ' .tabs__content.call #callComment').val();
var date = $(mainId + ' .tabs__content.call #showDatetime').datepicker().val();
var users_id = $(mainId + ' .tabs__content.call .ms-crm-client-work').val();
// при редактировании (data-id задан и не 0) поле «Ответственный» скрыто и не меняется — не требуем его
var isEdit = $(this).attr("data-id") !== undefined && $(this).attr("data-id") !== '0';
$(mainId + ' .tabs__content.call #showDatetime').removeClass('invalid');
$(mainId + ' .tabs__content.call .otvetstven').removeClass('invalid');
//console.log(date);
if (date && $.trim(date) && (isEdit || !isEmpty(users_id))) {
var id_client = $(mainId + ' .tabs__content.call .ms-big-add-client').val();
var data = {
"client_id": (!isEmpty(id_client) ? JSON.stringify(id_client) : ''),
"comment": text,
"schedule_date": date,
"users_id": JSON.stringify(users_id),
"type": 'call'
}
if (mainId == '#addEvent') {
data.noEvent = 1;
}
var event_id = false;
if ($(this).data("id") !== undefined) {
data.event_id = $(this).attr("data-id");
event_id = $(this).attr("data-id");
}
data.call_tracking = 0;
if ($('#callTelphin_1').length > 0) {
if ($('#callTelphin_1').prop('checked')) {
data.call_tracking = 1;
data.date_to = $(mainId + ' .tabs__content.call #to_showDatetime_1').datepicker().val();
}
}
$.ajax({
url: '/ajax/addEventsCabinet.php',
method: "post",
data: data,
success: function(d) {
console.log(d);
$("#addTaskBg").hide();
$("#addTask").hide();
$("#addEventBg").hide();
$("#addEvent").hide();
$("body").removeClass("lock");
if (event_id) { updateMes(event_id); }
getCalendar();
}
});
} else {
if(isEmpty($.trim(date))){
$(mainId + ' .tabs__content.call #showDatetime').addClass('invalid');
}
if(!isEdit && isEmpty(users_id)){
$(mainId + ' .tabs__content.call .otvetstven').addClass('invalid');
}
}
return false;
});
$("body").on('click', '.action_show', function(e) {
e.stopPropagation();
var mainId = "#" + $(this).closest(".full_modal").attr("id");
var text = $(mainId + ' .tabs__content.show #meetComment').val();
var date = $(mainId + ' .tabs__content.show #meetDatetime').datepicker().val();
var users_id = $(mainId + ' .tabs__content.show .ms-crm-client-work').val();
// при редактировании (data-id задан и не 0) поле «Ответственный» скрыто и не меняется — не требуем его
var isEdit = $(this).attr("data-id") !== undefined && $(this).attr("data-id") !== '0';
var address = $(mainId + ' .tabs__content.show #meetAddress').val();
$(mainId + ' .tabs__content.show #meetDatetime').removeClass('invalid');
$(mainId + ' .tabs__content.show .otvetstven').removeClass('invalid');
//console.log(date);
if (date && $.trim(date) && (isEdit || !isEmpty(users_id))) {
var id_client = $(mainId + ' .tabs__content.show .ms-big-add-client').val();
var data = {
"client_id": (!isEmpty(id_client) ? JSON.stringify(id_client) : ''),
"comment": text,
"schedule_date": date,
"users_id": JSON.stringify(users_id),
"type": 'show',
"address": address,
}
if (mainId == '#addEvent') {
data.noEvent = 1;
}
var event_id = false;
if ($(this).data("id") !== undefined) {
data.event_id = $(this).attr("data-id");
event_id = $(this).attr("data-id");
}
// console.log(data);
$.ajax({
url: '/ajax/addEventsCabinet.php',
method: "post",
data: data,
success: function(d) {
$("#addTaskBg").hide();
$("#addTask").hide();
$("#addEventBg").hide();
$("#addEvent").hide();
$("body").removeClass("lock");
if (event_id) { updateMes(event_id); }
getCalendar();
}
});
} else {
if(isEmpty($.trim(date))){
$(mainId + ' .tabs__content.show #meetDatetime').addClass('invalid');
}
if(!isEdit && isEmpty(users_id)){
$(mainId + ' .tabs__content.show .otvetstven').addClass('invalid');
}
}
return false;
});
$("body").on('click', '.action_meet', function(e) {
e.stopPropagation();
var mainId = "#" + $(this).closest(".full_modal").attr("id");
var text = $(mainId + ' .tabs__content.meet #meetComment').val();
var date = $(mainId + ' .tabs__content.meet #meetDatetime').datepicker().val();
var users_id = $(mainId + ' .tabs__content.meet .ms-crm-client-work').val();
// при редактировании (data-id задан и не 0) поле «Ответственный» скрыто и не меняется — не требуем его
var isEdit = $(this).attr("data-id") !== undefined && $(this).attr("data-id") !== '0';
var address = $(mainId + ' .tabs__content.meet #meetAddress').val();
$(mainId + ' .tabs__content.meet #meetDatetime').removeClass('invalid');
$(mainId + ' .tabs__content.meet .otvetstven').removeClass('invalid');
//console.log(date);
if (date && $.trim(date) && (isEdit || !isEmpty(users_id))) {
var id_client = $(mainId + ' .tabs__content.meet .ms-big-add-client').val();
var data = {
"client_id": (!isEmpty(id_client) ? JSON.stringify(id_client) : ''),
"comment": text,
"schedule_date": date,
"users_id": JSON.stringify(users_id),
"type": 'meet',
"address": address,
}
if (mainId == '#addEvent') {
data.noEvent = 1;
}
var event_id = false;
if ($(this).data("id") !== undefined) {
data.event_id = $(this).attr("data-id");
event_id = $(this).attr("data-id");
}
$.ajax({
url: '/ajax/addEventsCabinet.php',
method: "post",
data: data,
success: function(d) {
// console.log(d);
$("#addTaskBg").hide();
$("#addTask").hide();
$("#addEventBg").hide();
$("#addEvent").hide();
$("body").removeClass("lock");
if (event_id) { updateMes(event_id); }
getCalendar();
}
});
} else {
if(isEmpty($.trim(date))){
$(mainId + ' .tabs__content.meet #meetDatetime').addClass('invalid');
}
if(!isEdit && isEmpty(users_id)){
$(mainId + ' .tabs__content.meet .otvetstven').addClass('invalid');
}
}
return false;
});
$("body").on('click', '.action_deal', function(e) {
e.stopPropagation();
var mainId = "#" + $(this).closest(".full_modal").attr("id");
var text = $(mainId + ' .tabs__content.deal #dealComment').val();
var date = $(mainId + ' .tabs__content.deal #dealDatetime').datepicker().val();
var users_id = $(mainId + ' .tabs__content.deal .ms-crm-client-work').val();
// при редактировании (data-id задан и не 0) поле «Ответственный» скрыто и не меняется — не требуем его
var isEdit = $(this).attr("data-id") !== undefined && $(this).attr("data-id") !== '0';
var sum = $(mainId + ' .tabs__content.deal #dealSum').val();
$(mainId + ' .tabs__content.deal #dealDatetime').removeClass('invalid');
$(mainId + ' .tabs__content.deal .otvetstven').removeClass('invalid');
// console.log(date);
if (date && $.trim(date) && (isEdit || !isEmpty(users_id))) {
var id_client = $(mainId + ' .tabs__content.deal .ms-big-add-client').val();
var data = {
"client_id": (!isEmpty(id_client) ? JSON.stringify(id_client) : ''),
"comment": text,
"schedule_date": date,
"users_id": JSON.stringify(users_id),
"type": 'deal',
"sum": sum
}
if (mainId == '#addEvent') {
data.noEvent = 1;
}
var event_id = false;
if ($(this).data("id") !== undefined) {
data.event_id = $(this).attr("data-id");
event_id = $(this).attr("data-id");
}
//console.log(data);
$.ajax({
url: '/ajax/addEventsCabinet.php',
method: "post",
data: data,
success: function(data) {
$("#addTaskBg").hide();
$("#addTask").hide();
$("#addEventBg").hide();
$("#addEvent").hide();
$("body").removeClass("lock");
if (event_id) { updateMes(event_id); }
getCalendar();
}
});
} else {
if(isEmpty($.trim(date))){
$(mainId + ' .tabs__content.deal #dealDatetime').addClass('invalid');
}
if(!isEdit && isEmpty(users_id)){
$(mainId + ' .tabs__content.deal .otvetstven').addClass('invalid');
}
}
return false;
});
$("body").on('click', '.action_event', function(e) {
e.stopPropagation();
var mainId = "#" + $(this).closest(".full_modal").attr("id");
var text = $(mainId + ' .tabs__content.event #dealComment').val();
var date = $(mainId + ' .tabs__content.event #dealDatetime').datepicker().val();
var name = $(mainId + ' .tabs__content.event #eventName').val();
var users_id = $(mainId + ' .tabs__content.event .ms-crm-client-work').val();
// при редактировании (data-id задан и не 0) поле «Ответственный» скрыто и не меняется — не требуем его
var isEdit = $(this).attr("data-id") !== undefined && $(this).attr("data-id") !== '0';
$(mainId + ' .tabs__content.event #dealDatetime').removeClass('invalid');
$(mainId + ' .tabs__content.event .otvetstven').removeClass('invalid');
//console.log(mainId);
if (date && $.trim(date) && (isEdit || !isEmpty(users_id) || !isEmpty($('#addTask .who_work_tasks').val()))) {
var id_client = $(mainId + ' .tabs__content.event .ms-big-add-client').val();
var data = {
"client_id": (!isEmpty(id_client) ? JSON.stringify(id_client) : ''),
"comment": text,
"schedule_date": date,
"users_id": JSON.stringify(users_id),
"type": 'even',
"name": name,
"event_id": 0
}
if (mainId == '#addEvent') {
data.noEvent = 1;
}
var event_id = false;
if ($(this).attr("data-id") !== undefined) {
data.event_id = $(this).attr("data-id");
}
if ($('#clientIdEvent').val() !== undefined) {
data.clientId = $('#clientIdEvent').val();
}
if ($('#reqIdEvent').val() !== undefined) {
data.reqId = $('#reqIdEvent').val();
}
if ($('#userIdEvent').val() !== undefined) {
data.userId = $('#userIdEvent').val();
}
if($('#addTask .event .otvetstven1').is(":visible") && $('#addTask .who_work_tasks').val()){
data.who_work = $('#addTask .who_work_tasks').val();
}
//console.log(data);
$.ajax({
url: '/ajax/addEventsCabinet.php',
method: "post",
data: data,
success: function(r) {
//console.log(r);
$("#addTaskBg").hide();
$("#addTask").hide();
$("#addEventBg").hide();
$("#addEvent").hide();
$("body").removeClass("lock");
//console.log(event_id);
/*if(event_id){ updateMes(event_id);}
getCalendar();*/
var url = '/ajax/getClientLogForEventsNew.php?id=' + data.clientId;
if (data.reqId > 0) {
url += '&req_id=' + data.reqId;
}
$.ajax({
url: url,
success: function(data) {
$('#client-info-block').html(data);
$('#client_history .history__chat-n').animate({
scrollTop: $('#client-info-block').prop("scrollHeight")
}, 500, function() {
$('#client_history .history__chat-n').slimScroll({ scrollTo: $('#client-info-block').prop("scrollHeight") + 'px' });
});
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
} else {
if(isEmpty($.trim(date))){
$(mainId + ' .tabs__content.event #dealDatetime').addClass('invalid');
}
if(!isEdit && isEmpty(users_id)){
$(mainId + ' .tabs__content.event .otvetstven').addClass('invalid');
}
}
return false;
});
$("body").on('click', '.action_obj_call', function(e) {
e.stopPropagation();
let form = $(this).closest(".full_modal");
let event_id = $(this).attr("data-id");
let id_object = $(this).attr("data-objectid");
let type = $(this).attr("data-type");
let date, name, comment, address, sum, req_id;
if (type == "even") {
date = form.find('.event #dealDatetime').datepicker().val();
name = form.find('.event #eventName').val();
comment = form.find('.event #dealComment').val();
} else if (type == "meet") {
date = form.find('.meet #meetDatetime').datepicker().val();
comment = form.find('.meet #meetComment').val();
address = form.find('.meet #meetAddress').val();
} else if (type == "call") {
date = form.find('.call .callDatetime').datepicker().val();
comment = form.find('.call .callComment').val();
} else if (type == "show") {
date = form.find('.show #showDatetime').datepicker().val();
comment = form.find('.show #showComment').val();
address = form.find('.show #showAddress').val();
req_id = $('#showRequisitionsEdit').val();
} else if (type == "deal") {
date = form.find('.deal #dealDatetime').datepicker().val();
comment = form.find('.deal #dealComment').val();
sum = form.find('.deal #dealSum').val();
}
let params = {
event_id: event_id,
object_id: id_object,
type: type,
schedule_date: date,
name: name,
comment: comment,
address: address,
sum: sum,
req_id: req_id,
};
//console.log(params);
$.ajax({
url: '/ajax/changeEventsObj.php',
method: "post",
data: params,
success: function(result) {
//console.log(result);
$("#addTaskBgObj").hide();
$("#addTaskObj").hide();
$("body").removeClass("lock");
$.ajax({
url: '/ajax/getObjectInfoForEvents.php?id=' + id_object,
success: function(data) {
$('#object-info-block').html(data);
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
}
});
setTimeout(function() {
$('#object-info-block .fotorama').fotorama();
initializeMapOnEventWindow();
}, 100);
}
});
}
});
return false;
});
$('body').on('click', '.search-query-item .ti-close', function() {
$('.filter-popup-type').each(function() {
$(this).removeClass('active');
});
for (let i = 1; i <= 4; i++) {
$('.filter-priority' + i).removeClass('active');
}
$('.filter-popup__right select[multiple]').each(function() {
$(this).parent('.fstElement').find('.fstChoiceRemove').each(function() {
$(this).click();
});
});
$('#order').prop('checked', false);
show_options_search_charts();
get_sourse_filter();
});
$('body').on('click', '#addTaskBgObj .closer', function() {
$("#addTaskBgObj").hide();
$("#addTaskObj").hide();
$("body").removeClass("lock");
});
$('body').on('click', '#merepriation_bg .closer', function() {
$("#merepriation_bg").hide();
$("#merepriation-history").hide();
$("body").removeClass("lock");
});
$('body').on('click', '#addTaskBg .closer', function() {
$("#addTaskBg").hide();
$("#addTask").hide();
$("body").removeClass("lock");
return false;
});
$('body').on('click', '#client-history__bg .closer', function() {
$('#client-history__bg').css('zIndex', '99988');
$('.chat-history__actions_new').removeClass('show');
$("#client-history__bg").hide(10);
$("#client_history").hide(10);
$("body").removeClass("lock");
return false;
});
$('body').on('click', '#addEventBg .closer', function() {
$("#addEventBg").hide();
$("#addEvent").hide();
$("body").removeClass("lock");
return false;
});
$('#addTask .ms-crm-client-work').fastselect({
onItemCreate: function(item, model) {
if ($('#addTask .ms-crm-client-work').find('option[value=' + model.value + ']').hasClass('bolt')) {
$(item).addClass('bolt');
}
},
placeholder: 'Ответственный',
onItemSelect: function(item) {
var divId = 'addTask';
var mainDivClass = $('#' + divId + ' .tabs__caption .active').data("id");
var res = $('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-crm-client-work').val();
// $('.tabs__content.'+mainDivClass+' .ms-big-add-client').closest('.inputs').html('');
$.post('/ajax/getCharts.php', { getSelectClients: 'getSelectClients', responsible: JSON.stringify(res), user_id: $('#session_user_id').val(), users_admin: $('#session_user_admin').val() }, function(data) {
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').closest('.crm__filter-input').html(data);
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').fastselect({
placeholder: 'Клиент'
});
});
},
onItemDelete: function() {
var divId = 'addTask';
var mainDivClass = $('#' + divId + ' .tabs__caption .active').data("id");
var res = $('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-crm-client-work').val();
// $('.tabs__content.'+mainDivClass+' .ms-big-add-client').closest('.inputs').html('');
$.post('/ajax/getCharts.php', { getSelectClients: 'getSelectClients', responsible: JSON.stringify(res), user_id: $('#session_user_id').val(), users_admin: $('#session_user_admin').val() }, function(data) {
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').closest('.crm__filter-input').html(data);
$('#' + divId + ' .tabs__content.' + mainDivClass + ' .ms-big-add-client').fastselect({
placeholder: 'Клиент'
});
});
}
});
$('#ms-new-client-bank').fastselect({
placeholder: 'Банк',
});
$('#ms-new-resolve-bank').fastselect({
placeholder: 'Банк',
});
/* $('#ms-new-client-bank-issue').fastselect({
placeholder: 'Банк выдачи',
});*/
/*$('#ms-new-client-bank-revisal').fastselect({
placeholder: 'Банк (пересмотр)',
});*/
$('#ms_new_bancks_credit').fastselect({
placeholder: 'Банковский продукт',
});
var mainPhoneInput = $('.phoneMask#phoneClient');
var mainPhoneCheckbox = $('#national_phone');
function handleInput() {
var mainPhoneNumber = mainPhoneInput.val();
// Проверка на наличие первого символа "+"
if (mainPhoneNumber.startsWith('+')) {
// Удаление всех нецифровых символов, кроме "+"
mainPhoneNumber = mainPhoneNumber.replace(/[^\d+]/g, '');
mainPhoneInput.val(mainPhoneNumber);
} else {
mainPhoneInput.value = '';
}
}
function handleCheckboxChange() {
if (mainPhoneCheckbox.prop('checked')) {
mainPhoneInput.unmask();
mainPhoneInput.val('+')
mainPhoneInput.on('input', handleInput);
mainPhoneInput.focus();
} else {
mainPhoneInput.off('input', handleInput);
mainPhoneInput.mask("+79999999999");
mainPhoneInput.focus();
}
}
mainPhoneCheckbox.on('change', handleCheckboxChange);
$('body').on('click', '#add_phone2', function() {
var inputId = 'input_phone_' + phone2Index;
var checkboxId = 'checkbox_phone_' + phone2Index;
var formBloc = document.createElement('div');
formBloc.classList.add('form-block');
var labelDiv = document.createElement('div');
labelDiv.classList.add('label');
labelDiv.textContent = 'Дополнительный телефон';
formBloc.appendChild(labelDiv)
var inputsDiv = document.createElement('div');
inputsDiv.classList.add('inputs');
var inputPhone = document.createElement('input');
inputPhone.classList.add('text', 'phoneMask');
inputPhone.id = inputId;
inputPhone.type = 'text';
inputPhone.style.width = '400px';
inputPhone.name = 'phone2';
inputPhone.value = '';
inputsDiv.appendChild(inputPhone);
formBloc.appendChild(inputsDiv);
var checkboxDiv = document.createElement('div');
checkboxDiv.classList.add('checkbox', 'inline-block');
checkboxDiv.style = 'display: inline-block;min-height: unset; padding-left: 0px; margin-top: 0px; margin-bottom: 0px;';
var inputCheckbox = document.createElement('input');
inputCheckbox.id = checkboxId;
inputCheckbox.type = 'checkbox';
checkboxDiv.appendChild(inputCheckbox);
var labelCheckbox = document.createElement('label');
labelCheckbox.classList.add('label', 'ml-5', 'whitespace-nowrap');
labelCheckbox.setAttribute('for', checkboxId);
labelCheckbox.textContent = 'Зарубежный телефон';
checkboxDiv.appendChild(labelCheckbox);
formBloc.appendChild(checkboxDiv);
inputCheckbox.addEventListener('change', function() {
if (inputCheckbox.checked) {
$('#' + inputId).unmask();
inputPhone.value = '+'
inputPhone.addEventListener('input', function() {
var phoneNumber = inputPhone.value;
// Проверка на наличие первого символа "+"
if (phoneNumber.startsWith('+')) {
// Удаление всех нецифровых символов, кроме "+"
phoneNumber = phoneNumber.replace(/[^\d+]/g, '');
inputPhone.value = phoneNumber;
} else {
inputPhone.value = '';
}
});
inputPhone.focus();
} else {
$('#' + inputId).mask("+79999999999");
inputPhone.focus();
}
});
$(this).closest('.form-block').before(formBloc);
$('#' + inputId).mask("+79999999999");
phone2Index++;
});
$('body').on('click', '#union_clients_form_open', function() {
var id = $(this).attr("data-id");
console.log(typeof union_clients);
if(typeof union_clients == 'object'){
union_clients.client_dop_id = id;
union_clients.open();
}
});
$('body').on('blur', '.phoneMask', function() {
var phone = $(this).val();
var id = $('#addEditNew [name=id]').val();
var funnel_id = $('.funnels_client .active').data("id");
if ($("#ms-new-funnel").is(":visible")) {
funnel_id = $("#ms-new-funnel").val();
}
if (phone != '' && phone != '+7__________' && phone != '+') {
$.post('/ajax/addEditClient.php', {
verifity_phone: phone,
funnel_id: funnel_id,
id: id
},
function(data) {
//console.log(data);
if (data != 0) {
$('#addEditNew .error_msg').html(data).show();
//$('#addEditNew .error_msg').next().text('Клиент '+fio);
$('#addEditNew .modal-title').text('Клиент ' + fio);
// $(".full_modal-bg").animate({ scrollTop: 0 }, 500);
}
});
}
});
$('body').on('change', '#ms-new-funnel', function() {
var hasPhoneMask = $('#phoneClient').hasClass('phoneMask');
var phone = $('#phoneClient').val();
var id = $('#addEditNew [name=id]').val();
var funnel_id = $("#ms-new-funnel").val();
if (hasPhoneMask && phone != '' && phone != '+7__________' && phone != '+') {
$.post('/ajax/addEditClient.php', {
verifity_phone: phone,
funnel_id: funnel_id,
id: id
},
function(data) {
//console.log(data);
if (data != 0) {
$('#addEditNew .error_msg').html(data).show();
} else {
$('#addEditNew .error_msg').html('').hide();
}
});
}
if ($("#ms-new-funnel").val() > 0) {
$('#addEditNew .stepsTable').hide();
}
});
$('body').on('focus', '#phoneClient', function() {
$('#addEditNew .error_msg').html('').hide();
});
$('body').on('change', '#yes_doc', function() {
if ($(this).prop('checked')) {
$('.prodoc').removeClass('hidden');
} else {
$('.prodoc').addClass('hidden');
}
});
$('body').on('change', '#yes_bank', function() {
//$('#addEditNew .stage-meet .crm__small-stage').click();
if ($(this).prop('checked')) {
$('.probank').removeClass('hidden');
} else {
$('.probank').addClass('hidden');
}
});
$('body').on('change', '#yes_resolve', function() {
$('#addEditNew .stage-meet .crm__small-stage').click();
if ($(this).prop('checked')) {
$('.proresolve').removeClass('hidden');
} else {
$('.proresolve').addClass('hidden');
}
});
$('body').on('change', '#yes_issue', function() {
$('#addEditNew .stage-meet .crm__small-stage').click();
if ($(this).prop('checked')) {
$('.proissue').removeClass('hidden');
} else {
$('.proissue').addClass('hidden');
}
});
$('body').on('change', '#rynok_1', function() {
if ($(this).prop('checked')) {
$('.prorynok').removeClass('hidden');
} else {
$('.prorynok').addClass('hidden');
}
});
$('body').on('change', '#rynok_2', function() {
if ($(this).prop('checked')) {
$('.prorynok').addClass('hidden');
} else {
$('.prorynok').removeClass('hidden');
}
});
$('body').on('change', '#persone_no_ip', function() {
if ($(this).prop('checked')) {
$('.persone_no_ip').removeClass('hidden');
$('.persone_yas_ip').addClass('hidden');
} else {
}
});
$('body').on('change', '#persone_yes_ip', function() {
if ($(this).prop('checked')) {
$('.persone_yas_ip').removeClass('hidden');
$('.persone_no_ip').addClass('hidden');
} else {
//$('.persone_yas_ip').addClass('hidden');
}
});
$('body').on('change', '#yes_brak', function() {
if ($(this).prop('checked')) {
$('.probrak').removeClass('hidden');
} else {
$('.probrak').addClass('hidden');
$('#yes_brak_doc').prop('checked', false);
}
});
$('body').on('change', '#yes_co_dohod', function() {
if ($(this).prop('checked')) {
$('.prosodohod').removeClass('hidden');
} else {
$('.prosodohod').addClass('hidden');
$('#co_borrower_dohod').val('');
}
});
$('body').on('change', '#yes_co_borrower', function() {
if ($(this).prop('checked')) {
$('.proborrower').removeClass('hidden');
} else {
$('.proborrower').addClass('hidden');
$('.proborrower input').val('');
}
});
$('body').on('click', '.probank .edit-btn', function() {
$.ajax({
url: '/ajax/modals/bankRequestWinContent.php',
success: function(data) {
$("#edit_bankcs_zayavka").html(data);
$('.datepicker-here2').datepicker({
autoClose: 'true'
});
$('#edit_bankcs_zayavka [name=employee]').val('');
$('#edit_bankcs_zayavka [name=date_bank]').data('datepicker').selectDate(new Date());
var html = '' + $("#ms-new-client-bank").html() + ' ';
$("#ms-new-client-bank").closest(".inputs").html(html);
$("#ms-new-client-bank option:eq(0)").prop("selected", true);
$("#ms-new-client-bank").fastselect({ placeholder: 'Банк' });
$('#edit_bankcs_zayavka').fadeIn(500);
$("#edit_bankcs_zayavka .edit-modal").toggle(10);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
return false;
});
$('body').on('click', '#edit_bankcs_zayavka .event-modal-close', function() {
$('#edit_bankcs_zayavka').fadeOut(500);
$("#edit_bankcs_zayavka .edit-modal").toggle(10);
setTimeout(function() { $("body").addClass("lock") }, 100);
//$("body").removeClass("lock");
});
$('body').on('click', '#edit_bankcs_zayavka .saved', function() {
var name_bank = $('#edit_bankcs_zayavka .fstToggleBtn').text();
var id_bank = $('#ms-new-client-bank').val();
var employee_bank = $('#edit_bankcs_zayavka input[name=employee]').val();
var date_bank = $('#edit_bankcs_zayavka [name=date_bank]').val();
if ($('#list_bank_' + id_bank).length > 0) {
$('#list_bank_' + id_bank + ' .adv_activities').text(name_bank);
$('#list_bank_' + id_bank + ' .adv_activities').data("employee", employee_bank);
$('#list_bank_' + id_bank + ' .adv_activities').data("date", date_bank);
} else {
var htmlli = '' +
'' + name_bank + ' ' +
'' +
'' +
' ' +
' ' +
'' +
'Удалить ' +
' ' +
' ' +
' ';
$('.probank ul').append(htmlli);
}
$('#edit_bankcs_zayavka').fadeOut(500);
$("#edit_bankcs_zayavka .edit-modal").toggle(10);
setTimeout(function() { $("body").addClass("lock") }, 100);
return false;
});
$('body').on('click', '.probank .list_bank .adv_activities', function() {
var name_bank = $(this).text();
var id_bank = $(this).attr("data-id");
var employee_bank = $(this).attr("data-employee");
var date_bank = $(this).attr("data-date");
$.ajax({
url: '/ajax/modals/bankRequestWinContent.php',
success: function(data) {
$("#edit_bankcs_zayavka").html(data);
$('.datepicker-here2').datepicker({
autoClose: 'true'
});
var html = '' + $("#ms-new-client-bank").html() + ' ';
$("#ms-new-client-bank").closest(".inputs").html(html);
$("#ms-new-client-bank [value=" + id_bank + "]").prop("selected", true);
$("#ms-new-client-bank").fastselect({ placeholder: 'Банк' });
$('#edit_bankcs_zayavka [name=employee]').val(employee_bank);
$('#edit_bankcs_zayavka [name=date_bank]').val(date_bank);
$('#edit_bankcs_zayavka').fadeIn(500);
$("#edit_bankcs_zayavka .edit-modal").toggle(10);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
});
$('body').on('click', '.probank .delZayavka', function() {
var id = $(this).data("id");
$("#list_bank_" + id).remove();
});
$('body').on('click', '.proresolve .edit-btn', function() {
$.ajax({
url: '/ajax/modals/bankResolveWinContent.php',
success: function(data) {
$("#edit_bankcs_resolve").html(data);
$('.datepicker-here2').datepicker({
autoClose: 'true'
});
$('#edit_bankcs_resolve [name=summa]').val('');
$('#edit_bankcs_resolve [name=prstavka]').val('');
$('#edit_bankcs_resolve [name=srok]').val('');
$('#edit_bankcs_resolve [name=usloviya]').val('');
var html = '' + $("#ms-new-resolve-bank").html() + ' ';
$("#ms-new-resolve-bank").closest(".inputs").html(html);
$("#ms-new-resolve-bank option:eq(0)").prop("selected", true);
$("#ms-new-resolve-bank").fastselect({ placeholder: 'Банк' });
$('#edit_bankcs_resolve').fadeIn(500);
$("#edit_bankcs_resolve .edit-modal").toggle(10);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
return false;
});
$('body').on('click', '#edit_bankcs_resolve .event-modal-close', function() {
$('#edit_bankcs_resolve').fadeOut(500);
$("#edit_bankcs_resolve .edit-modal").toggle(10);
setTimeout(function() { $("body").addClass("lock") }, 100);
//$("body").removeClass("lock");
});
$('body').on('click', '#edit_bankcs_resolve .saved', function() {
var name_bank = $('#edit_bankcs_resolve .fstToggleBtn').text();
var id_bank = $('#ms-new-resolve-bank').val();
var summa = $('#edit_bankcs_resolve [name=summa]').val();
var prstavka = $('#edit_bankcs_resolve [name=prstavka]').val();
var srok = $('#edit_bankcs_resolve [name=srok]').val();
var usloviya = $('#edit_bankcs_resolve [name=usloviya]').val();
if ($('#list_resolve_' + id_bank).length > 0) {
$('#list_resolve_' + id_bank + ' .adv_activities').text(name_bank);
$('#list_resolve_' + id_bank + ' .adv_activities').data("summa", summa);
$('#list_resolve_' + id_bank + ' .adv_activities').data("prstavka", prstavka);
$('#list_resolve_' + id_bank + ' .adv_activities').data("srok", srok);
$('#list_resolve_' + id_bank + ' .adv_activities').data("usloviya", usloviya);
} else {
var htmlli = '' +
'' + name_bank + ' ' +
'' +
'' +
' ' +
' ' +
'' +
'Удалить ' +
' ' +
' ' +
' ';
$('.proresolve ul').append(htmlli);
}
$('#edit_bankcs_resolve').fadeOut(500);
$("#edit_bankcs_resolve .edit-modal").toggle(10);
setTimeout(function() { $("body").addClass("lock") }, 100);
return false;
});
$('body').on('click', '.proresolve .list_bank .adv_activities', function() {
var name_bank = $(this).text();
var id_bank = $(this).attr("data-id");
var summa = $(this).attr("data-summa");
var prstavka = $(this).attr("data-prstavka");
var srok = $(this).attr("data-srok");
var usloviya = $(this).attr("data-usloviya");
var html = '' + $("#ms-new-resolve-bank").html() + ' ';
$.ajax({
url: '/ajax/modals/bankResolveWinContent.php',
success: function(data) {
$("#edit_bankcs_resolve").html(data);
$('.datepicker-here2').datepicker({
autoClose: 'true'
});
$("#ms-new-resolve-bank").closest(".inputs").html(html);
$("#ms-new-resolve-bank [value=" + id_bank + "]").prop("selected", true);
$("#ms-new-resolve-bank").fastselect({ placeholder: 'Банк' });
$('#edit_bankcs_resolve [name=summa]').val(summa);
$('#edit_bankcs_resolve [name=prstavka]').val(prstavka);
$('#edit_bankcs_resolve [name=srok]').val(srok);
$('#edit_bankcs_resolve [name=usloviya]').val(usloviya);
$('#edit_bankcs_resolve').fadeIn(500);
$("#edit_bankcs_resolve .edit-modal").toggle(10);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
});
$('body').on('click', '.proresolve .delResolve', function() {
var id = $(this).data("id");
$("#list_resolve_" + id).remove();
});
//*********часть для документов************//
$('body').on('click', '.dir.opened', function(e) {
if ($(e.target).closest(".docsfiles").length < 1) {
$(this).find('.docsfiles').toggleClass('hidden');
}
});
$('body').on('click', '.new_folder_add', function() {
$('#folder_add_bg').show(10);
$('#folder_add').show(10);
$("body").addClass("lock");
return false;
});
$('body').on('click', '#folder_add_bg .closer', function() {
$("#folder_add_bg").hide(10);
$("#folder_add").hide(10);
$("body").removeClass("lock");
return false;
});
$('#form_add_folder').submit(function() {
var name = $('#form_add_folder input[name=name]').val();
var user_id = $('#form_add_folder #folder_idUser').val();
var perm_folder = $('#form_add_folder #filter-perm-doc-type').val();
var params = {};
params.add_new_folder = name;
params.user_id = user_id;
params.permissions = perm_folder;
$.post('/ajax/folders.php', params, function(data) {
$("#folder_add_bg").hide(10);
$("#folder_add").hide(10);
$("body").removeClass("lock");
get_folders();
});
return false;
});
$('#filter-perm-doc-type').fastselect({
placeholder: 'Участники',
onItemSelect: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
},
onItemDelete: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
}
});
$('body').on('click', '.delFolder', function() {
var id = $(this).data("id");
if (confirm('Вы точно хотите безвозвратно удалить эту папку?')) {
$.post('/ajax/folders.php', { delete_folder: id }, function() {
$('#folder_id_' + id).remove();
});
}
});
$('body').on('click', '.add_doc', function() {
var id_folder = $(this).data("id");
var url = '/server/php/index.php?folder=' + id_folder;
$('#files_upload #files').html('');
$('#fileupload_folder_id').val(id_folder);
$('#progress .progress-bar').css(
'width',
'0%'
);
$('#fileupload').fileupload({
url: url,
dataType: 'json',
done: function(e, data) {
console.log(data.result);
$.each(data.result.files, function(index, file) {
if (file.error) {
alert(file.error);
} else {
$('
').text(file.name).appendTo('#files');
}
});
$.post('/ajax/folders.php', { save_files: id_folder, files: JSON.stringify(data.result.files) }, function(data) {
// console.log(data);
get_folders(id_folder);
});
},
progressall: function(e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$('#progress .progress-bar').css(
'width',
progress + '%'
);
}
}).prop('disabled', !$.support.fileInput)
.parent().addClass($.support.fileInput ? undefined : 'disabled');
$('#files_upload').show(10);
$('#file_upload').show(10);
$("body").addClass("lock");
return false;
});
$('body').on('click', '#files_upload .closer', function() {
$("#files_upload").hide(10);
$("#file_upload").hide(10);
$("body").removeClass("lock");
return false;
});
$('body').on('click', '.delDocument', function() {
var id = $(this).data("id");
if (confirm('Вы точно хотите безвозвратно удалить этот документ?')) {
$.post('/ajax/folders.php', { delete_document: id }, function(data) {
console.log(data);
$('#agencyDocument_' + id).remove();
});
}
});
//Для объектов
$('body').on('input', '#etaz', function() {
var etaz = $(this).val();
if (etaz == 1) {
$('#block_etaz_first_type').removeClass('hidden');
} else {
$('#block_etaz_first_type').addClass('hidden');
$('#block_etaz_first_type select option:eq(0)').prop('selected', true);
}
});
//Новые воронки
$('body').on('click', '.funnels_client li', function(e) {
if ($(this).hasClass('quest_funnel')) {
//console.log(e.target);
} else {
if ($(this).closest('.isNoLoadPage').length > 0) {
//console.log('isNoLoadPage');
var id = $(this).attr("data-id");
$('.funnels_client li').removeClass('active');
$(this).addClass('active');
$('#funnelIdClients').val(id);
page_kanban = 1;
add_knban = true;
if (document.location.pathname == '/requisitions.php') {
window.history.pushState(null, null, "requisitions.php?funnelId=" + id);
requisitions.funnel_id = id;
requisitions.page = 1;
requisitions.getList();
} else {
if (document.location.pathname == '/clients.php') {
window.history.pushState(null, null, "clients.php?funnelId=" + id);
if(id == 0 && $(this).attr("data-stage") == 0){
$('.view-kanban').addClass('hidden');
if($('.view-kanban.active').length > 0){
$('.view-kanban').removeClass('active');
$('.view-list').addClass('active');
}
} else {
$('.view-kanban').removeClass('hidden');
}
//requisitions.funnel_id = id;
//requisitions.page = 1;
get_list();
}
}
} else {
var id = $(this).data("id");
var url = new URL(window.location.href);
url.searchParams.set('funnelId', id);
window.location.href = url.toString();
}
}
});
//Этапы воронок
$('body').on('click', '.crm__small-step', function(e) {
if($(e.target).closest('.list_stagebars').length > 0 || $(e.target).closest('.no_event_stagebars').length > 0 || $(this).hasClass('not_clicked')){
return;
}
var $clickedStep = $(this);
var stage = parseInt($(this).attr("data-stage"));
var client = $(this).attr("data-client");
var req = $(this).attr("data-req");
var adjacent = $(this).attr("data-adjacent");
var main = $(this).attr("data-main");
// Находим этапы текущей заявки
var $row = $clickedStep.closest('tr');
var stages = $row.find('.stage .crm__small-step');
// Индекс кликнутого этапа
var clickedIndex = stages.index(this);
// Индекс текущего активного этапа
var currentIndex = null;
stages.each(function(index) {
if ($(this).closest('.stage').hasClass('active')) {
currentIndex = index;
}
});
// Если нет активного этапа
if (currentIndex === null) {
var $firstStep = $(stages.get(0)); // первый этап
var firstStage = $firstStep.attr("data-stage");
var firstClient = $firstStep.attr("data-client");
var firstReq = $firstStep.attr("data-req");
var firstAdjacent = $firstStep.attr("data-adjacent");
var firstMain = $firstStep.attr("data-main");
// Если первый этап доступен (main == 1), то открываем его
if (firstMain == 1) {
$.post('/ajax/funnel_step_close.php', { 'step': firstStage, 'client': firstClient, 'req': req }, function(res) {
ac.closesStep = true;
ac.step = JSON.parse(res);
ac.clientId = firstClient;
ac.reqId = firstReq;
ac.stepId = firstStage;
ac.adjacentId = firstAdjacent;
ac.openStep();
});
} else {
error_mes('#step_funnel_error' + firstClient, 'Сначала откройте первый этап');
}
return;
}
if (clickedIndex <= currentIndex) {
if ($clickedStep.closest('.active').length == 1) {
error_mes('#step_funnel_error' + client, 'Этап закрыт');
ac.clientId = client;
ac.reqId = req;
ac.adjacentId = adjacent;
ac.openPrevStep();
return;
}
if (main == 0 && !$clickedStep.closest('.stage').prev().hasClass("active")) {
if(adjacent){
error_mes('#step_funnel_erroradjacent_' + adjacent, 'Нужно закрыть предыдущий этап');
} else if (client) {
error_mes('#step_funnel_error' + client, 'Нужно закрыть предыдущий этап');
} else if (req) {
error_mes('#step_funnel_errorreq' + req, 'Нужно закрыть предыдущий этап');
}
return;
}
$.post('/ajax/funnel_step_close.php', { 'step': stage, 'client': client, 'req': req }, function(res) {
ac.closesStep = true;
ac.step = JSON.parse(res);
ac.clientId = client;
ac.reqId = req;
ac.stepId = stage;
ac.adjacentId = adjacent;
ac.openStep();
});
return;
}
var nextIndex = currentIndex + 1;
var $nextStep = $(stages.get(nextIndex));
var nextStage = $nextStep.attr("data-stage");
var nextClient = $nextStep.attr("data-client");
var nextReq = $nextStep.attr("data-req");
var nextAdjacent = $nextStep.attr("data-adjacent");
$.post('/ajax/funnel_step_close.php', { 'step': nextStage, 'client': nextClient, 'req': req }, function(res) {
ac.closesStep = true;
ac.step = JSON.parse(res);
ac.clientId = nextClient;
ac.reqId = nextReq;
ac.stepId = nextStage;
ac.adjacentId = nextAdjacent;
ac.openStep();
});
});
//Партнер
$("body").on('click', '#client_add_partner', function() {
var req_id = 0;
if ($(this).attr("data-req")) {
req_id = parseInt($(this).attr("data-req"));
}
$("#chat-modal__bg__partner").fadeIn(500);
$("#chat-modal__partner").attr('data-type', 'client');
$("#chat-modal__partner").toggle(10);
$("body").addClass("lock");
partner.selectedEmploye = null;
partner.req_id = req_id;
partner.get__employe();
return false;
});
//Смежная воронка
$("body").on('click', '#client_add_adjacent', function() {
var req_id = 0;
var funnel_id = 0;
if ($(this).attr("data-req")) {
req_id = parseInt($(this).attr("data-req"));
}
if ($(this).attr("data-funnel")) {
funnel_id = parseInt($(this).attr("data-funnel"));
}
$("#chat-modal__bg__adjacent").fadeIn(500);
$("#chat-modal__adjacent").attr('data-type', 'client');
$("#chat-modal__adjacent").toggle(10);
$("body").addClass("lock");
adjacent.selectedEmploye = null;
adjacent.req_id = req_id;
adjacent.funnel_id = funnel_id;
adjacent.get_adjacent_funnels();
return false;
});
$("body").on('click', '#chat-modal__bg__partner .ti-close', function() {
close_partner_modal();
});
$("body").on('click', '#chat-modal__bg__adjacent .ti-close', function() {
close_adjacent_modal();
});
$('body').on('click', '.confirm__clients', function() {
var userId = $(this).data("id");
var clientsId = [];
var all = 0;
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
}
if (all == 0) {
$('.changeClientInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeClient", "");
if (id != 'All') {
clientsId.push(id);
}
}
});
console.log(clientsId);
if (clientsId.length == 0) {
alert("Нет выбранных клиентов");
} else {
console.log(userId);
changeUserClients_confirm(userId, clientsId);
}
} else {
changeUserClients_confirm(userId, clientsId);
}
});
$('body').on('click', '.confirm_on_clients', function() {
var userId = $('#session_user_id').val();
var clientsId = [];
var all = 0;
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
clientsId = ['all'];
}
if (all == 0) {
$('.changeClientInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeClient", "");
if (id != 'All') {
clientsId.push(id);
}
}
});
console.log(clientsId);
if (clientsId.length == 0) {
alert("Нет выбранных клиентов");
} else {
//console.log(userId);
open_confirmation__req_client('client', 'confirm_on', '');
}
} else {
open_confirmation__req_client('client', 'confirm_on', '');
}
})
$('body').on('click', '.funnel__clients', function() {
var all = 0;
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
}
if (all == 0) {
var clientsId = [];
$('.changeClientInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeClient", "");
if (id != 'AllFilter' && id != 'All')
clientsId.push(id);
}
});
console.log(clientsId);
if (clientsId.length == 0) {
alert("Нет выбранных клиентов");
} else {
funnelClients(clientsId);
}
} else {
funnelClients(clientsId);
}
});
//Закрытие нескольких клиентов
$("body").on('click', '.closed_all', function() {
var req = false;
if ($(this).attr('data-req')) {
req = true;
}
var clientsId = [];
var reqsId = [];
var all = 0;
if (req) {
if ($('#changeReqAllFilter').prop('checked')) {
all = 1;
}
$('.changeReqInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeReq", "");
if (id != 'All') {
reqsId.push(id);
}
}
});
} else {
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
}
$('.changeClientInput').each(function() {
if ($(this).prop('checked')) {
if (id != 'All') {
var id = $(this).attr('id').replace("changeClient", "");
clientsId.push(id);
}
}
});
}
if (!req) {
if (clientsId.length == 0 && all == 0) {
alert("Нет выбранных клиентов");
} else {
if (all == 1) {
clientsId.push('all');
}
$("#del_client_all").find('input[name="id_del_clients"]').val(JSON.stringify(clientsId));
$("#del_client_all").find('input[name="id_del_reqs"]').val(0);
open_confirmation__req_client('client', 'close_all', '');
}
} else {
if (reqsId.length == 0 && all == 0) {
alert("Нет выбранных заявок");
} else {
if (all == 1) {
reqsId.push('all');
}
$("#del_client_all").find('input[name="id_del_clients"]').val(0);
$("#del_client_all").find('input[name="id_del_reqs"]').val(JSON.stringify(reqsId));
open_confirmation__req_client('req', 'close_all', '');
}
}
return false;
});
//Открытие нескольких клиентов
$("body").on('click', '.renew_all', function() {
var clientsId = [];
var all = 0;
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
}
if (all == 0) {
$('.changeClientInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeClient", "");
clientsId.push(id);
}
});
console.log(clientsId);
if (clientsId.length == 0) {
alert("Нет выбранных клиентов");
} else {
open_confirmation__req_client('client', 'renew_all', '');
//renewClients(clientsId);
}
} else {
open_confirmation__req_client('client', 'renew_all', '');
}
return false;
});
$('body').click(function(e) {
if ($(e.target).closest('.jw__popup').length == 0 &&
$(e.target).closest('.fstChoiceItem').length == 0 &&
$(e.target).closest('.vs__deselect').length == 0 &&
$(e.target).closest('#requisitions_list').length == 0
) {
$('.jw__popup').removeClass('show');
}
if ($(e.target).closest('.actions-menu').length != 1) {
$('#popup__clients').removeClass('show');
}
});
$("body").on("click", ".cartClient", function() {
var client_id = $(this).data("id");
openClientEventsWindowNew(client_id, $('#session_to_send').val());
});
if (document.location.pathname != '/my-objects.php' && document.location.pathname != '/agency-objects.php') {
localStorage['edit_object_prev_url'] = 0;
}
$('body').on('click', '#show_no_all_objects_page .closer', function() {
$('#show_no_all_objects_page_bg').fadeOut(300);
$('#show_no_all_objects_page').toggle(100);
$("body").removeClass("lock");
return false;
});
$('body').on('click', '#bind_obj_req .closer', function() {
$('#bind_obj_req_bg').fadeOut(300);
$('#bind_obj_req').toggle(100);
$("body").removeClass("lock");
return false;
});
$("body").on('click', '#confirmation__req_client_bg .closer', function() {
close_confirmation__req_client();
});
$('#customFieldsFilters .block-title, #customFieldsInputsForm .block-title').click(function(event) {
$(this).parents('.fields-inputs').find('.fields').fadeOut(300);
$(this).parents('.fields-inputs').find(' .block-title').removeClass('active');
$(this).parents('.fields-inputs').find(' .block-title span').addClass('ti-angle-down').removeClass('ti-angle-up');
$(this).addClass('active');
if ($(this).next('.fields').css('display') == "none") {
$(this).find('span').addClass('ti-angle-up').removeClass('ti-angle-down');
$(this).next('.fields').fadeIn(300);
} else {
$(this).find('span').addClass('ti-angle-down').removeClass('ti-angle-up');
$(this).next('.fields').fadeOut(300);
}
});
//$('#customFieldsFilters .fields-inputs').first().find('.block-title').click();
$('#customFieldsInputsForm .block-title').first().click();
$('body').on('click', '#add_obj_clear_client', function() {
$('#object-new-client-req').addClass('hidden');
$('#object-new-client-req span').text('');
$('#object-new-client-req [name=sobstv_object_req]').val(0);
$('#object-new-client-req [name=sobstv_object_req_funnel]').val(0);
if ($('#object-new-client').length > 0) {
$('#object-new-client').fastselect().data('fastselect').destroy();
$('#object-new-client').val('');
$('#object-new-client').removeAttr('data-initial-value');
$('#object-new-client').data('initial-value', null);
$('#object-new-client').removeAttr('value');
$('.fstResultItem').removeClass('fstSelected');
$('#object-new-client').fastselect({
placeholder: 'Клиент',
initialValue: null,
onItemSelect: function(item, val) {
bindObjReq();
},
});
}
});
$('body').on('click', '#bind_obj_req .new_req', function() {
var client_id = $(this).attr('data-id');
console.log(client_id);
if (client_id > 0) {
$('#object-new-client-req').removeClass('hidden');
$('#object-new-client-req span').text("Будет создана новая заявка");
$('#object-new-client-req input[name=sobstv_object_req]').val('new');
var funnel_id = $('#bind_obj_req-funnel').val();
$('#object-new-client-req input[name=sobstv_object_req_funnel]').val(funnel_id);
}
$('#bind_obj_req_bg').fadeOut(300);
$('#bind_obj_req').fadeOut(100);
$("body").removeClass("lock");
return false;
})
$('body').on('click', '#bind_obj_req .old_req', function() {
var client_id = $(this).attr('data-id');
$('#bind_obj_req_bg').fadeOut(300);
$('#bind_obj_req').fadeOut(100);
$("body").removeClass("lock");
$('#liReq').click();
return false;
})
$('body').on('click', ".change_req", function(e) {
// console.log(e.target);
if ($(e.target).closest(".actions").length == 0 &&
$(e.target).closest(".crm__small-stagebar").length == 0 &&
!$(e.target).hasClass("toggleClient") &&
$(e.target).closest(".col").length == 0
) {
var index = $(this).attr("data-id");
var req_id = requisitions_client.req[index].id;
if($('#object-new-client-req').length > 0){
$('#object-new-client-req').removeClass('hidden');
$('#object-new-client-req span').text("Объект будет прикреплен к заявке " + requisitions_client.req[index].name);
$('#object-new-client-req [name=sobstv_object_req]').val(req_id);
}
if(typeof client_req_bind == 'object' && client_req_bind.is_show){
client_req_bind.change_req(requisitions_client.req[index]);
}
$('#send_bg_new').fadeOut(500);
$("#send_bg_new .edit-modal").fadeOut(10);
$("body").removeClass("lock");
}
})
$('body').on('click', '#client_req_list_open', function() {
$('#liReq').click();
})
$('body').on('click', '.add-new-complex', function() {
if (typeof complexform == 'object') {
complexform.open();
}
})
$('body').on('click', '#obj_my_obj_moderation', function() {
$('.active-ag').removeClass('selected');
$('#obj_my_obj_moderation').addClass('selected');
q__001();
})
$('body').on('click', '#obj_my_obj_no_moderation', function() {
$('.active-ag').removeClass('selected');
$('#obj_my_obj_no_moderation').addClass('selected');
q__001();
})
$("body").on("change", "#is_cian_bet", function(){
if($(this).prop('checked')){
$('#objects_filter_cian_bet_block').removeClass('hidden');
} else {
$('#objects_filter_cian_bet_block').addClass('hidden');
$('#objects_filter_cian_bet_ot').val('');
$('#objects_filter_cian_bet_do').val('');
}
})
$("body").on("change", "#checkdox_avito_feed_all", function(){
if($(this).prop('checked') === false){
switchCanAvitoAd(this);
}
})
$("body").on("change", "#checkdox_cian_feed_all", function(){
if($(this).prop('checked') === false){
switchCanCianAd(this);
}
})
$("body").on("change", "#checkdox_yandex_feed_all", function(){
if($(this).prop('checked') === false){
switchBnAd(this);
}
})
$("body").on("change", "#checkdox_dom_feed_all", function(){
if($(this).prop('checked') === false){
switchDomAd(this);
}
})
$("body").on("change", "#checkdox_free_feed_all", function(){
if($(this).prop('checked') === false){
switchCanAd(this);
}
})
$("body").on("change", "#checkdox_jcat_feed_all", function(){
if($(this).prop('checked') === false){
switchCanEmlsAd(this);
}
})
$("body").on("change", "#checkdox_advert_all", function(){
if($(this).prop('checked') === false){
advertsSwitch(this);
}
})
var is_change_cian_bet = false;
$("body").on('input', '.change_cian_bet', function(e) {
var object_id = this.getAttribute('data-id');
// console.log(object_id);
if (!is_change_cian_bet) {
is_change_cian_bet = true;
setTimeout(function(){
if(object_id > 0 || object_id == 'all') {
params = {};
params.object_id = object_id;
params.user_id = $('#session_user_id').val();
price = $('#cian_bet_input_promo_'+object_id).val();
if(isEmpty(price)) price = 0;
params.cian_bet = price;
$.ajax({
url: '/ajax/addPromotion.php',
method: "post",
data: params,
success: function(data) {
console.log(data);
//let results = JSON.parse(data);
is_change_cian_bet = false;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}, 2000);
}
})
var is_change_price = false;
$("body").on('input', '.change_price', function(e) {
var object_id = this.getAttribute('data-id');
// console.log(object_id);
var place = $(this).attr('data-place');
console.log(place);
if (!is_change_price) {
is_change_price = true;
setTimeout(function(){
if(object_id == 'all') {
params = {};
params.object_id = object_id;
params.user_id = $('#session_user_id').val();
if(place == 'cian'){
price = $('#cian_promo_price_all').val();
if(isEmpty(price)) price = 0;
params.cian_price = price;
}
if(place == 'avito'){
price = $('#avito_promo_price_all').val();
if(isEmpty(price)) price = 0;
params.avito_price = price;
}
if(place == 'yandex'){
price = $('#yandex_promo_price_all').val();
if(isEmpty(price)) price = 0;
params.yandex_price = price;
}
if(place == 'domclick'){
price = $('#domclick_promo_price_all').val();
if(isEmpty(price)) price = 0;
params.domclick_price = price;
}
$.ajax({
url: '/ajax/addPromotion.php',
method: "post",
data: params,
success: function(data) {
console.log(data);
//let results = JSON.parse(data);
is_change_price = false;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}, 2000);
}
})
$("body").on('click', '.open-edit-price', function () {
let agency_id = $('#session_agency_id').val();
const obj = JSON.parse($(this).attr('data-obj'));
const select_currency = obj && obj.prices && obj.prices.currency ? obj.prices.currency : 0;
const price_avito = obj && obj.prices && obj.prices.price_avito ? obj.prices.price_avito : '';
const commission_agency = obj && obj.commission_agency && obj.commission_agency ? obj.commission_agency : 0;
const commission_agency_type = obj && obj.commission_agency_type && obj.commission_agency_type ? obj.commission_agency_type : 'percent';
let currencyAznOptions = '';
if (agency_id == 20079) {
currencyAznOptions = `AZN `;
}
$('#edit-object-price-popup').remove();
$(this).parent().append(`
`);
$("#edit-object-price-button").attr("data-obj", $(this).attr('data-obj'));
});
$("body").on('click', '#edit-object-price-popup .closer', function () {
$('#edit-object-price-popup').remove();
});
$("body").on('click', '#edit-object-price-button', function () {
const obj = JSON.parse($(this).attr('data-obj'));
const stoim_ot = parseInt($('#stoim_ot').val(), 10)
const currency = parseInt($('#select_currency_price').val(), 10)
const price_avito = parseInt($('#price_avito_rub_inp').val(), 10)
const commission_agency = $('#commission_agency').val()
const commission_agency_type = $('#commission_agency_type').val()
const params = {
...obj,
stoim_ot,
commission_agency,
commission_agency_type,
prices: {
...obj.prices,
price_avito,
currency,
}
}
if (currency == 0 && !stoim_ot) {
$('#stoim_ot').parent().addClass('invalid');
return;
} else if (currency !== 0 && (!stoim_ot || !price_avito)) {
if (!stoim_ot) {
$('#stoim_ot').parent().addClass('invalid');
}
if (!price_avito) {
$('#price_avito_rub_inp').parent().addClass('invalid')
}
return;
}
$.ajax({
url: '/ajax/ajax_edit_object.php',
method: "post",
data: params,
success: function(data) {
let currency = 'p';
data = JSON.parse(data)
if (data.prices.hasOwnProperty('currency')) {
if (parseInt(data.prices.currency, 10) === 1) {
currency = '$';
} else if (parseInt(data.prices.currency, 10) === 2) {
currency = '€';
}
}
if (stoim_ot != obj.stoim)
{
let priceStats = "";
// Дата изменения цены
priceStats += "";
priceStats += '';
priceStats += new Date().toLocaleDateString('ru-RU', {
day: '2-digit',
month: '2-digit',
year: 'numeric'
});
priceStats += '
';
priceStats += " ";
// Информация о цене
priceStats += "";
priceStats += '';
priceStats += new Intl.NumberFormat('ru-RU').format(data.stoim) + ' ' + currency + ' ';
priceStats += '
';
priceStats += " ";
priceStats += " ";
$(`.table_price_history--${data.id}`).append(priceStats)
}
$(`.stoim--${data.id}`).html(Math.round(data.stoim).toString().replace(/\B(?=(\d{3})+(?!\d))/g, ' '))
let price = data.commission_agency;
if (data.commission_agency_type === 'percent') {
price = (parseInt(data.stoim, 10) * parseFloat(data.commission_agency)) / 100;
}
if (data.type == 7) {
let stoim = parseFloat(data.stoim);
let landArea = parseFloat(data.land_area);
if (!isNaN(stoim) && !isNaN(landArea) && landArea > 0) {
let result = Math.round(stoim / landArea);
$(`.land_area--${data.id}`).html(result.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ' '));
}
}
else {
if (data.id && !isNaN(data.stoim) && !isNaN(data.ploshad) && data.ploshad > 0) {
let result = Math.round(data.stoim / data.ploshad);
$(`.ploshad--${data.id}`).html(result.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ' '));
}
}
$('#edit-object-price-popup').remove();
$(`.open-edit-price--${data.id}`).attr('data-obj', JSON.stringify(data))
if ($(`#commission_stats_td__${data.id}`).length > 0) {
$(`#commission_stats_div__${data.id}`).remove();
$(`#commission_stats_td__${data.id}`).css('width', '25%');
if ($(`#ti-info-alt--${data.id}`).length > 0) {
$(`#ti-info-alt--${data.id}`).after(
`
`
);
} else {
$(`#commission_stats_td__${data.id}`).prepend(
`
`
);
}
}
else {
$(`.commission--agency--${data.id}`).html(
new Intl.NumberFormat('ru-RU').format(price) + ' ' + currency + ' '
)
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.error("error: " + errorThrown + "; status:" + textStatus);
}
});
})
$('body').on('click', '#edit_expected_commission_req', function(){
$('#edit_expected_commission_req').hide();
$('#edit_expected_commission_req_input').show();
$('#edit_expected_commission_req_save').show();
})
$('body').on('click', '#edit_expected_commission_req_save', function(){
let req_id = $(this).attr("data-id");
let value = $('#edit_expected_commission_req_input').val();
axios.post('/ajax/ajax_vue_requisitions.php', {
request: 'edit_req_finance_info',
field: 'expected_commission',
user_id: $('#session_user_id').val(),
req_id: req_id,
value: value
})
.then(function(response) {
console.log(response.data);
get_finance_info(req_id);
})
.catch(function(error) {
consle.error(error);
});
//get_finance_info(req_id);
})
$('body').on('click', '#edit_deposit_req', function(){
$('#edit_deposit_req').hide();
$('#edit_deposit_req_input').show();
$('#edit_deposit_req_save').show();
})
$('body').on('click', '#edit_deposit_req_save', function(){
let req_id = $(this).attr("data-id");
let value = $('#edit_deposit_req_input').val();
let deposit_id = $(this).attr("data-deposit");
axios.post('/ajax/ajax_vue_requisitions.php', {
request: 'edit_req_finance_info',
field: 'deposit',
user_id: $('#session_user_id').val(),
req_id: req_id,
value: value,
deposit_id: deposit_id
})
.then(function(response) {
console.log(response.data);
get_finance_info(req_id);
})
.catch(function(error) {
consle.error(error);
});
//get_finance_info(req_id);
})
$('body').on('click', '#toggle_block_expenses', function(){
console.log($('#div_toggle_block_expenses').css('display'));
if($('#div_toggle_block_expenses').css('display') == 'none')
$('#div_toggle_block_expenses').show();
else
$('#div_toggle_block_expenses').hide();
})
$('body').on('click', '.edit_expense_req', function(){
let id = $(this).attr("data-id");
$('#edit_expense_req_'+id).hide();
$('#edit_expense_req_input_'+id).show();
$('#edit_expense_req_save_'+id).show();
$('#edit_expense_req_textarea_'+id).show();
})
$('body').on('click', '.edit_expense_req_save', function(){
let req_id = $(this).attr("data-id");
let expense_id = $(this).attr("data-expense");
let value = $('#edit_expense_req_input_'+expense_id).val();
let comment = $('#edit_expense_req_textarea_'+expense_id).val();
axios.post('/ajax/ajax_vue_requisitions.php', {
request: 'edit_req_finance_info',
field: 'expense',
user_id: $('#session_user_id').val(),
req_id: req_id,
value: value,
comment: comment,
expense_id: expense_id
})
.then(function(response) {
console.log(response.data);
get_finance_info(req_id);
})
.catch(function(error) {
consle.error(error);
});
})
});
function view_changer_client(view){
console.log(view);
let temp_view = 'list';
$('.view_changer_client').each(function(){
if($(this).prop('checked')){
temp_view = $(this).attr('data-view');
}
});
if(view !== temp_view){
$('.view-changer .item-for-check').removeClass('active');
$('.view_changer_client').prop('checked', false);
switch (view){
case 'list' : {
$('#view_changer_client_list').prop('checked', true);
$('#view_checked_client_list').addClass('active');
$('.view-list').click();
break
}
case 'kanban' : {
$('#view_changer_client_kanban').prop('checked', true);
$('#view_checked_client_kanban').addClass('active');
$('.view-kanban').click();
break
}
case 'table' : {
$('#view_changer_client_table').prop('checked', true);
$('#view_checked_client_table').addClass('active');
$('.view-table').click();
break
}
}
axios.post('/ajax/ajax_vue_clients.php', {
request: 'set_view_page',
view: view,
}, ).then((response) => {
console.log(response.data);
//this.steps = response.data;
}).catch(function(error) {
console.error(error);
})
}
}
function to_check_client_all() {
$('#changeClientAllFilter').prop('checked', false);
$('#changeClientAllFilterDiv').removeClass('active');
if ($('#changeClientAll').prop('checked')) {
$('#changeClientAll').prop('checked', false);
$('#changeClientAllDiv').removeClass('active');
var check = false;
$('.changeClientInput').prop('checked', check);
$('.changeClientInput').each(function() {
var id = $(this).data("id");
$('#checked-clt' + id).removeClass('active');
});
$('#client_toltip_text').text("Выделить всех клиентов на странице");
} else {
$('#changeClientAll').prop('checked', true);
$('#changeClientAllDiv').addClass('active');
var check = true;
$('.changeClientInput').prop('checked', check);
$('.changeClientInput').each(function() {
var id = $(this).data("id");
$('#checked-clt' + id).addClass('active');
});
$('#client_toltip_text').text("Снять выделение у всех клиентов на странице");
}
}
function to_check_client_all_filter() {
$('#changeClientAll').prop('checked', false);
$('#changeClientAllDiv').removeClass('active');
var check = false;
$('.changeClientInput').prop('checked', check);
$('.changeClientInput').each(function() {
var id = $(this).attr("data-id");
$('#checked-clt' + id).removeClass('active');
});
$('#client_toltip_text').text("Выделить всех клиентов на странице");
//console.log($('#changeClientAllFilter').prop('checked'));
if ($('#changeClientAllFilter').prop('checked')) {
$('#changeClientAllFilter').prop('checked', false);
$('#changeClientAllFilterDiv').removeClass('active');
var check = false;
$('.changeClientInput').prop('checked', check);
$('.changeClientInput').each(function() {
var id = $(this).attr("data-id");
$('#checked-clt' + id).removeClass('active');
});
} else {
$('#changeClientAllFilter').prop('checked', true);
$('#changeClientAllFilterDiv').addClass('active');
check_client_all_filter();
}
}
function check_client_all_filter() {
if ($('#changeClientAllFilter').prop('checked')) {
var check = true;
$('.changeClientInput').prop('checked', check);
$('.changeClientInput').each(function() {
var id = $(this).attr("data-id");
if (id === undefined) {
$(this).prop('checked', false);
}
$('#checked-clt' + id).addClass('active');
});
}
}
function reCreateFilterEtapClients() {
$('#filter_etap').fastselect({
placeholder: 'Этап',
onItemSelect: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
},
onItemDelete: function() {
show_options_search();
page_kanban = 1;
add_knban = true;
//get_list();
}
});
}
// Партнёры агенства
$(document).ready(function() {
function showEditPartner(reset, functionAfterShow) {
$.ajax({
url: '/ajax/modals/partnerAddEditWinContent.php',
success: function (data) {
$("#partner_form_bg").html(data);
let form = $("#partner_form");
form.find('.error_msg').hide();
form.toggle(10);
if (reset) {
form.find('form').trigger("reset");
form.find('textarea').empty();
form.find('#partner_files_list').empty();
form.find('[name="partner_id"]').val('');
form.find('.files input[type="file"]').closest('.form-block').remove();
form.find('.jw-tabs .tabs__caption li').removeClass('active');
form.find('.jw-tabs .tabs__caption li').first().addClass('active');
form.find('.jw-tabs .tabs__content').hide();
form.find('.jw-tabs .tabs__content').first().show();
}
if (functionAfterShow && (typeof functionAfterShow == "function")) {
functionAfterShow();
}
$("#partner_form_bg").fadeIn(500);
$("body").addClass("lock");
form.find('[name="show_complexes"]').change(function(){
if($(this).prop('checked')){
var who_user = $('#session_user_id').val();
var funnel_id = 0;
$('#ms-new-client-work-partner-input').closest('.form-block').show();
$('#ms-new-funnel-partner-input').closest('.form-block').show();
$('#ms-new-client-work-client-partner-input').closest('.form-block').show();
$('#ms-new-funnel-client-partner-input').closest('.form-block').show();
setSelectsFastselect('ms-new-client-work-partner', who_user, 'select_form_client-work.php', 'Ответственный');
setSelectsFastselect('ms-new-funnel-partner', funnel_id, 'select_form_funnel.php', 'Воронка', 'req');
setSelectsFastselect('ms-new-client-work-client-partner', who_user, 'select_form_client-work.php', 'Ответственный');
setSelectsFastselect('ms-new-funnel-client-partner', funnel_id, 'select_form_funnel.php', 'Воронка', 'client');
} else {
$('#ms-new-client-work-partner-input').closest('.form-block').hide();
$('#ms-new-funnel-partner-input').closest('.form-block').hide();
$('#ms-new-client-work-client-partner-input').closest('.form-block').hide();
$('#ms-new-funnel-client-partner-input').closest('.form-block').hide();
$('#ms-new-client-work-partner-input').html(' ');
$('#ms-new-funnel-partner-input').html(' ');
$('#ms-new-client-work-client-partner-input').html(' ');
$('#ms-new-funnel-client-partner-input').html(' ');
}
})
setTimeout(() => {
$("#partnerPhone1").mask("+79999999999");
$("#partnerPhone2").mask("+79999999999");
}, 1000);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function showEditEmployee(reset, functionAfterShow) {
$.ajax({
url: '/ajax/modals/employeeAddEditWinContent.php',
success: function(data) {
$("#employee_form_bg").html(data);
let form = $("#employee_form");
form.find('.error_msg').hide();
form.toggle(10);
if (reset) {
form.find('form').trigger("reset");
form.find('textarea').empty();
form.find('#employee_files_list').empty();
form.find('[name="employee_id"]').val('');
form.find('.files input[type="file"]').closest('.form-block').remove();
form.find('.jw-tabs .tabs__caption li').removeClass('active');
form.find('.jw-tabs .tabs__caption li').first().addClass('active');
form.find('.jw-tabs .tabs__content').hide();
form.find('.jw-tabs .tabs__content').first().show();
var html = '' + $("#ms-new-employee-partner").html() + ' ';
$("#ms-new-employee-partner").closest(".inputs").html(html);
$.ajax({
url: '/ajax/getMyPartners.php',
success: function(results) {
let partners = JSON.parse(results);
$("#ms-new-employee-partner option:not(:eq(0))").remove();
partners.forEach(function(partner, indx) {
if (partner.resident)
$("#ms-new-employee-partner").append('' + partner.name + ', ' + partner.resident + ' ');
else
$("#ms-new-employee-partner").append('' + partner.name + ' ');
});
$("#ms-new-employee-partner option:eq(0)").prop("selected", true);
if (functionAfterShow && (typeof functionAfterShow == "function")) {
functionAfterShow();
}
$("#employee_form_bg").fadeIn(500);
$("body").addClass("lock");
setTimeout(() => {
$("#employeePhone1").mask("+79999999999");
$("#employeePhone2").mask("+79999999999");
}, 1000);
}
});
$("#ms-new-employee-partner").fastselect({ placeholder: 'Компания-партнёр' });
} else {
if (functionAfterShow && (typeof functionAfterShow == "function")) {
functionAfterShow();
}
$("#employee_form_bg").fadeIn(500);
$("body").addClass("lock");
setTimeout(() => {
$("#employeePhone1").mask("+79999999999");
$("#employeePhone2").mask("+79999999999");
}, 1000);
}
}
});
}
$("body").on('click', '#add_partner', function() {
showEditPartner(true, function() {});
return false;
});
$("body").on('click', '#add_employee', function() {
showEditEmployee(true, function() {});
return false;
});
$("body").on('click', '.editPartner', function() {
var id = $(this).attr('data-id');
showEditPartner(true, function() {
editPartner(id, '#addNewPartner');
});
return false;
});
$("body").on('click', '.editEmployee', function() {
var id = $(this).attr('data-id');
showEditEmployee(true, function() {
editEmployee(id, '#addNewEmployee');
});
return false;
});
$('body').on('click', '#partner_form_bg .ti-close', function() {
$("#partner_form_bg").hide(10);
$("#partner_form").hide(10);
$("body").removeClass("lock");
});
$('body').on('click', '#employee_form_bg .ti-close', function() {
$("#employee_form_bg").hide(10);
$("#employee_form").hide(10);
$("body").removeClass("lock");
});
$('body').on('click', '#partner_info_bg .ti-close', function() {
$("#partner_info_bg").hide(10);
$("#partner_info").hide(10);
$("body").removeClass("lock");
});
$('body').on('click', '#employee_info_bg .ti-close', function() {
$("#employee_info_bg").hide(10);
$("#employee_info").hide(10);
$("body").removeClass("lock");
});
$('body').on('click', '#user_info_bg .ti-close', function() {
$("#user_info_bg").hide(10);
$("#user_info").hide(10);
$("body").removeClass("lock");
});
$('body').on('click', '.openClientReqBind', function() {
if(typeof client_req_bind === 'object'){
let objectId = $(this).closest('.object_clients').attr("data-oid");
client_req_bind.objectId = parseInt(objectId);
client_req_bind.open();
}
});
});
function copyPassword(phone, passwd) {
if (typeof phone !== "undefined" && typeof passwd !== "undefined") {
let dummy = document.createElement("textarea");
document.body.appendChild(dummy);
dummy.value = "http://partner.piawork.ru/\r\n" + "Логин: " + $(phone).val() + "\r\nПароль: " + $(passwd).val() + "\r\n";
dummy.select();
document.execCommand("copy");
document.body.removeChild(dummy);
}
}
function generatePassword(selector, length, charset) {
let input,
passwd = "";
if (typeof selector !== "undefined")
input = $(selector);
if (typeof length === "undefined")
length = 12;
if (typeof charset === "undefined")
charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
for (let i = 0, n = charset.length; i < parseInt(length); ++i) {
passwd += charset.charAt(Math.floor(Math.random() * n));
}
if (input.length > 0) {
input.val(passwd);
let form = input.closest('form');
console.log(form);
console.log(form.find('input[name="phone"]').last().val());
if (form.find('input[name="phone"]').last().val()) {
form.find('a[data-rel="copy-password" ]').show();
} else {
form.find('a[data-rel="copy-password" ]').hide();
}
}
return passwd;
}
function editPartner(id, form) {
$.ajax({
url: '/ajax/getPartner.php?id=' + id,
success: function(results) {
let data = JSON.parse(results);
$(form).trigger("reset");
$(form).find('textarea').empty();
$(form).find('a[data-rel="copy-password" ]').hide();
$(form).find('.files input[type="file"]').closest('.form-block').remove();
$(form).find('.jw-tabs .tabs__caption li').removeClass('active');
$(form).find('.jw-tabs .tabs__caption li').first().addClass('active');
$(form).find('.jw-tabs .tabs__content').hide();
$(form).find('.jw-tabs .tabs__content').first().show();
if (data.name)
$(form).find('[name="name"]').val(data.name);
if (data.address)
$(form).find('[name="address"]').val(data.address);
if (data.resident)
$(form).find('[name="resident"]').val(data.resident);
if (data.details)
$(form).find('[name="details"]').html(data.details.replace(/ /ig, "\n"));
if (data.fullname)
$(form).find('[name="fullname"]').val(data.fullname);
if (data.email)
$(form).find('[name="email"]').val(data.email);
if (data.phone)
$(form).find('[name="phone"]').val(data.phone);
if (data.position)
$(form).find('[name="position"]').val(data.position);
if (data.birthday)
$(form).find('[name="birthday"]').val(data.birthday);
if (data.birthday_notify == 1)
$(form).find('[name="birthday_notify"]').prop('checked', true);
if (data.show_funnels == 1)
$(form).find('[name="show_funnels"]').prop('checked', true);
if (data.show_cli_events == 1)
$(form).find('[name="show_cli_events"]').prop('checked', true);
if (data.show_req_events == 1)
$(form).find('[name="show_req_events"]').prop('checked', true);
if (data.props) {
if (data.props.legal_name) $(form).find('[name="legal_name"]').val(data.props.legal_name);
if (data.props.actual_address) $(form).find('[name="actual_address"]').val(data.props.actual_address);
if (data.props.legal_address) $(form).find('[name="legal_address"]').val(data.props.legal_address);
if (data.props.inn) $(form).find('[name="inn"]').val(data.props.inn);
if (data.props.ogrn) $(form).find('[name="ogrn"]').val(data.props.ogrn);
if (data.props.kpp) $(form).find('[name="kpp"]').val(data.props.kpp);
if (data.props.bank_name) $(form).find('[name="bank_name"]').val(data.props.bank_name);
if (data.props.bik) $(form).find('[name="bik"]').val(data.props.bik);
if (data.props.corr_account) $(form).find('[name="corr_account"]').val(data.props.corr_account);
if (data.props.settlement_account) $(form).find('[name="settlement_account"]').val(data.props.settlement_account);
if (data.props.ceo_full_name) $(form).find('[name="ceo_full_name"]').val(data.props.ceo_full_name);
}
//if (data.show_complexes == 1){
$(form).find('[name="show_complexes"]').prop('checked', true);
$('#ms-new-client-work-partner-input').closest('.form-block').show();
$('#ms-new-funnel-partner-input').closest('.form-block').show();
$('#ms-new-client-work-client-partner-input').closest('.form-block').show();
$('#ms-new-funnel-client-partner-input').closest('.form-block').show();
var who_user, who_user_client = $('#session_user_id').val();
var funnel_id, funnel_id_client = 0;
if(!isEmpty(data.funnel_id_req)){
funnel_id = data.funnel_id_req;
}
if(!isEmpty(data.who_work_req)){
who_user = data.who_work_req;
}
if(!isEmpty(data.funnel_id_client)){
funnel_id_client = data.funnel_id_client;
}
if(!isEmpty(data.who_work_client)){
who_user_client = data.who_work_client;
}
setSelectsFastselect('ms-new-client-work-partner', who_user, 'select_form_client-work.php', 'Ответственный');
setSelectsFastselect('ms-new-funnel-partner', funnel_id, 'select_form_funnel.php', 'Воронка', 'req');
setSelectsFastselect('ms-new-client-work-client-partner', who_user_client, 'select_form_client-work.php', 'Ответственный');
setSelectsFastselect('ms-new-funnel-client-partner', funnel_id_client, 'select_form_funnel.php', 'Воронка', 'client');
//}
if (data.instagram)
$(form).find('[name="instagram"]').val(data.instagram);
if (data.vkontakte)
$(form).find('[name="vkontakte"]').val(data.vkontakte);
if (data.telegram)
$(form).find('[name="telegram"]').val(data.telegram);
if (data.partner_id)
$(form).find('[name="partner_id"]').val(data.partner_id);
if (data.employee_id)
$(form).find('[name="employee_id"]').val(data.employee_id);
if (typeof data.files !== "undefined") {
if (data.files.length > 0) {
$(form).find('#partner_files_list').empty();
data.files.forEach(function(file, indx) {
let file_html =
'' +
'' +
' ' + file.filename + ' ' +
' ' +
' ' +
' ' +
' ' +
' ';
$(form).find('#partner_files_list').append($(file_html));
});
}
}
}
});
}
function editEmployee(id, form) {
$.ajax({
url: '/ajax/getEmployee.php?id=' + id,
success: function(results) {
let data = JSON.parse(results);
//console.log(data);
$(form).trigger("reset");
$(form).find('textarea').empty();
$(form).find('.files input[type="file"]').closest('.form-block').remove();
$(form).find('.jw-tabs .tabs__caption li').removeClass('active');
$(form).find('.jw-tabs .tabs__caption li').first().addClass('active');
$(form).find('.jw-tabs .tabs__content').hide();
$(form).find('.jw-tabs .tabs__content').first().show();
if (data.fullname)
$(form).find('[name="fullname"]').val(data.fullname);
if (data.email)
$(form).find('[name="email"]').val(data.email);
if (data.phone)
$(form).find('[name="phone"]').val(data.phone);
if (data.position)
$(form).find('[name="position"]').val(data.position);
if (data.birthday)
$(form).find('[name="birthday"]').val(data.birthday);
if (data.birthday_notify == 1)
$(form).find('[name="birthday_notify"]').prop('checked', true);
if (data.instagram)
$(form).find('[name="instagram"]').val(data.instagram);
if (data.vkontakte)
$(form).find('[name="vkontakte"]').val(data.vkontakte);
if (data.telegram)
$(form).find('[name="telegram"]').val(data.telegram);
if (data.partner_id) {
$(form).find('[name="partner_id"]').val(data.partner_id);
}
if (data.employee_id)
$(form).find('[name="employee_id"]').val(data.employee_id);
if (data.partner_id) {
var html = $('' + $("#ms-new-employee-partner").html() + ' ');
html.find("option[value=" + data.partner_id + "]").attr("selected", "selected");
$("#ms-new-employee-partner").closest(".inputs").html(html);
$("#ms-new-employee-partner").fastselect({ placeholder: 'Компания-партнёр2' });
}
if (data.files.length > 0) {
$(form).find('#employee_files_list').empty();
data.files.forEach(function(file, indx) {
let file_html = '' +
' ' + file.filename + ' ' +
' ';
$(form).find('#employee_files_list').append($(file_html));
});
}
}
});
}
function openPartnerInfoWindow(id) {
axios.get('/ajax/modals/partnerInfoWinContent.php').then((response) => {
$('#partner_info_bg').html(response.data);
$.ajax({
url: '/ajax/getPartner.php?id=' + id,
success: function(results) {
let data = JSON.parse(results);
let partner = $('#partner_details');
let employee = $('#employee_details');
$(partner).find('.form-block').show();
if (data.name)
$(partner).find('.partner_name').text(data.name);
else
$(partner).find('.partner_name').closest('.form-block').hide();
if (data.address)
$(partner).find('.partner_address').text(data.address);
else
$(partner).find('.partner_address').closest('.form-block').hide();
if (data.resident)
$(partner).find('.partner_resident').text(data.resident);
else
$(partner).find('.partner_resident').closest('.form-block').hide();
if (data.details)
$(partner).find('.partner_details').html(data.details.replace(/ /ig, "\n"));
else
$(partner).find('.partner_details').closest('.form-block').hide();
if (data.fullname)
$(employee).find('.employee_fullname').text(data.fullname);
else
$(employee).find('.employee_fullname').closest('.form-block').hide();
if (data.email)
$(employee).find('.employee_email').text(data.email);
else
$(employee).find('.employee_email').closest('.form-block').hide();
if (data.phone)
$(employee).find('.employee_phone').text(data.phone);
else
$(employee).find('.employee_phone').closest('.form-block').hide();
if (data.position)
$(employee).find('.employee_position').text(data.position);
else
$(employee).find('.employee_position').closest('.form-block').hide();
if (data.birthday)
$(employee).find('.employee_birthday').text(data.birthday);
else
$(employee).find('.employee_birthday').closest('.form-block').hide();
if (data.instagram) {
$(employee).find('.employee_instagram a').attr('href', data.instagram);
$(employee).find('.employee_telegram').show();
} else {
$(employee).find('.employee_instagram').hide();
}
if (data.vkontakte) {
$(employee).find('.employee_vkontakte a').attr('href', data.vkontakte);
$(employee).find('.employee_telegram').show();
} else {
$(employee).find('.employee_vkontakte').hide();
}
if (data.telegram) {
$(employee).find('.employee_telegram a').attr('href', data.telegram);
$(employee).find('.employee_telegram').show();
} else {
$(employee).find('.employee_telegram').hide();
}
if (data.instagram || data.vkontakte || data.telegram)
$(employee).find('.employee_socials').show();
else
$(employee).find('.employee_socials').hide();
if (data.partner_id)
$(employee).find('.partner_id').text(data.partner_id);
else
$(employee).find('.partner_id').closest('.form-block').hide();
if (data.employee_id)
$(employee).find('.employee_id').text(data.employee_id);
else
$(employee).find('.employee_id').closest('.form-block').hide();
if (data.files.length > 0) {
$(employee).find('.employee_files').empty();
$(employee).find('.employee_files').closest('.form-block').show();
data.files.forEach(function(file, indx) {
let file_html = ' ' + file.filename + ' ';
$(employee).find('.employee_files').append($(file_html));
});
} else {
$(employee).find('.employee_files').closest('.form-block').hide();
}
$("#partner_info_bg").show(10);
$("#partner_info").show(10);
$("body").addClass("lock");
}
});
});
}
function openEmployeeInfoWindow(id) {
axios.get('/ajax/modals/employeeInfoWinContent.php').then((response) => {
$('#employee_info_bg').html(response.data);
$.ajax({
url: '/ajax/getEmployee.php?id=' + id,
success: function(results) {
let data = JSON.parse(results);
let employee = $('#details');
$(employee).find('.form-block').show();
if (data.partner.name && data.partner.resident)
$(employee).find('.employee_company').text(data.partner.name + ', ' + data.partner.resident);
else if (data.partner.name && !data.partner.resident)
$(employee).find('.employee_company').text(data.partner.name);
else
$(employee).find('.employee_company').closest('.form-block').hide();
if (data.fullname)
$(employee).find('.employee_fullname').text(data.fullname);
else
$(employee).find('.employee_fullname').closest('.form-block').hide();
if (data.email)
$(employee).find('.employee_email').text(data.email);
else
$(employee).find('.employee_email').closest('.form-block').hide();
if (data.phone)
$(employee).find('.employee_phone').text(data.phone);
else
$(employee).find('.employee_phone').closest('.form-block').hide();
if (data.position)
$(employee).find('.employee_position').text(data.position);
else
$(employee).find('.employee_position').closest('.form-block').hide();
if (data.birthday)
$(employee).find('.employee_birthday').text(data.birthday);
else
$(employee).find('.employee_birthday').closest('.form-block').hide();
if (data.instagram) {
$(employee).find('.employee_instagram a').attr('href', data.instagram);
$(employee).find('.employee_telegram').show();
} else {
$(employee).find('.employee_instagram').hide();
}
if (data.vkontakte) {
$(employee).find('.employee_vkontakte a').attr('href', data.vkontakte);
$(employee).find('.employee_telegram').show();
} else {
$(employee).find('.employee_vkontakte').hide();
}
if (data.telegram) {
$(employee).find('.employee_telegram a').attr('href', data.telegram);
$(employee).find('.employee_telegram').show();
} else {
$(employee).find('.employee_telegram').hide();
}
if (data.instagram || data.vkontakte || data.telegram)
$(employee).find('.employee_socials').show();
else
$(employee).find('.employee_socials').hide();
if (data.partner_id)
$(employee).find('.partner_id').text(data.partner_id);
else
$(employee).find('.partner_id').closest('.form-block').hide();
if (data.employee_id)
$(employee).find('.employee_id').text(data.employee_id);
else
$(employee).find('.employee_id').closest('.form-block').hide();
if (data.files.length > 0) {
$(employee).find('.employee_files').empty();
$(employee).find('.employee_files').closest('.form-block').show();
data.files.forEach(function(file, indx) {
let file_html = ' ' + file.filename + ' ';
$(employee).find('.employee_files').append($(file_html));
});
} else {
$(employee).find('.employee_files').closest('.form-block').hide();
}
$("#employee_info_bg").show(10);
$("#employee_info").show(10);
$("body").addClass("lock");
}
});
});
}
function openUserInfoWindow(id_user) {
axios.get('/ajax/modals/userInfoWinContent.php').then((response) => {
//console.log(response.data)
$('#user_info_bg').html(response.data);
$.post('/ajax/getUser.php', { 'user_id': id_user, 'section': "calendar" }, function(results) {
let data = JSON.parse(results);
//console.log(data);
let user_card = $('#user_card');
$(user_card).find('.form-block').show();
if (data.fio)
$(user_card).find('.user_fio').text(data.fio);
else
$(user_card).find('.user_fio').closest('.form-block').hide();
if (data.email)
$(user_card).find('.user_email').text(data.email);
else
$(user_card).find('.user_email').closest('.form-block').hide();
if (data.phone)
$(user_card).find('.user_phone').text(data.phone);
else
$(user_card).find('.user_phone').closest('.form-block').hide();
if (data.birthday)
$(user_card).find('.user_birthday').text(data.birthday);
else
$(user_card).find('.user_birthday').closest('.form-block').hide();
if (data.soc_vk) {
$(user_card).find('.user_soc_vk a').attr('href', data.soc_vk).show();
$(user_card).find('.user_soc_vk').show();
} else {
$(user_card).find('.user_soc_vk').hide();
}
if (data.soc_tg) {
$(user_card).find('.user_soc_tg a').attr('href', data.soc_tg).show();
$(user_card).find('.user_soc_tg').show();
} else {
$(user_card).find('.user_soc_tg').hide();
}
if (data.soc_fb) {
$(user_card).find('.user_soc_fb a').attr('href', data.soc_fb).show();
$(user_card).find('.user_soc_fb').show();
} else {
$(user_card).find('.user_soc_fb').hide();
}
if (data.soc_inst) {
$(user_card).find('.user_soc_inst a').attr('href', data.soc_inst).show();
$(user_card).find('.user_soc_inst').show();
} else {
$(user_card).find('.user_soc_inst').hide();
}
if (data.soc_tw) {
$(user_card).find('.user_soc_tw a').attr('href', data.soc_tw).show();
$(user_card).find('.user_soc_tw').show();
} else {
$(user_card).find('.user_soc_tw').hide();
}
if (data.soc_vk || data.soc_tg || data.soc_fb || data.soc_inst || data.soc_tw)
$(user_card).find('.user_socials').show();
else
$(user_card).find('.user_socials').hide();
$("#user_info_bg").show(10);
$("#user_info").show(10);
$("body").addClass("lock");
});
});
}
$(document).on('click', '#addNewPartner .delFile, #addNewEmployee .delFile', function (e) {
e.preventDefault();
var $btn = $(this);
var id = $btn.data('id');
if (!id) return;
$.get('/ajax/delPartnerFile.php', { id: id }, function (results) {
var data = null;
try { data = JSON.parse(results); } catch (e) {}
if (data === true || (data && data.ok === true)) {
$btn.closest('li.file').remove();
}
});
});
$(document).delegate('#addNewPartner input[name="phone"], #addNewEmployee input[name="phone"]', 'change', function(event) {
let input = $(event.target);
let form = input.closest('form');
let value = input.val();
console.log(value);
if (typeof value !== "undefined") {
form.find('input[name="phone"]').val(value);
if (form.find('input[name="passwd"]').val().length > 8 && form.find('input[name="passwd_repeat"]').val().length > 8) {
form.find('a[data-rel="copy-password" ]').show();
} else {
form.find('a[data-rel="copy-password" ]').hide();
}
}
});
$(document).delegate('#addNewPartner input[name="passwd_repeat"], #addNewEmployee input[name="passwd_repeat"]', 'change', function(event) {
let input = $(event.target);
let form = input.closest('form');
let value = input.val();
let value2 = form.find('input[name="passwd"]').val();
let value3 = form.find('input[name="phone"]').last().val();
if (typeof value !== "undefined") {
if (value && value == value2 && value3) {
form.find('a[data-rel="copy-password" ]').show();
} else {
form.find('a[data-rel="copy-password" ]').hide();
}
}
});
$(document).delegate('#newPartner, #newEmployee', 'click', function(event) {
event.preventDefault();
let errors = [];
let form = $(event.target).closest('form');
form.find('.error_msg').empty();
form.find('.error_msg').hide();
form.find('input, textarea, checkbox, select').each(function() {
if ($(this).attr('required') && $(this).val() === '') {
let label = $(this).closest('.form-block').find('label, .label').text();
errors.push('Поле «' + label + '» обязательно к заполнению. ');
}
});
if (form.attr('id') == "addNewPartner" && form.find('[name="partner_id"]').val()) {
if (!(form.find('[name="name"]').val() === '') &&
!(form.find('[name="resident"]').val() === '') &&
!(form.find('[name="adress"]').val() === '')
) {
form.find('.tabs__caption [data-target="head"]').click();
}
}
if (errors.length > 0) {
errors.forEach(error => form.find('.error_msg').append(error));
form.find('.error_msg').show(300);
} else {
form.find('.error_msg').hide();
form.submit();
}
});
$(document).delegate('.togglePartner', 'click', function(e) {
e.preventDefault();
let id = $(e.target).data('id');
if (typeof id !== "undefined") {
openPartnerInfoWindow(id);
}
});
$(document).delegate('.toggleEmployee', 'click', function(e) {
e.preventDefault();
let id = $(e.target).data('id');
if (typeof id !== "undefined") {
openEmployeeInfoWindow(id);
}
});
$(document).delegate('#partners .search-icon', 'click', function(event) {
var url = new URL(window.location.href);
let query = $('#partners .form-search [name="search"]').val();
if (query.length >= 3) {
url.searchParams.set('search', query);
window.location.href = url.toString();
}
});
$(document).delegate('#addNewPartner', 'submit', function(event) {
event.preventDefault();
$("#partner_form").find('.error_msg').empty();
$("#partner_form").find('a[data-rel="copy-password" ]').hide();
let form = $(this);
var formData = new FormData(form[0]);
$.ajax({
type: 'POST',
url: '/ajax/addEditPartner.php',
data: formData,
cache: false,
async: false,
contentType: false,
processData: false,
success: function(results) {
if (data = JSON.parse(results)) {
if (typeof data.errors !== "undefined") {
data.errors.forEach(error => form.find('.error_msg').append('' + error + ' '));
$("#partner_form").find('.error_msg').show(300);
} else if (data.uploaded_files.errors.length) {
let errors = data.uploaded_files.errors;
Object.keys(errors).forEach(function(key) {
let error = errors[key];
Object.keys(error).forEach(function(filename) {
form.find('.error_msg').append('Файл `' + filename + '`: ' + error[filename] + ' ');
});
});
$("#partner_form").find('.error_msg').show(300);
} else {
$("#partner_form").find('.error_msg').empty();
if (data.partner_id) {
$('#partners .partner[data-partner-id="' + data.partner_id + '"]').addClass('loading');
$.get(window.location.href, function(html) {
let partner = $(html).find('#partners .partner[data-partner-id="' + data.partner_id + '"]');
if (partner)
$('#partners .partner[data-partner-id="' + data.partner_id + '"]').replaceWith(partner);
$('#partners .partner[data-partner-id="' + data.partner_id + '"]').removeClass('loading');
});
} else if (data.new_partner_id) {
$.get(window.location.href, function(html) {
let partner = $(html).find('#partners');
if (partner) {
$('#partners').replaceWith(partner);
$('#partners').fadeIn(500);
}
});
} else {
//window.location.reload(true);
}
$("#partner_form_bg").hide(10);
$("#partner_form").hide(10);
$("body").removeClass("lock");
}
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
return false;
}
});
return false;
});
function deletePartner(id) {
if (confirm("Вы точно хотите удалить этого партнёра?") && typeof id !== "undefined") {
$.post('/ajax/deletePartner.php', { partner_id: id }, function(results) {
let data = JSON.parse(results);
if (data) {
$.get(window.location.href, function(html) {
let partners = $(html).find('#partners');
if (partners) {
$('#partners').replaceWith(partners);
$('#partners').fadeIn(500);
}
});
}
});
}
}
function deleteEmployee(id) {
if (confirm("Вы точно хотите удалить этого сотрудника партнёра?") && typeof id !== "undefined") {
$.post('/ajax/deleteEmployee.php', { employee_id: id }, function(results) {
let data = JSON.parse(results);
if (data) {
$.get(window.location.href, function(html) {
let partners = $(html).find('#partners');
if (partners)
$('#partners').replaceWith(partners);
});
}
});
}
}
$(document).delegate('#partners .deletePartner', 'click', function() {
let id = $(this).data('id');
deletePartner(id);
});
$(document).delegate('#partners .deleteEmployee', 'click', function() {
let id = $(this).data('id');
deleteEmployee(id);
});
$(document).delegate('#addNewEmployee', 'submit', function(event) {
event.preventDefault();
$("#employee_form").find('.error_msg').empty();
$("#employee_form").find('a[data-rel="copy-password" ]').hide();
let form = $(this);
var formData = new FormData(form[0]);
$.ajax({
type: 'POST',
url: '/ajax/addEditEmployee.php',
data: formData,
cache: false,
async: false,
contentType: false,
processData: false,
success: function(results) {
//console.log(results);
if (data = JSON.parse(results)) {
//console.log(data);
if (typeof data.errors !== "undefined") {
data.errors.forEach(error => form.find('.error_msg').append('' + error + ' '));
$("#employee_form").find('.error_msg').show(300);
} else if (data.uploaded_files.errors.length) {
let errors = data.uploaded_files.errors;
Object.keys(errors).forEach(function(key) {
let error = errors[key];
Object.keys(error).forEach(function(filename) {
form.find('.error_msg').append('Файл `' + filename + '`: ' + error[filename] + ' ');
});
});
$("#employee_form").find('.error_msg').show(300);
} else {
$("#employee_form").find('.error_msg').empty();
if (data.partner_id && data.new_employee_id) {
$('#partners .partner[data-partner-id="' + data.partner_id + '"]').addClass('loading');
$.get(window.location.href, function(html) {
let partner = $(html).find('#partners .partner[data-partner-id="' + data.partner_id + '"]');
if (partner)
$('#partners .partner[data-partner-id="' + data.partner_id + '"]').replaceWith(partner);
$('#partners .partner[data-partner-id="' + data.partner_id + '"]').removeClass('loading');
});
} else if (data.partner_id && data.employee_id) {
$('#partners .partner[data-partner-id="' + data.partner_id + '"]').addClass('loading');
$.get(window.location.href, function(html) {
let employee = $(html).find('#partners .partner[data-partner-id="' + data.partner_id + '"] .employees-list .partner[data-employee-id="' + data.employee_id + '"]');
let styles = $('#partners .partner[data-partner-id="' + data.partner_id + '"] .employees-list .partner[data-employee-id="' + data.employee_id + '"]').attr('style');
if (styles)
employee.attr('style', styles);
else
employee.removeAttr('style');
if (employee)
$('#partners .partner[data-partner-id="' + data.partner_id + '"] .employees-list .partner[data-employee-id="' + data.employee_id + '"]').replaceWith(employee);
$('#partners .partner[data-partner-id="' + data.partner_id + '"]').removeClass('loading');
});
} else {
//window.location.reload(true);
}
$("#employee_form_bg").hide(10);
$("#employee_form").hide(10);
$("body").removeClass("lock");
}
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
return false;
}
});
return false;
});
$(document).delegate('#addNewPartner .jw-tabs .tabs__caption li', 'click', function() {
let section = $('#addNewPartner');
let action = $(this).data('target');
section.find('.jw-tabs .tabs__caption li').removeClass('active');
section.find('.jw-tabs .tabs__caption li.' + action).addClass('active');
section.find('.modal-inner .tabs__content').hide();
section.find('.modal-inner .tabs__content.' + action).show();
});
$(document).delegate('#addNewEmployee .jw-tabs .tabs__caption li', 'click', function() {
let section = $('#addNewEmployee');
let action = $(this).data('target');
section.find('.jw-tabs .tabs__caption li').removeClass('active');
section.find('.jw-tabs .tabs__caption li.' + action).addClass('active');
section.find('.modal-inner .tabs__content').hide();
section.find('.modal-inner .tabs__content.' + action).show();
});
$(document).delegate('#addNewPartner #partner_add_file', 'click', function() {
let file_input = '';
$(this).closest('.form-block').before($(file_input));
});
$(document).delegate('#addNewEmployee #employee_add_file', 'click', function() {
let file_input = '';
$(this).closest('.form-block').before($(file_input));
});
//Заявки селект
function req_fastselect(id, id_fas, req_ids) {
$("#" + id).html('');
$("#" + id).html(' ');
$("#" + id_fas).val(req_ids);
if (req_ids != '') {
//console.log(req_ids);
$.post("/ajax/list_requisitions.php", { req: req_ids }, function(res) {
// console.log(res);
$("#" + id_fas).attr('data-initial-value', JSON.stringify(res));
$("#" + id_fas).fastselect({
placeholder: 'Заявки'
});
});
} else {
$("#" + id_fas).fastselect({
placeholder: 'Заявки'
});
}
}
function save_client(params, funnel_id, poles){
$('#addEditNew .load-bar').removeClass('hidden');
$('#newClient').addClass('hidden');
//console.log(params);
$.post('/ajax/addEditClient.php',
params,
function(data) {
// console.log(data);
if (data > 1) {
//console.log(funnel_id);
if ($('.view-kanban.active').length > 0) {
if (typeof id != 'undefined') {
if (funnel_id != 0) {
stage = $('#kanban_item_li_' + id).closest('.kanban__sortable').data("stage");
//console.log(stage);
}
if(document.location.pathname == '/clients.php'){
get_kanban_li(id, stage, priority);
// console.log(funnel_id);
let globalFunnel = $('#funnelIdClients').val();
if(funnel_id != globalFunnel){
$(`#kanban_item_li_${id}`).hide();
get_count_clients();
}
}
} else {
let sort_order = $('select[name=sort_order]').val();
get_list(null, sort_order, false);
}
} else {
let sort_order = $('select[name=sort_order]').val();
if ($('.pagination li.active a').text()) {
get_list($('.pagination li.active a').text(), sort_order, false);
} else {
get_list(null, sort_order, false);
}
}
//Сохранение кастомных полей
if (typeof client_fields != "undefined") {
client_fields.addEditFields(poles, data);
}
// console.log(id_reqs.split(','));
if (params.id_reqs != '') {
if (document.location.pathname == '/requisitions.php') {
var reqs = params.id_reqs.split(',');
for (var req_id in reqs) {
if (!isNaN(parseInt(reqs[req_id]))) {
var req_client = requisitions.req['req' + reqs[req_id]];
if (req_client && !isEmpty(req_client.client)) {
requisitions.req['req' + reqs[req_id]].client.fio = fio;
}
}
}
//requisitions.getList();
//console.log()
//getClient(data, JSON.parse(id_reqs)[0]);
}
axios.post('/ajax/ajax_vue_requisitions.php', {
request: 'update_req',
req_id: params.id_reqs,
object_id: params.objects,
client_id: data,
},
)
.then((response) => {
//console.log(response.data);
// var res = response.data;
// this.closeReqform();
})
.catch(function(error) {
console.log(error);
});
}
if (window.location.pathname == '/add-object.php') {
getSelectClients(data);
add_object_new_client_input_vue(data);
}
if (window.location.pathname == '/my-objects.php' || window.location.pathname == '/agency-objects.php') {
add_object_new_client_input_vue(data);
}
if ($('#client-history__bg').css("display") == 'block') {
if(document.location.pathname == '/requisitions.php'){
if(parseInt($("#client_history").attr("data-active-req")) == id){
openClientEventsWindowNew(id, $('#session_to_send').val());
}
} else {
openClientEventsWindowNew(id, $('#session_to_send').val());
}
}
$('#send_bg_new').fadeOut(500);
$("#send_bg_new .edit-modal").toggle(10);
$("body").removeClass("lock");
var komy = 0;
$('#komy option').each(function() {
if ($(this).val() == params.email) komy++;
});
if (komy == 0) {
$('#komy').prepend('' + params.fio + ' ');
}
if (typeof req_form == 'object') {
if (req_form.isClientForm) {
req_form.clientId = parseInt(data);
req_form.isClientForm = false;
req_form.openReqForm(1);
$('#req_form').removeAttr("style");
}
}
$('#addEditNew .load-bar').addClass('hidden');
$('#newClient').removeClass('hidden');
} else {
$('#addEditNew .error_msg').html(data).show();
//$('#addEditNew .error_msg').next().text('Клиент '+fio);
$('#addEditNew .modal-title').text('Клиент ' + fio);
$(".full_modal-bg").stop().animate({ scrollTop: 0 }, 500);
$('#addEditNew .load-bar').addClass('hidden');
$('#newClient').removeClass('hidden');
}
});
}
/**
* hide_client_contacts: переключает состояние полей контактов клиента в модалке #send_new.
*
* Модалка #send_new / #addEditNew используется и для создания нового клиента (add_client_new),
* и для редактирования существующего (editClientNew). PHP-рендер задаёт статически disabled+warning
* для hide-юзера — это корректно для edit, но мешает create. Здесь динамически переключаем.
*
* mode='add' → enable полей email/phone/national_phone, hide warning, навешиваем phoneMask
* mode='edit' → если hide-юзер: disable полей + show warning + снимаем phoneMask (значение пишется
* "+X *** *** ** **", плагин маски его сломал бы).
*
* Зависит от window.shouldHideContacts() (см. js/contacts_visibility.js).
*/
function setAddEditNewContactsState(mode) {
var isHide = (typeof window.shouldHideContacts === 'function') && window.shouldHideContacts();
if (!isHide) return; // обычным юзерам нечего переключать — PHP отрендерил всё открытым
var $email = $('#addEditNew [name="email"]');
var $phone = $('#addEditNew #phoneClient');
var $natPh = $('#addEditNew [name="national_phone"]');
var $warning = $('#hideContactsWarning');
var disabledTitle = 'Контакты клиента скрыты для вашей учётной записи';
if (mode === 'add') {
$email.prop('disabled', false).removeAttr('title');
$phone.prop('disabled', false).removeAttr('title');
$natPh.prop('disabled', false);
$warning.hide();
// навешиваем jQuery-маску +7 для ручного ввода в новой форме
if (!$phone.hasClass('phoneMask')) {
$phone.addClass('phoneMask');
}
try { $phone.unmask(); } catch (e) {}
$phone.mask('+79999999999');
} else { // mode === 'edit'
$email.prop('disabled', true).attr('title', disabledTitle);
$phone.prop('disabled', true).attr('title', disabledTitle);
$natPh.prop('disabled', true);
$warning.show();
// снимаем маску, чтобы серверное "+X *** *** ** **" не превратилось в "+7"
try { $phone.unmask(); } catch (e) {}
$phone.removeClass('phoneMask');
}
}
function add_client_new(object, add_user, req_id, client_name) {
setAddEditNewContactsState('add');
if (req_id) {
if (typeof req_form == 'object') {
$('#req_form').css('zIndex', '99987');
req_form.isClientForm = true;
if (client_name !== null) {
$('#addEditNew [name="fio"]').val(client_name);
}
}
}
$("#addReqClientForm").attr("data-client", "new");
if (typeof client_fields != "undefined") {
client_fields.client_id = 0;
client_fields.getClientFields();
}
$('#send_web_hook_date').text('').css('color', '#757575');
$('#liObject').removeClass('active').hide();
$('#liReq').removeClass('active').hide();
$('#liInnerDocs').removeClass('active');
$('#liInnerDocs .tabs-li__icon').text('4');
$('#liGlobal').click();
$("#send_bg_new").fadeIn(500);
$("#send_new").toggle(10);
$('#send_log_new').hide();
$('#addObjectClientForm').attr('href', '/add-object.php');
$('#addEditNew .stagebar .stage').removeClass('active');
$('#addEditNew .stagebar .stage-new').addClass('active');
$('#addEditNew .stagebar .stage-work').addClass('active');
$("#addEditNew .form-block__hot-client").removeClass('active');
clearSelect();
req_fastselect('ms-new-client-req-input', 'ms-new-client-req', '');
$("#addEditNew").find('input').val("");
$("#addEditNew").find('textarea').val('');
$('#send_form').show();
$("#addEditNew select").val('');
$("#union_clients_form_open").attr("data-id", "");
$("#union_clients_form_open").hide();
$('.probank ul').html('');
$('#proresolve-yes').html('');
//инициализируем поля wazzap
if (typeof req_form == 'object') {
if (req_form.wazzap_chat_type) {
$('#addEditNew #wazzap_chat_type').val(req_form.wazzap_chat_type);
if (req_form.wazzap_chat_type === "whatsapp") {
$('#addEditNew [name="phone"]').val("+" + req_form.wazzap_chat_id);
}
}
if (req_form.wazzap_chat_id) {
$('#addEditNew #wazzap_chat_id').val(req_form.wazzap_chat_id);
}
if (req_form.wazzap_channel_id) {
$('#addEditNew #wazzap_channel_id').val(req_form.wazzap_channel_id);
}
if (req_form.wazzap_user_id) {
$('#addEditNew #wazzap_user_id').val(req_form.wazzap_user_id);
}
if (req_form.wazzap_integration_id) {
$('#addEditNew #wazzap_integration_id').val(req_form.wazzap_integration_id);
}
}
$('#addEditNew select').parent('.fstElement').find('.fstChoiceRemove').each(function() {
$(this).click();
});
$('#addEditNew .form-block [name=phone2]').each(function() {
$(this).closest('.form-block').remove();
});
$('#persone_no_ip').prop('checked', true);
$('#persone_yes_ip').prop('checked', false);
$('#persone_gender_man').prop('checked', true);
$('#persone_gender_woman').prop('checked', false);
$('.persone_no_ip').removeClass('hidden');
$('.persone_yas_ip').addClass('hidden');
$('#rynok_1').prop('checked', true);
$('#addEditNew [name=yes_object]').prop('checked', false);
$('#addEditNew [name=yes_doc]').prop('checked', false);
$('#addEditNew [name=yes_bank]').prop('checked', false);
$('#addEditNew [name=yes_resolve]').prop('checked', false);
$('#addEditNew [name=yes_issue]').prop('checked', false);
$('#resolve_1').prop('checked', false);
$('#resolve_2').prop('checked', false);
$('#resolve_3').prop('checked', false);
$('.prodoc').addClass('hidden');
$('.probank').addClass('hidden');
$('.proresolve').addClass('hidden');
$('.proissue').addClass('hidden');
$('#block_client_kredit .form-block').each(function() {
$(this).find('input[type=checkbox]').each(function() {
$(this).prop('checked', false);
});
$(this).find('input[type=radio]').each(function() {
if ($(this).attr('id') == 'no_yes_deduction_credit') {
$(this).prop('checked', true);
} else {
$(this).prop('checked', false);
}
});
});
var who_user = $('#sid').attr("data-id");
if (add_user !== undefined) {
who_user = add_user;
}
setSelectsFastselect('ms-new-client-work', who_user, 'select_form_client-work.php', 'Ответственный');
var source_id = 0;
if (object !== undefined) {
source_id = 10000;
}
setSelectsFastselect('ms-new-client-source', source_id, 'select_form_source.php', 'Источник');
var emplode_id_ms = 0;
setSelectsFastselect('ms-new-client-partner', emplode_id_ms, 'select_form_partner.php', 'Партнёр');
var funnel_id = $('.funnels_client .active').data("id");
if (funnel_id === undefined && $('#session_agency_id').val() == 7384) {
funnel_id = 75;
}
//console.log(funnel_id);
if (funnel_id === undefined || funnel_id == 0) {
$.post("/ajax/getFunnelFirst.php", function(dataf) {
//console.log(dataf);
var res_funnels = JSON.parse(dataf);
//if (funnel_id === undefined)
funnel_id = parseInt(res_funnels.funnel_id);
if(res_funnels.is_stage == 0){
$('#is_show_funnel_null').val(0);
} else {
$('#is_show_funnel_null').val(1);
}
setSelectsFastselect('ms-new-funnel', funnel_id, 'select_form_funnel.php', 'Воронка', 'client');
})
} else {
setSelectsFastselect('ms-new-funnel', funnel_id, 'select_form_funnel.php', 'Воронка', 'client');
}
if (object !== undefined) {
$('#of_objects').val(object);
$.post('/ajax/getNameObject.php', { id: object }, function(result) {
var text = ''; //Звонок по квартире/помещению/комнате , тип
if (result != '') {
text += 'Звонок по объекту ' + result;
}
$('#addEditNew [name=opis]').val(text);
});
} else {
$('#of_objects').val("0");
}
$('#ms-new-client-type').fastselect({
placeholder: 'Тип'
});
setSelectsFastselect('ms-new-client-activities', null, 'select_form_activities.php', 'Теги');
$('.ms-crm-client-rol').fastselect({
placeholder: 'Роль клиента'
});
$('#ms-new-client-objects-type').fastselect({
placeholder: 'Тип недвижимости'
});
setSelectsFastselect('ms_new_blocks', null, 'select_form_blocks.php', 'Жилые комплексы');
setSelectsFastselect('ms-new-client-bank-denial', null, 'select_form_bank-denial.php', 'Банк (отказ)');
setSelectsFastselect('ms-new-client-bank-revisal', null, 'select_form_bank-denial.php', 'Банк (пересмотр)');
setSelectsFastselect('ms-new-client-bank-issue', null, 'select_form_bank-denial.php', 'Банк выдачи');
$('#ms_new_bancks_credit').fastselect({
placeholder: 'Банковский продукт',
});
$.post('/ajax/getClientsView.php', { get_clients_objects: '', user_id: $('#sid').data("id") },
function(result) {
if (result == 0) {
$("#ms-new-client-object").closest(".inputs").html(' ');
} else {
$("#ms-new-client-object").closest(".inputs").html('' + result + ' ');
}
$("#ms-new-client-object").fastselect({ placeholder: 'Объекты' });
}
);
$('#addEditNew #confirm').val("0");
$('#addEditNew .error_msg').hide();
$('#addEditNew .modal-title').text('Новый клиент');
$("body").addClass("lock");
get_contracts_client(0);
}
//Установка селектов
function setSelectsFastselect(selector, value, ajaxScript, name, section) {
var params = {};
params.selector = selector;
if (section) {
params.section = section;
}
if (selector == 'filter_charts_funnel') {
$('#filter_charts_funnel-input').html('');
}
//if ($('#' + selector).length < 1) {
axios.post('/ajax/' + ajaxScript,
params,
)
.then((response) => {
$('#' + selector + '-input').html(response.data);
if (value) {
$("#" + selector).val(value);
}
setFastselectPost(selector, name);
setSelectPost(selector);
})
.catch(function(error) {
console.log(error);
});
/*} else {
$('#' + selector).fastselect().data('fastselect').destroy();
if (value) {
$("#" + selector).val(value);
}
setFastselectPost(selector, name);
setSelectPost(selector);
}*/
}
//Функции после установки селекта
function setSelectPost(selector) {
switch (selector) {
case 'ms-new-funnel':
{
console.log($("#" + selector).val());
if ($("#" + selector).val() > 0) {
$('#addEditNew .stepsTable').hide();
} else {
if ($("#" + selector).val() == 0) {
if($('#is_show_funnel_null').val() > 0){
$('#addEditNew .stepsTable').show();
} else {
$('#addEditNew .stepsTable').hide();
}
}
}
break;
}
case 'ms-new-client-partner':
{
let partner_label = $("#" + selector + " option:selected").data("label");
if (partner_label)
$("#" + selector).closest(".inputs").find(".fstToggleBtn").text(partner_label);
$("#" + selector).closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
$("#" + selector).closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');
break;
}
}
}
//Fastselect для разных селектов после установки
function setFastselectPost(selector, name) {
switch (selector) {
case 'ms-new-client-work':
{
$('#' + selector).fastselect({
placeholder: name,
onItemCreate: function() { $(this).find('.fstQueryInput').hide() },
onItemSelect: function() {
$('#addEditNew [name=confirm]').val("0");
}
});
break;
}
case 'ms-new-client-partner':
{
$("#ms-new-client-partner").fastselect({
placeholder: name,
onItemCreate: function($item, itemModel) {
let partner_name = $("#" + selector + " option[value=" + itemModel.value + "]").data('partner');
itemModel.text = itemModel.text + ' ';
$(this).find(".fstControls input.hidenClass").attr('type', "text");
$(this).find(".fstControls input.hidenClass").removeClass('hidenClass');
},
onItemSelect: function($item, itemModel) {
console.log($item, itemModel);
let partner_label = $("#" + selector + " option:selected").data("label");
if (partner_label)
$("#" + selector).closest(".inputs").find(".fstToggleBtn").text(partner_label);
$(this).find(".fstControls input.hidenClass").attr('type', "text");
$(this).find(".fstControls input.hidenClass").removeClass('hidenClass');
}
});
break;
}
case 'filter_charts_funnel':
{
$('#' + selector).fastselect({
placeholder: name,
onItemSelect: function() {
show_options_search_charts();
//get_sourse_filter();
},
onItemDelete: function() {
show_options_search_charts();
//get_sourse_filter();
}
});
break;
}
default:
{
$('#' + selector).fastselect({
placeholder: name,
});
break;
}
}
}
function close_partner_modal(clientId = 0, reqId = 0) {
$("#chat-modal__bg__partner").fadeOut(500);
$("#chat-modal__partner").toggle(10);
$("body").removeClass("lock");
if (clientId !== 0 && parseInt(clientId) > 0) {
$.ajax({
url: '/ajax/getClientLogForEventsNew.php?id=' + clientId,
success: function(data) {
$('#client-info-block').html(data);
$('#client_history .history__chat-n').animate({
scrollTop: $('#client-info-block').prop("scrollHeight")
}, 500, function() {
$('#client_history .history__chat-n').slimScroll({ scrollTo: $('#client-info-block').prop("scrollHeight") + 'px' });
});
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
} else if (reqId > 0) {
if (typeof requisitions == 'object') {
requisitions.getList();
}
openClientEventsWindowNew(0, $('#session_to_send').val(), 0, reqId);
}
return false;
}
function close_adjacent_modal(clientId = 0, reqId = 0){
$("#chat-modal__bg__adjacent").fadeOut(500);
$("#chat-modal__adjacent").toggle(10);
$("body").removeClass("lock");
if (clientId !== 0 && parseInt(clientId) > 0) {
$.ajax({
url: '/ajax/getClientLogForEventsNew.php?id=' + clientId,
success: function(data) {
$('#client-info-block').html(data);
$('#client_history .history__chat-n').animate({
scrollTop: $('#client-info-block').prop("scrollHeight")
}, 500, function() {
$('#client_history .history__chat-n').slimScroll({ scrollTo: $('#client-info-block').prop("scrollHeight") + 'px' });
});
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
} else if (reqId > 0) {
if (typeof requisitions == 'object') {
requisitions.getList();
}
openClientEventsWindowNew(0, $('#session_to_send').val(), 0, reqId);
}
return false;
}
function error_mes(id, mes) {
$(id).text(mes);
setTimeout(function() {
$(id).text('');
}, 3000);
}
function get_folders(id) {
$.post('/ajax/folders.php', { get_folders_all: 'all' }, function(data) {
//console.log(data);
$('#docs_info_tab').html(data);
if (id) {
$('#folder_id_' + id).find('.docsfiles').removeClass('hidden');
$("#files_upload").hide(10);
$("#file_upload").hide(10);
$("body").removeClass("lock");
return false;
}
});
}
function to_check_client_new(id) {
$('#changeClientAllFilter').prop('checked', false);
$('#changeClientAllFilterDiv').removeClass('active');
if ($('#changeClient' + id).prop('checked')) {
$('#changeClient' + id).prop('checked', false);
$('#checked-clt' + id).removeClass('active');
} else {
$('#changeClient' + id).prop('checked', true);
$('#checked-clt' + id).addClass('active');
}
}
function changeUserClients_confirm(userId, clientsId) {
$.ajax({
url: '/ajax/modals/confirmUserWinContent.php',
success: function(data) {
$("#confirm__user_bg").html(data);
$("#confirm__user_id").val(userId);
$("#confirm_clients_id").val(JSON.stringify(clientsId));
$("#confirm__who_work option").show();
$("#confirm__user_bg").fadeIn(500);
$("#confirm__user").fadeIn(10);
$("body").addClass("lock");
$('#confirm__who_work').fastselect({
placeholder: 'Новый ответственный',
onItemCreate: function(item, model) {
if ($('#confirm__who_work').find('option[value=' + model.value + ']').hasClass('bolt')) {
$(item).addClass('bolt');
}
},
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function funnelClients(clientsId) {
$.ajax({
url: '/ajax/modals/funnelUserWinContent.php',
method: "post",
data: {
"clientsId": clientsId,
},
success: function(data) {
$("#funnel__user_bg").html(data);
$("#funnel_clients_id").val(JSON.stringify(clientsId));
$("#funnel__check option").show();
$("#funnel__user_bg").fadeIn(500);
$("#funnel__user").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function confirm__User(userId, newWhoWork, clientsId, confirm_obj = null) {
var all = 0;
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
}
$.ajax({
url: '/ajax/confirm__User.php',
method: "post",
data: {
"userId": userId,
"newWhoWork": newWhoWork,
"clientsId": clientsId,
"confirmObj": confirm_obj,
"all": all,
},
success: function(data) {
console.log(data);
if (data == '') {
get_list();
$("#confirm__user_bg").fadeOut(500);
$("#confirm__user").toggle(10);
$("body").removeClass("lock");
$('#popup__clients').removeClass('show');
} else {
alert(data.replace("error:", ""));
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function clearSelect() {
for (let i = 1; i <= 4; i++) {
$('#addEditNew .form-block__p' + i + '-client').removeClass('active');
}
}
function funnelClientsConfirm(funnel_id, clientsId) {
console.log(funnel_id);
console.log(clientsId);
var all = 0;
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
}
$.ajax({
url: '/ajax/funnel_confirm.php',
method: "post",
data: {
"funnel_id": funnel_id,
"clientsId": clientsId,
"all": all,
},
success: function(data) {
console.log(data);
if (data == '') {
get_list();
$("#funnel__user_bg").fadeOut(500);
$("#funnel__user").toggle(10);
$("body").removeClass("lock");
$('#popup__clients').removeClass('show');
} else {
alert(data.replace("error:", ""));
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
//Модал нет доступа к рекламным объектам
function show_no_all_objects_page() {
$('#show_no_all_objects_page_bg').fadeIn(500);
$('#show_no_all_objects_page').toggle(300);
$("body").addClass("lock");
}
//открытие окна выбора тегов
function openChangeTags(id) {
$('.jw__popup.actions-tags:not([id="popup__tags_' + id + '"])').removeClass('show');
let popup = $('#popup__tags_' + id);
if (popup.hasClass('show'))
popup.removeClass('show');
else
popup.addClass('show');
if (popup.hasClass('show')) {
let tagsList = popup.find('#popup__activities_' + id).fastselect({
placeholder: 'Теги',
onItemCreate: function() {},
onItemSelect: function() {}
});
popup.find('.small-button').unbind('click');
popup.find('.small-button').click(function(e) {
let id = popup.attr('data-id');
let instance = popup.attr('data-for');
let tagsView = $('.jw__object.item#item' + id + ' .tags .tags-title');
let poapTagsView = $(`.jw__object.item#item${id} #popup__tags_list_${id} .inputs`);
if (instance == "clients"){
tagsView = $('.client#client__' + id + ' .tags .tags-title');
poapTagsView = $(`.client#client__${id} #popup__tags_list_${id} .inputs`);
}
let activities = tagsList.val();
$.post('/ajax/addActivities.php', {
id: id,
activities: activities,
instance: instance
}, function(data) {
let result = JSON.parse(data);
if (result.length > 0) {
tagsView.empty();
poapTagsView.empty();
//tagsView.append(' ');
let tag_key = 1;
let tags_visible = 0;
for (let i = 0; i < result.length; i++) {
if (result[i]['id'] && result[i]['name']) {
let htmlTag = '';
if(i<3){
htmlTag += '' +
'
'+
'
' +
'
' +
'
' +
'
' +
''+result[i]['name']+'
' +
'
';
}
htmlPoup += ' data-id="'+result[i]['id']+'">'+result[i]['name']+'
' +
' ';
if(i<3){
tagsView.append(htmlTag);
tags_visible++;
}
poapTagsView.append(htmlPoup);
}
tag_key++;
}
if((tags_visible) < result.length){
let rest_tags = result.length - tags_visible;
htmlTag = ''+
'
и ещё '+rest_tags+' шт.
'+
'
';
tagsView.append(htmlTag);
}
$('.jw__object.item#item' + id + ' .tags').removeClass('hidden');
$('.client#client__' + id + ' .tags').removeClass('hidden');
} else {
tagsView.empty();
$('.jw__object.item#item' + id + ' .tags').addClass('hidden');
$('.client#client__' + id + ' .tags').addClass('hidden');
poapTagsView.empty();
}
popup.removeClass('show');
});
});
}
}
function changeColorPicker(type){
if(type == 'add'){
let color = $('#addActivitesColorPicker input').val();
$('#addActivitesColorPicker').css('background', '').css('backgroundColor', color);
$('#colorAddActivites').val(color);
} else {
let color = $('#editActivitesColorPicker input').val();
$('#editActivitesColorPicker').css('background', '').css('backgroundColor', color);
$('#colorEditActivites').val(color);
}
}
//Открыть редактирование договора
function open_form_contract(id, contract_id, type, el) {
if (typeof contract_form != "undefined") {
contract_form.parent_type = type;
if (contract_id == -1) {
contract_id = $(el).attr("data-contract");
}
if (id == -1) {
id = parseInt($('#addEditNew [name=id]').val());
if (isNaN(id)) id = 0;
}
contract_form.parent_id = id;
contract_form.id = contract_id;
contract_form.open();
if (id == 0 && contract_id == 0) {
var data = $(el).closest('div').attr("data-data");
if (data) {
var con = JSON.parse(data);
var index = $(el).closest('div').attr("id").replace("contract_elem_client", "");
contract_form.number = con.number;
contract_form.type_contract = con.type;
contract_form.date_start = con.date_start;
contract_form.date_end = con.date_end;
contract_form.days_mes_end = con.days_mes_end;
contract_form.no_mes_end = con.no_mes_end;
contract_form.parent_index = index;
}
}
}
}
//список договоров в форме
function get_contracts_client(client_id) {
$("#list_contracts_client_form").html('');
if (client_id > 0) {
axios.post('/ajax/ajax_vue_requisitions.php', {
request: 'get_contracts',
parent_id: client_id,
type: 'client',
}, )
.then((response) => {
var res = response.data;
if (res.contracts.length > 0) {
var html = '';
for (var i = 0; i < res.contracts.length; i++) {
html += '';
}
$("#list_contracts_client_form").html(html);
}
})
.catch(function(error) {
console.log(error);
});
}
}
//Удаление договора
function deleteContract(index) {
if (confirm('Вы действительно хотите удалить этот договор?')) {
$('.ui-tooltip.ui-widget').remove();
var client_id = $('#contract_elem_client' + index).attr("data-client");
var contract_id = $('#contract_elem_client' + index).attr("data-contract");
$('#contract_elem_client' + index).remove();
if (client_id > 0 && contract_id > 0) {
if (typeof contract_form != "undefined") {
contract_form.delete(contract_id, 'client');
}
}
}
}
//Связка клиент-заявка-объект при добавлении объекта
function bindObjReq(clientId) {
$('#object-new-client-req').addClass('hidden');
$('#object-new-client-req span').text("");
$('#object-new-client-req [name=sobstv_object_req]').val(0);
$('#object-new-client-req [name=sobstv_object_req_funnel]').val(0);
$('#bind_obj_req .new_req').hide();
$('#bind_obj_req .error_req').hide();
var client_id = $("#object-new-client").val();
if ($("#object-new-client-vue").length > 0) {
client_id = $("#object-new-client-vue").val();
}
if (clientId > 0) {
client_id = clientId;
} else {
if (JSON.parse(client_id)[0]) {
client_id = JSON.parse(client_id)[0];
}
}
var object_id = 0;
if ($('#object-new-client-req [name=sobstv_object_req_object]')) {
object_id = parseInt($('#object-new-client-req [name=sobstv_object_req_object]').val());
}
if (object_id > 0) {
axios.post('/ajax/ajax_vue_requisitions.php', {
request: 'check_object',
agency_id: $('#session_agency_id').val(),
object_id: object_id,
req_id: $('#object-new-client-req [name=sobstv_object_req]').val(),
})
.then((response) => {
//console.log(response.data);
var res = response.data;
if (res['result'] == 'error') {
$('#bind_obj_req .error_req').show();
} else {
$('#bind_obj_req .new_req').show();
$('#bind_obj_req .new_req').attr("data-id", client_id);
}
})
.catch(function(error) {
console.log(error);
});
} else {
$('#bind_obj_req .new_req').show();
$('#bind_obj_req .new_req').attr("data-id", client_id);
}
//if(client_id > 0){
setSelectsFastselect('bind_obj_req-funnel', null, 'select_form_funnel.php', 'Воронка', 'req');
//$('#bind_obj_req .new_req').attr("data-id", client_id);
$('#bind_obj_req .old_req').attr("data-id", client_id);
$('#bind_obj_req_bg').fadeIn(300);
$('#bind_obj_req').toggle(100);
$("body").addClass("lock");
//}
}
//Открыть модл объекта
function openObjectModal(object_id, zindex) {
object_card.open(object_id, zindex);
}
//Проверка на пустату
function isEmpty(data) {
if (typeof(data) === 'object') {
if (JSON.stringify(data) === '{}' || JSON.stringify(data) === '[]') {
return true;
} else if (!data) {
return true;
}
return false;
} else if (typeof(data) === 'string') {
if (!data.trim()) {
return true;
}
return false;
} else if (typeof(data) === 'undefined') {
return true;
} else {
return false;
}
}
function recreateCols(columns) {
var result = [];
for (let i = 0, l = columns.length; i < l; i++) {
result[i] = {
visible : columns[i].visible,
id : columns[i].id,
text : columns[i].id
}
}
return result;
}
function open_confirmation__req_client(razdel, event, selector, confirm_obj=null){
console.log(confirm_obj);
$('#confirmation__req_client .loader').show();
$('#confirmation__req_client .no-loader').hide();
$('#confirmation__req_client .yes_confirmation').attr('data-razdel', razdel);
$('#confirmation__req_client .yes_confirmation').attr('data-event', event);
$('#confirmation__req_client .yes_confirmation').attr('data-selectort', selector);
$('#confirmation__req_client .yes_confirmation').attr('data-confirm-obj', confirm_obj);
if(selector != ''){
$('#'+selector).fadeOut(10);
$('#'+selector+'_bg').fadeOut(10);
if(selector == 'funnel__user_req'){
$('#funnel__user_bg_req').fadeOut(10);
}
}
var text = "Вы хотите";
if(event == 'confirm_user'){
text += " передать сотруднику ";
if(razdel == 'req'){
var user = $('#confirm__who_work_req').val();
if(user){
text += "«"+$('#confirm__who_work_req option[value="' + user + '"]').text()+"»";
}
}
if(razdel == 'client'){
var user = $('#confirm__who_work').val();
if(user){
text += "«"+$('#confirm__who_work option[value="' + user + '"]').text()+"»";
}
}
}
if(event == 'confirm_funnel'){
text += " переместить в воронку ";
if(razdel == 'req'){
var funnel = $('#funnel__check_req').val();
if(funnel){
text += "«"+$('#funnel__check_req option[value="' + funnel + '"]').text()+"»";
}
}
if(razdel == 'client'){
var funnel = $('#funnel__check').val();
if(funnel){
text += "«"+$('#funnel__check option[value="' + funnel + '"]').text()+"»";
}
}
}
if(event == 'confirm_on'){
text += " принять в работу ";
}
if(event == 'close_all'){
text += " закрыть ";
}
if(event == 'renew_all'){
text += ' открыть ';
}
if(event == 'take_from_closed_all'){
text += ' принять в работу ';
}
$('#confirmation__req_client .confirmation_event').text(text);
$('#confirmation__req_client_bg').fadeIn(10);
$('#confirmation__req_client').fadeIn(10);
$("body").addClass("lock");
var text_razdel = '';
var total_item = 0;
$('#confirmation__req_client .name_razdel').text(text_razdel);
if(razdel == 'req'){
text_razdel = "заявок";
}
if(razdel == 'client'){
text_razdel = "клиентов";
}
$('#confirmation__req_client .name_razdel').text(text_razdel);
var all = 0;
if ($('#changeReqAllFilter').prop('checked') || $('#changeClientAllFilter').prop('checked')) {
all = 1;
}
if(all == 0){
if(razdel == 'req'){
$('.changeReqInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeReq", "");
if (id != 'All') {
total_item++;
}
}
});
$('#confirmation__req_client .total_item').text(total_item);
}
if(razdel == 'client'){
$('.changeClientInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeClient", "");
if (id != 'All') {
total_item++;
}
}
});
$('#confirmation__req_client .total_item').text(total_item);
}
$('#confirmation__req_client .loader').hide();
$('#confirmation__req_client .no-loader').show();
} else {
var ids = [];
if (localStorage['ids_exception_req']) {
var ids_exception_req = localStorage.getItem('ids_exception_req');
ids = JSON.parse(ids_exception_req);
}
axios.post('/ajax/ajax_vue_requisitions.php', {
request: 'confirmation_total_item',
razdel: razdel,
ids_exception: ids,
}, )
.then((response) => {
console.log(response.data);
total_item = response.data;
$('#confirmation__req_client .total_item').text(total_item);
$('#confirmation__req_client .loader').hide();
$('#confirmation__req_client .no-loader').show();
})
.catch(function(error) {
console.log(error);
});
}
}
function close_confirmation__req_client(){
$('#changeReqAll').prop('checked', false);
$('#changeReqAllFilter').prop('checked', false);
$('#changeReqAllFilterDiv').removeClass('active');
$('#changeReqAllDiv').removeClass('active');
$('.changeReqInput').each(function(e) {
$(this).prop('checked', false);
var id = $(this).data("id");
$('#checked-clt' + id).removeClass('active');
});
$('#changeClientAll').prop('checked', false);
$('#changeClientAllFilter').prop('checked', false);
$('#changeClientAllFilterDiv').removeClass('active');
$('#changeClientAllDiv').removeClass('active');
$('.changeClientInput').each(function(e) {
$(this).prop('checked', false);
var id = $(this).data("id");
$('#checked-clt' + id).removeClass('active');
});
$('#confirmation__req_client .yes_confirmation').removeAttr('data-razdel');
$('#confirmation__req_client .yes_confirmation').removeAttr('data-event');
$('#confirmation__req_client .yes_confirmation').removeAttr('data-selectort');
$('#confirmation__req_client .loader').show();
$('#confirmation__req_client .no_loader').hide();
$('#confirmation__req_client_bg').fadeOut(300);
$('#confirmation__req_client').fadeOut(100);
$("body").removeClass("lock");
return false;
}
function no_confirmation(){
close_confirmation__req_client();
}
function yes_confirmation(){
var razdel = $('#confirmation__req_client .yes_confirmation').attr('data-razdel');
var event = $('#confirmation__req_client .yes_confirmation').attr('data-event');
var selector = $('#confirmation__req_client .yes_confirmation').attr('data-selectort');
var confirm_obj = $('#confirmation__req_client .yes_confirmation').attr('data-confirm-obj');
console.log(razdel);
console.log(event);
console.log(selector);
console.log(confirm_obj);
if(event == 'confirm_user'){
if(razdel == 'req'){
requisitions.confirm__User_req();
}
if(razdel == 'client'){
confirm__User(document.getElementById('confirm__user_id').value, document.getElementById('confirm__who_work').value, document.getElementById('confirm_clients_id').value, confirm_obj);
}
}
if(event == 'confirm_funnel'){
if(razdel == 'req'){
requisitions.funnelReqsConfirm();
}
if(razdel == 'client'){
funnelClientsConfirm(document.getElementById('funnel__check').value, document.getElementById('funnel_clients_id').value);
}
}
if(event == 'confirm_on'){
if(razdel == 'req'){
var reqsId = [];
var all = 0;
if ($('#changeReqAllFilter').prop('checked')) {
all = 1;
}
if (all == 0) {
$('.changeReqInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeReq", "");
if (id != 'All') {
reqsId.push(id);
}
}
});
confirmOnReqs(reqsId);
} else {
confirmOnReqs(reqsId);
}
}
if(razdel == 'client'){
var userId = $('#session_user_id').val();
var clientsId = [];
var all = 0;
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
clientsId = ['all'];
}
if (all == 0) {
$('.changeClientInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeClient", "");
if (id != 'All') {
clientsId.push(id);
}
}
});
console.log(clientsId);
if (clientsId.length == 0) {
alert("Нет выбранных клиентов");
} else {
confirmOnClients(clientsId);
}
} else {
confirmOnClients(clientsId);
}
}
}
if(event == 'close_all'){
$("#del_client_all_bg").fadeIn(500);
$("#del_client_all").toggle(10);
$("body").addClass("lock");
$('#summa_sdelki_all').val('');
$('#summa_sdelki_all').hide();
$('#luck_all').prop('checked', false);
$('#denial_work_all').show();
$('#denial_work_all').val(1);
var all = 0;
if(razdel == 'client'){
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
}
} else {
if ($('#changeReqAllFilter').prop('checked')) {
all = 1;
}
}
//console.log(all);
$("#del_client_all").find('input[name="del_all"]').val(all);
set_select_denial_work(0, true);
}
if(event == 'renew_all'){
if(razdel == 'req'){
var reqsId = [];
var all = 0;
if ($('#changeReqAllFilter').prop('checked')) {
all = 1;
}
if (all == 0) {
$('.changeReqInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeReq", "");
if (id != 'All') {
reqsId.push(id);
}
}
});
if (reqsId.length == 0) {
alert("Нет выбранных заявок");
} else {
console.log(reqsId);
requisitions.renewReqs(reqsId);
}
} else {
var user_id = $('#session_user_id').val();
requisitions.renewReqs(reqsId);
}
}
if(razdel == 'client'){
var clientsId = [];
var all = 0;
if ($('#changeClientAllFilter').prop('checked')) {
all = 1;
}
if (all == 0) {
$('.changeClientInput').each(function() {
if ($(this).prop('checked')) {
var id = $(this).attr('id').replace("changeClient", "");
clientsId.push(id);
}
});
console.log(clientsId);
if (clientsId.length == 0) {
alert("Нет выбранных клиентов");
} else {
renewClients(clientsId);
}
} else {
renewClients(clientsId);
}
}
}
if(event == 'take_from_closed_all'){
if(razdel == 'req'){
let reqsId = [];
let all = 0;
if ($('#changeReqAllFilter').prop('checked')) {
all = 1;
}
if (all == 0) {
$('.changeReqInput').each(function() {
if ($(this).prop('checked')) {
let id = $(this).attr('id').replace("changeReq", "");
if (id != 'All') {
reqsId.push(id);
}
}
});
if (reqsId.length == 0) {
alert("Нет выбранных заявок");
} else {
console.log(reqsId);
requisitions.takeFromClosedReqs(reqsId);
}
} else {
let user_id = $('#session_user_id').val();
requisitions.takeFromClosedReqs(reqsId);
}
}
}
close_confirmation__req_client();
}
function confirm__User_client(){
let confirm_obj = null;
if($('#is_confirm_object_all').length > 0){
if($('#is_confirm_object_all').prop('checked'))
confirm_obj = 1;
else
confirm_obj = 0;
}
open_confirmation__req_client('client', 'confirm_user', 'confirm__user', confirm_obj);
}
function funnel_Confirm_client(){
open_confirmation__req_client('client', 'confirm_funnel', 'funnel__user');
}
function save_key_telegramm(){
var key = $("#key_telegramm").val();
var user_id = $('#session_user_id').val();
axios.post('/ajax/ajax_vue_settings.php', {
request: 'save_key_telegramm',
key_telegramm: key,
user_id: user_id,
})
.then(function(response) {
alert("Код сохранен");
})
.catch(function(error) {
console.log(error);
});
}
function save_key_max(){
var key = $("#key_max").val();
var user_id = $('#session_user_id').val();
axios.post('/ajax/ajax_vue_settings.php', {
request: 'save_key_max',
key_max: key,
user_id: user_id,
})
.then(function(response) {
alert("Код сохранен");
})
.catch(function(error) {
console.log(error);
});
}
function open_modal_contract(object_id){
$('#popup__actions_contract_'+object_id).addClass('show');
var position = $('#actions_contract_'+object_id).position();
$('#popup__actions_contract_'+object_id).css('left', (position.left-80)+'px');
}
//удаление контракта в объектах
function deleteContractObject(object_id, contract_id, section) {
if (confirm('Вы действительно хотите удалить этот договор?')) {
$('.ui-tooltip.ui-widget').remove();
$('#contract_elem_object' + contract_id).remove();
if($('#popup__actions_contract_' + object_id + ' .contract_div').length == 0){
$('#actions_contract_'+object_id).hide();
}
if (object_id > 0 && contract_id > 0) {
if (typeof contract_form != "undefined") {
contract_form.delete(contract_id, section);
}
}
}
}
const defaultParams = {
containerClass: 'custom-select-container',
openerClass: 'custom-select-opener',
panelClass: 'custom-select-panel',
optionClass: 'custom-select-option',
optgroupClass: 'custom-select-optgroup',
isSelectedClass: 'is-selected',
hasFocusClass: 'has-focus',
isDisabledClass: 'is-disabled',
isOpenClass: 'is-open',
};
function builder(el, builderParams) {
const containerClass = 'customSelect';
let isOpen = false;
let uId = '';
const select = el;
let container;
let opener;
let focusedElement;
let selectedElement;
let panel;
let currLabel;
let resetSearchTimeout;
let searchKey = '';
//
// Inner Functions
//
// Sets the focused element with the neccessary classes substitutions
function setFocusedElement(cstOption) {
if (focusedElement) {
focusedElement.classList.remove(builderParams.hasFocusClass);
}
if (typeof cstOption !== 'undefined') {
focusedElement = cstOption;
focusedElement.classList.add(builderParams.hasFocusClass);
// Offset update: checks if the focused element is in the visible part of the panelClass
// if not dispatches a custom event
if (isOpen) {
if (cstOption.offsetTop < cstOption.offsetParent.scrollTop
|| cstOption.offsetTop >
(cstOption.offsetParent.scrollTop + cstOption.offsetParent.clientHeight)
- cstOption.clientHeight) {
cstOption.dispatchEvent(new CustomEvent('custom-select:focus-outside-panel', { bubbles: true }));
}
}
} else {
focusedElement = undefined;
}
}
// Reassigns the focused and selected custom option
// Updates the opener text
// IMPORTANT: the setSelectedElement function doesn't change the select value!
function setSelectedElement(cstOption) {
if (selectedElement) {
selectedElement.classList.remove(builderParams.isSelectedClass);
selectedElement.removeAttribute('id');
opener.removeAttribute('aria-activedescendant');
}
if (typeof cstOption !== 'undefined') {
cstOption.classList.add(builderParams.isSelectedClass);
cstOption.setAttribute('id', `${containerClass}-${uId}-selectedOption`);
opener.setAttribute('aria-activedescendant', `${containerClass}-${uId}-selectedOption`);
selectedElement = cstOption;
opener.children[0].textContent = selectedElement.customSelectOriginalOption.text;
} else {
selectedElement = undefined;
opener.children[0].textContent = '';
}
setFocusedElement(cstOption);
}
function setValue(value) {
// Gets the option with the provided value
let toSelect = select.querySelector(`option[value='${value}']`);
// If no option has the provided value get the first
if (!toSelect) {
[toSelect] = select.options;
}
// The option with the provided value becomes the selected one
// And changes the select current value
toSelect.selected = true;
setSelectedElement(select.options[select.selectedIndex].customSelectCstOption);
}
function moveFocuesedElement(direction) {
// Get all the .custom-select-options
// Get the index of the current focused one
const currentFocusedIndex =
[].indexOf.call(select.options, focusedElement.customSelectOriginalOption);
// If the next or prev custom option exist
// Sets it as the new focused one
if (select.options[currentFocusedIndex + direction]) {
setFocusedElement(select.options[currentFocusedIndex + direction].customSelectCstOption);
}
}
// Open/Close function (toggle)
function open(bool) {
// Open
if (bool || typeof bool === 'undefined') {
// If present closes an opened instance of the plugin
// Only one at time can be open
const openedCustomSelect =
document.querySelector(`.${containerClass}.${builderParams.isOpenClass}`);
if (openedCustomSelect) {
openedCustomSelect.customSelect.open = false;
}
// Opens only the clicked one
container.classList.add(builderParams.isOpenClass);
// aria-expanded update
container.classList.add(builderParams.isOpenClass);
opener.setAttribute('aria-expanded', 'true');
// Updates the scrollTop position of the panel in relation with the focused option
if (selectedElement) {
panel.scrollTop = selectedElement.offsetTop;
}
// Dispatches the custom event open
container.dispatchEvent(new CustomEvent('custom-select:open'));
// Sets the global state
isOpen = true;
// Close
} else {
// Removes the css classes
container.classList.remove(builderParams.isOpenClass);
// aria-expanded update
opener.setAttribute('aria-expanded', 'false');
// Sets the global state
isOpen = false;
// When closing the panel the focused custom option must be the selected one
setFocusedElement(selectedElement);
// Dispatches the custom event close
container.dispatchEvent(new CustomEvent('custom-select:close'));
}
return isOpen;
}
function clickEvent(e) {
// Opener click
if (e.target === opener || opener.contains(e.target)) {
if (isOpen) {
open(false);
} else {
open();
}
// Custom Option click
} else if (
e.target.classList
&& e.target.classList.contains(builderParams.optionClass)
&& panel.contains(e.target)) {
setSelectedElement(e.target);
// Sets the corrisponding select's option to selected updating the select's value too
selectedElement.customSelectOriginalOption.selected = true;
open(false);
// Triggers the native change event of the select
select.dispatchEvent(new CustomEvent('change'));
// click on label or select (click on label corrispond to select click)
} else if (e.target === select) {
// if the original select is focusable (for any external reason) let the focus
// else trigger the focus on opener
if (opener !== document.activeElement && select !== document.activeElement) {
opener.focus();
}
// Click outside the container closes the panel
} else if (isOpen && !container.contains(e.target)) {
open(false);
}
}
function mouseoverEvent(e) {
// On mouse move over and options it bacames the focused one
if (e.target.classList && e.target.classList.contains(builderParams.optionClass)) {
setFocusedElement(e.target);
}
}
function keydownEvent(e) {
if (!isOpen) {
// On "Arrow down", "Arrow up" and "Space" keys opens the panel
if (e.keyCode === 40 || e.keyCode === 38 || e.keyCode === 32) {
open();
}
} else {
switch (e.keyCode) {
case 13:
case 32:
// On "Enter" or "Space" selects the focused element as the selected one
setSelectedElement(focusedElement);
// Sets the corrisponding select's option to selected updating the select's value too
selectedElement.customSelectOriginalOption.selected = true;
// Triggers the native change event of the select
select.dispatchEvent(new CustomEvent('change'));
open(false);
break;
case 27:
// On "Escape" closes the panel
open(false);
break;
case 38:
// On "Arrow up" set focus to the prev option if present
moveFocuesedElement(-1);
break;
case 40:
// On "Arrow down" set focus to the next option if present
moveFocuesedElement(+1);
break;
default:
// search in panel (autocomplete)
if (e.keyCode >= 48 && e.keyCode <= 90) {
// clear existing reset timeout
if (resetSearchTimeout) {
clearTimeout(resetSearchTimeout);
}
// reset timeout for empty search key
resetSearchTimeout = setTimeout(() => {
searchKey = '';
}, 1500);
// update search keyword appending the current key
searchKey += String.fromCharCode(e.keyCode);
// search the element
for (let i = 0, l = select.options.length; i < l; i++) {
// removed cause not supported by IE:
// if (options[i].text.startsWith(searchKey))
if (select.options[i].text.toUpperCase().substr(0, searchKey.length) === searchKey) {
setFocusedElement(select.options[i].customSelectCstOption);
break;
}
}
}
break;
}
}
}
function changeEvent() {
const index = select.selectedIndex;
const element = index === -1 ? undefined : select.options[index].customSelectCstOption;
setSelectedElement(element);
if($(select).attr('data-id')){
var object_id = $(select).attr('data-id');
var val = select.value;
change_promo(object_id, val);
}
}
// When the option is outside the visible part of the opened panel, updates the scrollTop position
// This is the default behaviour
// To block it the plugin user must
// add a "custom-select:focus-outside-panel" eventListener on the panel
// with useCapture set to true
// and stopPropagation
function scrollToFocused(e) {
const currPanel = e.currentTarget;
const currOption = e.target;
// Up
if (currOption.offsetTop < currPanel.scrollTop) {
currPanel.scrollTop = currOption.offsetTop;
// Down
} else {
currPanel.scrollTop = (currOption.offsetTop + currOption.clientHeight)
- currPanel.clientHeight;
}
}
function addEvents() {
document.addEventListener('click', clickEvent);
panel.addEventListener('mouseover', mouseoverEvent);
panel.addEventListener('custom-select:focus-outside-panel', scrollToFocused);
select.addEventListener('change', changeEvent);
container.addEventListener('keydown', keydownEvent);
}
function removeEvents() {
document.removeEventListener('click', clickEvent);
panel.removeEventListener('mouseover', mouseoverEvent);
panel.removeEventListener('custom-select:focus-outside-panel', scrollToFocused);
select.removeEventListener('change', changeEvent);
container.removeEventListener('keydown', keydownEvent);
}
function disabled(bool) {
if (bool && !select.disabled) {
container.classList.add(builderParams.isDisabledClass);
select.disabled = true;
opener.removeAttribute('tabindex');
container.dispatchEvent(new CustomEvent('custom-select:disabled'));
removeEvents();
} else if (!bool && select.disabled) {
container.classList.remove(builderParams.isDisabledClass);
select.disabled = false;
opener.setAttribute('tabindex', '0');
container.dispatchEvent(new CustomEvent('custom-select:enabled'));
addEvents();
}
}
// Form a given select children DOM tree (options and optgroup),
// Creates the corresponding custom HTMLElements list (divs with different classes and attributes)
function parseMarkup(children) {
const nodeList = children;
const cstList = [];
if (typeof nodeList.length === 'undefined') {
throw new TypeError('Invalid Argument');
}
for (let i = 0, li = nodeList.length; i < li; i++) {
if (nodeList[i] instanceof HTMLElement && nodeList[i].tagName.toUpperCase() === 'OPTGROUP') {
const cstOptgroup = document.createElement('div');
cstOptgroup.classList.add(builderParams.optgroupClass);
cstOptgroup.setAttribute('data-label', nodeList[i].label);
// IMPORTANT: Stores in a property of the created custom option group
// a hook to the the corrisponding select's option group
cstOptgroup.customSelectOriginalOptgroup = nodeList[i];
// IMPORTANT: Stores in a property of select's option group
// a hook to the created custom option group
nodeList[i].customSelectCstOptgroup = cstOptgroup;
const subNodes = parseMarkup(nodeList[i].children);
for (let j = 0, lj = subNodes.length; j < lj; j++) {
cstOptgroup.appendChild(subNodes[j]);
}
cstList.push(cstOptgroup);
} else if (nodeList[i] instanceof HTMLElement
&& nodeList[i].tagName.toUpperCase() === 'OPTION') {
const cstOption = document.createElement('div');
cstOption.classList.add(builderParams.optionClass);
cstOption.textContent = nodeList[i].text;
cstOption.setAttribute('data-value', nodeList[i].value);
cstOption.setAttribute('role', 'option');
// IMPORTANT: Stores in a property of the created custom option
// a hook to the the corrisponding select's option
cstOption.customSelectOriginalOption = nodeList[i];
// IMPORTANT: Stores in a property of select's option
// a hook to the created custom option
nodeList[i].customSelectCstOption = cstOption;
// If the select's option is selected
if (nodeList[i].selected) {
setSelectedElement(cstOption);
}
cstList.push(cstOption);
} else {
throw new TypeError('Invalid Argument');
}
}
return cstList;
}
function append(nodePar, appendIntoOriginal, targetPar) {
let target;
if (typeof targetPar === 'undefined'
|| (targetPar === select)) {
target = panel;
} else if (targetPar instanceof HTMLElement
&& targetPar.tagName.toUpperCase() === 'OPTGROUP'
&& select.contains(targetPar)) {
target = targetPar.customSelectCstOptgroup;
} else {
throw new TypeError('Invalid Argument');
}
// If the node provided is a single HTMLElement it is stored in an array
const node = nodePar instanceof HTMLElement ? [nodePar] : nodePar;
// Injects the options|optgroup in the select
if (appendIntoOriginal) {
for (let i = 0, l = node.length; i < l; i++) {
if (target === panel) {
select.appendChild(node[i]);
} else {
target.customSelectOriginalOptgroup.appendChild(node[i]);
}
}
}
// The custom markup to append
const markupToInsert = parseMarkup(node);
// Injects the created DOM content in the panel
for (let i = 0, l = markupToInsert.length; i < l; i++) {
target.appendChild(markupToInsert[i]);
}
return node;
}
function insertBefore(node, targetPar) {
let target;
if (targetPar instanceof HTMLElement
&& targetPar.tagName.toUpperCase() === 'OPTION'
&& select.contains(targetPar)) {
target = targetPar.customSelectCstOption;
} else if (targetPar instanceof HTMLElement
&& targetPar.tagName.toUpperCase() === 'OPTGROUP'
&& select.contains(targetPar)) {
target = targetPar.customSelectCstOptgroup;
} else {
throw new TypeError('Invalid Argument');
}
// The custom markup to append
const markupToInsert = parseMarkup(node.length ? node : [node]);
target.parentNode.insertBefore(markupToInsert[0], target);
// Injects the option or optgroup node in the original select and returns the injected node
return targetPar.parentNode.insertBefore(node.length ? node[0] : node, targetPar);
}
function remove(node) {
let cstNode;
if (node instanceof HTMLElement
&& node.tagName.toUpperCase() === 'OPTION'
&& select.contains(node)) {
cstNode = node.customSelectCstOption;
} else if (node instanceof HTMLElement
&& node.tagName.toUpperCase() === 'OPTGROUP'
&& select.contains(node)) {
cstNode = node.customSelectCstOptgroup;
} else {
throw new TypeError('Invalid Argument');
}
cstNode.parentNode.removeChild(cstNode);
const removedNode = node.parentNode.removeChild(node);
changeEvent();
return removedNode;
}
function empty() {
const removed = [];
while (select.children.length) {
panel.removeChild(panel.children[0]);
removed.push(select.removeChild(select.children[0]));
}
setSelectedElement();
return removed;
}
function destroy() {
for (let i = 0, l = select.options.length; i < l; i++) {
delete select.options[i].customSelectCstOption;
}
const optGroup = select.getElementsByTagName('optgroup');
for (let i = 0, l = optGroup.length; i < l; i++) {
delete optGroup.customSelectCstOptgroup;
}
removeEvents();
return container.parentNode.replaceChild(select, container);
}
//
// Custom Select DOM tree creation
//
// Creates the container/wrapper
container = document.createElement('div');
container.classList.add(builderParams.containerClass, containerClass);
// Creates the opener
opener = document.createElement('span');
opener.className = builderParams.openerClass;
opener.setAttribute('role', 'combobox');
opener.setAttribute('aria-autocomplete', 'list');
opener.setAttribute('aria-expanded', 'false');
opener.innerHTML = `
${(select.selectedIndex !== -1 ? select.options[select.selectedIndex].text : '')}
`;
// Creates the panel
// and injects the markup of the select inside
// with some tag and attributes replacement
panel = document.createElement('div');
// Create random id
const possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
for (let i = 0; i < 5; i++) {
uId += possible.charAt(Math.floor(Math.random() * possible.length));
}
panel.id = `${containerClass}-${uId}-panel`;
panel.className = builderParams.panelClass;
panel.setAttribute('role', 'listbox');
opener.setAttribute('aria-owns', panel.id);
append(select.children, false);
// Injects the container in the original DOM position of the select
container.appendChild(opener);
select.parentNode.replaceChild(container, select);
container.appendChild(select);
container.appendChild(panel);
// ARIA labelledby - label
if (document.querySelector(`label[for="${select.id}"]`)) {
currLabel = document.querySelector(`label[for="${select.id}"]`);
} else if (container.parentNode.tagName.toUpperCase() === 'LABEL') {
currLabel = container.parentNode;
}
if (typeof currLabel !== 'undefined') {
currLabel.setAttribute('id', `${containerClass}-${uId}-label`);
opener.setAttribute('aria-labelledby', `${containerClass}-${uId}-label`);
}
// Event Init
if (select.disabled) {
container.classList.add(builderParams.isDisabledClass);
} else {
opener.setAttribute('tabindex', '0');
select.setAttribute('tabindex', '-1');
addEvents();
}
// Stores the plugin public exposed methods and properties, directly in the container HTMLElement
container.customSelect = {
get pluginOptions() { return builderParams; },
get open() { return isOpen; },
set open(bool) {
open(bool);
},
get disabled() { return select.disabled; },
set disabled(bool) {
disabled(bool);
},
get value() { return select.value; },
set value(val) {
setValue(val);
},
append: (node, target) => append(node, true, target),
insertBefore: (node, target) => insertBefore(node, target),
remove,
empty,
destroy,
opener,
select,
panel,
container,
};
// Stores the plugin directly in the original select
select.customSelect = container.customSelect;
// Returns the plugin instance, with the public exposed methods and properties
return container.customSelect;
}
function customSelect(element, customParams) {
// Overrides the default options with the ones provided by the user
const nodeList = [];
const selects = [];
return (function init() {
// The plugin is called on a single HTMLElement
if (element && element instanceof HTMLElement && element.tagName.toUpperCase() === 'SELECT') {
nodeList.push(element);
// The plugin is called on a selector
} else if (element && typeof element === 'string') {
const elementsList = document.querySelectorAll(element);
for (let i = 0, l = elementsList.length; i < l; ++i) {
if (elementsList[i] instanceof HTMLElement
&& elementsList[i].tagName.toUpperCase() === 'SELECT') {
nodeList.push(elementsList[i]);
}
}
// The plugin is called on any HTMLElements list (NodeList, HTMLCollection, Array, etc.)
} else if (element && element.length) {
for (let i = 0, l = element.length; i < l; ++i) {
if (element[i] instanceof HTMLElement
&& element[i].tagName.toUpperCase() === 'SELECT') {
nodeList.push(element[i]);
}
}
}
// Launches the plugin over every HTMLElement
// And stores every plugin instance
for (let i = 0, l = nodeList.length; i < l; ++i) {
selects.push(builder(nodeList[i], Object.assign({}, defaultParams, customParams)));
}
// Returns all plugin instances
return selects;
}());
}
function change_promo(object_id, val){
console.log(object_id, val);
var params = {};
if(object_id > 0 || object_id == 'all'){
params.object_id = object_id;
params.user_id = $('#session_user_id').val();
if(val.indexOf("avito_") != -1){
params.avito_highlight = (val == 'avito_highlight') ? 1 : 0;
params.avito_xl = (val == "avito_xl") ? 1 : 0;
params.avito_x2_1 = (val == "avito_x2_1") ? 1 : 0;
params.avito_x2_7 = (val == "avito_x2_7") ? 1 : 0;
params.avito_x5_1 = (val == "avito_x5_1") ? 1 : 0;
params.avito_x5_7 = (val == "avito_x5_7") ? 1 : 0;
params.avito_x10_1 = (val == "avito_x10_1") ? 1 : 0;
params.avito_x10_7 = (val == "avito_x10_7") ? 1 : 0;
}
if(val.indexOf("cian_") != -1 && val != 'cian_bet'){
if(object_id == 'all'){
$('#cian_promo_price_all').removeAttr('disabled');
}
params.cian_highlight = (val == 'cian_highlight') ? 1 : 0;
params.cian_standard = (val == 'cian_standard') ? 1 : 0;
params.cian_paid = (val == 'cian_paid') ? 1 : 0;
params.cian_premium = (val == 'cian_premium') ? 1 : 0;
params.cian_top3 = (val == 'cian_top3') ? 1 : 0;
params.cian_ignore_pkg = (val == 'cian_ignore_pkg') ? 1 : 0;
}
if(val == 'cian_bet'){
if(object_id == 'all'){
$('#cian_promo_price_all').removeAttr('disabled');
}
price = $('#cian_bet_input_promo_'+object_id).val();
if(isEmpty(price)) price = 0;
params.cian_bet = price;
}
if(val.indexOf("yandex_") != -1) {
params.yandex_premium = (val == "yandex_premium") ? 1 : 0;
params.yandex_raise = (val == "yandex_raise") ? 1 : 0;
params.yandex_promotion = (val == "yandex_promotion") ? 1 : 0;
}
if(val.indexOf("domclick_") != -1) {
params.domclick_express = (val == "domclick_express") ? 1 : 0;
params.domclick_premium = (val == "domclick_premium") ? 1 : 0;
params.domclick_top = (val == "domclick_top") ? 1 : 0;
}
/*params.cian_price = form.find('input[name="cian_price"]').val();
params.yandex_price = form.find('input[name="yandex_price"]').val();
params.domclick_price = form.find('input[name="domclick_price"]').val();*/
$.ajax({
url: '/ajax/addPromotion.php',
method: "post",
data: params,
success: function(data) {
// console.log(data);
//let results = JSON.parse(data);
if(val == 'cian_bet'){
is_change_cian_bet = false;
}
/*$("#addPromotionBg").hide();
$("#addPromotionBg").empty();
$("#addPromotion").hide();
$("body").removeClass("lock");*/
//console.log(results);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}