Joywork/js/main.js

14249 lines
534 KiB
JavaScript
Raw Normal View History

2026-05-22 20:21:54 +02:00
(function($) {
jQuery.fn.jwTabs = function() {
var createTabs = function() {
tabs = this;
i = 0;
showPage = function(i) {
$(tabs).children("div").children("div").hide();
$(tabs).children("div").children("div").eq(i).show();
$(tabs).children("ul").children("li").removeClass("active");
$(tabs).children("ul").children("li").eq(i).addClass("active");
}
showPage(0);
$(tabs).children("ul").children("li").each(function(index, element) {
$(element).attr("data-page", i);
i++;
});
$(tabs).children("ul").children("li").click(function() {
let page = $(this).attr("data-page");
if (typeof page !== "undefined") {
showPage(parseInt(page));
}
});
};
return this.each(createTabs);
};
})(jQuery);
function blockUi() {
$.blockUI({
message: '<div style="background: url(/images/rocket-spinner.svg) no-repeat center center; background-size: 96px 96px;width: 96px;height: 96px;" class="preloader"></div>',
css: {
'border': 'none',
'width': '96px',
'backgroundColor': 'none',
'left': '46%',
'z-index': 99999999999
},
overlayCSS: {
'z-index': 99999999999,
'backgroundColor': 'white',
'opacity' : '0',
}
})
}
function unBlockUi() {
$.unblockUI();
}
$(document).ready(function() {
var url = new URL(window.location.href);
var c = url.searchParams.get("AZ");
var availableCatalogs = [];
if (!c || c !== '1') {
$(".phoneMask").mask("+79999999999");
}
$(".jw-tabs").jwTabs();
$('.status').click(function() {
var thisElement = jQuery(this);
if (thisElement.hasClass('selected')) return;
$('.status.selected').removeClass('selected');
thisElement.addClass('selected');
//return false;
});
$('.delegate__to').click(function() {
var thisElement = jQuery(this);
if (thisElement.hasClass('selected')) return;
$('.delegate__to.selected').removeClass('selected');
thisElement.addClass('selected');
//return false;
});
$('.select_manager').change(function() { // функция смены менеджера для агента
var id = $(this).val();
var id_user = $(this).attr('data-id');
if (!isNaN(id)) {
location.replace("?id_mngr=" + id + '&id_user=' + id_user);
}
});
$('.select_role').change(function() { // функция смены роли
var id = $(this).val();
var id_user = $(this).attr('data-id');
var dep_id = $(this).find('option:selected').attr("data-dep");
console.log(dep_id);
console.log(id_user);
console.log(id);
if (!isNaN(id)) {
if (!isNaN(dep_id)) {
location.replace("?id_role=" + id + '&id_user=' + id_user + "&department_id=" + dep_id);
}
}
});
$('.set_agent').click(function() {
if (confirm('Вы точно хотите разжаловать этого менеджера в агенты? Все подчинённые ему агенты станут свободными и их нужно будет переназначить'))
{
var id_user = $(this).attr('data-id');
location.replace('?id_mngr=-1&id_user=' + id_user)
/*var obj = $(this);
obj.parent().parent().css({"background":"url(/images/ajax_preloader.gif) no-repeat top right"});
var id_user = obj.attr('data-id');
var sl = new Array();
$('.select_manager').each(function(){
sl.push($(this).find('option:selected').val());
})
$.ajax({
url:"/ajax/set_manager.php?id_mngr=-1&id_user="+id_user,
success: function(data){
obj.parent().parent().css({"background":"none"});
obj.parent().parent().parent().find('.select_manager').show();
obj.hide();
$('.select_manager').html(data);
}
});*/
}
return false;
})
$(function () {
$('#btnPartnerUrl').on('click', function () {
$('#partnerUrlForm').show()
})
$('#btnPartnerUrlCancel').on('click', function () {
$('#partnerUrlForm').hide()
})
})
$(".toggleAgents").click(function() {
$(this).parent().parent().children(".user").toggle();
var obj = $(this).find("span");
if (obj.text() == "Свернуть") obj.text('Развернуть');
else obj.text('Свернуть');
return false;
})
$(document).delegate('.toggleEmployees', 'click', function() {
$(this).parent().parent().find(".partner").toggle();
var obj = $(this).find("span");
if (obj.text() == "Свернуть")
obj.text('Развернуть');
else
obj.text('Свернуть');
return false;
});
$(".toggleClient").click(function() {
var id = $(this).attr('data-id');
$("#client_info" + id).toggle();
return false;
})
$(document).on('keydown', '.change_installment_price', function (e) {
if (e.key === '-' || e.key === 'e' || e.key === '+') {
e.preventDefault();
}
});
$(".toggleVariants").click(function() {
$(this).toggleClass('open')
$(this).parent().siblings(".presentations").toggle();
var obj = $(this).find('span');
if (obj.text() == "Свернуть") obj.text("Развернуть");
else obj.text("Свернуть");
return false;
})
$("#changeManager").change(function() {
var id = $(this).val();
var workTypeField = $('#workType');
if (workTypeField && workTypeField.length > 0) {
location.replace('clients.php?id_manager=' + id + '&workType=' + workTypeField.val());
} else {
location.replace('clients.php?id_manager=' + id);
}
});
$("body").on("mouseover", ".add-object-iframe", function () {
let title = $(this).find(".objects-iframe-title");
title.addClass("title-visible");
});
$("body").on("mouseleave", ".add-object-iframe", function () {
let title = $(this).find(".objects-iframe-title");
title.removeClass("title-visible");
});
$("body").on("click", ".add-object-iframe", function () {
let svg = $(this).find(".add-object-to-iframe");
let id = svg.data('id');
let title = $(this).find(".objects-iframe-title");
let currentText = title.text().trim();
$(this).find(".add-object-to-iframe").addClass("add-Jw-color");
$.post('/ajax/toggle_site_published.php', { id: id }, function (data) {
if (data.status === 'success') {
if (currentText === "Опубликовать на сайте компании") {
title.text("Снять с сайта компании");
title.removeClass("top-max");
svg.css("background", "#4CAF50");
svg.find("g").attr("fill", "#ffffff");
} else {
title.text("Опубликовать на сайте компании");
title.addClass("top-max");
svg.css("background", "transparent");
svg.find("g").attr("fill", "#757575");
}
} else {
alert(data.message , 'Ошибка при обновлении');
}
}, 'json').fail(function () {
alert('Ошибка запроса к серверу');
});
});
$("body").on("click", ".iframe_copy_holder", function (e) {
// Берём чистый текст iframe
var text = $("#iframe_input code").text().trim();
if (!text) {
showCopyTooltip(e, "Нет кода для копирования", "error");
return;
}
// Создаём временное поле для копирования
var temp = $("<textarea>");
$("body").append(temp);
temp.val(text).select();
try {
var success = document.execCommand("copy");
if (success) {
showCopyTooltip(e, "Скопировано!");
} else {
showCopyTooltip(e, "Не удалось скопировать", "error");
}
} catch (err) {
showCopyTooltip(e, "Ошибка при копировании", "error");
}
temp.remove();
});
function showCopyTooltip(e, message, type) {
// Создаём div
var tooltip = $("<div>")
.text(message)
.css({
position: "absolute",
top: e.pageY + 15, // чуть ниже курсора
left: e.pageX + 10,
padding: "6px 10px",
"background-color": type === "error" ? "#e74c3c" : "#4CAF50",
color: "#fff",
"border-radius": "6px",
"font-size": "13px",
"z-index": 9999,
"box-shadow": "0 2px 6px rgba(0,0,0,0.2)",
opacity: 0,
transition: "opacity 0.3s ease"
});
$("body").append(tooltip);
// Анимация появления
setTimeout(() => tooltip.css("opacity", 1), 10);
// Удаление через 2 сек
setTimeout(() => {
tooltip.fadeOut(400, function () {
$(this).remove();
});
}, 2000);
}
$("body").on("change", ".iframe-connected", function () {
var agencyId = $(this).data("agency-id");
var enabled = $(this).is(":checked") ? 1 : 0;
var $fields = $(this).closest(".fieldset").find(".iframe-fields");
$.post("/ajax/toggle_objects_iframe.php", { agency_id: agencyId, enable: enabled }, function(res){
if(res.status === "success"){
if(enabled){
$("#iframe_input .iframe-link-value").html(
'<code>' +
$('<div>').text('<iframe title="Objects Presentation" width="1920" height="1080" src="https://joywork.ru/objects_presentation/#/' + res.iframe_token + '"></iframe>').html() +
'</code>'
);
$(".objects_presentation_main_color_input").val(res.primary_color);
$fields.show();
} else {
$fields.hide();
}
} else {
alert(res.message, "Ошибка");
}
}, "json");
});
$("body").on("click", "#iframe_save", function () {
var agencyId = $(".iframe-connected").data("agency-id");
var color = $(".objects_presentation_main_color_input").val();
$.post("/ajax/save_iframe_objects_color.php", { agency_id: agencyId, color: color }, function(res){
if(res.status === "success"){
alert("Цвет сохранён");
} else {
alert(res.message || "Ошибка");
}
}, "json");
});
$("#changeAgent").change(function() {
var id = $(this).val();
var id_manager = $("#changeManager").val();
var workTypeField = $('#workType');
if (workTypeField && workTypeField.length > 0) {
location.replace('clients.php?id_manager=' + id_manager + '&id_agent=' + id + '&workType=' + workTypeField.val());
} else {
location.replace('clients.php?id_manager=' + id_manager + '&id_agent=' + id);
}
});
$('.open_folder').click(function() {
var id = $(this).attr('data-id');
if ($('.link' + id).is(":visible"))
{
$(this).css({ "font-weight": "normal", "border-bottom-style": "dashed" });
$('.link' + id).hide();
} else
{
$(this).css({ "font-weight": "bold", "border-bottom-style": "none" });
$('.link' + id).show();
}
$('.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
});
return false;
})
$('.jw__layout .content-top .top__advert-budget').click(function() {
let user_id = $(this).attr("data-user-id");
let popup = $(this).find('.jw__popup.advert_budget_details');
popup.empty();
if (!popup.hasClass('show')) {
$(".users .jw__popup.show").removeClass("show");
let is_agency = (user_id == $('#session_agency_id').val())
$.post('/ajax/getAdvertBudget.php', { 'user_id': user_id, 'is_agency': is_agency }, function(data) {
popup.html(data);
popup.addClass("show");
});
} else {
popup.removeClass("show");
}
return false;
});
function fr_send_presentation_color_change() {
if ($('#kol_send').val() > 0) {
$('.fr-send-presentation').addClass('fr-send-presentation-yes-object');
} else {
$('.fr-send-presentation').removeClass('fr-send-presentation-yes-object');
}
};
fr_send_presentation_color_change();
setInterval(function() {
var input = $('#kol_send');
var old = input.attr("data-old-value");
var current = input.val();
if (old !== current) {
if (typeof old != 'undefined') {
fr_send_presentation_color_change()
}
input.attr("data-old-value", current);
}
}, 100);
function getClientIds() {
var clients = [];
$('#komy option:selected').each(function() {
clients.push($(this).val());
});
return clients;
}
$("body").on('click', '.send_mail', function() {
var ready = parseInt($('#all_ready').val());
if (ready) {
$('#error_txt').hide();
$('#error_txt_filter').hide();
var checs = {}
$('.change_personal_contact').each(function() {
var object_id = $(this).attr("data-id");
var chec = ($(this).prop('checked')) ? 1 : 0;
checs[object_id] = chec;
})
var prices = {};
$('.change_personal_cena').each(function() {
var object_id = $(this).attr("data-id");
var cena = $(this).val();
if (cena) {
prices[object_id] = cena;
}
})
var hideAddresses = {};
$('.checkbox-address-hide').each(function() {
var object_id = $(this).attr("data-id");
hideAddresses[object_id] = ($(this).prop('checked')) ? 1 : 0;
});
var closes_contact = JSON.stringify(checs);
var prices = JSON.stringify(prices);
var checkboxAddresses = JSON.stringify(hideAddresses);
var catalogNewBuildings = $(".copy_catalog_link_newbuilding").attr(
"newbuilding-data-catalog"
);
// Похоже на то, что сбор выбранных клиентов не работает кроме первого клиента
// в выборке получается значение 4273[]3433
// var komy = $('#komy option:selected').map(function(a, item) { return item.value; });
var clients = getClientIds();
var request = $('#request option:selected').val();
var theme = $('#theme').val();
var txt = $('#txt').val();
var kol_send = $('#kol_send').val();
var send_type = $('#send_type').val();
var catalog = $('.copy_catalog_link').attr('data-catalog');
if (clients.length > 0) {
$('#send_log_new, #objts, #head-checkbox').html('').show();
$('#catalog-link').html('');
$('#send_form_new').hide();
$('#send_log_new').css({ "background": "url(/images/ajax_preloader.gif) no-repeat top right", "min-height": "70px" });
var sendType = 'presentation';
try {
var sendTypeField = $('#sendType');
if (sendTypeField) {
sendType = sendTypeField.val();
}
} catch (ex) {
}
if (kol_send > 0) {
if (send_type == 'mail' && sendType == 'presentation') {
generatePDFandSend(0, clients, theme, txt, closes_contact, prices, checkboxAddresses, request);
} else if (kol_send == 1) {
if (window.complexBus) {
saveCatalog(clients, theme, txt, send_type, closes_contact, prices, catalog, checkboxAddresses, availableCatalogs, request, catalogNewBuildings);
} else {
generateMailWithLinksAndSend(clients, theme, txt, send_type, closes_contact, prices, checkboxAddresses, request);
}
} else if (kol_send > 1) {
saveCatalog(clients, theme, txt, send_type, closes_contact, prices, catalog, checkboxAddresses, availableCatalogs, request, catalogNewBuildings);
}
$('#komy option:selected').each(function() {
var idClient = $(this).data("id");
$('#client__' + idClient + ' .stage').removeClass('active');
$('#client__' + idClient + ' .stage-new').addClass('active');
$('#client__' + idClient + ' .stage-work').addClass('active');
$('#client__' + idClient + ' .stage-offer').addClass('active');
$('#client__' + idClient + ' .stagebar-title').text('Презентация');
});
}
} else {
if (send_type == 'telegram') {
$('#send_log_new, #objts').html('').show();
$('#send_form_new').hide();
$('#send_log_new').css({ "background": "url(/images/ajax_preloader.gif) no-repeat top right", "min-height": "70px" });
if (kol_send == 1) {
if (window.complexBus) {
saveCatalog('***', theme, txt, send_type, closes_contact, prices, catalog, checkboxAddresses, availableCatalogs, request);
} else {
generateMailWithLinksAndSend('***', theme, txt, send_type, closes_contact, prices, checkboxAddresses, request);
}
} else if (kol_send > 1) {
saveCatalog('***', theme, txt, send_type, closes_contact, prices, catalog, checkboxAddresses, availableCatalogs, request);
}
$('#komy option:selected').each(function() {
var idClient = $(this).data("id");
$('#client__' + idClient + ' .stage').removeClass('active');
$('#client__' + idClient + ' .stage-new').addClass('active');
$('#client__' + idClient + ' .stage-work').addClass('active');
$('#client__' + idClient + ' .stage-offer').addClass('active');
$('#client__' + idClient + ' .stagebar-title').text('Презентация');
});
} else {
$('#error_txt').text('Не выбран клиент!').show();
}
}
}
return false;
})
$("body").on('click', '.to_send', function() {
let kol_send = $('#kol_send').val();
const id = $(this).attr('data-id');
const asfilter_id = $(this).attr('data-asfilter-id');
if ($('#to_send_button' + id).hasClass('active')) {
kol_send--;
if (typeof asfilter_id !== "undefined")
$.ajax('/ajax/to_send.php?remove=' + id + '&asfilter_id=' + asfilter_id);
else
$.ajax('/ajax/to_send.php?remove=' + id);
} else {
kol_send++;
if (typeof asfilter_id !== "undefined")
$.ajax('/ajax/to_send.php?add=' + id + '&asfilter_id=' + asfilter_id);
else
$.ajax('/ajax/to_send.php?add=' + id);
}
$('#num_send').text(kol_send);
$('#kol_send').val(kol_send);
$('#to_send_button' + id).toggleClass('active')
});
$("body").on('click', '#send_but', function() {
$(".fr-send-presentation__modal").slideToggle('fast');
$("#send-modal-up").toggle(10);
$("#send-modal-bottom").toggle(10);
if ($('body').hasClass('lock')) $("body").removeClass("lock");
else $("body").addClass("lock");
if ($('#send_log_new').is(":visible")) {
if ($('#send_log_new').html().indexOf("Письмо успешно отправлено!") > 0) {
$('#send_form_new').show();
$('#error_txt, #send_log_new').hide();
$('#kol_obj_send').text($('#kol_send').val());
$('#send_log_new').css({ "background": "url(/images/ajax_preloader.gif) no-repeat top right", "min-height": "70px" });
$('.presentations').css({ "background": "url(/images/ajax_preloader.gif) no-repeat top center" });
get_objects_to_send();
}
} else {
$('#send_form_new').show();
$('#error_txt, #send_log_new').hide();
$('#kol_obj_send').text($('#kol_send').val());
$('#send_log_new').css({ "background": "url(/images/ajax_preloader.gif) no-repeat top right", "min-height": "70px" });
$('.presentations').css({ "background": "url(/images/ajax_preloader.gif) no-repeat top center" });
get_objects_to_send();
}
return false;
})
$("body").on('click', '.download-photo', function() {
var id = $(this).attr('data-id');
window.open('/ajax/getPhotoArchive.php?id=' + id, '_blank');
});
function get_objects_to_send() {
$.ajax({
url: '/ajax/to_send.php?get=1',
success: function(data) {
const to_send = JSON.parse(data);
if (to_send.result == 1) get_objects_to_send();
else
{
$('#objts').html(to_send.result);
$('#catalog-link').html(to_send.catalog);
$("#catalog-link-newbuildings").html(to_send.catalogNewBuildings);
$("#catalog-link-complexes").html(to_send.catalogComplexes);
if($('#catalog-link-metro').length > 0){
$('#catalog-link-metro').html(to_send.copyLinks);
}
if (!!to_send.catalog) {
availableCatalogs.push("catalog")
}
if (!!to_send.catalogNewBuildings) {
availableCatalogs.push("catalog-newbuilding")
}
if (!!to_send.catalogComplexes) {
availableCatalogs.push("catalog-complexes")
}
$('#head-checkbox').html(to_send.headCheckbox);
$('.presentations').css({ "background": "none" });
$('#all_ready').val(1);
}
$('#send_log_new').css({ "background": "none", "min-height": "0" });
}
});
}
$("body").on('click', '.toggleVariants0', function() {
$(this).toggleClass('open');
$(this).parent().siblings(".presentations").toggleClass("hidden");
return false;
});
$("body").on('click', '.to_resend', function() {
var kol_send = $('#kol_send').val();
var id = $(this).attr('data-id');
var newbild = $(this).attr('data-newbild');
if ($('.object_' + id).hasClass('active')) {
kol_send--;
if (newbild > 0) {
$.ajax('/ajax/to_send.php?remove_newbuilding=' + id);
} else {
$.ajax('/ajax/to_send.php?remove=' + id);
}
} else {
kol_send++;
if (newbild > 0) {
$.ajax('/ajax/to_send.php?add_newbuilding=' + id);
} else {
$.ajax('/ajax/to_send.php?add=' + id);
}
}
$('#num_send').text(kol_send);
$('#kol_send').val(kol_send);
$('.object_' + id).toggleClass('active');
$('.pdf-resend_' + id).toggleClass('active');
testIfResendAllCanBeActive($('.pdf-resend_' + id).closest('ul').find('.to_resend__all'));
});
$("body").on('click', '.to_resend__all', function() {
var selected = $(this).hasClass('active');
$(this).closest('ul').find('.to_resend').each(function() {
var kol_send = $('#kol_send').val();
var id = $(this).attr('data-id');
if (!selected) {
if (!$('.object_' + id).hasClass('active')) {
kol_send++;
$.ajax('/ajax/to_send.php?add=' + id);
$('#num_send').text(kol_send);
$('#kol_send').val(kol_send);
$('.object_' + id).toggleClass('active');
$('.pdf-resend_' + id).toggleClass('active');
}
} else {
if ($('.object_' + id).hasClass('active')) {
kol_send--;
$.ajax('/ajax/to_send.php?remove=' + id);
$('#num_send').text(kol_send);
$('#kol_send').val(kol_send);
$('.object_' + id).toggleClass('active');
$('.pdf-resend_' + id).toggleClass('active');
}
}
});
$(this).toggleClass('active');
$(this).closest('.pdf-resend__all').toggleClass('active');
testIfResendAllCanBeActive();
});
$("body").on('click', '.f__modal-bg', function(e) {
if ($(e.target).closest(".f__modal").length == 0) hide_modal();
})
$("body").on('click', '.adv-pack-closer', function() {
$("#adv_package_variants_bg").hide(10);
$("#adv_package_variants").hide(10);
});
$("body").on('click', '.closer', function() {
if ($(this).parent('#partner_form_bg').length > 0) {
$("#partner_form_bg").hide(10);
$("#partner_form").hide(10);
$("body").removeClass("lock");
}
if ($(this).parent('#employee_form_bg').length > 0) {
$("#employee_form_bg").hide(10);
$("#employee_form").hide(10);
$("body").removeClass("lock");
}
});
$("body").on('click', ':not(.object-content__clients .jw__popup)', function(e) {
if (!$(e.target).closest('.object-content__clients').length)
$(".object-content__clients .jw__popup").removeClass("show");
});
$("body").on('click', '.closer', function() {
/* if (
window.location.href.includes('/requisitions.php') &&
$('.view-kanban').hasClass('active')) {
requisitions.getList();
}*/
if($(this).closest('.list_funnels').length > 0){
} else {
if ($(this).parent('#send_bg_new').length > 0) {
$("#send_bg_new").hide(10);
$("#send_new").hide(10);
if ($('#client-history__bg').css('display') == 'block') {
$('#client-history__bg').css('zIndex', '99988');
}
if (typeof req_form == 'object') {
if (req_form.isClientForm) {
req_form.isClientForm = false;
$('#req_form').removeAttr("style");
} else {
$("body").removeClass("lock");
}
} else {
$("body").removeClass("lock");
}
} else {
if ($(this).hasClass('event-modal-closer')) {
hide_modal();
} else {
$("#modalArch_bg").hide(10);
$("#modalArch").hide(10);
hide_modal();
if ($(this).closest('.full_modal-bg.clients').length > 0 && $(document.body).hasClass("jw-clients")) {
if ($('.view-kanban.active').length > 0) {
var id = $(this).closest('.full_modal-bg.clients').find('.client').attr('id').replace('client__', '');
var stage = 1;
$(this).closest('.full_modal-bg.clients').find('.crm__small-stage').each(function() {
if ($(this).closest('.stage.active').length > 0) {
stage = $(this).data("stage");
}
});
if ($(this).closest('.full_modal-bg.clients').find('.stage-funnel.nextStep .crm__small-step').length > 0) {
stage = $(this).closest('.full_modal-bg.clients').find('.stage-funnel.nextStep .crm__small-step').data("stage");
}
get_kanban_li(id, stage);
} else {
/*if ($('.view-list.active').length > 0 && document.location.pathname != '/requisitions.php') {
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);
}
}*/
}
} else if ($(this).closest('.full_modal-bg.clients').length > 0 && $('#requisitions_list').length > 0){
if ($('.view-kanban.active').length > 0) {
let req_id = $('#client_history').attr("data-active-req");
console.log(req_id);
requisitions.get_req_id(req_id, 1);
}
}
}
}
}
return false;
});
$("body").on('click', '.closer-obj-events', function() {
hide_modal_events();
return false;
});
$("body").on('click', '.closer-obj-adv', function() {
$("#stats_adv_objects_list__bg").hide(10);
$("#stats_adv_objects_list").hide(10);
return false;
});
$("body").on('click', '.closerAnalysis', function() {
$("#modalObjectsAnalysis_bg").hide(10);
$("#modalObjectsAnalysis").hide(10);
$("body").removeClass("lock");
var objId = $("#selectedObjId").val();
if (objId) {
deleteFromAnalyticsView(objId);
}
return false;
});
//Поиск по enter
$('#search_filter_input').keydown(function(e) {
if (e.keyCode == 13) {
if ($(this).closest('.my-objects').length > 0) {
show_objects_options_search();
get_objects_list(null);
} else if ($(this).closest('.client_filter').length > 0) {
if ($(".view-kanban.active").length == 0) {
window.history.pushState(null, null, "clients.php?funnelId=all");
$(".crm__filter-popup").addClass("is__hide").removeClass("is__show");
$('#funnelIdClients').val('all');
}
get_list();
}
}
});
function hide_modal_events() {
$("#chat-modal__bg__call").hide(10);
$("#chat-modal__call").hide(10);
$("#chat-modal__bg__showing").hide(10);
$("#chat-modal__showing").hide(10);
$("#chat-modal__bg__meeting").hide(10);
$("#chat-modal__meeting").hide(10);
$("#chat-modal__bg__deal").hide(10);
$("#chat-modal__deal").hide(10);
$("#chat-modal__bg__file").hide(10);
$("#chat-modal__file").hide(10);
$("#after_stage_fail_bg").hide(10);
$("#after_stage_fail").hide(10);
$("#chat-modal__bg__doc").hide(10);
$("#chat-modal__doc").hide(10);
if ($("#inner_doc_modal_bg").is(':visible')) {
$("#inner_doc_modal_bg").hide(10);
$("#inner_doc_modal").hide(10);
}
if ($("#send_inner_doc_modal_bg").is(':visible')) {
$("#send_inner_doc_modal_bg").hide(10);
$("#send_inner_doc_modal").hide(10);
}
if ($("#save_inner_doc_modal_bg").is(':visible')) {
$("#save_inner_doc_modal_bg").hide(10);
$("#save_inner_doc_modal").hide(10);
}
if ($("#send_event_files_modal_bg").is(':visible')) {
$("#send_event_files_modal_bg").hide(10);
$("#send_event_files_modal").hide(10);
}
if ($("#change-perm_modal_bg").is(':visible')) {
$("#change-perm_modal_bg").hide(10);
$("#change-perm_modal").hide(10);
}
$("body").removeClass("lock");
}
function hide_modal() {
$("#send_bg").hide(10);
$("#partner_form_bg").hide(10);
$("#partner_form").hide(10);
$("#employee_form_bg").hide(10);
$("#employee_form").hide(10);
$("#send").hide(10);
$("#pay_bg").hide(10);
$("#pay").hide(10);
$("#complaint_bg").hide(10);
$("#average_prices_window_bg").hide(10);
$("#complaint").hide(10);
$("#after_complaint_bg").hide(10);
$("#after_complaint").hide(10);
$("#get_vk_token_bg").hide(10);
$("#get_vk_token").hide(10);
$("#after_vk_token_bg").hide(10);
$("#after_vk_token").hide(10);
$("#delete_vk_token_bg").hide(10);
$("#delete_photos").hide(10);
$("#delete_vk_token").hide(10);
$("#vk_post_bg").hide(10);
$("#vk_post").hide(10);
$("#object-notes__bg").hide(10);
$("#object-notes").hide(10);
$("#delete_user_bg").hide(10);
$("#delete_user").hide(10);
$("#confirm__user_bg").hide(10);
$("#confirm__user").hide(10);
$("#funnel__user_bg").hide(10);
$("#funnel__user").hide(10);
$("#jw__yourbroker-bg").hide(10);
$("#jw__yourbroker").hide(10);
$("#ad_stat_bg").hide(10);
$("#ad_stat").hide(10);
$("#publish_stat_bg").hide(10);
$("#publish_stat").hide(10);
$("#after_add_from_archive_bg").hide(10);
$("#after_add_from_archive").hide(10);
$("#restricted_access_win_bg").hide(10);
$("#restricted_access_win").hide(10);
$("#after_add_to_ad_bg").hide(10);
$("#after_add_to_ad").hide(10);
$("#low_object_price_bg").hide(10);
$("#low_object_price").hide(10);
$("#change_object_contacts_bg").hide(10);
$("#change_object_contacts").hide(10);
$("#delete_ad_objects_bg").hide(10);
$("#delete_ad_objects").hide(10);
$("#save_autosearch_fields_bg").hide(10);
$("#save_autosearch_fields").hide(10);
$("#delete_my_objects_bg").hide(10);
$("#delete_my_objects").hide(10);
$("#add_objects_to_archive_bg").hide(10);
$("#add_objects_to_archive").hide(10);
$("#flat").hide(10);
$("#flat__bg").hide(10);
$("#flat-booking").hide(10);
$("#flat-booking__bg").hide(10);
$("#after_reservation_bg").hide(10);
$("#after_reservation").hide(10);
$("#newbuildings_adv_modal__bg").hide(10);
$("#newbuildings_adv_modal").hide(10);
$("#zipal_variants_bg").hide(10);
$("#zipal_variants").hide(10);
$("#zipal_unpublish_bg").hide(10);
$("#zipal_unpublish").hide(10);
$("#max_client_count_win_bg").hide(10);
$("#max_client_count_win").hide(10);
$("#send_to_other_user_bg").hide(500);
$("#send_to_other_user").hide(10);
$("#cancel_send_object_to_other_user_bg").hide(500);
$("#cancel_send_object_to_other_user").hide(10);
$("#send_objects_to_other_user_bg").hide(500);
$("#send_objects_to_other_user").hide(10);
$("#cabinet_link_add_edit_bg").hide(500);
$("#cabinet_link_add_edit").hide(10);
$("#delete_adv_pack_confirm_bg").hide(10);
$("#delete_adv_pack_confirm").hide(10);
$("#delete_adv_phone_confirm_bg").hide(10);
$("#delete_adv_phone_confirm").hide(10);
$("#adv_pack_list_bg").hide(10);
$("#adv_pack_list").hide(10);
$("#ad_cost_stat_bg").hide(10);
$("#ad_cost_stat").hide(10);
$("#addPromotionBg").hide(10);
$("#addPromotion").hide(10);
$("#searchPromotionBg").hide(10);
$("#searchPromotion").hide(10);
$("#objectFieldsSearchBg").hide(10);
$("#objectFieldsSearch").hide(10);
$("#egrn_request_list_window_bg").hide(10);
$("#egrn_request_list_window").hide(10);
$("#egrn_create_request_window_bg").hide(10);
$("#egrn_create_request_window").hide(10);
$("#egrn_request_object_list_window_bg").hide(10);
$("#egrn_request_object_list_window").hide(10);
$("#adv_select_time_bg").hide(10);
$("#adv_select_time").hide(10);
$("#wazzap_access_win_bg").hide(10);
$("#wazzap_access_win").hide(10);
$("#whatsapp_sended_win_bg").hide(10);
$("#whatsapp_sended_win").hide(10);
if ($("#archive_object_modal_bg").is(':visible')) {
$("#archive_object_modal_bg").hide(10);
$("#archive_object_modal").hide(10);
}
if ($("#inner_blank_modal_bg").is(':visible')) {
$("#inner_blank_modal_bg").hide(10);
$("#inner_blank_modal").hide(10);
}
if ($("#inner_fields_modal_bg").is(':visible')) {
$("#inner_fields_modal_bg").hide(10);
$("#inner_fields_modal").hide(10);
}
if ($("#advertising_package_modal_bg").is(':visible')) {
$("#advertising_package_modal_bg").hide(500);
$("#advertising_package_modal").hide(10);
}
if ($("#adv_phone_link_modal_bg").is(':visible')) {
$("#adv_phone_link_modal_bg").hide(500);
$("#adv_phone_link_modal").hide(10);
}
if ($("#adv_phone_link_user_modal_bg").is(':visible')) {
$("#adv_phone_link_user_modal_bg").hide(500);
$("#adv_phone_link_user_modal").hide(10);
}
if ($("#adv_phone_modal_bg").is(':visible')) {
$("#adv_phone_modal_bg").hide(500);
$("#adv_phone_modal").hide(10);
}
if ($("#archive_table_object_bg").is(':visible')) {
$("#archive_table_object_bg").hide(500);
$("#archive_table_object").hide(10);
}
if ($("#unarchive_table_object_bg").is(':visible')) {
$("#unarchive_table_object_bg").hide(500);
$("#unarchive_table_object").hide(10);
}
if ($(".fr-send-presentation__modal").is(':visible')) $("body").addClass("lock");
else $("body").removeClass("lock");
}
$("body").on('click', '.show-newbuildings-modal', function() {
$("#newbuildings_adv_modal__bg").fadeIn(500);
$("#newbuildings_adv_modal").toggle(10);
$("body").addClass("lock");
return false;
});
$("body").on('click', '#search', function() {
$('.load-bar').removeClass("hidden");
});
$("body").on('click', '.copyMyObject', function() {
var id = $(this).attr('data-id');
copyMyObjects(id);
// $.ajax({
// url: '/ajax/checkObjectsCount.php',
// method: "get",
// success: function(data) {
// var resParsed = JSON.parse(data);
// if (resParsed.canAdd === '1') {
// copyMyObjects(id);
// } else {
// showMaxCountWin();
// }
// }
// });
});
$("body").on('click', '.add_from_archive', function() {
var id = $(this).attr('data-id');
$.ajax({
url: '/ajax/checkObjectsCount.php',
method: "get",
success: function(data) {
var resParsed = JSON.parse(data);
if (resParsed.canAdd === '1') {
copyToMyObjects(id);
} else {
showMaxCountWin();
}
}
});
});
$("body").on('click', '#search-ap', function() {
$('.load-bar').removeClass("hidden");
var parseType = 0;
try {
var select = document.getElementById("parse_type");
parseType = select.options[select.selectedIndex].value;
} catch (ex) {
console.log(ex);
}
$.ajax({
url: '/ajax/getAgentObjectsAp.php?parse_type=' + parseType,
success: function(data) {
$('#result').html("<h2>Результат:</h2>" + data);
$(".load-bar").addClass("hidden");
}
});
});
$("body").on('click', '#search-emls', function() {
$('.load-bar').removeClass("hidden");
var parseType = 0;
try {
var select = document.getElementById("parse_type");
parseType = select.options[select.selectedIndex].value;
} catch (ex) {
console.log(ex);
}
$.ajax({
url: '/ajax/getAgentObjectsEmls.php?parse_type=' + parseType,
success: function(data) {
$('#result').html("<h2>Результат:</h2>" + data);
$(".load-bar").addClass("hidden");
}
});
});
$("body").on('click', '.get50kv', function() {
var page = $(this).attr('data-page');
var usl = $(this).attr('data-usl');
$('#objects').css({
"background": "url(/images/ajax_preloader.gif) no-repeat bottom center",
"padding-bottom": "20px"
});
$.ajax({
url: '/ajax/get50kv.php?page=' + page + '&' + usl,
success: function(data) {
$('#objects').append(data);
$('#objects').css({ "background": "none" });
page++;
$('.get50kv').attr('data-page', page);
$('.fotorama').fotorama();
}
});
return false;
})
$("body").on('click', '.remove_to_send', function() {
var id = $(this).attr('data-id');
var obj = $(this).parent().parent();
var kol_send = $('#kol_send').val();
$.ajax({
url: '/ajax/to_send.php?remove=' + id,
success: function() {
obj.remove();
kol_send--;
if (kol_send < 2) {
$('#catalog-link').html('');
$("#catalog-link-newbuildings").html("");
$('#head-checkbox').html('');
}
$('#num_send').text(kol_send);
$('#kol_send').val(kol_send);
$('#kol_obj_send').text(kol_send);
$('.to_send[data-id="' + id + '"]').removeAttr("checked").removeClass('active');
$('.object_' + id).toggleClass('active');
$('.pdf-resend_' + id).toggleClass('active');
testIfResendAllCanBeActive();
}
});
});
$("body").on('click', '.remove_newbuilding_to_send', function() {
var id = $(this).attr('data-id');
var obj = $(this).parent().parent();
var kol_send = $('#kol_send').val();
$.ajax({
url: '/ajax/to_send.php?remove_newbuilding=' + id,
success: function() {
obj.remove();
kol_send--;
$('#num_send').text(kol_send);
$('#kol_send').val(kol_send);
$('#kol_obj_send').text(kol_send);
$('.to_send_newbuilding[data-id="' + id + '"]').removeAttr("checked").removeClass('active');
$('.pdf-resend_newbuilding_' + id).toggleClass('active');
//todo
//testIfResendAllCanBeActive();
}
});
});
$("body").on('click', '.remove_complexes_to_send', function() {
var id = $(this).attr('data-id');
var obj = $(this).parent().parent();
var kol_send = $('#kol_send').val();
$.ajax({
url: '/ajax/to_send.php?remove_complexes=' + id,
success: function() {
window.complexBus.$emit("pdf-state-changed", id);
obj.remove();
kol_send--;
$('#num_send').text(kol_send);
$('#kol_send').val(kol_send);
$('#kol_obj_send').text(kol_send);
$('.to_send_complexes[data-id="' + id + '"]').removeAttr("checked").removeClass('active');
}
});
});
$("body").on('click', '.edit_opis', function() {
var id = $(this).attr('data-id');
var obj = $('#block_opis' + id);
obj.toggle();
})
$("body").on('click', '.open_admin_comment', function() {
var id = $(this).attr('data-id');
var obj = $('#admin_comment_' + id);
obj.toggle();
})
$("body").on('click', '.close_admin_comment', function() {
var id = $(this).attr('data-id');
var obj = $('#admin_comment_' + id);
var comment = $('#admin_comment_text_' + id).val();
$.ajax({
url: '/ajax/edit_admin_comment.php?id=' + id + '&comment=' + comment,
success: function() {
obj.hide();
}
});
})
$("body").ready(function() {
$("body").on('click', '.open_agent_new_password', function() {
var id = $(this).data('id');
$(this).parent().hide()
$('#agent_new_pass_for_' + id).show();
});
$("body").on('click', '.close_new_password', function() {
var id = $(this).attr('data-id');
var newPass = $('#new_password_for_' + id).val();
const formData = new FormData()
formData.append("new_password", newPass)
formData.append("user_id", id)
formData.append("ok_agent_id", 0)
$.ajax({
type: 'POST',
url: '/ajax/edit_user_pwd.php',
data: formData,
cache: false,
async: false,
contentType: false,
processData: false,
success: () => {
$('.open_agent_new_password').parent().show()
$('#agent_new_pass_for_' + id).hide()
}
});
})
})
$("body").on('change', '.presentation_frame', function() {
var id = $(this).attr('data-id');
var check = $(this).prop('checked');
$.ajax({
url: '/ajax/togglePresentationFrame.php',
method: 'post',
dataType: 'html',
data: {
id: id,
check: check
},
success: function() {
console.log('sucessssssssss');
}
})
})
$("body").on('change', '.advert_moderation', function() {
var id = $(this).attr('data-id');
console.log(id);
var check = $(this).prop('checked');
$.ajax({
url: '/ajax/edit_moderation_advert_agency.php',
method: 'post',
dataType: 'html',
data: {
id: id,
check: check
},
success: function(data) {
console.log(data);
}
});
})
$("body").on('click', '.edit_personal_opis', function() {
var id = $(this).attr('data-id');
var obj = $('#blk_opis' + id);
obj.toggle();
return false;
})
$("body").on('click', '.save_opis', function() {
var id = $(this).attr('data-id');
$('#block_opis' + id).hide();
});
$("body").on('click', '.save_ad_opis', function() {
for (var instanceName in CKEDITOR.instances) {
CKEDITOR.instances[instanceName].updateElement();
}
var id = $(this).attr('data-id');
var obj = $('#block_opis' + id);
var opis = $('#opis' + id).prop('value');
$('#item' + id + ' .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$.ajax({
url: '/ajax/edit_opis.php?id=' + id,
method: 'post',
dataType: 'html',
data: {
opis: opis
},
success: function() {
$('#item' + id + ' .preloader').css({ "background": "none" });
obj.hide();
}
});
});
$("body").on('click', '.save_personal_opis', function() {
for (var instanceName in CKEDITOR.instances) {
CKEDITOR.instances[instanceName].updateElement();
}
var id = $(this).attr('data-id');
var obj = $('#blk_opis' + id);
var opis = $('#descr' + id).prop('value');
$.ajax({
url: '/ajax/edit_opis.php?id_personal=' + id,
method: 'post',
dataType: 'html',
data: {
opis: opis
},
success: function() {
obj.hide();
}
});
});
$('body').on('click', '#calc-button', function () {
var ready = parseInt($("#all_ready").val());
if (ready) {
$("#error_txt").hide();
$("#error_txt_filter").hide();
var checkContactsClose = {};
var priceObjects = {};
var hideAddresses = {};
$(".link_copy_bufer").each(function () {
var id = $(this).data("id");
checkContactsClose[id] = $("#contacts_close" + id).prop("checked")
? 1
: 0;
priceObjects[id] = $("#edit_personal_cena" + id).val();
hideAddresses[id] = $("#address-hide-" + id).prop("checked") ? 1 : 0;
});
let catalogComplexes = $(".copy_catalog_link_complexes").attr(
"complexes-data-catalog"
);
$(".copy_catalog_link_complexes").addClass("hidden");
$("#complexes_catalog_link_copy_loader").removeClass("hidden");
var clients = getClientIds();
var request = $("#request option:selected").val();
var theme = $("#theme").val();
var txt = $("#txt").val();
var kol_send = $("#kol_send").val();
var send_type = "catalog";
var closes_contact = JSON.stringify(checkContactsClose);
var prices = JSON.stringify(priceObjects);
var checkboxAddresses = JSON.stringify(hideAddresses);
if (clients.length > 0) {
if (kol_send > 0) {
saveNewBuildingsCatalog(
clients,
theme,
txt,
send_type,
closes_contact,
prices,
catalogNewBuildings,
checkboxAddresses,
["catalog-complexes"],
request
);
$("#komy option:selected").each(function () {
var idClient = $(this).data("id");
updateClientStages(idClient);
});
}
} else {
var emptyClient = [0];
saveComplexesCatalog(
emptyClient,
theme,
txt,
send_type,
closes_contact,
prices,
catalogComplexes,
checkboxAddresses,
["catalog-complexes"],
request
);
$("#komy option:selected").each(function () {
var idClient = $(this).data("id");
updateClientStages(idClient);
});
}
}
setTimeout(()=> {
var catalog_id = 0;
catalog_id = $("#calc-button").attr(
"data-complex-id"
);
const id = $(this).data('id');
$.ajax({
url: '/ajax/get_installment_data.php',
method: 'POST',
dataType: 'json',
data: {
apartment_id: id,
catalog_id: catalog_id
},
success: function (response) {
if (response.success) {
const calculation_info = response.data;
$frequency_value = calculation_info.L ? 'custom' : '';
$('.calc-modal-all').remove();
const customFrequencyHtml = (calculation_info.L) ? `
<div class='payment-frequency' id='custom-frequency-wrapper' data-modal-id='${id}' style='display: flex; margin-top: 10px; gap: 5px;'>
<input class='calc-input required' name='custom_frequency' id='custom_frequency' type='number' placeholder='Введите периодичность' min='1' step='1' value="${calculation_info.L}">
<div class='input-info'>мес.</div>
</div>
` : '';
const modalHtml = `
<div data-id="${id}" class="calc-modal-all calc-active">
<div class='calc-all-wrapper'>
<div class='calc-close-modal'>
<svg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'>
<path d='M12.5793 2.34315L7.99999 6.9225L3.42063 2.34315C3.12325 2.04576 2.64107 2.04521 2.34313 2.34315C2.0452 2.64108 2.04575 3.12326 2.34313 3.42064L6.92249 8L2.34313 12.5794C2.0452 12.8773 2.04575 13.3595 2.34313 13.6569C2.64052 13.9542 3.1227 13.9548 3.42063 13.6569L7.99999 9.0775L12.5793 13.6569C12.8767 13.9542 13.3589 13.9548 13.6568 13.6569C13.9548 13.3589 13.9542 12.8767 13.6568 12.5794L9.07749 8L13.6568 3.42064C13.9548 3.12271 13.9542 2.64053 13.6568 2.34315C13.3595 2.04576 12.8773 2.04521 12.5793 2.34315Z' fill='#4CAF50'/>
</svg>
</div>
<div class='calc-modal-content'>
<div class='calc-head'>Калькулятор рассрочки</div>
<div class='calc-info-all'>
<div class='calc-info-items'>
<div class='items-name'>Цена в рассрочку <span class='red-text'>*</span></div>
<div class='item-input-holder'>
<input class='calc-input required' name='installment_price' id='installment_price' value='${formatNumber(calculation_info.P)}' type="text">
<div class='input-info'></div>
</div>
</div>
<div class='calc-info-items'>
<div class='items-name'>Первоначальный взнос <span class='red-text'>*</span></div>
<div class='item-input-holder'>
<input class='calc-input required' name='down_payment' id='down_payment' type="text" value='${formatNumber(calculation_info.I) || ''}'>
<div class='input-info'></div>
</div>
</div>
<div class='calc-info-items'>
<div class='items-name'>Доп. взносы </div>
<div class='item-input-holder'>
<input class='calc-input' name='additional_contributions' id='additional_contributions' type="text" value='${formatNumber(calculation_info.S) || ''}'>
<div class='input-info'></div>
</div>
</div>
<div class='calc-info-items'>
<div class='items-name'>Срок рассрочки <span class='red-text'>*</span></div>
<div class='item-input-holder'>
<input class='calc-input required' name='installment_period' id='installment_period' type='number' min='1' step='1' value='${calculation_info.T}'>
<div class='input-info'>мес.</div>
</div>
</div>
<div class='calc-info-items'>
<div class='items-name'>Периодичность платежей <span class='red-text'>*</span></div>
<div class='item-input-holder payment-type'>
<!-- Скрытый input, который сохраняет значение -->
<input type='hidden' class='required' id='frequency_payment' name='frequency_payment' value='${$frequency_value}'/>
<!-- Кастомный селект -->
<div class='custom-dropdown' data-id='${id}' id='frequency_payment_dropdown' tabindex='0'>
<div class='custom-selected' data-id='${id}' data-value="${calculation_info.L ? 'custom' : ''}">
${calculation_info.L ? 'Другая периодичность...' : 'Выберите периодичность'}
</div>
<div class='custom-options'>
<div class='custom-option' data-value='1'>Каждый месяц</div>
<div class='custom-option' data-value='2'>Раз в 2 месяца</div>
<div class='custom-option' data-value='3'>Раз в квартал</div>
<div class='custom-option' data-value='6'>Раз в полгода</div>
<div class='custom-option' data-value='12'>Раз в год</div>
<div class='custom-option' data-value='custom'>Другая периодичность...</div>
</div>
<!-- Стрелочка -->
<svg class='custom-select-arrow' width='14' height='8' viewBox='0 0 14 8' fill='none'>
<path fill-rule='evenodd' clip-rule='evenodd' d='M7.3977 7.70296C7.17802 7.92263 6.82192 7.92263 6.60225 7.70296L0.867387 1.96808C0.64772 1.74841 0.64772 1.39231 0.867387 1.17263L1.13256 0.907432C1.35222 0.687757 1.70838 0.687757 1.92805 0.907432L6.99997 5.97938L12.0719 0.907432C12.2916 0.687757 12.6477 0.687757 12.8674 0.907432L13.1326 1.17263C13.3522 1.39231 13.3522 1.74841 13.1326 1.96808L7.3977 7.70296Z' fill='#757575'/>
</svg>
</div>
${customFrequencyHtml}
</div>
</div>
<button class='calc-button' type='button' id='calculate-installment'>Рассчитать рассрочку</button>
</div>
</div>
</div>
</div>
`;
$('body').append(modalHtml);
checkPaymentTypeSelector(id,calculation_info.type_payment);
$('body').css('overflow', 'hidden');
} else {
alert('Ошибка загрузки данных: ' + response.message);
}
},
error: function (xhr, status, error) {
console.log('XHR:', xhr);
console.log('Status:', status);
console.log('Error:', error);
alert('Ошибка запроса: ' + error);
}
});
},300)
});
$('body').on('click', '.calc-close-modal', function () {
$(this).closest('.calc-modal-all').remove();
$('body').css('overflow', '');
});
$('body').on('click', '.calc-close-modal', function () {
const $modal = $(this).closest('.calc-modal-all');
$modal.remove();
$('body').css('overflow', '');
});
$('body').on('change', '#frequency_payment', function () {
const $modal = $(this).closest('.calc-modal-all');
const modalId = $modal.data('id');
const $holder = $(this).closest('.item-input-holder');
const $existingWrapper = $modal.find(`#custom-frequency-wrapper[data-modal-id="${modalId}"]`);
if ($(this).val() === 'custom') {
if ($existingWrapper.length === 0) {
const customWrapper = `
<div class='payment-frequency' id='custom-frequency-wrapper' data-modal-id='${modalId}' style='display: flex; margin-top: 10px; gap: 5px;'>
<input class='calc-input required' name='custom_frequency' id='custom_frequency' type='number' placeholder='Введите периодичность' min='1' step='1'>
<div class='input-info'>мес.</div>
</div>
`;
$holder.append(customWrapper);
}
} else {
if ($existingWrapper.length) {
$existingWrapper.remove();
}
}
checkPaymentTypeSelector(modalId);
});
function checkPaymentTypeSelector(modalId, paytype) {
const $modal = $(`.calc-modal-all[data-id="${modalId}"]`);
const period = parseInt($modal.find('#installment_period').val());
let frequency = $modal.find('#frequency_payment').val();
if (frequency === 'custom') {
frequency = parseInt($modal.find('#custom_frequency').val());
} else {
frequency = parseInt(frequency);
}
if (!period || !frequency) {
$modal.find('#payment_type_wrapper').remove();
return;
}
const shouldShow = period % frequency !== 0;
if (shouldShow) {
if ($modal.find('#payment_type_wrapper').length === 0) {
const typeSelector = `
<div class='calc-info-items' id='payment_type_wrapper'>
<div class='items-name'>Тип платежей</div>
<div class='input-wrapper payment-type-wrapper'>
<input type='hidden' name='payment_type' id='payment_type' value='' />
<div class='dropdown-select' id='payment_type_dropdown' tabindex='0'>
<div class='dropdown-selected'>Выберите тип</div>
<div class='dropdown-options'>
<div class='dropdown-option' data-value='equal_payments'>Равные платежи</div>
<div class='dropdown-option' data-value='decreasing_payments'>Убывающие платежи</div>
</div>
<svg class='dropdown-arrow' width='14' height='8' viewBox='0 0 14 8' fill='none'>
<path fill-rule='evenodd' clip-rule='evenodd'
d='M7.3977 7.70296C7.17802 7.92263 6.82192 7.92263 6.60225 7.70296L0.867387 1.96808C0.64772 1.74841 0.64772 1.39231 0.867387 1.17263L1.13256 0.907432C1.35222 0.687757 1.70838 0.687757 1.92805 0.907432L6.99997 5.97938L12.0719 0.907432C12.2916 0.687757 12.6477 0.687757 12.8674 0.907432L13.1326 1.17263C13.3522 1.39231 13.3522 1.74841 13.1326 1.96808L7.3977 7.70296Z'
fill='#757575' />
</svg>
</div>
</div>
</div>
`;
$modal.find('#frequency_payment').closest('.calc-info-items').after(typeSelector);
}
if (paytype === 'equal_payments' || paytype === 'decreasing_payments') {
const label = (paytype === 'equal_payments') ? 'Равные платежи' : 'Убывающие платежи';
$modal.find('#payment_type').val(paytype);
$modal.find('#payment_type_dropdown .dropdown-selected').text(label);
}
} else {
$modal.find('#payment_type_wrapper').remove();
}
}
$('body').on('click', '#payment_type_dropdown', function (e) {
e.stopPropagation();
$('.dropdown-options').not($(this).find('.dropdown-options')).slideUp(100);
$(this).find('.dropdown-options').slideToggle(100);
});
$(document).on('click', function () {
$('.dropdown-options').slideUp(100);
});
$('body').on('click', '.dropdown-option', function () {
const value = $(this).data('value');
const text = $(this).text();
$('#payment_type').val(value).trigger('change');
$('#payment_type_dropdown .dropdown-selected').text(text);
$('.dropdown-option').removeClass('selected');
$(this).addClass('selected');
});
let lastValidFreq = '';
$('body').on('input', '#custom_frequency, #installment_period', function () {
let $termInput = $('#installment_period');
let $freqInput = $('#custom_frequency');
const $modal = $(this).closest('.calc-modal-all');
const modalId = $modal.data('id');
let termVal = parseInt($termInput.val().replace(/[^0-9]/g, '').replace(/^0+/, '')) || 0;
$termInput.val(termVal ? termVal : '');
updateFrequencyOptions();
let freqRaw = '';
let freqVal = 0;
if ($freqInput.length > 0) {
let rawVal = $freqInput.val();
if (typeof rawVal === 'string') {
freqRaw = rawVal.replace(/[^0-9]/g, '').replace(/^0+/, '');
freqVal = parseInt(freqRaw) || 0;
}
if (termVal && freqVal <= termVal) {
lastValidFreq = freqRaw;
} else {
$freqInput.val('');
}
}
checkPaymentTypeSelector(modalId);
});
function updateFrequencyOptions() {
const periodVal = parseInt($('#installment_period').val()) || 0;
$('#frequency_payment option').each(function () {
const optVal = $(this).val();
if (optVal === '' || optVal === 'custom') {
$(this).prop('hidden', false);
return;
}
const numericVal = parseInt(optVal);
if (numericVal > periodVal) {
$(this).prop('hidden', true);
} else {
$(this).prop('hidden', false);
}
});
const selectedVal = $('#frequency_payment').val();
if (selectedVal && selectedVal !== 'custom' && parseInt(selectedVal) > periodVal) {
$('#frequency_payment').val('');
}
const $focused = $(':focus');
const isPeriodChanged = $focused.attr('id') === 'installment_period';
const $dropdown = $('.custom-dropdown');
const $customSelected = $dropdown.find('.custom-selected');
const $customOptions = $dropdown.find('.custom-option');
if (isPeriodChanged) {
$customSelected.text('Выберите периодичность');
}
$customOptions.each(function () {
const val = $(this).data('value');
const numericVal = parseInt(val);
if (!isNaN(numericVal) && numericVal > periodVal) {
$(this).hide();
} else {
$(this).show();
}
});
}
function formatNumber(value) {
const num = parseFloat(value);
if (isNaN(num)) return '';
return num.toFixed(2).replace(/\B(?=(\d{3})+(?!\d))/g, '\u00A0'); // пробел между тысячами
}
function getNumericInputValue(selector) {
const rawVal = $(selector).val()
.replace(/\s/g, '')
.replace(/\u00A0/g, '')
.replace(',', '.');
return parseFloat(rawVal) || 0;
}
$('body').on('keypress', '#custom_frequency, #installment_period', function (e) {
if (!/^[0-9]$/.test(e.key)) {
e.preventDefault();
}
if ($(this).val().length === 0 && e.key === '0') {
e.preventDefault();
}
});
$('body').on('paste', '#custom_frequency, #installment_period', function (e) {
const paste = (e.originalEvent || e).clipboardData.getData('text');
if (!/^[1-9][0-9]*$/.test(paste)) {
e.preventDefault();
}
});
$("body").on('click', '#calculate-installment', function () {
const $modal = $(this).closest('.calc-modal-all');
const modalId = $modal.data('id');
$modal.find('.calc-error-msg').remove();
function showFieldError($input, message) {
const errorMsg = `<div class="calc-error-msg">${message}</div>`;
$input.closest('.item-input-holder').before(errorMsg);
$input.focus();
}
const $p = $modal.find('#installment_price');
const P = getNumericInputValue($p);
if (!P || P <= 0) {
showFieldError($p, '«Введите корректную цену (> 0)');
return;
}
const $i = $modal.find('#down_payment');
const I = getNumericInputValue($i);
if (isNaN(I) || I < 0 || I >= P) {
showFieldError($i, 'Первоначальный взнос должен быть от 0 и меньше цены');
return;
}
const $s = $modal.find('#additional_contributions');
const S = getNumericInputValue($s) || 0;
if (S < 0) {
showFieldError($s, 'Доп. взносы не могут быть отрицательными');
return;
}
const $t = $modal.find('#installment_period');
const T = parseInt($t.val());
if (!T || T <= 0) {
showFieldError($t, 'Введите срок рассрочки в месяцах (> 0)');
return;
}
const $l = $modal.find('#frequency_payment');
let L_raw = $l.val();
let L = 0;
if (L_raw === 'custom') {
const $custom = $modal.find('#custom_frequency');
L = parseInt($custom.val());
if (!L || L <= 0) {
showFieldError($custom, 'Введите свою периодичность (> 0)');
return;
}
} else {
L = parseInt(L_raw);
if (!L || L <= 0) {
showFieldError($l, 'Выберите периодичность');
return;
}
}
let R = P - I - S;
if (R < 0) {
showFieldError($s, 'Остаток долга (P - I - S) не может быть отрицательным');
return;
}
result = calculateInstallment({ P, I, S, T, L, R });
renderCalculationResults(result,modalId);
$('body').on('click', '.btn-change-s', function () {
const $modal = $(this).closest('.calc-modal-all');
const P = getNumericInputValue($('#installment_price'));
const I = getNumericInputValue($('#down_payment'));
const R = parseCurrency($modal.find('.result-text-value[data-type="R"]').text());
const S = P - I - R;
$modal.find('#additional_contributions').val(formatNumber(S)).trigger('change');
$('#add-presentation').show();
$modal.data('skipHideResults', true);
});
$('body').on('click', '.btn-change-i', function () {
const $modal = $(this).closest('.calc-modal-all');
const P = getNumericInputValue($('#installment_price'));
const S = getNumericInputValue($('#additional_contributions')) || 0;
const R = parseCurrency($modal.find('.result-text-value[data-type="R"]').text());
const I = P - R - S;
$modal.find('#down_payment').val(formatNumber(I)).trigger('change');
$('#add-presentation').show();
$modal.data('skipHideResults', true);
});
});
function calculateInstallment({ P, I, S, T, L }) {
const R = P - I - S;
let type_payment = $('#payment_type').val() || 'equal_payments';
const round2 = (num) => Math.round(num * 100) / 100;
let result = { type: '', R: round2(R), A: 0, A_o: null, details: {} };
if (T % L === 0) {
const N = T / L;
result.type = 'equal_no_remainder';
result.A = round2(R / N);
result.details = { N };
} else {
const fullPeriods = Math.floor(T / L);
const remainder = T % L;
if (type_payment === 'equal_payments') {
const N = fullPeriods + 1;
result.type = 'equal_with_remainder';
result.A = round2(R / N);
result.details = { fullPeriods, remainder, N };
} else {
const Am = R / T;
result.type = 'decreasing';
result.A = round2(Am * L);
result.A_o = round2(Am * remainder);
result.details = { fullPeriods, remainder, T };
}
}
return result
}
function renderCalculationResults(results, id) {
const html = `
<div id="calculation-results-all">
<div id="calculation-results" data-id=${id} class="calculation-results">
<div class='result-text-block'>
<div class='result-text'>Остаток долга </div>
<div class='result-text-value' data-type='R'>${formatNumber(results.R)} </div>
</div>
<div class='result-text-block'>
<div class='result-text'>Платёж за период </div>
<div class='result-text-value' data-type='A'>${formatNumber(results.A)} </div>
</div>
${results.A_o !== null ? `
<div class='result-text-block'>
<div class='result-text'>Платёж за остаток</div>
<div class='result-text-value' data-type='A_o'>${formatNumber(results.A_o)} </div>
</div>` : ''}
</div>
<button class='add-presentation' id='add-presentation'>Добавить в презентацию </button>
</div>
`;
const $modal = $(`.calc-modal-all[data-id="${id}"]`);
if (!$modal.length) {
console.warn(`Модалка с data-id="${id}" не найдена`);
return;
}
const $existing = $modal.find('#calculation-results-all');
if ($existing.length) {
$existing.replaceWith(html);
} else {
$modal.find('#calculate-installment').after(html);
}
$modal.data('skipHideResults', false);
$('body').on('input change', '#installment_price, #down_payment, #additional_contributions, #installment_period, #frequency_payment, #payment_type', function () {
const $modal = $(this).closest('.calc-modal-all');
const skipHideResults = $modal.data('skipHideResults');
if (!skipHideResults && $modal.find('#calculation-results-all').length) {
$modal.find('#calculation-results-all').hide();
$modal.data('skipHideResults', false);
}
});
}
$('body').on('click', '.result-text-value', function () {
const $this = $(this);
const valueText = $this.text().replace(/[^\d.]/g, '');
const oldValue = parseFloat(valueText);
const type = $this.data('type');
const $modal = $(this).closest('.calc-modal-all');
const modalId = $modal.data('id');
if ($this.data('editing')) return;
$this.data('editing', true);
const $t = $modal.find('#installment_period');
const T = parseInt($t.val());
const $l = $modal.find('#frequency_payment');
let L_raw = $l.val();
let L = 0;
if (L_raw === 'custom') {
const $custom = $modal.find('#custom_frequency');
L = parseInt($custom.val());
} else {
L = parseInt(L_raw);
}
const $input = $('<input class="result-pay" type="number" min="0" step="0.01" class="inline-edit-input" />').val(valueText);
$this.hide().after($input);
$input.focus();
function finalizeEdit() {
$('#add-presentation').hide();
const newValue = parseFloat($input.val());
if (isNaN(newValue) || newValue < 0) {
$this.show().data('editing', false);
$input.remove();
return;
}
$this.text(`${formatNumber(newValue)}`).show().data('editing', false);
$input.remove();
const type = $this.data('type');
const S = getNumericInputValue($('#additional_contributions')) || 0;
const P = getNumericInputValue($('#installment_price')) || 0;
const I = getNumericInputValue($('#down_payment')) || 0;
const updatedR = newValue;
if (S > 0) {
const $targetResults = $(`.calculation-results[data-id="${modalId}"]`);
if ($targetResults.length) {
$targetResults.find('.calc-dialog-box').remove();
if (newValue.toFixed(2) === oldValue.toFixed(2)) {
$this.show().data('editing', false);
$input.remove();
return;
}
const dialog = $(`
<div class="calc-dialog-box">
<div class="calc-dialog-title">Что изменить?</div>
<div class="calc-dialog-buttons">
<button class="btn-change-i">Первоначальный взнос</button>
<button class="btn-change-s">Доп. взносы</button>
</div>
</div>
`);
$targetResults.append(dialog);
}
}
let R_new = parseCurrency($modal.find('.result-text-value[data-type="R"]').text());
let A_new = parseCurrency($modal.find('.result-text-value[data-type="A"]').text());
let A_o_new = parseCurrency($modal.find('.result-text-value[data-type="A_o"]').text());
const paymentType = $('#payment_type').val() || 'equal_no_remainder';
if(T % L === 0){
N = T / L;
if (type === "R") {
A_new = R_new / N;
} else if (type === "A") {
R_new = A_new * N;
}
}else{
const fullPeriods = Math.floor(T / L);
const remainder = T % L;
if (paymentType == "equal_payments" ){
N = fullPeriods + 1;
if (type === "R") {
A_new = R_new / N ;
} else if (type === "A") {
R_new = A_new * N;
}
}
else if(paymentType == "decreasing_payments") {
if (type === "R") {
A_m = R_new / T;
A_new = A_m * L;
A_o_new = R_new - (A_new * fullPeriods );
} else if (type === "A") {
A_m = A_new / L;
A_o_new = A_m * remainder;
R_new = A_new * fullPeriods + A_o_new;
} else if(type === "A_o"){
A_m = A_o_new / remainder;
A_new = A_m * L;
R_new = A_new * fullPeriods + A_o_new
}
}
}
if (S === 0) {
const I = P - R_new ;
$modal.find('#down_payment').val(I).trigger('change');
}
$modal.find('.result-text-value[data-type="R"]').text(`${formatNumber(R_new)}`);
$modal.find('.result-text-value[data-type="A_o"]').text(`${formatNumber(A_o_new)}`);
$modal.find('.result-text-value[data-type="A"]').text(`${formatNumber(A_new)}`);
$modal.find('.calc-info-items').each(function () {
const $item = $(this);
if (
$item.find('#installment_period').length ||
$item.find('.payment-type').length
) {
$item.hide();
}
});
}
$input.on('keydown', function (e) {
if (e.key === 'Enter') {
finalizeEdit();
}
});
$input.on('blur', function () {
finalizeEdit();
});
});
function parseCurrency(text) {
return parseFloat(text.replace(/[^\d.,-]/g, '').replace(',', '.')) || 0;
}
$('body').on('click', '.add-presentation', function () {
const $modal = $('.calc-modal-all.calc-active');
const apartment_id = $modal.data('id');
$modal.find('.calc-error-msg').remove(); // очищаем прошлые ошибки
function showFieldError($input, message) {
const errorMsg = `<div class="calc-error-msg">${message}</div>`;
$input.closest('.item-input-holder').before(errorMsg);
$input.focus();
}
const $p = $modal.find('#installment_price');
const P = getNumericInputValue($p);
if (!P || P <= 0) {
showFieldError($p, '«Введите корректную цену (> 0)');
return;
}
const $i = $modal.find('#down_payment');
const I = getNumericInputValue($i);
if (isNaN(I) || I < 0 || I >= P) {
showFieldError($i, 'Первоначальный взнос должен быть от 0 и меньше цены');
return;
}
const $s = $modal.find('#additional_contributions');
const S = getNumericInputValue($s) || 0;
if (S < 0) {
showFieldError($s, 'Доп. взносы не могут быть отрицательными');
return;
}
const $t = $modal.find('#installment_period');
const T = parseInt($t.val());
if (!T || T <= 0) {
showFieldError($t, 'Введите срок рассрочки в месяцах (> 0)');
return;
}
const $l = $modal.find('#frequency_payment');
let L_raw = $l.val();
let L = 0;
if (L_raw === 'custom') {
const $custom = $modal.find('#custom_frequency');
L = parseInt($custom.val());
if (!L || L <= 0) {
showFieldError($custom, 'Введите свою периодичность (> 0)');
return;
}
} else {
L = parseInt(L_raw);
if (!L || L <= 0) {
showFieldError($l, 'Выберите периодичность');
return;
}
}
let R = P - I - S;
if (R < 0) {
showFieldError($s, 'Остаток долга (P - I - S) не может быть отрицательным');
return;
}
const type_payment = $('#payment_type').val() || 'equal_payments';
const resultR = parseCurrency($modal.find('.result-text-value[data-type="R"]').text());
const resultA = parseCurrency($modal.find('.result-text-value[data-type="A"]').text());
const resultAo = parseCurrency($modal.find('.result-text-value[data-type="A_o"]').text());
const calculation_info = {
P,
I,
S,
T,
L,
type_payment,
R: resultR,
A: resultA,
A_o: resultAo
};
catalog_id = $("#calc-button").attr(
"data-complex-id"
);
$.ajax({
url: '/ajax/installment_calculation.php?apartment_id=' + apartment_id,
method: 'post',
dataType: 'html',
data: {
calculation_info: calculation_info,
catalog_id: catalog_id
},
success: function () {
$modal.remove();
}
});
});
$('body').on('focus', '#installment_price, #down_payment, #additional_contributions', function () {
const raw = $(this).val().replace(/\s/g, '').replace('\u00A0', '');
$(this).val(raw);
});
$('body').on('blur', '#installment_price, #down_payment, #additional_contributions', function () {
let val = $(this).val().replace(',', '.').replace(/[^0-9.]/g, '');
const dotIndex = val.indexOf('.');
if (dotIndex !== -1) {
val = val.substring(0, dotIndex + 1) + val.substring(dotIndex + 1).replace(/\./g, '');
}
if (val.includes('.')) {
const [intPart, decPart] = val.split('.');
val = intPart + '.' + decPart.substring(0, 2);
}
if (val === '0' || val === '0.' || /^0\.\d{1,2}$/.test(val)) {
$(this).val(val);
return;
}
val = val.replace(/^0+/, '');
if (val !== '' && !/^[1-9]\d*(\.\d{0,2})?$/.test(val)) {
val = '';
}
$(this).val(formatNumber(val));
});
$('body').on('click', '.custom-selected, .custom-select-arrow', function () {
$(this).closest('.custom-dropdown').find('.custom-options').toggle();
});
$(document).on('click', function (e) {
if (!$(e.target).closest('.custom-dropdown').length) {
$('.custom-options').hide();
}
});
$('body').on('click', '.custom-option', function () {
const value = $(this).data('value');
const text = $(this).text();
const $modal = $(this).closest('.calc-modal-all');
const modalId = $modal.data('id');
const $dropdown = $(this).closest('.custom-dropdown');
const $customSelected = $dropdown.find(`.custom-selected[data-id="${modalId}"]`);
$customSelected.text(text);
const $frequencyInput = $modal.find('#frequency_payment');
$frequencyInput.val(value).trigger('change');
$modal.find('.custom-options').hide();
});
$("body").on('click', '.save_installment_info', function() {
for (var instanceName in CKEDITOR.instances) {
CKEDITOR.instances[instanceName].updateElement();
}
var apartment_id = $(this).attr('data-id');
var objectElement = $('#blk_opis' + apartment_id);
var presentationNote = encodeURIComponent($('#descr' + apartment_id).val());
const newInstallmentPrice = $('#edit_personal_info' + apartment_id).val();
$.ajax({
url: '/ajax/edit_installment_info.php?apartment_id=' + apartment_id,
method: 'post',
dataType: 'html',
data: {
new_installment_price: newInstallmentPrice,
presentation_note: presentationNote
},
success: function() {
objectElement.hide();
}
});
});
function removeURLParameter(url, parameter) {
//prefer to use l.search if you have a location/link object
const urlParts = url.split('?');
if (urlParts.length >= 2) {
const prefix = encodeURIComponent(parameter) + '=';
const pars = urlParts[1].split(/[&;]/g);
//reverse iteration as may be destructive
for (let i = pars.length; i-- > 0;) {
//idiom for string.startsWith
if (pars[i].lastIndexOf(prefix, 0) !== -1) {
pars.splice(i, 1);
}
}
if (pars.length > 0) {
url = urlParts[0] + '?' + pars.join('&');
} else {
url = urlParts[0];
}
return url;
} else {
return url;
}
}
$("body").on('click', '.save_personal_cena', function() {
const id = $(this).attr('data-id');
const $obj = $('#blk_opis' + id);
const $linkGenerate = $('#linkGeneratePdf_' + id);
const price = $('#edit_personal_cena' + id).val();
const cleanLinkGenerate = removeURLParameter($linkGenerate.attr("href"), 'cena');
$linkGenerate.attr("href", cleanLinkGenerate + '&cena=' + price);
// НЕ УДАЛЯЕМ ВРЕМЕННО
// var chec = ($('#contacts_close' + id).prop('checked')) ? 1 : 0;
// if (chec == 1) {
// $('#linkGeneratePdf_' + id).attr("href", "/ajax/generate_pdf.php?view=2&id=" + id);
// } else {
// $('#linkGeneratePdf_' + id).attr("href", "/ajax/generate_pdf.php?view=1&id=" + id);
// }
// if (cena) {
// $('#linkGeneratePdf_' + id).attr("href", $('#linkGeneratePdf_' + id).attr("href") + '&cena=' + cena);
// }
$obj.hide();
});
$("body").on('change', '.checkbox-address-hide', function() {
const id = $(this).attr('data-id');
const $linkGenerate = $('#linkGeneratePdf_' + id);
const hideAddress = ($('#address-hide-' + id).prop('checked')) ? 1 : 0;
if (hideAddress) {
const cleanLinkGenerate = removeURLParameter($linkGenerate.attr("href"), 'hide_address');
$linkGenerate.attr("href", cleanLinkGenerate + '&hide_address=' + hideAddress);
} else {
const cleanLinkGenerate = removeURLParameter($linkGenerate.attr("href"), 'hide_address');
$linkGenerate.attr("href", cleanLinkGenerate);
}
});
$("body").on('change', '.change_personal_contact', function() {
const id = $(this).attr('data-id');
const $linkGenerate = $('#linkGeneratePdf_' + id);
const hideContact = ($('#contacts_close' + id).prop('checked')) ? 1 : 0;
if (hideContact) {
const cleanLinkGenerate = removeURLParameter($linkGenerate.attr("href"), 'view');
$linkGenerate.attr("href", cleanLinkGenerate + '&view=2');
} else {
const cleanLinkGenerate = removeURLParameter($linkGenerate.attr("href"), 'view');
$linkGenerate.attr("href", cleanLinkGenerate + '&view=1');
}
});
$("body").on('click', '.link_copy_bufer', function() {
var id = $(this).attr('data-id');
$('#link_copy_bufer' + id).addClass('hidden');
$('#link_copy_loader' + id).removeClass('hidden');
var ready = parseInt($('#all_ready').val());
if (ready) {
$('#error_txt').hide();
$('#error_txt_filter').hide();
var checs = {}
var chec = ($('#contacts_close' + id).prop('checked')) ? 1 : 0;
checs[id] = chec;
var prices = {};
var cena = $('#edit_personal_cena' + id).val();
prices[id] = cena;
var hideAddress = {}
hideAddress[id] = ($('#address-hide-' + id).prop('checked')) ? 1 : 0;
var closes_contact = JSON.stringify(checs);
var prices = JSON.stringify(prices);
var checkboxAddress = JSON.stringify(hideAddress);
// Похоже на то, что сбор выбранных клиентов не работает кроме первого клиента
// в выборке получается значение 4273[]3433
// var komy = $('#komy option:selected').map(function(a, item) { return item.value; });
var clients = getClientIds();
var request = $('#request option:selected').val();
var theme = $('#theme').val();
var txt = $('#txt').val();
var kol_send = $('#kol_send').val();
var send_type = 'link';
// Если это клик по .link_copy_bufer
// количество объектов опрeори не может быть меньше 0
// (kol_send > 0)
if (clients.length > 0) {
if (kol_send > 0) {
if (send_type == 'mail' && sendType == 'presentation') {
generatePDFandSend(0, clients, theme, txt, closes_contact, prices, checkboxAddress, request);
} else {
generateMailWithLinksAndSend(clients, theme, txt, send_type, closes_contact, prices, checkboxAddress, request, id);
}
$('#komy option:selected').each(function() {
var idClient = $(this).data("id");
$('#client__' + idClient + ' .stage').removeClass('active');
$('#client__' + idClient + ' .stage-new').addClass('active');
$('#client__' + idClient + ' .stage-work').addClass('active');
$('#client__' + idClient + ' .stage-offer').addClass('active');
$('#client__' + idClient + ' .stagebar-title').text('Презентация');
});
}
} else {
if (send_type == 'link') {
$cl = [];
$cl.push(0);
generateMailWithLinksAndSend($cl, theme, txt, send_type, closes_contact, prices, checkboxAddress, request, id);
$('#komy option:selected').each(function() {
var idClient = $(this).data("id");
$('#client__' + idClient + ' .stage').removeClass('active');
$('#client__' + idClient + ' .stage-new').addClass('active');
$('#client__' + idClient + ' .stage-work').addClass('active');
$('#client__' + idClient + ' .stage-offer').addClass('active');
$('#client__' + idClient + ' .stagebar-title').text('Презентация');
});
} else {
$('#error_txt').text('Не выбран клиент!').show();
}
}
}
return false;
});
$("body").on('click', '#button_catalog_link', function() {
var ready = parseInt($('#all_ready').val());
if (ready) {
$('#error_txt').hide();
$('#error_txt_filter').hide();
var checkContactsClose = {};
var priceObjects = {};
var hideAddresses = {};
$(".link_copy_bufer").each(function() {
var id = $(this).data('id');
checkContactsClose[id] = ($('#contacts_close' + id).prop('checked')) ? 1 : 0;
priceObjects[id] = $('#edit_personal_cena' + id).val();
hideAddresses[id] = ($('#address-hide-' + id).prop('checked')) ? 1 : 0;
});
var catalog = $('.copy_catalog_link').attr('data-catalog');
$('.copy_catalog_link').addClass('hidden');
$('#catalog_link_copy_loader').removeClass('hidden');
var closes_contact = JSON.stringify(checkContactsClose);
var prices = JSON.stringify(priceObjects);
var checkboxAddresses = JSON.stringify(hideAddresses)
// Похоже на то, что сбор выбранных клиентов не работает кроме первого клиента
// в выборке получается значение 4273[]3433
// var komy = $('#komy option:selected').map(function(a, item) { return item.value; });
var clients = getClientIds();
var request = $('#request option:selected').val();
var theme = $('#theme').val();
var txt = $('#txt').val();
var kol_send = $('#kol_send').val();
var send_type = 'catalog';
if (clients.length > 0) {
if (kol_send > 0) {
saveCatalog(clients, theme, txt, send_type, closes_contact, prices, catalog, checkboxAddresses, ["catalog"], request);
$('#komy option:selected').each(function() {
var idClient = $(this).data("id");
$('#client__' + idClient + ' .stage').removeClass('active');
$('#client__' + idClient + ' .stage-new').addClass('active');
$('#client__' + idClient + ' .stage-work').addClass('active');
$('#client__' + idClient + ' .stage-offer').addClass('active');
$('#client__' + idClient + ' .stagebar-title').text('Презентация');
});
}
} else {
$cl = [];
$cl.push(0);
saveCatalog($cl, theme, txt, send_type, closes_contact, prices, catalog, checkboxAddresses, ["catalog"], request);
$('#komy option:selected').each(function() {
var idClient = $(this).data("id");
$('#client__' + idClient + ' .stage').removeClass('active');
$('#client__' + idClient + ' .stage-new').addClass('active');
$('#client__' + idClient + ' .stage-work').addClass('active');
$('#client__' + idClient + ' .stage-offer').addClass('active');
$('#client__' + idClient + ' .stagebar-title').text('Презентация');
});
}
}
return false;
});
$("body").on("click", "#new_bld_btn_catalog_link", function () {
var ready = parseInt($("#all_ready").val());
if (ready) {
$("#error_txt").hide();
$("#error_txt_filter").hide();
var checkContactsClose = {};
var priceObjects = {};
var hideAddresses = {};
$(".link_copy_bufer").each(function () {
var id = $(this).data("id");
checkContactsClose[id] = $("#contacts_close" + id).prop("checked")
? 1
: 0;
priceObjects[id] = $("#edit_personal_cena" + id).val();
hideAddresses[id] = $("#address-hide-" + id).prop("checked") ? 1 : 0;
});
var catalogNewBuildings = $(".copy_catalog_link_newbuilding").attr(
"newbuilding-data-catalog"
);
$(".copy_catalog_link_newbuilding").addClass("hidden");
$("#newbuilding_catalog_link_copy_loader").removeClass("hidden");
var clients = getClientIds();
var request = $("#request option:selected").val();
var theme = $("#theme").val();
var txt = $("#txt").val();
var kol_send = $("#kol_send").val();
var send_type = "catalog";
var closes_contact = JSON.stringify(checkContactsClose);
var prices = JSON.stringify(priceObjects);
var checkboxAddresses = JSON.stringify(hideAddresses);
if (clients.length > 0) {
console.log(clients.length);
if (kol_send > 0) {
saveNewBuildingsCatalog(
clients,
theme,
txt,
send_type,
closes_contact,
prices,
catalogNewBuildings,
checkboxAddresses,
["catalog-newbuilding"],
request
);
$("#komy option:selected").each(function () {
var idClient = $(this).data("id");
updateClientStages(idClient);
});
}
} else {
var emptyClient = [0];
saveNewBuildingsCatalog(
emptyClient,
theme,
txt,
send_type,
closes_contact,
prices,
catalogNewBuildings,
checkboxAddresses,
["catalog-newbuilding"],
request
);
$("#komy option:selected").each(function () {
var idClient = $(this).data("id");
updateClientStages(idClient);
});
}
}
return false;
});
$("body").on('click', '#button_catalog_link_metro', function() {
var ready = parseInt($('#all_ready').val());
if (ready) {
$('#error_txt').hide();
$('#error_txt_filter').hide();
var checkContactsClose = {};
var priceObjects = {};
var hideAddresses = {};
$(".link_copy_bufer").each(function() {
var id = $(this).attr("data-id");
console.log(id);
checkContactsClose[id] = ($('#contacts_close' + id).prop('checked')) ? 1 : 0;
priceObjects[id] = $('#edit_personal_cena' + id).val();
hideAddresses[id] = ($('#address-hide-' + id).prop('checked')) ? 1 : 0;
});
$('.copy_catalog_link_metro').addClass('hidden');
$('#catalog_link_copy_loader_links').removeClass('hidden');
var closes_contact = JSON.stringify(checkContactsClose);
var prices = JSON.stringify(priceObjects);
var checkboxAddresses = JSON.stringify(hideAddresses)
// Похоже на то, что сбор выбранных клиентов не работает кроме первого клиента
// в выборке получается значение 4273[]3433
// var komy = $('#komy option:selected').map(function(a, item) { return item.value; });
var clients = getClientIds();
var request = $('#request option:selected').val();
var theme = $('#theme').val();
var txt = $('#txt').val();
var kol_send = $('#kol_send').val();
var send_type = 'links_metro';
if (clients.length > 0) {
if (kol_send > 0) {
saveCatalog(clients, theme, txt, send_type, closes_contact, prices, null, checkboxAddresses, ["links_metro"], request);
$('#komy option:selected').each(function() {
var idClient = $(this).data("id");
$('#client__' + idClient + ' .stage').removeClass('active');
$('#client__' + idClient + ' .stage-new').addClass('active');
$('#client__' + idClient + ' .stage-work').addClass('active');
$('#client__' + idClient + ' .stage-offer').addClass('active');
$('#client__' + idClient + ' .stagebar-title').text('Презентация');
});
}
} else {
$cl = [];
$cl.push(0);
saveCatalog($cl, theme, txt, send_type, closes_contact, prices, null, checkboxAddresses, ["links_metro"], request);
$('#komy option:selected').each(function() {
var idClient = $(this).data("id");
$('#client__' + idClient + ' .stage').removeClass('active');
$('#client__' + idClient + ' .stage-new').addClass('active');
$('#client__' + idClient + ' .stage-work').addClass('active');
$('#client__' + idClient + ' .stage-offer').addClass('active');
$('#client__' + idClient + ' .stagebar-title').text('Презентация');
});
}
}
return false;
});
$("body").on("click", "#complex-presentaion-settings", function () {
var ready = parseInt($("#all_ready").val());
if (ready) {
$("#error_txt").hide();
$("#error_txt_filter").hide();
var checkContactsClose = {};
var priceObjects = {};
var hideAddresses = {};
$(".link_copy_bufer").each(function () {
var id = $(this).data("id");
checkContactsClose[id] = $("#contacts_close" + id).prop("checked")
? 1
: 0;
priceObjects[id] = $("#edit_personal_info" + id).val();
hideAddresses[id] = $("#address-hide-" + id).prop("checked") ? 1 : 0;
});
var catalogComplexes = $(".copy_catalog_link_complexes").attr(
"complexes-data-catalog"
);
$(".copy_catalog_link_complexes").addClass("hidden");
$("#complexes_catalog_link_copy_loader").removeClass("hidden");
var clients = getClientIds();
var request = $("#request option:selected").val();
var theme = $("#theme").val();
var txt = $("#txt").val();
var kol_send = $("#kol_send").val();
var send_type = "catalog";
var closes_contact = JSON.stringify(checkContactsClose);
var prices = JSON.stringify(priceObjects);
var checkboxAddresses = JSON.stringify(hideAddresses);
if (clients.length > 0) {
console.log(clients.length);
if (kol_send > 0) {
saveNewBuildingsCatalog(
clients,
theme,
txt,
send_type,
closes_contact,
prices,
catalogNewBuildings,
checkboxAddresses,
["catalog-complexes"],
request
);
$("#komy option:selected").each(function () {
var idClient = $(this).data("id");
updateClientStages(idClient);
});
}
} else {
var emptyClient = [0];
saveComplexesCatalog(
emptyClient,
theme,
txt,
send_type,
closes_contact,
prices,
catalogComplexes,
checkboxAddresses,
["catalog-complexes"],
request
);
$("#komy option:selected").each(function () {
var idClient = $(this).data("id");
updateClientStages(idClient);
});
}
}
return false;
});
$("body").on("click", "#complexes_btn_catalog_link", function () {
var ready = parseInt($("#all_ready").val());
if (ready) {
$("#error_txt").hide();
$("#error_txt_filter").hide();
var checkContactsClose = {};
var priceObjects = {};
var hideAddresses = {};
$(".link_copy_bufer").each(function () {
var id = $(this).data("id");
checkContactsClose[id] = $("#contacts_close" + id).prop("checked")
? 1
: 0;
priceObjects[id] = $("#edit_personal_cena" + id).val();
hideAddresses[id] = $("#address-hide-" + id).prop("checked") ? 1 : 0;
});
var catalogComplexes = $(".copy_catalog_link_complexes").attr(
"complexes-data-catalog"
);
$(".copy_catalog_link_complexes").addClass("hidden");
$("#complexes_catalog_link_copy_loader").removeClass("hidden");
var clients = getClientIds();
var request = $("#request option:selected").val();
var theme = $("#theme").val();
var txt = $("#txt").val();
var kol_send = $("#kol_send").val();
var send_type = "catalog";
var closes_contact = JSON.stringify(checkContactsClose);
var prices = JSON.stringify(priceObjects);
var checkboxAddresses = JSON.stringify(hideAddresses);
if (clients.length > 0) {
console.log(clients.length);
if (kol_send > 0) {
saveNewBuildingsCatalog(
clients,
theme,
txt,
send_type,
closes_contact,
prices,
catalogNewBuildings,
checkboxAddresses,
["catalog-complexes"],
request
);
$("#komy option:selected").each(function () {
var idClient = $(this).data("id");
updateClientStages(idClient);
});
}
} else {
var emptyClient = [0];
saveComplexesCatalog(
emptyClient,
theme,
txt,
send_type,
closes_contact,
prices,
catalogComplexes,
checkboxAddresses,
["catalog-complexes"],
request
);
$("#komy option:selected").each(function () {
var idClient = $(this).data("id");
updateClientStages(idClient);
});
}
}
return false;
});
$("body").on('click', '#hide-addresses', function() {
const $checkbox = $(this);
const $checkboxAddresses = $('.checkbox-address-hide');
if ($checkbox.prop('checked')) {
$checkboxAddresses.each(function() {
$(this).prop('checked', true).trigger('change');
});
} else {
$checkboxAddresses.each(function() {
$(this).prop('checked', false).trigger('change');
});
}
});
$("body").on('click', '.checkbox-address-hide', function() {
$('#hide-addresses').prop('checked', false);
});
$("body").on('click', '.program-activate', function() {
var id = $(this).attr('data-bank-id');
$('#flat__bg .closer').hide();
$('#flat__bg .closer-flat').hide();
$("#bank_programs__bg_" + id).fadeIn(500);
$("#bank_programs_" + id).toggle(10);
$("body").addClass("lock");
return false;
});
$('#field_flat').change(function() {
$('input[name="komn_ot"]').val('').show();
$('#komnat').text('Комнат:');
})
$('#field_room').change(function() {
$('input[name="komn_ot"]').val('').hide();
$('#komnat').text('Всего комнат:');
})
$("body").on('click', '.delClient', function() {
if (confirm('Вы точно хотите безвозвратно удалить этого клиента?'))
{
var id = $(this).attr('data-id');
var obj = $(this).parent();
var client = $('#client__' + id);
obj.css({ "background": "#fff url(/images/ajax_preloader.gif) no-repeat bottom center" });
$.ajax({
url: '/ajax/delClient.php?id=' + id,
success: function() {
obj.css({ "background-image": "none", "background-color": "#fff" }).hide();
client.hide();
if ($('.view-kanban.active').length > 0) {
$('#kanban_item_li_' + id).remove();
}
if ($('#client_history').css('display') != 'none') {
$("#client-history__bg").fadeOut(500);
$("#client_history").fadeOut(10);
$("body").removeClass("lock");
}
}
});
}
return false;
})
$("body").on('click', '.reasonClient', function() {
if (confirm('Вы точно хотите поместить клиента в завершенные?')) {
var id = $(this).attr('data-id');
var client = $('#client__' + id);
//obj.css({"background":"#fff url(/images/ajax_preloader.gif) no-repeat bottom center"});
$.ajax({
url: '/ajax/delClient.php?reason=' + id,
success: function() {
//obj.css({"background-image":"none","background-color":"#fff"}).hide();
client.hide();
}
});
}
return false;
});
$("body").on('click', '.confirmClient', function() {
var id = $(this).attr('data-id');
var who_work = $(this).attr('data-manager');
var req_id = $(this).attr('data-req');
var clientConfirm = $('#client-confirm__' + id);
var adjacent_id = 0;
if($(this).attr('data-adjacent')){
adjacent_id = $(this).attr('data-adjacent');
}
var tr = $(this).data("tr");
$('#client-confirm__preloader__' + id).show();
$('#client-confirm__preloader__' + id + ' .client-confirm__buttons').hide();
$('#client__' + id).removeClass("new");
$('#req-confirm__preloader__' + req_id).show();
$('#req-confirm__preloader__' + req_id + ' .client-confirm__buttons').hide();
$('#req__' + req_id).removeClass("new");
var param = 'id=' + id + '&who_work=' + who_work + '&tr=' + tr + '&req_id=' + req_id + '&adjacent_id=' + adjacent_id;
var id_event = $(this).attr("data-event");
if (id_event !== undefined) {
param += '&event=' + id_event;
}
if ($(this).attr('data-deleted')) {
let deleted = $(this).attr('data-deleted');
param += '&deleted_req=' + deleted;
}
$.ajax({
url: '/ajax/confirmClient.php?' + param,
success: function(res) {
console.log(res);
$('#req-confirm__preloader__' + req_id).hide();
$('#client-confirm__preloader__' + id).hide();
$('#kanban_item_li_' + req_id).fadeOut(300, function() {
$(this).remove();
});
clientConfirm.hide();
$('#client__' + id).removeClass('new');
if (id_event !== undefined) {
$('#client-confirm_message_other_' + id_event).remove();
checkTop();
}
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 = '<b class="jw__counter new">' + res + '</b>';
var html2 = '<span class="counter">' + res + '</span>';
$("#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 (req_id != 0) {
section = 'requisitions';
if (document.location.pathname == '/requisitions.php') {
requisitions.getList();
}
}
console.log('conf' + section);
get_funnels(funnel_id, section, use_custom_funnel);
//console.log(res);
get_mes_clients();
}
});
})
$("body").on('click', '.confirmClientClosed', function(e) {
e.preventDefault();
var id = $(this).attr('data-id');
var who_work = $(this).attr('data-manager');
var req_id = $(this).attr('data-req');
var adjacent_id = $(this).attr('data-adjacent') || 0;
var tr = $(this).data("tr");
// Сначала проверяем, есть ли уже ответственный
$.ajax({
url: '/ajax/checkOwnerBeforeWork.php',
method: 'POST',
data: {
id: id,
req_id: req_id,
adjacent_id: adjacent_id,
deleted_req: 1
},
success: function(response) {
if (response.has_owner) {
// Показываем модальное окно с предупреждением
showOwnerWarningModal(response.owner_name, req_id ? 'req' : 'client');
} else {
// Если ответственного нет, продолжаем стандартный процесс
proceedWithConfirmationForClosed(id, who_work, req_id, adjacent_id, tr);
}
}
});
});
function proceedWithConfirmationForClosed(id, who_work, req_id, adjacent_id, tr) {
var clientConfirm = $('#client-confirm__' + id);
$('#client-confirm__preloader__' + id).show();
$('#client-confirm__preloader__' + id + ' .client-confirm__buttons').hide();
$('#client__' + id).removeClass("new");
$('#req-confirm__preloader__' + req_id).show();
$('#req-confirm__preloader__' + req_id + ' .client-confirm__buttons').hide();
$('#req__' + req_id).removeClass("new");
var param = 'id=' + id + '&who_work=' + who_work + '&tr=' + tr + '&req_id=' + req_id + '&adjacent_id=' + adjacent_id;
var id_event = $(this).attr("data-event");
if (id_event !== undefined) {
param += '&event=' + id_event;
}
let deleted = 1;
param += '&deleted_req=' + deleted;
$.ajax({
url: '/ajax/confirmClient.php?' + param,
success: function(res) {
//console.log(res);
$('#req-confirm__preloader__' + req_id).hide();
$('#client-confirm__preloader__' + id).hide();
$('#kanban_item_li_' + req_id).fadeOut(300, function() {
$(this).remove();
});
clientConfirm.hide();
$('#client__' + id).removeClass('new');
if (id_event !== undefined) {
$('#client-confirm_message_other_' + id_event).remove();
checkTop();
}
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 = '<b class="jw__counter new">' + res + '</b>';
var html2 = '<span class="counter">' + res + '</span>';
$("#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 (req_id != 0) {
section = 'requisitions';
if (document.location.pathname == '/requisitions.php') {
requisitions.getList();
}
}
console.log('conf' + section);
get_funnels(funnel_id, section, use_custom_funnel);
//console.log(res);
get_mes_clients();
}
});
}
$("body").on('click', '.confirmClientGeneral', function(e) {
e.preventDefault();
var id = $(this).attr('data-id');
var who_work = $(this).attr('data-manager');
var req_id = $(this).attr('data-req');
var adjacent_id = $(this).attr('data-adjacent') || 0;
var tr = $(this).data("tr");
// Сначала проверяем, есть ли уже ответственный
$.ajax({
url: '/ajax/checkOwnerBeforeWork.php',
method: 'POST',
data: {
id: id,
req_id: req_id,
adjacent_id: adjacent_id
},
success: function(response) {
if (response.has_owner) {
// Показываем модальное окно с предупреждением
showOwnerWarningModal(response.owner_name, req_id ? 'req' : 'client');
} else {
// Если ответственного нет, продолжаем стандартный процесс
proceedWithConfirmation(id, who_work, req_id, adjacent_id, tr);
}
}
});
});
function showOwnerWarningModal(ownerName, entityType) {
var entityText = entityType === 'req' ? 'Эта заявка' : 'Этот клиент';
var modal = $('<div class="modal-warning-already-in-work"><div class="modal-content">\
<span class="close-modal">&times;</span>\
<p>' + entityText + ' уже в работе у сотрудника: <strong>' + ownerName + '</strong></p>\
<button class="ok-button">ОБНОВИТЬ</button>\
</div></div>');
$('body').append(modal);
modal.find('.close-modal, .ok-button').on('click', function() {
// Универсальное обновление для разных страниц
if (typeof requisitions !== 'undefined' && typeof requisitions.getList === 'function') {
// Для страницы заявок
requisitions.getList();
} else if (typeof get_list === 'function') {
// Для страницы клиентов
let sort_order = $('select[name=sort_order]').val();
let currentPage = $('.pagination li.active a').text() || 1;
get_list(currentPage, sort_order, false);
}
// Дополнительно обновляем счетчики
get_mes_clients();
modal.remove();
});
}
function proceedWithConfirmation(id, who_work, req_id, adjacent_id, tr) {
var clientConfirm = $('#client-confirm__' + id);
$('#client-confirm__preloader__' + id).show();
$('#client-confirm__preloader__' + id + ' .client-confirm__buttons').hide();
$('#client__' + id).removeClass("new");
$('#req-confirm__preloader__' + req_id).show();
$('#req-confirm__preloader__' + req_id + ' .client-confirm__buttons').hide();
$('#req__' + req_id).removeClass("new");
var param = 'id=' + id + '&who_work=' + who_work + '&tr=' + tr + '&req_id=' + req_id + '&adjacent_id=' + adjacent_id;
var id_event = $(this).attr("data-event");
if (id_event !== undefined) {
param += '&event=' + id_event;
}
$.ajax({
url: '/ajax/confirmClient.php?' + param,
success: function(res) {
//console.log(res);
clientConfirm.hide();
$('#client__' + id).removeClass('new');
if (id_event !== undefined) {
$('#client-confirm_message_other_' + id_event).remove();
checkTop();
}
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 = '<b class="jw__counter new">' + res + '</b>';
var html2 = '<span class="counter">' + res + '</span>';
$("#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 (req_id != 0) {
section = 'requisitions';
if (document.location.pathname == '/requisitions.php') {
requisitions.getList();
}
}
console.log('conf' + section);
get_funnels(funnel_id, section, use_custom_funnel);
//console.log(res);
get_mes_clients();
}
});
}
$("body").on('click', '.unconfirmClient', function() {
var id = $(this).attr('data-id');
var req_id = $(this).attr('data-req');
var who_work = $(this).attr('data-manager');
var tr = $(this).data("tr");
$('#client-confirm__preloader__' + id).show();
$('#client-confirm__preloader__' + id + ' .client-confirm__buttons').hide();
var param = 'id=' + id + '&who_work=' + who_work + '&tr=' + tr + '&req_id=' + req_id;
var id_event = $(this).data("event");
if (id_event !== undefined) {
param += '&event=' + id_event;
}
$.ajax({
url: '/ajax/unconfirmClient.php?' + param,
success: function(res) {
console.log(res);
if (id_event !== undefined) {
$('#client-confirm_message' + id_event).remove();
checkTop();
}
//clientConfirm.hide();
get_list();
$("#menu_clients .jw__counter.new").remove();
$("#filter_confirm .counter").remove();
if (res != 0) {
var html = '<b class="jw__counter new">' + res + '</b>';
var html2 = '<span class="counter">' + res + '</span>';
$("#menu_clients span").after(html);
$("#filter_confirm a").after(html2);
}
}
});
});
function extension_reservation(dataList)
{
$.ajax({
url: `${window.location.origin}/ajax/reservationClient.php`,
type: "POST",
dataType: "json",
contentType: "application/json",
data: JSON.stringify(dataList),
complete: function(data) {
$(`#client-confirm_message_extension_reservation_${dataList.event_id}`).remove()
checkTop();
$('.confirm_mess').html('');
get_mes_clients();
get_mes_objects();
if ($('#client_history').attr('data-active-req') == data.responseJSON.req_id)
{
$.ajax({
url: '/ajax/getClientLogForEventsNew.php?id=' + data.responseJSON.client_id + '&req_id=' + data.responseJSON.req_id,
success: function(data) {
$('#client-info-block').html(data);
if (scroll != 1) {
$('#client_history .history__chat-n').slimScroll({ scrollTo: $('#client-info-block').prop("scrollHeight") + 'px' });
}
$(".add-task-client").click(function(e) {
e.preventDefault();
$(".chat-history__actions_new").toggleClass("show");
});
$(".chat-history__actions_new").mouseover(function(e) {
e.preventDefault();
if ($(this).attr("id") == undefined)
$(".chat-history__actions_new").addClass("show");
}).mouseleave(function(e) {
e.preventDefault();
if ($(this).attr("id") == undefined)
$(".chat-history__actions_new").removeClass("show");
});
}
});
}
}
});
}
function appendExtensionReservationCommentModal(type, el_id)
{
const event_id = $('#' + el_id).attr('data-event');
const specify_comment = $('#' + el_id).attr('data-specify_comment');
if (!$('#extension_reservation_comment_modal').id)
{
if (String(specify_comment).toLowerCase() === 'false')
{
const data = {
request: 'extension_reservation',
type,
event_id,
}
extension_reservation(data);
}
else {
$('.jw__layout #extension_reservation_comment_modal').remove()
$('.jw__layout').append(`
<div class="full_modal-bg" id="extension_reservation_comment_modal" style="z-index: 9999999;">
<span class="event-modal-close closer">
<i class="ti-close"></i>
</span>
<div class="full_modal edit-modal" style="top: 25%;">
<form class="form-validate">
<div class="modal-inner">
<h2>Добавить комментарий</h2>
<div class="jw-tabs">
<textarea style="resize: none;" rows="6" cols="50" class="text big-text" placeholder="Написание комментария..." name="extension_reservation_comment"></textarea>
<script>
$(document).ready(function () {
CKEDITOR.replace('extension_reservation_comment', {
autoParagraph: false,
toolbarGroups: [
{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi', 'paragraph' ] },
],
removeButtons: 'Source,Save,NewPage,ExportPdf,Preview,Print,Templates,Scayt,SelectAll,Find,Replace,About,Maximize,ShowBlocks,BGColor,TextColor,Styles,Format,Font,FontSize,Image,Link,Unlink,Table,HorizontalRule,Anchor,Smiley,SpecialChar,PageBreak,Iframe,BidiLtr,BidiRtl,Language,JustifyLeft,JustifyCenter,JustifyRight,JustifyBlock,Blockquote,CreateDiv,Indent,Outdent,Form,Checkbox,Radio,TextField,Textarea,Select,Button,ImageButton,HiddenField,Cut,Copy,Paste,PasteText,PasteFromWord,Undo,Redo,CopyFormatting,Strike,Subscript,Superscript',
});
});
</script>
</div>
</div>
<div class="modal-submit">
<button id="extension_reservation_comment_save" data-event="${event_id}" data-type="${type}" type="button">Сохранить&nbsp;<i class="ti-angle-right"></i></button>
</div>
</form>
</div>
</div>
`);
}
}
}
$('body').on('click', '#extension_reservation_comment_modal .event-modal-close.closer', () => {
$('.jw__layout #extension_reservation_comment_modal').remove()
})
$('body').on('click', '#extension_reservation_comment_save', () => {
const extension_reservation_comment_save = $('#extension_reservation_comment_save')
const editor = CKEDITOR.instances['extension_reservation_comment']
if (editor.getData())
{
const data = {
request: 'extension_reservation',
type: extension_reservation_comment_save.attr('data-type'),
event_id: extension_reservation_comment_save.attr('data-event'),
comment: editor.getData()
}
extension_reservation(data);
$('.jw__layout #extension_reservation_comment_modal').remove()
}
else
{
var editable = editor.container.$.querySelector('.cke_inner');
if (editable) {
editable.style.border = '1px solid red';
}
}
})
$('body').on('click', '.confirm_extension_reservation', function() {
appendExtensionReservationCommentModal('confirm', $(this).attr('id'))
})
$('body').on('click', '.unconfirm_extension_reservation', function() {
appendExtensionReservationCommentModal('unconfirm', $(this).attr('id'))
})
function employee_extension_reservation(dataList)
{
$.ajax({
url: `${window.location.origin}/ajax/reservationClient.php`,
type: "POST",
dataType: "json",
contentType: "application/json",
data: JSON.stringify(dataList),
complete: function(data) {
$(`#client-confirm_message_extension_reservation_${dataList.event_id}`).remove()
checkTop();
$('.confirm_mess').html('');
get_mes_clients();
get_mes_objects();
console.log(data.responseJSON);
if ($('#client_history').attr('data-active-req') == data.responseJSON.req_id)
{
$.ajax({
url: '/ajax/getClientLogForEventsNew.php?id=' + data.responseJSON.client_id + '&req_id=' + data.responseJSON.req_id,
success: function(data) {
$('#client-info-block').html(data);
if (scroll != 1) {
$('#client_history .history__chat-n').slimScroll({ scrollTo: $('#client-info-block').prop("scrollHeight") + 'px' });
}
$(".add-task-client").click(function(e) {
e.preventDefault();
$(".chat-history__actions_new").toggleClass("show");
});
$(".chat-history__actions_new").mouseover(function(e) {
e.preventDefault();
if ($(this).attr("id") == undefined)
$(".chat-history__actions_new").addClass("show");
}).mouseleave(function(e) {
e.preventDefault();
if ($(this).attr("id") == undefined)
$(".chat-history__actions_new").removeClass("show");
});
}
});
}
}
});
}
function employeeExtensionReservation(type, el_id)
{
const event_id = $('#' + el_id).attr('data-event');
$('.jw__layout #extension_reservation_comment_modal').remove()
$('.jw__layout').append(`
<div class="full_modal-bg" id="extension_reservation_comment_modal" style="z-index: 9999999;">
<span class="event-modal-close closer">
<i class="ti-close"></i>
</span>
<div class="full_modal edit-modal" style="top: 25%;">
<form class="form-validate">
<div class="modal-inner">
<h2>Добавить комментарий</h2>
<div class="jw-tabs">
<textarea style="resize: none;" rows="6" cols="50" class="text big-text" placeholder="Написание комментария..." name="employee_extension_reservation_comment"></textarea>
<script>
$(document).ready(function () {
CKEDITOR.replace('employee_extension_reservation_comment', {
autoParagraph: false,
toolbarGroups: [
{ name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
{ name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi', 'paragraph' ] },
],
removeButtons: 'Source,Save,NewPage,ExportPdf,Preview,Print,Templates,Scayt,SelectAll,Find,Replace,About,Maximize,ShowBlocks,BGColor,TextColor,Styles,Format,Font,FontSize,Image,Link,Unlink,Table,HorizontalRule,Anchor,Smiley,SpecialChar,PageBreak,Iframe,BidiLtr,BidiRtl,Language,JustifyLeft,JustifyCenter,JustifyRight,JustifyBlock,Blockquote,CreateDiv,Indent,Outdent,Form,Checkbox,Radio,TextField,Textarea,Select,Button,ImageButton,HiddenField,Cut,Copy,Paste,PasteText,PasteFromWord,Undo,Redo,CopyFormatting,Strike,Subscript,Superscript',
});
});
</script>
</div>
</div>
<div class="modal-submit">
<button id="employee_extension_reservation_comment_save" data-event="${event_id}" data-type="${type}" type="button">Сохранить&nbsp;<i class="ti-angle-right"></i></button>
</div>
</form>
</div>
</div>
`);
}
$('body').on('click', '#employee_extension_reservation_comment_save', () => {
const extension_reservation_comment_save = $('#employee_extension_reservation_comment_save')
const editor = CKEDITOR.instances['employee_extension_reservation_comment']
const data = {
request: 'employee_extension_reservation',
type: extension_reservation_comment_save.attr('data-type'),
event_id: extension_reservation_comment_save.attr('data-event'),
comment: editor.getData()
}
employee_extension_reservation(data);
$('.jw__layout #extension_reservation_comment_modal').remove()
})
$('body').on('click', '.employee_confirming_extension_reservation', function() {
employeeExtensionReservation('confirming', $(this).attr('id'))
});
$('body').on('click', '.employee_unconfirming_extension_reservation', function() {
employeeExtensionReservation('unconfirming', $(this).attr('id'))
});
$("body").on('click', '.unconfirmObject', function() {
var id = $(this).attr('data-record-id');
$('#object-confirm__preloader__' + id).show();
$('#object-confirm__buttons__' + id).hide();
$.ajax({
url: '/ajax/unconfirmObject.php?id=' + id,
success: function() {
window.location.reload(true);
}
});
});
$("body").on('click', '.confirmObject', function() {
var id = $(this).attr('data-record-id');
$('#object-confirm__preloader__' + id).show();
$('#object-confirm__buttons__' + id).hide();
$.ajax({
url: '/ajax/confirmObject.php?id=' + id,
success: function() {
window.location.reload(true);
}
});
});
$("body").on('click', '.addComplaint', function() {
var id = $(this).attr('data-id');
$.ajax({
url: '/ajax/modals/complaintWinContent.php',
success: function(data) {
$("#complaint_bg").html(data).fadeIn(500);
$("#complaint").toggle(10);
$("body").addClass("lock");
$("#complaint_idObj").val(id);
$("#complaint_text").val("");
$("#complaint .load-bar").addClass("hidden");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
})
$("body").on('click', '#newComplaint', function() {
var id_obj = $("#complaint_idObj").val();
var complaint_text = $("#complaint_text").val();
var reason = $('input:radio[name=reason]:checked').val();
$("#complaint .load-bar").removeClass("hidden");
$.ajax({
url: "/ajax/addComplaint.php",
method: "post",
data: {
"id_obj": id_obj,
"complaint_text": complaint_text,
"reason": reason
},
success: function() {
$("#complaint_bg").hide();
$("#complaint").toggle(10);
$("body").removeClass("lock");
showAfterComplaint();
},
error: function(jqXHR, textStatus, errorThrown) {
}
});
})
$("body").on('click', '.delClientAgent', function() {
$("#del_client_bg").fadeIn(500);
$("#del_client").toggle(10);
var id = $(this).attr('data-id');
var req_id = 0;
if ($(this).attr("data-req")) req_id = $(this).attr("data-req");
$("#del_client").find('input[name="id_del_client"]').val(id);
$("#del_client #id_del_req").val(req_id);
set_select_denial_work(req_id);
$("body").addClass("lock");
$('#summa_sdelki').val('');
$('#summa_sdelki').hide();
$('#luck').prop('checked', false);
$('#denial_work').show();
$('#denial_work').val(1);
$('#denial_work-input').show();
$('#datazaklgr').hide();
return false;
})
$("body").on('click', '.restoreClient', function() {
var id = $(this).attr('data-id');
var obj = $(this).parent();
obj.css({ "background": "#fff url(/images/ajax_preloader.gif) no-repeat bottom left" });
$.ajax({
url: '/ajax/delClient.php?restore=' + id,
success: function() {
obj.css({ "background-image": "none", "background-color": "#fff" }).hide();
obj.parent().parent().remove();
}
});
return false;
})
$("body").on('click', '.getArchPhone', function() {
var id = $(this).attr('data-id');
var obj = $(this);
var obj_parent = $(this).parent();
obj_parent.css({ "background": "url(/images/ajax_preloader.gif) no-repeat bottom left" });
$.ajax({
url: '/ajax/getArchPhone.php?id=' + id,
success: function(data) {
obj_parent.css({ "background-image": "none" });
if (data != 0) obj.text(data);
obj.removeClass('getArchPhone');
}
});
return false;
})
$("body").on('click', '.modalArch', function() {
$('#objectsArch').html('');
$("#modalArch_bg").fadeIn(500);
$("#modalArch").toggle(10);
$("body").addClass("lock");
var ids = $(this).attr('data-id');
$('#objectsArch').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "min-height": "300px" });
$.ajax({
url: '/ajax/objectsArch.php?ids=' + ids,
success: function(data) {
$('#objectsArch').html(data);
$('#objectsArch').css({ "background": "none" });
setTimeout(function() {
$('#modalArch .fotorama').fotorama();
}, 100);
}
});
return false;
});
$("body").on('click', '.arch-paging', function(e) {
e.stopPropagation();
var ids = $(this).attr('data-ids');
var pageNum = $(this).attr('data-page-num');
$('#objectsArch').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "min-height": "300px" });
$.ajax({
url: '/ajax/objectsArch.php?ids=' + ids + '&page=' + pageNum,
success: function(data) {
$('#objectsArch').html(data);
$('#objectsArch').css({ "background": "none" });
$("#modalArch").get(0).scrollIntoView();
setTimeout(function() {
$('#modalArch .fotorama').fotorama();
}, 100);
}
});
return false;
});
$("#upload-container input[type='file']").change(function() {
$("#upload-container").css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center" });
if (!$("iframe").is("[name='upload-frame']")) $("#upload-form").append('<iframe name="upload-frame"></iframe>');
$("#upload-form").attr("target", "upload-frame")
$("#upload-form").attr("action", "/ajax/uploader.php");
$("#upload-form").submit();
})
// Редактирование Пользователя (агента)
$("body").on('click', '#add_agent', function() {
$.ajax({
url: '/ajax/modals/addUser.php',
data: {},
success: function(data) {
$("#send_bg").html(data);
$("#send_bg").fadeIn(500);
$("#send").toggle(10);
$("body").addClass("lock");
$("#add_agent_form .phoneMask").mask("+79999999999");
$('#add_agent_form .datepicker-here2').datepicker({
autoClose: 'true'
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
});
$("body").on('click', '#send .tabs__caption li, #user_form_edit .tabs__caption li, #inner_blank_form .tabs__caption li', 'click', function() {
let section = $(this).closest('.full_modal');
let action = $(this).data('target');
section.find('.jw-tabs .tabs__caption li').removeClass('active');
section.find('.jw-tabs .tabs__caption li[data-target=' + action + ']').addClass('active');
section.find('.modal-inner .tabs__content').hide();
section.find('.modal-inner .tabs__content.' + action).show();
});
$("body").on('click', '#send #user_add_file, #user_form_edit #user_add_file', 'click', function() {
let file_input = '<div class="form-block file-input">\n' +
'<div class="label">Прикрепить файл:</div>\n' +
'<div class="inputs"><input type="text" class="input" name="description[]" placeholder="Название документа..." style="width:400px;margin-bottom:5px">\n' +
'<input type="file" class="file-input" name="files[]" style="width:400px;"></div>\n' +
'<div class="clear"></div>\n' +
'</div>';
$(this).closest('.form-block').before($(file_input));
});
$("body").on('click', '.variable-input .remove', 'click', function(event) {
$(event.target).closest('.variable-input').remove();
if (!$('.variables-form .variable-input').length) {
$('.variables-form .error_msg').fadeOut();
}
if (!$('.variables-form.inner-block .variable-input').length) {
$('.variables-form.inner-block .save_btn').hide();
$('.variables-form.inner-block .error_msg').fadeOut();
}
});
$("body").on('click', '#variablesForm #add_variable', 'click', function() {
let inputs = '<div class="variable-input">\n' +
'<div class="form-block">\n' +
'<div class="label">Назначение:</div>\n' +
'<div class="inputs"><select class="input" name="sections[]" style="width:400px;margin-bottom:5px">\n' +
'<option value="0">Не выбрано</option>\n' +
'<option value="1">Объекты</option>\n' +
'<option value="2">Клиенты</option>\n' +
'</select></div>\n' +
'<div class="clear"></div>\n' +
'</div>';
inputs += '<div class="form-block">\n' +
'<div class="label">Название:</div>\n' +
'<div class="inputs"><input type="text" class="input" name="titles[]" placeholder="Название..." style="width:400px;margin-bottom:5px" />\n' +
'</div>\n' +
'<div class="clear"></div>\n' +
'</div>';
inputs += '<div class="form-block">\n' +
'<div class="label">Переменная:</div>\n' +
'<div class="inputs"><input type="text" class="input" name="names[]" placeholder="Только латинница (a-z)..." style="width:400px;margin-bottom:5px" />\n' +
'</div>\n' +
'<div class="clear"></div>\n' +
'</div>';
inputs += '<div class="form-block">\n' +
'<div class="label">Значение:</div>\n' +
'<div class="inputs"><input type="text" class="input" name="defaults[]" placeholder="Значение по-умолчанию..." style="width:400px;margin-bottom:5px" />\n' +
'</div>\n' +
'<div class="clear"></div>\n' +
'</div>';
inputs += '<input type="hidden" name="ids[]" value="" />';
inputs += '<span class="remove" title="Отменить"><i class="ti-close"></i></span>';
inputs += '</div>';
if ($(this).closest('.variables-form').find('.variable-input').length > 0)
$(this).closest('.variables-form').find('.variable-input').last().after($(inputs));
else
$(this).closest('.variables-form').prepend($(inputs));
});
$("body").on('click', '#variablesInnerForm #add_field_variable', function() {
/*let form = $('#variablesInputsForm');
form.removeClass('collapsed');
form.closest('.block').find('.collapse-link').text("Свернуть");*/
let inputs = '<div class="variable-input">\n' +
'<div class="form-block">\n' +
'<div class="label">Название:</div>\n' +
'<div class="inputs"><input type="text" class="input" name="titles[]" placeholder="Название..." style="width:400px;margin-bottom:5px" />\n' +
'</div>\n' +
'<div class="clear"></div>\n' +
'</div>';
inputs += '<div class="form-block">\n' +
'<div class="label">Переменная:</div>\n' +
'<div class="inputs"><input type="text" class="input" name="names[]" placeholder="Только латинница (a-z)..." style="width:400px;margin-bottom:5px" />\n' +
'</div>\n' +
'<div class="clear"></div>\n' +
'</div>';
inputs += '<div class="form-block">\n' +
'<div class="label">Значение:</div>\n' +
'<div class="inputs"><input type="text" class="input" name="defaults[]" placeholder="Значение по-умолчанию..." style="width:400px;margin-bottom:5px" />\n' +
'</div>\n' +
'<div class="clear"></div>\n' +
'</div>';
inputs += '<input type="hidden" name="ids[]" value="" />';
inputs += '<span class="remove" title="Отменить"><i class="ti-close"></i></span>';
inputs += '</div>';
if ($(this).closest('.variables-form').find('.variable-input').length > 0)
$(this).closest('.variables-form').find('.variable-input').last().after($(inputs));
else
$(this).closest('.variables-form').prepend($(inputs));
$(this).closest('.variables-form').find('.save_btn').show();
});
var translit_progress = false;
$("body").on('input, keyup, blur', '.variables-form input[name^="title"]', function() {
let input = $(this);
if (input.val().length > 1 && !translit_progress) {
setTimeout(function() {
translit_progress = true;
$.post('/ajax/getFieldTranslit.php', { 'title': input.val() }, function(data) {
translit_progress = false;
let result = JSON.parse(data);
if (result.result) {
input.closest('.variable-input').find('input[name^="name"]').val(result.result);
input.closest('.variable-input').find('input[name^="name"]').trigger('input');
}
});
}, 1000);
}
});
var validate_progress = false;
$("body").on('input, keyup, change, blur', '.variables-form input', function() {
let input = $(this);
let form = input.closest('.variables-form');
if (!validate_progress) {
setTimeout(function() {
validate_progress = true;
let error_msg = form.find('.error_msg');
error_msg.empty();
let formData = new FormData();
form.find('input, textarea, select').each(function() {
formData.append($(this).attr('name'), $(this).val());
$(this).removeClass('invalid');
});
$.ajax({
type: 'post',
url: '/ajax/getFieldsValidate.php',
data: formData,
cache: false,
async: false,
contentType: false,
processData: false,
success: function(data) {
validate_progress = false;
let result = JSON.parse(data);
//console.log(result);
if (result.errors) {
let errors = '';
$.each(result.errors, function(name, error) {
$.each(error, function(indx, message) {
console.log({ name, indx, message });
form.find('[name^="' + name + '"]').eq(indx).addClass('invalid');
errors += '<span>' + message + '</span><br/>';
});
});
//console.log(errors);
error_msg.html(errors);
if (form.hasClass('inner-block'))
form.find('.save_btn').attr('disabled', 'disabled');
error_msg.fadeIn();
} else {
form.find('input, textarea, select').removeClass('invalid');
form.find('.save_btn').removeAttr('disabled');
error_msg.fadeOut();
error_msg.empty();
}
}
});
}, 1500);
}
});
$("body").on('click', '.users .user .getUserPassport', 'click', function() {
let id = $(this).attr("data-id");
let popup = $(this).parents('.user-toolbar').find('.jw__popup.user_info_passport');
popup.empty();
if (!popup.hasClass('show')) {
$(".users .jw__popup.show").removeClass("show");
$.post('/ajax/getUser.php', { 'user_id': id, 'section': "passport" }, function(data) {
popup.html(data);
popup.addClass("show");
});
} else {
popup.removeClass("show");
}
return false;
});
$("body").on('click', '.users .user .getAdvertBudget', 'click', function() {
let user_id = $(this).attr("data-user-id");
let role_id = $(this).attr("data-role-id");
let popup = $(this).parents('.user-toolbar').find('.jw__popup.advert_budget_details');
popup.empty();
if (!popup.hasClass('show')) {
$(".users .jw__popup.show").removeClass("show");
$.post('/ajax/getAdvertBudget.php', { 'user_id': user_id, 'role_id': role_id }, function(data) {
popup.html(data);
popup.addClass("show");
});
} else {
popup.removeClass("show");
}
return false;
});
$("body").on('click', '.users .user .getUserSocials', 'click', function() {
let id = $(this).attr("data-id");
let popup = $(this).parents('.user-toolbar').find('.jw__popup.user_info_socials');
popup.empty();
if (!popup.hasClass('show')) {
$(".users .jw__popup.show").removeClass("show");
$.post('/ajax/getUser.php', { 'user_id': id, 'section': "socials" }, function(data) {
popup.html(data);
popup.addClass("show");
});
} else {
popup.removeClass("show");
}
return false;
});
$("body").on('click', '.users .user .getUserFiles', 'click', function() {
let id = $(this).attr("data-id");
let popup = $(this).parents('.user-toolbar').find('.jw__popup.user_info_files');
popup.empty();
if (!popup.hasClass('show')) {
$(".users .jw__popup.show").removeClass("show");
$.post('/ajax/getUser.php', { 'user_id': id, 'section': "files" }, function(data) {
popup.html(data);
popup.addClass("show");
});
} else {
popup.removeClass("show");
}
return false;
});
$("body").on('click', '.userEdit', function() {
var id = $(this).attr("data-id");
$.ajax({
url: '/ajax/modals/editUser.php',
data: {},
success: function(data) {
$("#user_form_edit").html(data);
$('#user_form_edit .datepicker-here2').datepicker({
autoClose: 'true'
});
var form = $("#user_form_edit");
$(form).find(".jw-tabs li").first().click();
$(form).find("[name=fio]").val('');
$(form).find("[name=email]").val('');
$(form).find("[name=phone]").val('');
$(form).find("[name=phone2_user]").val('');
$(form).find("[name=ok_agent_id]").val(0);
$(form).find("[name=is_dispatcher]").prop('checked', true);
$("#vpbx-block-edit").addClass('hidden');
$(form).find("[name=vpbx_id]").val('');
$(form).find(".error_msg").addClass('hidden').html('');
$(form).find("#users_files_list").empty();
$.post('/ajax/getUser.php', { 'user_id': id }, function(data) {
// console.log(data);
var res = JSON.parse(data);
$(form).show(10);
$(form).find("#user_form_edit_form").show(10);
$("body").addClass("lock");
$(form).find(".phoneMask").mask("+79999999999");
if (res.user_logo) {
$(form).find(".user-pic img").attr('src', "/photos/agency/" + res.user_logo);
$(form).find(".user-pic").show();
$(form).find(".no-user-pic").hide();
$(form).find(".user-pic-input").addClass('have');
} else {
$(form).find(".user-pic img").attr('src', "");
$(form).find(".user-pic").hide();
$(form).find(".no-user-pic").show();
$(form).find(".user-pic-input").removeClass('have');
}
$(form).find("[name=agency_name]").val(res.agency_name);
$(form).find("[name=last_name]").val(res.last_name);
$(form).find("[name=first_name]").val(res.first_name);
$(form).find("[name=middle_name]").val(res.middle_name);
$(form).find("[name=email]").val(res.email);
$(form).find("[name=phone]").val(res.phone);
$(form).find("[name=phone2_user]").val(res.phone2);
$(form).find("[name=cian_id]").val(res.cian_id);
$(form).find("[name=utc-edit]").find('option[value='+res.utc+']').prop('selected', true);
$(form).find("[name=is_all_cian]").prop('checked', false);
if (res.is_all_cian == 1) {
$(form).find("[name=is_all_cian]").prop('checked', true);
}
$(form).find("[name=avito_id]").val(res.avito_id);
$(form).find("[name=is_all_avito]").prop('checked', false);
if (res.is_all_avito == 1) {
$(form).find("[name=is_all_avito]").prop('checked', true);
}
if (res.is_id_object == 1) {
$(form).find("[name=is_id_object]").prop('checked', true);
}
if (res.is_id_object_cian == 1) {
$(form).find("[name=is_id_object_cian]").prop('checked', true);
}
$(form).find("[name=birthday]").val(res.birthday);
$(form).find("[name=passport_serial]").val(res.passport_serial);
$(form).find("[name=passport_number]").val(res.passport_number);
$(form).find("[name=passport_date]").val(res.passport_date);
$(form).find("[name=passport_emited]").val(res.passport_emited);
$(form).find("[name=passport_adress]").val(res.passport_adress);
$(form).find("[name=adress_postal]").val(res.adress_postal);
$(form).find("[name=soc_vk]").val(res.soc_vk);
$(form).find("[name=soc_tg]").val(res.soc_tg);
$(form).find("[name=soc_fb]").val(res.soc_fb);
$(form).find("[name=soc_inst]").val(res.soc_inst);
$(form).find("[name=soc_tw]").val(res.soc_tw);
$(form).find("[name=soc_wa]").val(res.soc_wa);
const input = document.querySelector('#edit_agent_form label[for=wa_enabled]')
.parentElement
.querySelector('input')
input.setAttribute('value', res.wa_enabled)
input.checked = res.wa_enabled == 1 ? true : false
// input.setAttribute('checked', res.wa_enabled)
$(form).find("[name=avatar]").val('');
$(form).find("[name=ok_agent_id]").val(id);
console.info(res);
//Agent permissions
$(form).find("[name=is_two_admin]").val(res.users_admin);
if (res.users_admin == 1) {
$(form).find("[name=is_two_admin]").prop('checked', true);
}
Object.keys(res).forEach(function(key) {
if (key.startsWith('perm_menu_')) {
let checkboxPermName = 'on_' + key.substring(10);
if (res[key] == 0) {
$(form).find("[name=" + checkboxPermName + "]").prop('checked', false).val(res[key]);
}
else {
$(form).find("[name=" + checkboxPermName + "]").prop('checked', true).val(res[key]);
}
}
});
$(form).on('change', '[name=is_two_admin], [name=on_office], [name=on_complexes], [name=on_search], [name=on_objects], [name=on_objects_all], [name=on_objects_all_edit], [name=on_ads], ' +
'[name=on_clients], [name=on_clients_all], [name=on_clients_all_edit], [name=on_clients_all_export], [name=on_hide_client_contacts], [name=on_submissions], [name=on_cannot_create_req_manually], [name=on_submissions_all], [name=on_submissions_all_edit], ' +
'[name=on_submissions_all_export], [name=on_docs], [name=on_settings], [name=on_can_transfer_to_common], [name=on_can_take_from_closed], [name=on_can_transfer_closed_to_others], [name=on_search_company_objects_only], [name=on_any_ip]', function(event) {
let $targetCheckboxPerm = $(event.target);
let nameCheckboxPerm = $targetCheckboxPerm.attr('name');
$(form).find('[name=' + nameCheckboxPerm + ']').val($targetCheckboxPerm.prop('checked') ? '1' : '0');
if (nameCheckboxPerm == 'on_submissions_all' && $(this).is(':checked') == false) {
$(form).find('[name=on_submissions_all_edit]').val('0');
}
if (nameCheckboxPerm == 'on_search' && $(this).is(':checked') == false) {
$(form).find('[name=on_search_company_objects_only]').prop('checked', false).val('0');
}
});
$(form).find("[name=on_objects]").on('change', (event) => {
if ($(event.target).prop('checked'))
$("#div_on_objects_all").show();
else
$("#div_on_objects_all").hide();
});
$(form).find("[name=on_objects_all]").on('change', (event) => {
if ($(event.target).prop('checked'))
$("#div_on_objects_all_edit").show();
else
$("#div_on_objects_all_edit").hide();
});
if (res.perm_menu_objects == 0) {
$("#div_on_objects_all").hide();
}
if (res.perm_menu_objects_all == 1) {
$("#div_on_objects_all_edit").show();
}
$(form).find("[name=on_clients]").on('change', (event) => {
if ($(event.target).prop('checked')) {
$("#div_on_clients_all").show();
$("#div_on_clients_all_export").show();
if (res.perm_menu_clients_all == 1) {
$("#div_on_clients_all_edit").show();
}
} else {
$("#div_on_clients_all").hide();
$("#div_on_clients_all_edit").hide();
$("#div_on_clients_all_export").hide();
}
});
$(form).find("[name=on_clients_all]").on('change', (event) => {
if ($(event.target).prop('checked')) {
$("#div_on_clients_all_edit").show();
} else {
$("#div_on_clients_all_edit").hide();
}
});
if (res.perm_menu_clients == 1) {
$("#div_on_clients_all").show();
$("#div_on_clients_all_export").show();
if (res.perm_menu_clients_all == 1) {
$("#div_on_clients_all_edit").show();
}
}
$(form).find("[name=on_submissions]").on('change', (event) => {
if ($(event.target).prop('checked')) {
$("#div_on_submissions_all").show();
$("#div_on_submissions_all_export").show();
if (res.perm_menu_submissions_all == 1) {
$("#div_on_submissions_all_edit").show();
}
} else {
$("#div_on_submissions_all").hide();
$("#div_on_submissions_all_edit").hide();
$("#div_on_submissions_all_export").hide();
}
});
$(form).find("[name=on_submissions_all]").on('change', (event) => {
if ($(event.target).prop('checked')) {
$("#div_on_submissions_all_edit").show();
} else {
$("#div_on_submissions_all_edit").hide();
}
});
if (res.perm_menu_submissions == 1) {
$("#div_on_submissions_all").show();
$("#div_on_submissions_all_export").show();
if (res.perm_menu_submissions_all == 1) {
$("#div_on_submissions_all_edit").show();
}
}
if (res && typeof res.cannot_create_req_manually !== 'undefined') {
const cannotCreateChecked = res.cannot_create_req_manually === "1";
$(form).find('[name=on_cannot_create_req_manually]')
.prop('checked', cannotCreateChecked)
.val(cannotCreateChecked ? '1' : '0');
}
if (!$(form).find('[name=on_can_take_from_closed]').prop('checked')) {
$('#on_daily_closed_req_limit').closest('.checkbox').hide();
}
$(form).find('[name=on_can_take_from_closed]').on('change', (event) => {
if ($(event.target).prop('checked')) {
$('#on_daily_closed_req_limit').closest('.checkbox').show();
} else {
$('#on_daily_closed_req_limit').closest('.checkbox').hide();
}
});
if (res && typeof res.daily_closed_req_limit !== 'undefined') {
$('#on_daily_closed_req_limit').val(res.daily_closed_req_limit);
}
if (!$(form).find('[name=on_can_transfer_closed_to_others]').prop('checked')) {
$('#on_daily_closed_transfer_limit').closest('.checkbox').hide();
}
$(form).find('[name=on_can_transfer_closed_to_others]').on('change', (event) => {
if ($(event.target).prop('checked')) {
$('#on_daily_closed_transfer_limit').closest('.checkbox').show();
} else {
$('#on_daily_closed_transfer_limit').closest('.checkbox').hide();
}
});
if (res && typeof res.daily_closed_transfer_limit !== 'undefined') {
$('#on_daily_closed_transfer_limit').val(res.daily_closed_transfer_limit);
}
function toggleTransferClosedBlock() {
if ($(form).find('[name=on_can_take_from_closed]').prop('checked')) {
$('#on_can_transfer_closed_to_others').closest('.checkbox').show();
// Также показываем лимит, если чекбокс передачи включен
if ($(form).find('[name=on_can_transfer_closed_to_others]').prop('checked')) {
$('#on_daily_closed_transfer_limit').closest('.checkbox').show();
}
} else {
$('#on_can_transfer_closed_to_others').closest('.checkbox').hide();
$('#on_daily_closed_transfer_limit').closest('.checkbox').hide();
// Опционально: снимаем галочку при скрытии
$(form).find('[name=on_can_transfer_closed_to_others]').prop('checked', false);
}
}
toggleTransferClosedBlock();
$(form).find('[name=on_can_take_from_closed]').on('change', toggleTransferClosedBlock);
$(form).find('[name=on_can_transfer_closed_to_others]').on('change', function() {
if ($(this).prop('checked')) {
$('#on_daily_closed_transfer_limit').closest('.checkbox').show();
} else {
$('#on_daily_closed_transfer_limit').closest('.checkbox').hide();
}
});
function toggleSearchCompanyObjectsOnlyBlock() {
const $searchCheckbox = $(form).find('[name=on_search]');
const $blockToToggle = $('#search_company_objects_only_block');
if ($searchCheckbox.prop('checked')) {
$blockToToggle.show();
} else {
$blockToToggle.hide();
$(form).find('[name=on_search_company_objects_only]').prop('checked', false).val('0');
}
}
toggleSearchCompanyObjectsOnlyBlock();
$(form).find('[name=on_search]').on('change', toggleSearchCompanyObjectsOnlyBlock);
if ((res.agent == '1' && res.manager == '0') || res.manager == '0') {
$(form).find(".budget-total").hide();
}
if ($(form).find('#do_not_reinit_monthly').length > 0) {
if (res.advert_budget.do_not_reinit_monthly) {
$(form).find("[name=do_not_reinit_monthly]").prop('checked', true);
$(form).find(".month-label-name").html('руб.');
} else {
$(form).find("[name=do_not_reinit_monthly]").prop('checked', false);
$(form).find(".month-label-name").html('руб. в месяц');
}
}
if (res.advert_budget.personal)
$(form).find("[name=advert_budget_personal]").val(res.advert_budget.personal);
else
$(form).find("[name=advert_budget_personal]").val(0);
if (res.advert_budget.total)
$(form).find("[name=advert_budget_total]").val(res.advert_budget.total);
else
$(form).find("[name=advert_budget_total]").val(0);
if (res.advert_budget.avito)
$(form).find("[name=advert_budget_avito]").val(res.advert_budget.avito);
else
$(form).find("[name=advert_budget_avito]").val(0);
if ($(form).find('#advert_budget_avito_avail').length > 0) {
$(form).find("#advert_budget_avito_avail").html('Остаток: ' + (res.advert_budget.avito_available == null ? 0 : res.advert_budget.avito_available) + ' руб.');
$(form).find("#advert_budget_avito_avail").show();
}
if (res.advert_budget.cian)
$(form).find("[name=advert_budget_cian]").val(res.advert_budget.cian);
else
$(form).find("[name=advert_budget_cian]").val(0);
if ($(form).find('#advert_budget_cian_avail').length > 0) {
$(form).find("#advert_budget_cian_avail").html('Остаток: ' + (res.advert_budget.cian_available == null ? 0 : res.advert_budget.cian_available) + ' руб.');
$(form).find("#advert_budget_cian_avail").show();
}
if (res.advert_budget.domclick)
$(form).find("[name=advert_budget_domclick]").val(res.advert_budget.domclick);
else
$(form).find("[name=advert_budget_domclick]").val(0);
if ($(form).find('#advert_budget_domclick_avail').length > 0) {
$(form).find("#advert_budget_domclick_avail").html('Остаток: ' + (res.advert_budget.domclick_available == null ? 0 : res.advert_budget.domclick_available) + ' руб.');
$(form).find("#advert_budget_domclick_avail").show();
}
if (res.advert_budget.jcat)
$(form).find("[name=advert_budget_jcat]").val(res.advert_budget.jcat);
else
$(form).find("[name=advert_budget_jcat]").val(0);
if ($(form).find('#advert_budget_jcat_avail').length > 0) {
$(form).find("#advert_budget_jcat_avail").html('Остаток: ' + (res.advert_budget.jcat_available == null ? 0 : res.advert_budget.jcat_available) + ' руб.');
$(form).find("#advert_budget_jcat_avail").show();
}
if (res.advert_budget.yandex)
$(form).find("[name=advert_budget_yandex]").val(res.advert_budget.yandex);
else
$(form).find("[name=advert_budget_yandex]").val(0);
if ($(form).find('#advert_budget_yandex_avail').length > 0) {
$(form).find("#advert_budget_yandex_avail").html('Остаток: ' + (res.advert_budget.yandex_available == null ? 0 : res.advert_budget.yandex_available) + ' руб.');
$(form).find("#advert_budget_yandex_avail").show();
}
if (res.advert_budget.avito_unlimited) {
$(form).find("[name=advert_budget_avito_unlimited]").prop('checked', true);
$(form).find("[name=advert_budget_avito]").prop('disabled', true);
} else {
$(form).find("[name=advert_budget_avito_unlimited]").prop('checked', false);
$(form).find("[name=advert_budget_avito]").prop('disabled', false);
}
if (res.advert_budget.cian_unlimited) {
$(form).find("[name=advert_budget_cian_unlimited]").prop('checked', true);
$(form).find("[name=advert_budget_cian]").prop('disabled', true);
} else {
$(form).find("[name=advert_budget_cian_unlimited]").prop('checked', false);
$(form).find("[name=advert_budget_cian]").prop('disabled', false);
}
if (res.advert_budget.domclick_unlimited) {
$(form).find("[name=advert_budget_domclick_unlimited]").prop('checked', true);
$(form).find("[name=advert_budget_domclick]").prop('disabled', true);
} else {
$(form).find("[name=advert_budget_domclick_unlimited]").prop('checked', false);
$(form).find("[name=advert_budget_domclick]").prop('disabled', false);
}
if (res.advert_budget.jcat_unlimited) {
$(form).find("[name=advert_budget_jcat_unlimited]").prop('checked', true);
$(form).find("[name=advert_budget_jcat]").prop('disabled', true);
} else {
$(form).find("[name=advert_budget_jcat_unlimited]").prop('checked', false);
$(form).find("[name=advert_budget_jcat]").prop('disabled', false);
}
if (res.advert_budget.yandex_unlimited) {
$(form).find("[name=advert_budget_yandex_unlimited]").prop('checked', true);
$(form).find("[name=advert_budget_yandex]").prop('disabled', true);
} else {
$(form).find("[name=advert_budget_yandex_unlimited]").prop('checked', false);
$(form).find("[name=advert_budget_yandex]").prop('disabled', false);
}
if ($(form).find('#do_not_reinit_monthly').length > 0) {
$(form).find("[name=do_not_reinit_monthly]").on('change', (event) => {
if ($(event.target).prop('checked')) {
$(form).find(".month-label-name").html('руб.');
} else {
$(form).find(".month-label-name").html('руб. в месяц');
}
});
}
$(form).find("[name=advert_budget_avito_unlimited]").on('change', (event) => {
if ($(event.target).prop('checked'))
$(form).find("[name=advert_budget_avito]").prop('disabled', true);
else
$(form).find("[name=advert_budget_avito]").prop('disabled', false);
});
$(form).find("[name=advert_budget_cian_unlimited]").on('change', (event) => {
if ($(event.target).prop('checked'))
$(form).find("[name=advert_budget_cian]").prop('disabled', true);
else
$(form).find("[name=advert_budget_cian]").prop('disabled', false);
});
$(form).find("[name=advert_budget_domclick_unlimited]").on('change', (event) => {
if ($(event.target).prop('checked'))
$(form).find("[name=advert_budget_domclick]").prop('disabled', true);
else
$(form).find("[name=advert_budget_domclick]").prop('disabled', false);
});
$(form).find("[name=advert_budget_jcat_unlimited]").on('change', (event) => {
if ($(event.target).prop('checked'))
$(form).find("[name=advert_budget_jcat]").prop('disabled', true);
else
$(form).find("[name=advert_budget_jcat]").prop('disabled', false);
});
$(form).find("[name=advert_budget_yandex_unlimited]").on('change', (event) => {
if ($(event.target).prop('checked'))
$(form).find("[name=advert_budget_yandex]").prop('disabled', true);
else
$(form).find("[name=advert_budget_yandex]").prop('disabled', false);
});
if (res.is_dispatcher == 0) {
$(form).find("[name=is_dispatcher]").prop('checked', false);
$("#vpbx-block-edit").removeClass('hidden');
$(form).find("[name=vpbx_id]").val(res.vpbx_id);
}
if (typeof res.files !== "undefined") {
if (res.files.length > 0) {
$(form).find('#users_files_list').empty();
res.files.forEach(function(file) {
let file_html = '<li class="file">' +
'<a target="_blank" href="/download_file.php?userFileId=' + file.id + '&preview=1" title="Скачать файл"><span class="file-span ti-file"></span>&nbsp;<span class="file-name">' + file.filename + '</span></a>' +
'&nbsp;<a href="javascript:{};" data-id="' + file.id + '" class="delFile no-border" title="Удалить файл"><span class="simple-button delete"><i class="jw-action-icon-delete"></i></span></a></li>';
$(form).find('#users_files_list').append($(file_html));
});
}
}
$(form).find('.tabs__content.files .form-block.file-input').remove();
$("#user_form_edit").fadeIn(500);
//$("#user_form_edit").toggle(10);
$("body").addClass("lock");
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
});
$("body").on('click', '#user_form_edit .delFile', function(e) {
e.preventDefault();
let id = $(e.target).closest('a[data-id]').data('id');
if (typeof id !== "undefined") {
$.get('/ajax/delUserFile.php?id=' + id, function(results) {
let data = JSON.parse(results);
if (data == true) {
$(e.target).closest('li.file').remove();
}
});
}
});
$("body").on('click', '#user_form_edit .delUserPic', function(e) {
e.preventDefault();
let form = $(e.target).closest('form');
let id = form.find('[name="ok_agent_id"]').val();
if (typeof id !== "undefined") {
$.get('/ajax/delUserPic.php?id=' + id, function(results) {
let data = JSON.parse(results);
if (data == true) {
$(form).find(".user-pic img").attr('src', "");
$(form).find(".user-pic").hide();
$(form).find(".no-user-pic").show();
$(form).find(".user-pic-input").removeClass('have');
}
});
}
});
$("body").on('click', '#send_bg .closer', function() {
$("#send_bg").hide(10);
$("#send_bg").empty();
$("body").removeClass("lock");
});
$("body").on('click', '#user_form_edit .closer', function() {
$("#user_form_edit").hide(10);
$("#user_form_edit_form").hide(10);
$("#user_form_edit").empty();
$("body").removeClass("lock");
});
$("body").on("click", "#add_agent_form label[for=wa_enabled]", function(e) {
const input = e.target.parentElement.querySelector('input')
input.setAttribute('value', !input.checked ? 1 : 0)
})
$("body").on("click", "#edit_agent_form label[for=wa_enabled]", function(e) {
const input = e.target.parentElement.querySelector('input')
input.setAttribute('value', !input.checked ? 1 : 0)
console.log(input, 'input');
})
$("body").on('click', "#add_agent_form [name='ok_agent']", function() {
let form = $(this).closest('form');
let formData = new FormData(form[0]);
form.find('.error_msg').empty();
let avatar = formData.get('avatar');
if (!(avatar.name || avatar.size || avatar.type))
delete formData.delete('avatar');
let params = {};
formData.forEach(function(value, key) {
console.log(key, value);
params[key] = value;
});
console.info(formData);
console.info(params);
$.ajax({
type: 'POST',
url: '/users.php?ok_agent=1',
data: formData,
cache: false,
async: false,
contentType: false,
processData: false,
success: function(data) {
console.log(data);
if (data) {
$("#add_agent_form .error_msg").removeClass('hidden').html(data);
} else {
window.location.reload(true);
}
}
});
return false;
});
$("body").on('click', "#saveAdvBudgetButton", function() {
if (confirm('Вы точно хотите обновить бюджет?')) {
let form = $(this).closest('form');
let formData = new FormData(form[0]);
form.find('.error_msg').empty();
let params = {};
formData.forEach(function (value, key) {
console.log(key, value);
params[key] = value;
});
$.ajax({
type: 'POST',
url: '/ajax/editUserBudget.php',
data: formData,
cache: false,
async: false,
contentType: false,
processData: false,
success: function (data) {
//console.log(data);
let result = JSON.parse(data);
console.log(result);
if (result.error) {
$(".user_form_edit .error_msg").removeClass('hidden').html(result.error);
} else {
$(".user_form_edit .error_msg").addClass('hidden');
if (typeof (result.advert_budget.balance) !== undefined) {
$("#userTabInfo_" + result.id).find(".user_info_advert_budget a[data-user-id=\"" + result.id + "\"] > span > span").text(result.advert_budget.balance + ' руб.');
}
}
}
});
}
return false;
});
$("body").on('click', "#ok_agent_id", function() {
let form = $(this).closest('form');
let formData = new FormData(form[0]);
form.find('.error_msg').empty();
let avatar = formData.get('avatar');
if (!(avatar.name || avatar.size || avatar.type))
delete formData.delete('avatar');
let params = {};
formData.forEach(function(value, key) {
console.log(key, value);
params[key] = value;
});
$.ajax({
type: 'POST',
url: '/ajax/editUser.php',
data: formData,
cache: false,
async: false,
contentType: false,
processData: false,
success: function(data) {
console.log(data);
let result = JSON.parse(data);
console.log(result);
if (result.error) {
$(".user_form_edit .error_msg").removeClass('hidden').html(result.error);
} else {
$("#user_form_edit").hide(10);
$("#user_form_edit_form").hide(10);
$("body").removeClass("lock");
let fio = '';
if (result.last_name)
fio = result.last_name;
if (result.first_name)
fio += ' ' + result.first_name;
if (result.middle_name)
fio += ' ' + result.middle_name;
if (fio.length > 0)
$("#userTabInfo_" + result.id).find(".top h2").contents().first()[0].textContent = fio;
if (result.phone)
$("#userTabInfo_" + result.id).find(".phone_user .big").first().text(result.phone);
if (result.email)
$("#userTabInfo_" + result.id).find(".email_user a").text(result.email);
if (result.advert_budget && typeof(result.advert_budget.balance) !== 'undefined') {
$("#userTabInfo_" + result.id).find(".user_info_advert_budget a[data-user-id=\"" + result.id + "\"] > span > span").text(result.advert_budget.balance + ' руб.');
}
$(form).find(".phone_user span").remove();
if (result.user_logo) {
$("#userTabInfo_" + result.id + " > .tab > .user-name > .user-pic img").attr('src', result.user_logo);
$("#userTabInfo_" + result.id + " > .tab > .user-name > .user-pic").show();
$("#userTabInfo_" + result.id + " > .tab > .user-name > .no-user-pic").hide();
} else {
$("#userTabInfo_" + result.id + " > .tab > .user-name > .user-pic img").attr('src', '');
$("#userTabInfo_" + result.id + " > .tab > .user-name > .user-pic").hide();
$("#userTabInfo_" + result.id + " > .tab > .user-name > .no-user-pic").show();
}
if (params.is_dispatcher == 0 && params.vpbx_id != '') {
$("#userTabInfo_" + result.id + " .phone_user .big").after('<span style="display:block;padding:0;font-size:13px">(IP-тел: ' + params.vpbx_id + ')</span>');
}
}
}
});
});
$("body").on('click', '.show_spoiler', function() {
$(this).siblings(".spoiler").toggle('fast');
return false;
})
$("body").on('click', '.show_help_video', function() {
$(this).siblings(".block-video").toggle('fast');
return false;
})
$("body").on('click', '.show_clients', function() {
var id = $(this).attr('data-id');
$('.h').toggle('fast');
$('.c' + id).toggle('fast');
$(this).siblings('.ti-plus').toggleClass('ti-minus');
return false;
})
$("body").on('click', '.tr_agency', function() {
var id = $(this).attr('data-id');
var obj = $('#a' + id);
if (obj.is(':visible'))
{
obj.hide();
$(this).text('Развернуть');
} else
{
obj.show();
$(this).text('Свернуть');
}
})
$("body").on('click', '.show_agents, .show_managers', function() {
$('.show_agents, .show_managers').removeClass('active');
$('.employ label').show();
$(this).addClass('active');
var id = $(this).attr('data-id');
var obj = $('#a' + id);
var url = '/ajax/admin.php?get_managers=' + id;
if ($(this).hasClass('show_agents')) url = '/ajax/admin.php?get_agents=' + id;
obj.show();
$('.tr_agency').text('Свернуть');
obj.css({ "background": "url(/images/ajax_preloader.gif) no-repeat top right" });
$.ajax({
url: url,
success: function(data) {
$('#b' + id).html(data);
obj.css({ "background": "none" });
}
});
return false;
})
$("body").on('click', '.changeTarif', function(e) {
e.stopPropagation();
var id_user = $(this).attr('data-id');
var id_tarif = $(this).attr('data-tarif');
$("#changeTarif_bg").fadeIn(500);
$("#changeTarif").toggle(10);
$("body").addClass("lock");
$('input[name="id_user"]').val(id_user);
$('select[name="id_tarif"] option[value="' + id_tarif + '"]').attr('selected', 'selected');
return false;
});
$("body").on('click', '#submitTextButton', function(e) {
e.stopPropagation();
var text = $('#chatTextArea').val();
if (text && $.trim(text)) {
var id_object = $(this).attr('data-id');
var id_event = $(this).attr('data-event-id');
$('#event-chat').html('<div class="preloader"></div>');
$('#event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addObjectComment.php',
method: "post",
data: {
"object_id": id_object,
"event_id": id_event || null,
"comment": text
},
success: function() {
$('#chatTextArea').val('');
$('.jw__object.item[id="' + id_object + '"] .object-content__main-actions .addEditNote').addClass('active');
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
if (typeof id_event !== "undefined") {
$('#object-history .chat-form #cancelTextButton').hide();
$('#object-history .chat-form #submitTextButton').removeAttr('data-event-id');
$('#object-history .chat-form #chatTextArea').val('');
$('#object-history .chat-form .chat-textarea').removeAttr('style');
$('#object-history .chat-form .submit').removeAttr('style');
$('#object-history .chat-form .task').show();
}
}
});
}
});
}
return false;
});
$("body").on('click', '#cancelTextButton', function(e) {
e.stopPropagation();
if ($('#object-history').css('display') != 'none') {
let id = $('#object-history .chat-form #submitTextButton').attr('data-event-id');
if ($('#chat_content_' + id).length > 0) {
$('#chat_content_' + id).closest('.chat-block').removeAttr('style');
}
$('#object-history .chat-form #cancelTextButton').hide();
$('#object-history .chat-form #submitTextButton').removeAttr('data-event-id');
$('#object-history .chat-form #chatTextArea').val('');
$('#object-history .chat-form .chat-textarea').removeAttr('style');
$('#object-history .chat-form .submit').removeAttr('style');
$('#object-history .chat-form .task').show();
}
return false;
});
$("body").on('click', '#cancelTextButton2', function(e) {
e.stopPropagation();
if ($('#object-notes').css('display') != 'none') {
let id = $('#object-notes .chat-form #submitTextButton2').attr('data-note-id');
if ($('#chat_content_' + id).length > 0) {
$('#chat_content_' + id).closest('.chat-block').removeAttr('style');
}
$('#object-notes .chat-form #cancelTextButton2').hide();
$('#object-notes .chat-form #submitTextButton2').removeAttr('data-note-id');
$('#object-notes .chat-form #chatTextArea2').val('');
$('#object-notes .chat-form .submit').removeAttr('style');
}
return false;
});
$("body").on('click', '#submitTextButton2', function(e) {
e.stopPropagation();
var text = $('#chatTextArea2').val();
if (text && $.trim(text)) {
var id_object = $(this).attr('data-id');
var id_note = $(this).attr('data-note-id');
$('#notes-chat').html('<div class="preloader"></div>');
$('#notes-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addObjectNote.php',
method: "post",
data: {
"object_id": id_object,
"note_id": id_note,
"message": text
},
success: function() {
$('#chatTextArea2').val('');
$.ajax({
url: '/ajax/getLogForNotes.php?object_id=' + id_object,
success: function(data) {
//console.log(data);
$('#notes-chat').html(data);
$('#object-notes .chat-form #cancelTextButton2').click();
if ($('#notes-chat .chat-block').length > 0)
$('.addEditNote[data-id="' + id_object + '"]').addClass('haveNotes');
else
$('.addEditNote[data-id="' + id_object + '"]').removeClass('haveNotes');
$('.history__chat').scrollTop($('#notes-chat').prop("scrollHeight"));
}
});
}
});
}
return false;
});
$("body").on('click', '#submitClientInfoTextButton', function(e) {
e.stopPropagation();
var text = $('#clientChatTextArea').val();
if (text && $.trim(text)) {
var id_client = $(this).attr('data-id');
$('#client-event-chat').html('<div class="preloader"></div>');
$('#client-event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addClientComment.php',
method: "post",
data: {
"client_id": id_client,
"comment": text
},
success: function() {
$('#clientChatTextArea').val('');
$.ajax({
url: '/ajax/getClientLogForEvents.php?id=' + id_client,
success: function(data) {
$('#client-event-chat').html(data);
$('#client_history .history .history__chat').scrollTop($('#client-event-chat').prop("scrollHeight"));
}
});
}
});
}
return false;
});
$("body").on('click', '#addCallButton', function(e) {
e.stopPropagation();
var text = $('#callComment').val();
var date = $('#callDatetime').datepicker().val();
var who_work = 0;
if($('#chat-modal__call .who_work_tasks')){
who_work = $('#chat-modal__call .who_work_tasks').val();
}
if (date && $.trim(date)) {
var type = $("#chat-modal__call").attr('data-type');
if (type == 'object') {
var id_object = $('#submitTextButton').attr('data-id');
$('#event-chat').html('<div class="preloader"></div>');
$('#event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addObjectCall.php',
method: "post",
data: {
"object_id": id_object,
"comment": text,
"schedule_date": date,
"who_work": who_work,
},
success: function() {
$("#chat-modal__bg__call").hide(10);
$("#chat-modal__call").hide(10);
$('#callComment').val('');
$('#callDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
} else {
if (type == 'client') {
var id_client = $('#submitClientInfoTextButton').attr('data-id');
$('#client-event-chat').html('<div class="preloader"></div>');
$('#client-event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addClientCall.php',
method: "post",
data: {
"client_id": id_client,
"comment": text,
"schedule_date": date
},
success: function() {
$("#chat-modal__bg__call").hide(10);
$("#chat-modal__call").hide(10);
$('#callComment').val('');
$('#callDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getClientLogForEvents.php?id=' + id_client,
success: function(data) {
$('#client-event-chat').html(data);
$('#client_history .history .history__chat').scrollTop($('#client-event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
}
}
}
return false;
});
$("body").on('click', '#addShowButton', function(e) {
e.stopPropagation();
var who_work = 0;
if($('#chat-modal__showing .who_work_tasks')){
who_work = $('#chat-modal__showing .who_work_tasks').val();
}
var text = $('#showComment').val();
var address = $('#showAddress').val();
var date = $('#showDatetime').datepicker().val();
var req_id = $('#showRequisitions').val();
if (date && $.trim(date)) {
var type = $("#chat-modal__showing").attr('data-type');
if (type == 'object') {
var id_object = $('#submitTextButton').attr('data-id');
$('#event-chat').html('<div class="preloader"></div>');
$('#event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addObjectShow.php',
method: "post",
data: {
"object_id": id_object,
"comment": text,
"address": address,
"schedule_date": date,
"req_id": req_id,
"who_work": who_work,
},
success: function() {
//console.log(data);
$("#chat-modal__bg__showing").hide(10);
$("#chat-modal__showing").hide(10);
$('#showComment').val('');
$('#showAddress').val('');
$('#showDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
} else {
if (type == 'client') {
var id_client = $('#submitClientInfoTextButton').attr('data-id');
$('#client-event-chat').html('<div class="preloader"></div>');
$('#client-event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addClientShow.php',
method: "post",
data: {
"client_id": id_client,
"comment": text,
"address": address,
"schedule_date": date
},
success: function() {
$("#chat-modal__bg__showing").hide(10);
$("#chat-modal__showing").hide(10);
$('#showComment').val('');
$('#showAddress').val('');
$('#showDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getClientLogForEvents.php?id=' + id_client,
success: function(data) {
$('#client-event-chat').html(data);
$('#client_history .history .history__chat').scrollTop($('#client-event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
}
}
}
return false;
});
$("body").on('click', '#addMeetButton', function(e) {
e.stopPropagation();
var text = $('#meetComment').val();
var address = $('#meetAddress').val();
var date = $('#meetDatetime').datepicker().val();
if($('#chat-modal__meeting .who_work_tasks')){
who_work = $('#chat-modal__meeting .who_work_tasks').val();
}
if (date && $.trim(date)) {
var type = $("#chat-modal__meeting").attr('data-type');
if (type == 'object') {
var id_object = $('#submitTextButton').attr('data-id');
$('#client-event-chat').html('<div class="preloader"></div>');
$('#client-event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addObjectMeet.php',
method: "post",
data: {
"object_id": id_object,
"comment": text,
"address": address,
"schedule_date": date,
"who_work": who_work,
},
success: function() {
$("#chat-modal__bg__meeting").hide(10);
$("#chat-modal__meeting").hide(10);
$('#meetComment').val('');
$('#meetAddress').val('');
$('#meetDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
} else {
if (type == 'client') {
var id_client = $('#submitClientInfoTextButton').attr('data-id');
$('#client-event-chat').html('<div class="preloader"></div>');
$('#client-event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addClientMeet.php',
method: "post",
data: {
"client_id": id_client,
"comment": text,
"address": address,
"schedule_date": date
},
success: function() {
$("#chat-modal__bg__meeting").hide(10);
$("#chat-modal__meeting").hide(10);
$('#meetComment').val('');
$('#meetAddress').val('');
$('#meetDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getClientLogForEvents.php?id=' + id_client,
success: function(data) {
$('#client-event-chat').html(data);
$('#client_history .history .history__chat').scrollTop($('#client-event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
}
}
}
return false;
});
$("body").on('click', '#addDealButton', function(e) {
e.stopPropagation();
var text = $('#dealComment').val();
var sum = $('#dealSum').val();
var date = $('#dealDatetime').datepicker().val();
if($('#chat-modal__deal .who_work_tasks')){
who_work = $('#chat-modal__deal .who_work_tasks').val();
}
if (date && $.trim(date)) {
var type = $("#chat-modal__deal").attr('data-type');
if (type == 'object') {
var id_object = $('#submitTextButton').attr('data-id');
var client_id = $('#dealClient').val();
var blank_id = $('#dealBlank').val();
var client_ids = null;
if(docs_new_client_input_vue.values){
client_ids = docs_new_client_input_vue.values;
//console.log(client_ids);
} else {
client_ids = $('#dealClients').val();
}
//console.log(client_ids);
$('#event-chat').html('<div class="preloader"></div>');
$('#event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addObjectDeal.php',
method: "post",
data: {
"object_id": id_object,
"client_id": client_id,
"blank_id": blank_id,
"comment": text,
"sum": sum,
"schedule_date": date,
"who_work": who_work,
"client_ids": client_ids,
},
success: function() {
$("#chat-modal__bg__deal").hide(10);
$("#chat-modal__deal").hide(10);
$('#dealComment').val('');
$('#dealSum').val('');
$('#dealDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
} else {
if (type == 'client') {
var id_client = $('#submitClientInfoTextButton').attr('data-id');
var object_id = $('#dealObject').val();
var blank_id = $('#dealBlank').val();
$('#client-event-chat').html('<div class="preloader"></div>');
$('#client-event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addClientDeal.php',
method: "post",
data: {
"client_id": id_client,
"object_id": object_id,
"blank_id": blank_id,
"comment": text,
"sum": sum,
"schedule_date": date
},
success: function() {
$("#chat-modal__bg__deal").hide(10);
$("#chat-modal__deal").hide(10);
$('#dealComment').val('');
$('#dealSum').val('');
$('#dealDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getClientLogForEvents.php?id=' + id_client,
success: function(data) {
$('#client-event-chat').html(data);
$('#client_history .history .history__chat').scrollTop($('#client-event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
}
}
}
return false;
});
$("body").on('click', '.add-event,.add-event-full', function(e) {
e.stopPropagation();
var id_object = $(this).attr('data-id');
openEventsWindow(id_object);
return false;
});
$("body").on('click', '.addEditNote, .add-note', function(e) {
e.stopPropagation();
let id = $(this).attr('data-id');
openNotesWindow(id);
return false;
});
$("body").on('click', '.advertisingBtn', function() {
let id = $(this).attr('data-id');
$('.object-content__sub-actions.actionAdv').hide();
$('#advertisings__' + id).show();
return false;
});
$("body").on('click', '.advertisingBtn', function() {
});
$("body").on('click', '.delete-object-photos-btn', function() {
$.ajax({
url: '/ajax/modals/deleteSelectedOrAllPhotos.php',
success: function(data) {
$("#delete_photos").html(data).fadeIn(500);
$("#delete_photos").show();
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
// $('#delete-object-photos').show();
return false;
});
$("body").on('click', '.actionAdv .closer', function() {
$(this).parent('.actionAdv').hide();
/* if ($(this).closest('.actionAdv').hasClass('actionAdvModeration')) {
close_moderation();
} else {
$(this).parent('.actionAdv').hide();
}*/
return false;
});
$("body").on('click', '.contract_req > a', function(e) {
if ($(this).closest("#requisitions_list").length == 0) {
e.stopPropagation();
let id = $(this).attr('data-id');
$('.jw__popup.actions-tags:not([id="popup__contract_tag_' + id + '"])').removeClass('show');
let popup = $('#popup__contract_tag_' + id);
if (popup.hasClass('show'))
popup.removeClass('show');
else
popup.addClass('show');
if (popup.hasClass('show')) {
let instance = popup.data('for');
let tagsList = popup.find('#popup__contract_tag_select' + id);
tagsList.fastselect().data('fastselect').destroy();
//$('#req-new-client-work-input').html(html);
tagsList.val(0);
tagsList.fastselect({
laceholder: 'Выбрать...',
onItemCreate: function() {},
onItemSelect: function(item, val) {
var res = val.value;
popup.removeClass('show');
if (res == 1) {
openChangeTags(id);
} else if (res == 2) {
if (typeof contract_form != "undefined") {
contract_form.parent_type = instance,
contract_form.parent_id = id,
contract_form.open();
}
}
}
});
}
}
})
$("body").on('click', '.addTag > a', function(e) {
if ($(this).closest("#requisitions_list").length == 0 && $(this).closest(".contract_req").length == 0) {
e.stopPropagation();
let id = $(this).attr('data-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() {
let id = popup.data('id');
let instance = popup.data('for');
let tagsView = $('.jw__object.item#item' + id + ' .tags');
if (instance == "clients")
tagsView = $('.client#client__' + id + ' .tags');
let activities = tagsList.val();
$.post('/ajax/addActivities.php', {
id: id,
activities: activities,
instance: instance
}, function(data) {
console.log(data);
let result = JSON.parse(data);
if (result.length > 0) {
tagsView.empty();
tagsView.append('<i class="ti-tag"></i> ');
for (let i = 0; i < result.length; i++) {
if (result[i]['id'] && result[i]['name']) {
if (i != result.length - 1)
tagsView.append('<span data-id="' + result[i]['id'] + '">' + result[i]['name'] + '</span>, ');
else
tagsView.append('<span data-id="' + result[i]['id'] + '">' + result[i]['name'] + '</span>');
}
}
tagsView.show();
} else {
tagsView.hide();
}
popup.removeClass('show');
});
});
}
return false;
}
});
$(document).delegate('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.actions-tags').removeClass('show');
}
});
$("body").on('click', '.ad-report', function(e) {
e.stopPropagation();
var id_object = $(this).attr('data-id');
openAdStatsWindow(id_object);
return false;
});
$("body").on('click', '.publish-report', function(e) {
e.stopPropagation();
var id_object = $(this).attr('data-id');
openPublishStatsWindow(id_object);
return false;
});
$("body").on('click', '.sendToNewUser', function(e) {
e.stopPropagation();
var id_object = $(this).attr('data-id');
openSendToNewUserWindow(id_object);
return false;
});
$("body").on('click', '.cancelSendToNewUser', function(e) {
e.stopPropagation();
var user_id = $(this).attr('data-user-id');
var object_id = $(this).attr('data-id');
showCancelSendToNewUserWindow(user_id, object_id);
return false;
});
$("body").on('click', '.client-events', function(e) {
e.stopPropagation();
var id_client = $(this).attr('data-id');
openClientEventsWindowNew(id_client, $('#session_to_send').val());
return false;
});
$("body").on('click', '.pay_btn', function() {
var id = $(this).attr('data-id');
var obj = $(this).parent();
obj.css({ "background": "url(/images/ajax_preloader.gif) no-repeat top right" });
$.ajax({
url: '/ajax/pay.php?id=' + id,
success: function(data) {
obj.append(data);
obj.css({ "background": "none" });
obj.submit();
}
});
return false;
})
$("body").on('click', '.addVkPost', function() {
getVkObjDesc($(this).attr('data-id'));
});
$("body").on('click', '.editMyObject', function() {
var object_id = $(this).attr('data-id');
var page = $(this).attr('data-page');
var complex_id = $(this).attr('data-complexid');
var thisPage = document.location.pathname;
localStorage['edit_object_id'] = object_id;
if (!isNaN(parseInt(page))) {
localStorage['edit_object_page'] = page;
}
var href_add_object = "/add-object.php?id=" + $(this).attr('data-id');
if (!isEmpty(complex_id)) {
href_add_object += "&complex_id=" + complex_id;
}
if(!isEmpty(thisPage)){
href_add_object += "&return_page=" + thisPage;
}
window.location = href_add_object;
});
$("body").on('mousedown', '.editMyObject', function(e) {
if(e.button == 2){
var object_id = $(this).attr('data-id');
var page = $(this).attr('data-page');
var complex_id = $(this).attr('data-complexid');
var thisPage = document.location.pathname;
localStorage['edit_object_id'] = object_id;
if (!isNaN(parseInt(page))) {
localStorage['edit_object_page'] = page;
}
var href_add_object = "/add-object.php?id=" + $(this).attr('data-id');
if (!isEmpty(complex_id)) {
href_add_object += "&complex_id=" + complex_id;
}
if(!isEmpty(thisPage)){
href_add_object += "&return_page=" + thisPage;
}
$(this).attr('href', href_add_object);
} else {
$(this).attr('href', 'javascript:{}');
}
})
$("body").on('click', '.refreshMyObject', function() {
$.ajax({
url: '/ajax/refreshUserObject.php?objId=' + $(this).attr('data-id'),
success: function() {
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
});
$("body").on('click', '#archiveObjectSubmit', function() {
var objectId = $('#archiveObjectId').val();
var objectSale = $('#archiveObjectSale').val();
var objectArchiveReason = $('#archiveObjectReason').val();
var objectArchiveComment = $('#archiveObjectComment').val();
var objectArchiveDone = $('#archiveObjectDone').prop('checked');
var objectArchiveSum = $('#saleObjectSum').val();
if (objectArchiveDone) {
if (!objectArchiveSum) {
if (objectSale === '1') {
$('#archiveObjectErrors').html("Необходимо указать цену продажи объекта");
} else {
$('#archiveObjectErrors').html("Необходимо указать цену реализации объекта");
}
return;
}
} else {
if (objectArchiveReason <= 0) {
$('#archiveObjectErrors').html("Необходимо указать причину переноса в архив");
return;
}
}
var objectArchiveReasonText = $("#archiveObjectReason option:selected").text();
$.ajax({
url: '/ajax/archiveUserObjectWithReason.php',
method: "post",
data: {
"objId": objectId,
"comment": objectArchiveComment,
"stoim": objectArchiveSum,
"deal": objectArchiveDone,
"reason": objectArchiveReasonText
},
success: function() {
$("#archive_object_modal_bg").hide(10);
$("#archive_object_modal").hide(10);
$("body").removeClass("lock");
updateArchiveButton();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
});
$("body").on('click', '.archiveMyObject', function() {
var objectId = $(this).attr('data-id');
$.ajax({
url: '/ajax/modals/archiveObjectModalContent.php?objectId=' + objectId,
success: function(data) {
$('#archive_object_modal').html(data);
$("#archive_object_modal").fadeIn(500);
$("#archive_object_modal_bg").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
});
$("body").on('click', '.unArchiveMyObject', function() {
$.ajax({
url: '/ajax/unArchiveUserObject.php?objId=' + $(this).attr('data-id'),
success: function() {
updateArchiveButton();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
});
$("body").on('click', '.otherObjectsAnalysis', function(e) {
e.stopPropagation();
$('.modal__content').html('<div class="object-content__preloader" style="display: block;"><img src="/images/rocket-spinner.svg" width="96px"></div>');
$('.analytics-modal').addClass('is-opened');
$('#filter-sort-order option[value=date]').prop('selected', true);
$.ajax({
url: '/ajax/modals/analyticsWinContent.php?page=1&objectId=' + $(this).attr('data-id'),
success: function(data) {
$(".modal__content").html(data);
let modalContainer = document.querySelector('.analytics-modal').querySelector('.modal__container');
modalContainer.scrollTo({
top: 0
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
});
$("body").on('click', '.showCabinetAnalyticsWindow', function(e) {
e.stopPropagation();
$('.modal__content').html('<div class="object-content__preloader" style="display: block;"><img src="/images/rocket-spinner.svg" width="96px"></div>');
$('.analytics-modal').addClass('is-opened')
$.ajax({
url: '/ajax/modals/analyticsWinContent.php?page=1&cabinet=1&objectId=' + $(this).attr('data-id'),
success: function(data) {
$(".modal__content").html(data);
let modalContainer = document.querySelector('.analytics-modal').querySelector('.modal__container');
modalContainer.scrollTo({
top: 0
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
});
$("body").on('click', '.obj-analysis-paging10', function(e) {
e.stopPropagation();
$('#objectsAnalysisContainer').html('<div class="object-content__preloader" style="display: block;"><img src="/images/rocket-spinner.svg" width="96px"></div>');
var id = $(this).attr('data-id');
var part = $(this).attr('data-part');
var pageNum = $(this).attr('data-page-num');
$.ajax({
url: '/ajax/analytics/getAnalyticsObjectList.php?page=' + pageNum + '&objectId=' + id + '&analysisPart=' + part,
success: function(data) {
$('#objectsAnalysisContainer').html(data);
$("#modalObjectsAnalysis").get(0).scrollIntoView();
setTimeout(function() {
$('#objectsAnalysisContainer .fotorama').fotorama();
}, 100);
}
});
return false;
});
$("body").on('click', '.deleteMyObject', function() {
$.ajax({
url: '/ajax/deleteUserObject.php?objId=' + $(this).attr('data-id'),
success: function() {
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
});
$("body").on('click', '.deleteAdObject', function() {
$.ajax({
url: '/ajax/deleteAdObject.php?objId=' + $(this).attr('data-id'),
success: function() {
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
});
$("body").on('click', '.advertisingCosts', function() {
var objId = $(this).attr('data-id');
advertisingCostsWindow(objId);
});
$('#save_settings').click(function() {
email_settings();
$('#email_settings_form').submit();
return false;
});
$('#agencyObjectsSearch').click(function() {
$(this).parent().submit();
});
$("#type_email_settings").change(function() {
email_settings();
});
$('#who_work').on('change', function() {
var sid = $("#sid").attr('data-id');
var who_work = $(this).val();
if (sid == who_work) {
$('#confirm').val('1');
} else {
$('#confirm').val('0');
}
})
$("body").on('click', '#chat__new-call', function() {
//console.log('chat');
var section = 'object';
var selector = '#chat-modal__call';
var id = 0;
$('#callDatetime').datepicker().data('datepicker').selectDate(new Date());
$('#addCallButton').show();
$('#addCallButtonNew').hide();
$("#chat-modal__bg__call").fadeIn(500);
$("#chat-modal__call").attr('data-type', 'object');
$("#chat-modal__call").toggle(10);
$("body").addClass("lock");
get_select_who_work_task(selector, section, id);
return false;
});
$("body").on('click', '#client__new-call', function() {
//console.log('lient');
var section = 'client';
var selector = '#chat-modal__call';
var id = 0;
$('#callTelphin').prop('checked', false);
$('#intervalTo').hide();
$('.intervalBlock .label').css('float', 'left');
$('#intervalToLabel').hide();
$('#spanFromInterval').hide();
$('#callDatetime').datepicker().data('datepicker').selectDate(new Date());
$('#addCallButton').hide();
$('#addCallButtonNew').show();
$("#chat-modal__bg__call").fadeIn(500);
$("#chat-modal__call").attr('data-type', 'client');
$("#chat-modal__call").toggle(10);
//$("body").addClass("lock");
//console.log($(this).data("step"));
if ($(this).data("step") !== undefined) {
$('#addCallButtonNew').attr("data-step", $(this).data("step"));
$('.addCallButtonNew').attr("data-step", $(this).data("step"));
ac.stepVal = $(this).data("step");
} else {
$('#addCallButtonNew').removeAttr("data-step");
$('.addCallButtonNew').removeAttr("data-step");
ac.stepVal = 0;
}
if ($(this).attr("data-id")) {
id = $(this).attr("data-id");
$('#addCallButtonNew').attr("data-id", $(this).attr("data-id"));
$('.addCallButtonNew').attr("data-id", $(this).attr("data-id"));
} else {
$('#addCallButtonNew').removeAttr("data-id");
$('.addCallButtonNew').removeAttr("data-id");
}
if ($(this).attr("data-req")) {
id = $(this).attr("data-req");
section = 'req';
$('#addCallButtonNew').attr("data-req", $(this).attr("data-req"));
$('.addCallButtonNew').attr("data-req", $(this).attr("data-req"));
} else {
$('#addCallButtonNew').removeAttr("data-req");
$('.addCallButtonNew').removeAttr("data-req");
}
get_select_who_work_task(selector, section, id);
return false;
});
$("body").on('click', '#chat__new-event', function() {
if ($(this).attr("data-object-id")) {
object_id = parseInt($(this).attr("data-object-id"));
}
$('#addTaskBgObj .action_obj_call').attr("data-objectid", object_id);
editEventObj(0, 'even');
});
$("body").on('click', '#chat__new-showing', function() {
var section = 'object';
var selector = '#chat-modal__showing';
var id = 0;
var object_id = 0;
$('#showRequisitionsInput').closest('.form-block').show();
if ($(this).attr("data-object-id")) {
object_id = parseInt($(this).attr("data-object-id"));
id = object_id;
}
$('#showRequisitionsInput').html('');
$("#showRequisitionsInput").html('<input type="text" id="showRequisitions" data-url="/ajax/lists/list_reqs_object.php?id=' + object_id + '" data-load-once="true">');
$('#showRequisitions').fastselect({
placeholder: 'Заявка',
});
$('#showDatetime').datepicker().data('datepicker').selectDate(new Date());
$('#addShowButton').show();
$('#addShowButtonNew').hide();
$("#chat-modal__bg__showing").fadeIn(500);
$("#chat-modal__showing").attr('data-type', 'object');
$("#chat-modal__showing").toggle(10);
$("body").addClass("lock");
get_select_who_work_task(selector, section, id);
return false;
});
$("body").on('click', '#client__new-showing', function() {
var section = 'client';
var selector = '#chat-modal__showing';
var id = 0;
$('#showDatetime').datepicker().data('datepicker').selectDate(new Date());
$('#addShowButton').hide();
$('#addShowButtonNew').show();
$("#chat-modal__bg__showing").fadeIn(500);
$("#chat-modal__showing").attr('data-type', 'client');
$("#chat-modal__showing").toggle(10);
///$("body").addClass("lock");
$('#showRequisitionsInput').closest('.form-block').hide();
if ($(this).data("step") !== undefined) {
$('#addShowButtonNew').attr("data-step", $(this).data("step"));
$('.addShowButtonNew').attr("data-step", $(this).data("step"));
ac.stepVal = $(this).data("step");
} else {
$('#addShowButtonNew').removeAttr("data-step");
$('.addShowButtonNew').removeAttr("data-step");
ac.stepVal = 0;
}
if ($(this).attr("data-id")) {
id = $(this).attr("data-id");
$('#addShowButtonNew').attr("data-id", $(this).attr("data-id"));
$('.addShowButtonNew').attr("data-id", $(this).attr("data-id"));
} else {
$('#addShowButtonNew').removeAttr("data-id");
$('.addShowButtonNew').removeAttr("data-id");
}
if ($(this).attr("data-req")) {
id = $(this).attr("data-req");
section = 'req';
$('#addShowButtonNew').attr("data-req", $(this).attr("data-req"));
$('.addShowButtonNew').attr("data-req", $(this).attr("data-req"));
} else {
$('#addShowButtonNew').removeAttr("data-req");
$('.addShowButtonNew').removeAttr("data-req");
}
get_select_who_work_task(selector, section, id);
return false;
});
$("body").on('click', '#chat__new-meeting', function() {
var section = 'object';
var selector = '#chat-modal__meeting';
var id = 0;
$('#meetDatetime').datepicker().data('datepicker').selectDate(new Date());
$('#addMeetButton').show();
$('#addMeetButtonNew').hide();
$("#chat-modal__bg__meeting").fadeIn(500);
$("#chat-modal__meeting").attr('data-type', 'object');
$("#chat-modal__meeting").toggle(10);
$("body").addClass("lock");
get_select_who_work_task(selector, section, id);
return false;
});
$("body").on('click', '#client__new-meeting', function() {
var section = 'client';
var selector = '#chat-modal__meeting';
var id = 0;
$('#meetDatetime').datepicker().data('datepicker').selectDate(new Date());
$('#addMeetButton').hide();
$('#addMeetButtonNew').show();
$("#chat-modal__bg__meeting").fadeIn(500);
$("#chat-modal__meeting").attr('data-type', 'client');
$("#chat-modal__meeting").toggle(10);
//$("body").addClass("lock");
if ($(this).data("step") !== undefined) {
$('#addMeetButtonNew').attr("data-step", $(this).data("step"));
$('.addMeetButtonNew').attr("data-step", $(this).data("step"));
ac.stepVal = $(this).data("step");
} else {
$('#addMeetButtonNew').removeAttr("data-step");
$('.addMeetButtonNew').removeAttr("data-step");
ac.stepVal = 0;
}
if ($(this).attr("data-id")) {
id = $(this).attr("data-id");
$('#addMeetButtonNew').attr("data-id", $(this).attr("data-id"));
$('.addMeetButtonNew').attr("data-id", $(this).attr("data-id"));
} else {
$('#addMeetButtonNew').removeAttr("data-id");
$('.addMeetButtonNew').removeAttr("data-id");
}
if ($(this).attr("data-req")) {
id = $(this).attr("data-req");
section = 'req';
$('#addMeetButtonNew').attr("data-req", $(this).attr("data-req"));
$('.addMeetButtonNew').attr("data-req", $(this).attr("data-req"));
} else {
$('#addMeetButtonNew').removeAttr("data-req");
$('.addMeetButtonNew').removeAttr("data-req");
}
get_select_who_work_task(selector, section, id);
return false;
});
$("body").on('click', '#chat__new-deal', function() {
var section = 'object';
var selector = '#chat-modal__deal';
var id = 0;
$('#dealDatetime').datepicker().data('datepicker').selectDate(new Date());
$('#addDealButton').show();
$('#addDealButtonNew').hide();
$("#chat-modal__deal").attr('data-type', 'object');
$("#chat-modal__deal form .client-deal").show();
$("#chat-modal__deal form .object-deal").hide();
$("#chat-modal__deal form #dealClient").val('');
$("#chat-modal__deal form #dealBlank").val('');
get_select_who_work_task(selector, section, id);
docs_new_client_input_vue.clear();
/*$('#chat-modal__deal form #dealClients').closest(".inputs").html('<select id="dealClients" multiple></select>');
$.get("/ajax/getInnerSources.php", {
user_id: user_id,
agency_id: agency_id,
section: 'clients',
view: 'option'
}, function(result) {
if (result.length) {
let non_sel = '<option value="0">Не выбрано</option>';
$('#chat-modal__deal form #dealClients').html(non_sel + result);
}
});
$('#chat-modal__deal form #dealClients option').prop("selected", false);
$('#chat-modal__deal form #dealClients').fastselect({
placeholder: 'Выберите клиентов'
});
$('#chat-modal__deal form #dealClients').closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
$('#chat-modal__deal form #dealClients').closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');*/
$('#chat-modal__deal form #dealBlank').closest(".inputs").html('<select id="dealBlank"></select>');
$.get("/ajax/getInnerBlanks.php?view=option", function(result) {
let non_sel = '<option value="0">Не выбрано</option>';
$("#chat-modal__deal form #dealBlank").html(non_sel + result);
});
$('#chat-modal__deal form #dealBlank option').prop("selected", false);
$('#chat-modal__deal form #dealBlank').fastselect({
placeholder: 'Выберите бланк'
});
$('#chat-modal__deal form #dealBlank').closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
$('#chat-modal__deal form #dealBlank').closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');
$("#chat-modal__bg__deal").fadeIn(500);
$("#chat-modal__deal").toggle(10);
$("body").addClass("lock");
return false;
});
$("body").on('click', '#client__new-deal', function() {
var section = 'client';
var selector = '#chat-modal__deal';
var id = 0;
$('#dealDatetime').datepicker().data('datepicker').selectDate(new Date());
$('#addDealButton').hide();
$('#addDealButtonNew').show();
$("#chat-modal__deal").attr('data-type', 'client');
$("#chat-modal__deal form .client-deal").show();
$("#chat-modal__deal form .object-deal").show();
$("#chat-modal__deal form #dealSum").val('');
$("#chat-modal__deal form #dealComment").val('');
let user_id = $('#sid').data("id");
let client_id = $(this).data("client-id");
let agency_id = $('#session_agency_id').val();
let req_id = 0
if ($(this).attr("data-req")) {
req_id = $(this).attr("data-req");
}
//console.log({user_id, client_id});
docs_new_client_input_vue.clear();
if(req_id > 0){
docs_new_client_input_vue.get_clientid_req(req_id);
} else
if(client_id>0){
docs_new_client_input_vue.search_client(client_id);
}
/* $('#chat-modal__deal form #dealClients').closest(".inputs").html('<select id="dealClients" multiple></select>');
$.get("/ajax/getInnerSources.php", {
user_id: user_id,
agency_id: agency_id,
section: 'clients',
view: 'option',
client_id: client_id,
req_id: req_id,
}, function(result) {
if (result.length) {
let non_sel = '<option value="0">Не выбрано</option>';
$('#chat-modal__deal form #dealClients').html(result);
$('#chat-modal__deal form #dealClients').fastselect().data('fastselect').destroy();
$('#chat-modal__deal form #dealClients').fastselect({
placeholder: 'Выберите клиентов'
});
$('#chat-modal__deal form #dealClients').closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
$('#chat-modal__deal form #dealClients').closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');
}
});
$('#chat-modal__deal form #dealClients').fastselect({
placeholder: 'Выберите клиентов'
});
$('#chat-modal__deal form #dealClients').closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
$('#chat-modal__deal form #dealClients').closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');*/
$('#chat-modal__deal form #dealObject').closest(".inputs").html('<select id="dealObject"></select>');
$.get("/ajax/getInnerSources.php", {
user_id: user_id,
agency_id: agency_id,
section: 'objects',
view: 'option'
}, function(result) {
if (result.length) {
let non_sel = '<option value="0">Не выбрано</option>';
$('#chat-modal__deal form #dealObject').html(non_sel + result);
}
});
$('#chat-modal__deal form #dealObject option').prop("selected", false);
$('#chat-modal__deal form #dealObject').fastselect({
placeholder: 'Выберите объект'
});
$('#chat-modal__deal form #dealObject').closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
$('#chat-modal__deal form #dealObject').closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');
$('#chat-modal__deal form #dealBlank').closest(".inputs").html('<select id="dealBlank"></select>');
$.get("/ajax/getInnerBlanks.php?view=option", function(result) {
let non_sel = '<option value="0">Не выбрано</option>';
$("#chat-modal__deal form #dealBlank").html(non_sel + result);
});
$('#chat-modal__deal form #dealBlank option').prop("selected", false);
$('#chat-modal__deal form #dealBlank').fastselect({
placeholder: 'Выберите бланк'
});
$('#chat-modal__deal form #dealBlank').closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
$('#chat-modal__deal form #dealBlank').closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');
$("#chat-modal__bg__deal").fadeIn(500);
$("#chat-modal__deal").toggle(10);
//$("body").addClass("lock");
if ($(this).data("step") !== undefined) {
$('#addDealButtonNew').attr("data-step", $(this).data("step"));
$('.addDealButtonNew').attr("data-step", $(this).data("step"));
ac.stepVal = $(this).data("step");
} else {
$('#addDealButtonNew').removeAttr("data-step");
$('.addDealButtonNew').removeAttr("data-step");
ac.stepVal = 0;
}
if ($(this).attr("data-id")) {
id = $(this).attr("data-id");
$('#addDealButtonNew').attr("data-id", $(this).attr("data-id"));
$('.addDealButtonNew').attr("data-id", $(this).attr("data-id"));
} else {
$('#addDealButtonNew').removeAttr("data-id");
$('.addDealButtonNew').removeAttr("data-id");
}
if ($(this).attr("data-req")) {
id = $(this).attr("data-req");
section = 'req';
$('#addDealButtonNew').attr("data-req", $(this).attr("data-req"));
$('.addDealButtonNew').attr("data-req", $(this).attr("data-req"));
} else {
$('#addDealButtonNew').removeAttr("data-req");
$('.addDealButtonNew').removeAttr("data-req");
}
get_select_who_work_task(selector, section, id);
return false;
});
$("body").on('click', '#client__new-file', function() {
$('#addFileButton').hide();
$('#addFileButtonNew').show();
chat_modal__bg__file.clearFiles();
$("#chat-modal__bg__file").fadeIn(500);
$("#chat-modal__file").attr('data-type', 'client');
$("#chat-modal__file").toggle(10);
$("body").addClass("lock");
$('#addFileButtonNew').removeAttr("data-object");
$('.addFileButtonNew').removeAttr("data-object");
if ($(this).data("step") !== undefined) {
$('#addFileButtonNew').attr("data-step", $(this).data("step"));
$('.addFileButtonNew').attr("data-step", $(this).data("step"));
ac.stepVal = $(this).data("step");
} else {
$('#addFileButtonNew').removeAttr("data-step");
$('.addFileButtonNew').removeAttr("data-step");
ac.stepVal = 0;
}
if ($(this).data("id")) {
$('#addFileButtonNew').attr("data-id", $(this).data("id"));
$('.addFileButtonNew').attr("data-id", $(this).data("id"));
} else {
$('#addFileButtonNew').removeAttr("data-id");
$('.addFileButtonNew').removeAttr("data-id");
}
if ($(this).attr("data-req")) {
$('#addFileButtonNew').attr("data-req", $(this).attr("data-req"));
$('.addFileButtonNew').attr("data-req", $(this).attr("data-req"));
} else {
$('#addFileButtonNew').removeAttr("data-req");
$('.addFileButtonNew').removeAttr("data-req");
}
return false;
})
$("body").on('click', '#chat__new-file', function() {
$('#addFileButton').hide();
$('#addFileButtonNew').show();
chat_modal__bg__file.clearFiles();
$("#chat-modal__bg__file").fadeIn(500);
$("#chat-modal__file").attr('data-type', 'object');
$("#chat-modal__file").toggle(10);
$("body").addClass("lock");
$('#addFileButtonNew').removeAttr("data-id");
$('.addFileButtonNew').removeAttr("data-id");
$('#addFileButtonNew').removeAttr("data-req");
$('.addFileButtonNew').removeAttr("data-req");
$('#addFileButtonNew').attr("data-object", $(this).attr("data-object-id"));
$('.addFileButtonNew').attr("data-object", $(this).attr("data-object-id"));
return false;
});
$("body").on('click', '#chat__new-doc', function() {
$("#chat-modal__bg__doc").fadeIn(500);
$("#chat-modal__doc").toggle(10);
$("body").addClass("lock");
return false;
})
$("body").on('click', '#jw__yourbroker-button', function() {
$.ajax({
url: '/ajax/modals/yourBrokerWinContent.php',
success: function(data) {
$("#jw__yourbroker-bg").html(data).fadeIn(500);
$("#jw__yourbroker").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
return false;
})
$("body").on('click', '.flat', function(e) {
e.stopPropagation();
var flatId = $(this).attr('data-FlatId');
var flatNum = $(this).attr('data-FlatNum');
openFlat(flatId, flatNum);
return false;
});
//PDF send complexes
$("body").on('click', '.to_send_complexes', function(e) {
e.stopPropagation();
e.preventDefault()
var kol_send = $('#kol_send').val();
var id = $(this).attr('data-apartment-id');
const isApartmentInPdf = $('#send-complex-pdf-btn' + id)[0].getAttribute("data-in-pdf")
if (isApartmentInPdf && isApartmentInPdf == 'true')
{
kol_send--;
$.ajax('/ajax/to_send.php?remove_complexes=' + id).then(() => {
window.complexBus.$emit("pdf-state-changed", id);
});
} else
{
kol_send++;
$.ajax('/ajax/to_send.php?add_complex=' + id).then(() => {
window.complexBus.$emit("pdf-state-changed", id);
});
}
$('#num_send').text(kol_send);
$('#kol_send').val(kol_send);
return false;
})
$("body").on('click', '.to_send_newbuilding', function(e) {
e.stopPropagation();
var kol_send = $('#kol_send').val();
var id = $(this).attr('data-id');
if ($('#to_send_button' + id).hasClass('active'))
{
kol_send--;
$.ajax('/ajax/to_send.php?remove_newbuilding=' + id);
} else
{
kol_send++;
$.ajax('/ajax/to_send.php?add_newbuilding=' + id);
}
$('#num_send').text(kol_send);
$('#kol_send').val(kol_send);
$('#to_send_button' + id).toggleClass('active');
return false;
});
$("body").on('click', '#to_send_window_button', function(e) {
e.stopPropagation();
var kol_send = $('#kol_send').val();
var id = $(this).attr('data-id');
if ($('#to_send_window_button').hasClass('active'))
{
kol_send--;
$.ajax('/ajax/to_send.php?remove_newbuilding=' + id);
} else
{
kol_send++;
$.ajax('/ajax/to_send.php?add_newbuilding=' + id);
}
$('#num_send').text(kol_send);
$('#kol_send').val(kol_send);
$('#to_send_button' + id).toggleClass('active');
$('#to_send_window_button').toggleClass('active');
return false;
});
$("body").on('click', '#bookingWindowButton', function(e) {
e.stopPropagation();
var flatId = $(this).attr('data-id');
var flatNum = $(this).attr('data-FlatNum');
openFlatBooking(flatId, flatNum);
return false;
});
$('.flat-booking .pay').click(function() {
var thisElement = jQuery(this);
if (!thisElement.hasClass('selected')) {
$('.flat-booking .pay.selected').removeClass('selected');
thisElement.addClass('selected');
}
});
$("body").on('click', '.view-reservation', function(e) {
e.stopPropagation();
var id = $(this).attr('data-id');
$('#action_loader_' + id).show();
$.ajax({
url: '/ajax/getReservationClientForm.php',
method: "post",
data: {
"id": id
},
success: function(data) {
$("#flat-booking").html(data);
$("#flat-booking__bg").fadeIn(500);
$("#flat-booking").toggle(10);
$("body").addClass("lock");
$('#action_loader_' + id).hide();
}
});
return false;
});
$("body").on('click', '#viewApartmentsButton', function(e) {
e.stopPropagation();
var id = $(this).attr('data-id');
var num = $(this).attr('data-flatnum');
openReservationFlat(id, num);
return false;
});
$("body").on('click', '.addCabinetLink', function(e) {
e.stopPropagation();
var id = $(this).attr('data-id');
openAddCabinetLink(id, null);
return false;
});
$('#district-map-clear').click(function() {
$(".ms-district").val([]);
$(".ms-district").multiselect("reload");
});
$('#subway-map-clear').click(function() {
$(".ms-subway").val([]);
$(".ms-subway").multiselect("reload");
});
$('#residential-clear').click(function() {
$(".ms-residential").val([]);
$(".ms-residential").multiselect("reload");
});
$('#decoration-clear').click(function() {
$(".ms-decoration").val([]);
$(".ms-decoration").multiselect("reload");
});
$('#builder-clear').click(function() {
$(".ms-developer").val([]);
$(".ms-developer").multiselect("reload");
});
$('#type-clear').click(function() {
$(".ms-type").val([]);
$(".ms-type").multiselect("reload");
});
$('#variant-clear').click(function() {
$(".ms-variant").val([]);
$(".ms-variant").multiselect("reload");
});
$('#bank-clear').click(function() {
$(".ms-bank").val([]);
$(".ms-bank").multiselect("reload");
});
$('#rayon-clear').click(function() {
$(".rayon").val([]);
$(".rayon").multiselect("reload");
});
$('#sources-clear').click(function() {
$(".sources-links").val([]);
$(".sources-links").multiselect("reload");
});
$('#metro-search-clear').click(function() {
$(".metro-search").val([]);
$(".metro-search").multiselect("reload");
});
$('#payment-clear').click(function() {
$(".ms-payment").val([]);
$(".ms-payment").multiselect("reload");
});
$('#renovation-clear').click(function() {
$(".ms-renovation").val([]);
$(".ms-renovation").multiselect("reload");
});
$('#clearAllFilter').click(function() {
$(".ms-subway").val([]);
$(".ms-subway").multiselect("reload");
$(".ms-district").val([]);
$(".ms-district").multiselect("reload");
$(".ms-residential").val([]);
$(".ms-residential").multiselect("reload");
$(".ms-decoration").val([]);
$(".ms-decoration").multiselect("reload");
$(".ms-developer").val([]);
$(".ms-developer").multiselect("reload");
$(".ms-type").val([]);
$(".ms-type").multiselect("reload");
$(".ms-variant").val([]);
$(".ms-variant").multiselect("reload");
$(".ms-bank").val([]);
$(".ms-bank").multiselect("reload");
$(".ms-payment").val([]);
$(".ms-payment").multiselect("reload");
$(".ms-period").val(-1);
$(".ms-period").val(-1);
$("input[name=sq_all_ot]").val("");
$("input[name=sq_all_do]").val("");
$("input[name=stoim_ot]").val("");
$("input[name=stoim_do]").val("");
$(".slider_newbuiding1").slider({ value: 0 });
$(".slider_newbuiding2").slider({ value: 0 });
});
$('#advertising_sources .editSources').click(function() {
var adv_source = $(this).data("source");
var ideditsources = $(this).data("id");
var group = $(this).data("group");
advertising_sources_add_edit_modal.is_no_see = $(this).attr("data-is_see");
advertising_sources_add_edit_modal.selected_users_see_no = null;
if(!isEmpty($(this).attr("data-users_no_see"))){
advertising_sources_add_edit_modal.selected_users_see_no = JSON.parse($(this).attr("data-users_no_see"));
}
$('#edit_advertising_sources [name=editsources]').val(adv_source);
$('#edit_advertising_sources [name=ideditsources]').val(ideditsources);
$('#edit_advertising_sources [name=group]').val(group);
$('#edit_advertising_sources').fadeIn(500);
$("#edit_advertising_sources .edit-modal").toggle(10);
$("body").addClass("lock");
return false;
});
$('#edit_advertising_sources .event-modal-close').click(function() {
$('#edit_advertising_sources').fadeOut(500);
$("#edit_advertising_sources .edit-modal").toggle(10);
$("body").removeClass("lock");
});
$('body').on('click', '#advertising_sources .edit-btn', function() {
$('#add_advertising_sources').fadeIn(500);
$("#add_advertising_sources .edit-modal").toggle(10);
$("body").addClass("lock");
$("#add_advertising_sources [name=addsources]").val('');
advertising_sources_add_edit_modal.is_no_see = 0;
advertising_sources_add_edit_modal.selected_users_see_no = null;
return false;
});
$('#add_advertising_sources .event-modal-close').click(function() {
$('#add_advertising_sources').fadeOut(500);
$("#add_advertising_sources .edit-modal").toggle(10);
$("body").removeClass("lock");
$('#add_advertising_sources [name=addsources]').val('');
advertising_sources_add_edit_modal.is_no_see = 0;
advertising_sources_add_edit_modal.selected_users_see_no = null;
});
$('#advertising_sources .delSources').click(function() {
var id_adv = $(this).data("id");
if (confirm('Вы точно хотите безвозвратно удалить этот рекламный источник?')) {
$.get('/ajax/advertisingSources.php?del_adv=' + id_adv, function() {
$('#advertising_sources_li_' + id_adv).remove();
if ($('#advertising_sources li').length == 0) {
$("#advertising_sources ul").remove();
var html = '<div class="empty-block" style="margin-top: 30px;"><h2>Рекламных источников нет</h2></div>';
$("#advertising_sources .bottom").before(html);
}
});
}
});
$('body').on('click', '#edit_advertising_sources form button', function() {
$('#edit_advertising_sources').fadeOut(500);
$("#edit_advertising_sources .edit-modal").toggle(10);
$("body").removeClass("lock");
var id = $('#edit_advertising_sources [name=ideditsources]').val();
var sources = $('#edit_advertising_sources [name=editsources]').val();
var group = $('#edit_advertising_sources [name=group]').val();
var is_no_see = advertising_sources_add_edit_modal.is_no_see;
var users_no_see = null;
if(!isEmpty(advertising_sources_add_edit_modal.selected_users_see_no)){
users_no_see = JSON.stringify(advertising_sources_add_edit_modal.selected_users_see_no);
}
$.get("/ajax/advertisingSources.php?ideditsources=" + id + "&editsources=" + sources + "&group=" + group + "&is_no_see=" + is_no_see + "&users_no_see=" + users_no_see, function(data) {
console.log(data);
get_sources(group);
});
});
$('#add_advertising_sources form button').click(function() {
$('#add_advertising_sources').fadeOut(500);
$("#add_advertising_sources .edit-modal").toggle(10);
$("body").removeClass("lock");
var user_id = $('#add_advertising_sources [name=user_id]').val();
var manager_id = $('#add_advertising_sources [name=manager_id]').val();
var sources = $('#add_advertising_sources [name=addsources]').val();
var group = $('#changeGroupSourseAdd').val();
var is_no_see = advertising_sources_add_edit_modal.is_no_see;
var users_no_see = null;
if(!isEmpty(advertising_sources_add_edit_modal.selected_users_see_no)){
users_no_see = JSON.stringify(advertising_sources_add_edit_modal.selected_users_see_no);
}
$.get("/ajax/advertisingSources.php?addsources=" + sources + "&user_id=" + user_id + "&manager_id=" + manager_id + "&group=" + group + "&is_no_see=" + is_no_see + "&users_no_see=" + users_no_see, function(data) {
console.log(data);
get_sources(group);
// console.log(data);
/* if($("#advertising_sources ul").length == 0){
$("#advertising_sources .bottom").before('<ul></ul>');
}
$("#advertising_sources .empty-block").remove();
var html = '<li id="advertising_sources_li_'+data+'">'+
'<span class="adv_source">- '+sources+'</span>'+
'<a data-id="'+data+'" href="javascript:{};" class="fl-right delSources no-border tooltip tooltip-effect">'+
'<span class="simple-button tooltip-item">'+
'<i class="ti-close"></i>'+
'</span>'+
'<span class="tooltip-content tt-pdf clear">'+
'<b class="tooltip-text">Удалить источник</b>'+
'</span>'+
'</a>'+
'<a href="javascript:{};" data-id="'+data+'" data-source="'+sources+'" class="fl-right editSources no-border tooltip tooltip-effect">'+
'<span class="simple-button settings tooltip-item">'+
'<i class="ti-settings"></i>'+
'</span>'+
'<span class="tooltip-content tt-pdf clear"><b class="tooltip-text">Редактировать источник</b></span>'+
'</a>'+
'</li>';
$("#advertising_sources ul").append(html);
setTimeout(function(){
$('#advertising_sources .delSources').unbind('click');
$('#advertising_sources .delSources').click(function(){
var id_adv = $(this).data("id");
if(confirm('Вы точно хотите безвозвратно удалить этот рекламный источник?'))
{
$.get('/ajax/advertisingSources.php?del_adv='+id_adv, function(){
$('#advertising_sources_li_'+id_adv).remove();
if($('#advertising_sources li').length == 0){
$("#advertising_sources ul").remove();
var html = '<div class="empty-block" style="margin-top: 30px;"><h2>Рекламных источников нет</h2></div>';
$("#advertising_sources .bottom").before(html);
}
});
}
});
$('#advertising_sources .editSources').click(function(){
var adv_source = $(this).data("source");
var ideditsources = $(this).data("id");
var group = $(this).data("group");
$('#edit_advertising_sources [name=editsources]').val(adv_source);
$('#edit_advertising_sources [name=ideditsources]').val(ideditsources);
$('#edit_advertising_sources [name=group]').val(group);
$('#edit_advertising_sources').fadeIn(500);
$("#edit_advertising_sources .edit-modal").show(10);
$("body").addClass("lock");
return false;
});
}, 1000);*/
});
});
//Группы рекламных источников
$('body').on('click', '.group-btn', function() {
var id = $(this).data("id");
$('#group_advertising_sources_name').val('');
$("#group_advertising_sources_idgroup").val(id);
$('#group_advertising_sources').fadeIn();
$("#group_advertising_sources .edit-modal").show(10);
$("body").addClass("lock");
return false;
});
$('body').on('click', '#group_advertising_sources .closer', function() {
$('#group_advertising_sources').fadeOut(500);
$("#group_advertising_sources .edit-modal").toggle(10);
$("body").removeClass("lock");
});
$('body').on('click', '#group_advertising_sources .modal-submit button', function() {
$('#group_advertising_sources').fadeOut(500);
$("#group_advertising_sources .edit-modal").toggle(10);
$("body").removeClass("lock");
var idgroup = $('#group_advertising_sources [name=idgroup]').val();
var manager_id = $('#group_advertising_sources [name=manager_id]').val();
var user_id = $('#group_advertising_sources [name=user_id]').val();
var name = $('#group_advertising_sources [name=name]').val();
$.get("/ajax/advertisingSources.php?idgroup=" + idgroup + "&manager_id=" + manager_id + "&user_id=" + user_id + "&name=" + name, function(data) {
$('#changeGroupSourse').append('<option value="' + data + '">' + name + '</option>');
$('#changeGroupSourseAdd').append('<option value="' + data + '">' + name + '</option>');
get_sources(-1);
});
});
$('body').on('click', '#advertising_sources .opened', function(e) {
var id = $(this).data("id");
if ($(e.target).closest('.delGroup').length > 0) {
if (confirm('Вы точно хотите безвозвратно удалить группу и все рекламные источники в ней?')) {
$.get("/ajax/advertisingSources.php?del_group=" + id, function() {
get_sources(-1);
});
}
} else if ($(e.target).closest('.editGroup').length > 0) {
var name = $(this).data("name");
$('#group_advertising_sources_name').val(name);
$("#group_advertising_sources_idgroup").val(id);
$('#group_advertising_sources').fadeIn();
$("#group_advertising_sources .edit-modal").show(10);
$("body").addClass("lock");
return false;
} else {
$('#group_source_' + id).toggleClass('hidden');
}
});
$('body').on('click', '#advertising_sources .delGroup', function() {
var id = $(this).data("id");
console.log(id);
});
//Назначения деятельности
$('body').on('click', '#activities .editActivities', function() {
var adv_activities = $(this).attr("data-activities");
var ideditactivities = $(this).attr("data-id");
var activities_color = $(this).attr("data-color");
console.log(activities_color);
var is_find_color = false;
$('#edit_activities [name=editactivities]').val(adv_activities);
$('#edit_activities [name=ideditactivities]').val(ideditactivities);
$('#edit_activities [name=editactivitiescolor]').val(activities_color);
$('#edit_activities .color-item').each(function(){
$(this).find('svg').hide();
if(!isEmpty(activities_color)){
if($(this).attr("data-color") == activities_color){
$(this).find('svg').show();
is_find_color = true;
}
}
})
if(!is_find_color && !isEmpty(activities_color)){
$('#editActivitesColorPicker').css('background', '').css('backgroundColor', activities_color);
$('#editActivitesColorPicker svg').show();
} else {
$('#editActivitesColorPicker').css('backgroundColor', '').css('background', 'linear-gradient(135deg, #f95835, #e079ca, #8e60e4, #10b2f3, #50b7aa)');
}
$('#edit_activities').fadeIn(500);
$("#edit_activities .edit-modal").toggle(10);
$("body").addClass("lock");
return false;
});
$('#edit_activities .event-modal-close').click(function() {
$('#edit_activities').fadeOut(500);
$("#edit_activities .edit-modal").toggle(10);
$("body").removeClass("lock");
});
$('body').on('click', '#activities .edit-btn', function() {
$('#add_activities').fadeIn(500);
$("#add_activities .edit-modal").toggle(10);
$("body").addClass("lock");
$("#add_activities [name=addactivities]").val('');
$("#add_activities [name=addactivitiescolor]").val('');
$('#addActivitesColorPicker').css('backgroundColor', '').css('background', 'linear-gradient(135deg, #f95835, #e079ca, #8e60e4, #10b2f3, #50b7aa)');
$('#add_activities .color-item').each(function(){
$(this).find('svg').hide();
})
return false;
});
$('#add_activities .event-modal-close').click(function() {
$('#add_activities').fadeOut(500);
$("#add_activities .edit-modal").toggle(10);
$("body").removeClass("lock");
$('#add_activities [name=addactivities]').val('');
});
$('body').on('click', '#object-history__bg .event-modal-closer', function() {
$("#object-history__bg").hide(10);
$("#object-history").hide(10);
});
$('body').on('click', '#activities .delActivities', function() {
var id_adv = $(this).data("id");
if (confirm('Вы точно хотите безвозвратно удалить это назначений деятельности?')) {
$.get('/ajax/activities.php?del_adv=' + id_adv, function() {
$('#activities_li_' + id_adv).remove();
if ($('#activities li').length == 0) {
$("#activities ul").remove();
var html = '<div class="empty-block" style="margin-top: 30px;"><h2>Назначений деятельности не найдено</h2></div>';
$("#activities .bottom").before(html);
}
});
}
});
$('body').on('click', '#edit_activities form button', function() {
$('#edit_activities').fadeOut(500);
$("#edit_activities .edit-modal").toggle(10);
$("body").removeClass("lock");
var id = $('#edit_activities [name=ideditactivities]').val();
var sources = $('#edit_activities [name=editactivities]').val();
var color = $('#colorEditActivites').val();
console.log(color);
let url = "/ajax/activities.php";
$.post(url, {ideditactivities: id, editactivities: sources, color: color}, function(data) {
//console.log(data);
$("#activities_li_" + id + " .adv_activities").text(sources);
$("#activities_li_" + id + " .editActivities").attr('data-color', color);
if(isEmpty(color)) color = 'rgb(222, 222, 222)';
$("#activities_li_" + id + " .color-indicator").css("backgroundColor", color);
});
});
$('#add_activities form button').click(function() {
$('#add_activities').fadeOut(500);
$("#add_activities .edit-modal").toggle(10);
$("body").removeClass("lock");
var user_id = $('#add_activities [name=user_id]').val();
var manager_id = $('#add_activities [name=manager_id]').val();
var activities = $('#add_activities [name=addactivities]').val();
var color = $('#add_activities [name=addactivitiescolor]').val();
$.post("/ajax/activities.php", {addactivities : activities, user_id: user_id, manager_id: manager_id, color: color}, function(data) {
console.log(data);
if ($("#activities ul").length == 0) {
$("#activities .bottom").before('<ul></ul>');
}
$("#activities .empty-block").remove();
var html = '<li id="activities_li_' + data + '">' +
'<div style="margin-top: -5px; background-color: ';
if(!isEmpty(color))
html += color;
else
html += 'rgb(222, 222, 222);';
html += '" class="color-indicator"></div>' +
'<span class="adv_activities">' + activities + '</span>' +
'<a href="javascript:{};" data-id="' + data + '" data-activities="' + activities + '" data-color="'+color+'" class="fl-right editActivities no-border tooltip tooltip-effect">' +
'<span class="simple-button settings tooltip-item">' +
'<i class="ti-settings"></i>' +
'</span>' +
'<span class="tooltip-content tt-pdf clear"><b class="tooltip-text">Редактировать</b></span>' +
'</a>' +
'<a data-id="' + data + '" href="javascript:{};" class="fl-right delActivities no-border tooltip tooltip-effect">' +
'<span class="simple-button tooltip-item">' +
'<i class="ti-close"></i>' +
'</span>' +
'<span class="tooltip-content tt-pdf clear">' +
'<b class="tooltip-text">Удалить</b>' +
'</span>' +
'</a>' +
'</li>';
$("#activities ul").append(html);
});
});
$('body').on('click', '#edit_activities .color-item', function(){
$('#edit_activities .color-item').each(function(){
$(this).find('svg').hide();
})
$(this).find('svg').show();
let color = $(this).attr('data-color');
$('#colorEditActivites').val(color);
if($(this).prop('id') != 'editActivitesColorPicker'){
$('#editActivitesColorPicker').css('backgroundColor', '').css('background', 'linear-gradient(135deg, #f95835, #e079ca, #8e60e4, #10b2f3, #50b7aa)');
}
})
$('body').on('click', '#add_activities .color-item', function(){
$('#add_activities .color-item').each(function(){
$(this).find('svg').hide();
})
$(this).find('svg').show();
let color = $(this).attr('data-color');
$('#colorAddActivites').val(color);
if($(this).prop('id') != 'addActivitesColorPicker'){
$('#addActivitesColorPicker').css('backgroundColor', '').css('background', 'linear-gradient(135deg, #f95835, #e079ca, #8e60e4, #10b2f3, #50b7aa)');
}
})
$('body').on('click', '.tags .tags-title', function(){
let id = $(this).attr("data-id");
setTimeout(function(){
$('#popup__tags_list_'+id).addClass('show');
}, 100);
})
$(document).on('input', '[unique_name="clientsChatTextAreaResize"]', function () {
this.style.height = 'auto';
this.style.height = this.scrollHeight + 'px';
});
//Чат
$("body").on('click', '#submitClientInfoTextButtonNew', function(e) {
e.stopPropagation();
var text = $('#clientChatTextAreaNew').val();
if (text && $.trim(text)) {
var id_client = $(this).attr('data-id');
var id_client = $('#submitClientInfoTextButtonNew').attr('data-id');
if ($(this).attr('data-id')) id_client = $(this).attr('data-id');
var req_id = 0;
if ($(this).attr('data-req')) req_id = $(this).attr('data-req');
$.ajax({
url: '/ajax/addClientComment.php',
method: "post",
data: {
"client_id": id_client,
"comment": text,
"req_id": req_id,
},
success: function() {
//console.log(data);
var url = '/ajax/getClientLogForEventsNew.php?id=' + id_client;
if (req_id > 0) {
url += "&req_id=" + req_id;
}
$('#clientChatTextAreaNew').val('');
$.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' });
});
}
});
}
});
}
return false;
});
$("body").on('click', '#addCallButtonNew', function(e) {
e.stopPropagation();
var text = $('#callComment').val();
var date = $('#callDatetime').datepicker().val();
var to_date = $('#to_callDatetime').datepicker().val();
var who_work = 0;
if($('#chat-modal__call .who_work_tasks')){
who_work = $('#chat-modal__call .who_work_tasks').val();
}
var date_to = 0;
if (to_date && $.trim(to_date)) {
date_to = to_date;
}
var call_tracking = 0;
if ($('#callTelphin').length > 0) {
if ($('#callTelphin').prop('checked')) {
call_tracking = 1;
}
}
if (date && $.trim(date)) {
var type = $("#chat-modal__call").attr('data-type');
if (type == 'client') {
var id_client = $('#submitClientInfoTextButtonNew').attr('data-id');
if ($(this).attr('data-id')) id_client = $(this).attr('data-id');
var req_id = 0;
if ($(this).attr('data-req')) req_id = $(this).attr('data-req');
var stepId = $(this).attr("data-step");
$.ajax({
url: '/ajax/addClientCall.php',
method: "post",
data: {
"client_id": id_client,
"comment": text,
"schedule_date": date,
"call_tracking": call_tracking,
"date_to": date_to,
"req_id": req_id,
"who_work": who_work,
},
success: function() {
$("#chat-modal__bg__call").hide(10);
$("#chat-modal__call").hide(10);
$('#callComment').val('');
$('#callDatetime').datepicker().data('datepicker').selectDate(new Date());
if (stepId !== undefined) {
if (ac.step.values[ac.stepVal]) {
ac.tasks.push({ 'name': 'Звонок', 'type': 'call', date: date });
ac.step.values[ac.stepVal].value = ac.tasks;
}
if (funnelchecklist.steps[funnelchecklist.id].values[stepId]) {
funnelchecklist.tasks.push({ 'name': 'Звонок', 'type': 'call', date: date });
funnelchecklist.steps[funnelchecklist.id].values[stepId].value = funnelchecklist.tasks;
}
}
var url = '/ajax/getClientLogForEventsNew.php?id=' + id_client;
if (req_id > 0) {
url += "&req_id=" + req_id;
}
$.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');
}
}
});
}
});
}
}
return false;
});
$("body").on('click', '.destination-box', function() {
var dest = $(this).attr('data-destination');
if (this.checked) {
$("input[name='adv_" + dest + "_radio']").prop("disabled", false);
$("input[name='" + dest + "_radio']").prop("disabled", false);
$("input[name='adv_" + dest + "_price_manual']").prop("disabled", false);
$("." + dest + "_row").removeClass("gryed-row");
} else {
$("input[name='adv_" + dest + "_radio']").prop("disabled", true);
$("input[name='" + dest + "_radio']").prop("disabled", true);
$("input[name='adv_" + dest + "_price_manual']").prop("disabled", true);
$("input[name='adv_" + dest + "_price_manual']").val('');
$("." + dest + "_row").addClass("gryed-row");
}
});
$("body").on('click', '#addShowButtonNew', function(e) {
e.stopPropagation();
var text = $('#showComment').val();
var address = $('#showAddress').val();
var date = $('#showDatetime').datepicker().val();
var who_work = 0;
if($('#chat-modal__showing .who_work_tasks')){
who_work = $('#chat-modal__showing .who_work_tasks').val();
}
if (date && $.trim(date)) {
var type = $("#chat-modal__showing").attr('data-type');
if (type == 'object') {
var id_object = $('#submitTextButton').attr('data-id');
$.ajax({
url: '/ajax/addObjectShow.php',
method: "post",
data: {
"object_id": id_object,
"comment": text,
"address": address,
"schedule_date": date
},
success: function() {
$("#chat-modal__bg__showing").hide(10);
$("#chat-modal__showing").hide(10);
$('#showComment').val('');
$('#showAddress').val('');
$('#showDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
} else {
if (type == 'client') {
var id_client = $('#submitClientInfoTextButtonNew').attr('data-id');
var stepId = $(this).attr("data-step");
if ($(this).attr('data-id')) id_client = $(this).attr('data-id');
var req_id = 0;
if ($(this).attr('data-req')) req_id = $(this).attr('data-req');
/*$('#client-info-block').html('<div class="preloader"></div>');
$('#client-info-block .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});*/
console.log($('#client-info-block').prop("scrollHeight"));
$.ajax({
url: '/ajax/addClientShow.php',
method: "post",
data: {
"client_id": id_client,
"comment": text,
"address": address,
"schedule_date": date,
"req_id": req_id,
"who_work": who_work,
},
success: function() {
$("#chat-modal__bg__showing").hide(10);
$("#chat-modal__showing").hide(10);
$('#showComment').val('');
$('#showAddress').val('');
$('#showDatetime').datepicker().data('datepicker').selectDate(new Date());
if (stepId !== undefined) {
if (ac.step.values[ac.stepVal]) {
ac.tasks.push({ 'name': 'Показ', 'type': 'showing', date: date });
ac.step.values[ac.stepVal].value = ac.tasks;
}
if (funnelchecklist.steps[funnelchecklist.id].values[stepId]) {
funnelchecklist.tasks.push({ 'name': 'Показ', 'type': 'showing', date: date });
funnelchecklist.steps[funnelchecklist.id].values[stepId].value = funnelchecklist.tasks;
}
}
var url = '/ajax/getClientLogForEventsNew.php?id=' + id_client;
if (req_id > 0) {
url += "&req_id=" + req_id;
}
$.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');
}
}
});
}
});
}
}
}
return false;
});
$("body").on('click', '#addMeetButtonNew', function(e) {
e.stopPropagation();
var text = $('#meetComment').val();
var address = $('#meetAddress').val();
var date = $('#meetDatetime').datepicker().val();
var who_work = 0;
if($('#chat-modal__meeting .who_work_tasks')){
who_work = $('#chat-modal__meeting .who_work_tasks').val();
}
if (date && $.trim(date)) {
var type = $("#chat-modal__meeting").attr('data-type');
if (type == 'object') {
var id_object = $('#submitTextButton').attr('data-id');
$('#client-event-chat').html('<div class="preloader"></div>');
$('#client-event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addObjectMeet.php',
method: "post",
data: {
"object_id": id_object,
"comment": text,
"address": address,
"schedule_date": date
},
success: function() {
$("#chat-modal__bg__meeting").hide(10);
$("#chat-modal__meeting").hide(10);
$('#meetComment').val('');
$('#meetAddress').val('');
$('#meetDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
} else {
if (type == 'client') {
var id_client = $('#submitClientInfoTextButtonNew').attr('data-id');
var stepId = $(this).attr("data-step");
if ($(this).attr('data-id')) id_client = $(this).attr('data-id');
var req_id = 0;
if ($(this).attr('data-req')) req_id = $(this).attr('data-req');
$.ajax({
url: '/ajax/addClientMeet.php',
method: "post",
data: {
"client_id": id_client,
"comment": text,
"address": address,
"schedule_date": date,
"req_id": req_id,
"who_work": who_work,
},
success: function() {
$("#chat-modal__bg__meeting").hide(10);
$("#chat-modal__meeting").hide(10);
$('#meetComment').val('');
$('#meetAddress').val('');
$('#meetDatetime').datepicker().data('datepicker').selectDate(new Date());
if (stepId !== undefined) {
if (ac.step.values[ac.stepVal]) {
ac.tasks.push({ 'name': 'Встреча', 'type': 'meeting', date: date });
ac.step.values[ac.stepVal].value = ac.tasks;
}
if (funnelchecklist.steps[funnelchecklist.id].values[stepId]) {
funnelchecklist.tasks.push({ 'name': 'Встреча', 'type': 'meeting', date: date });
funnelchecklist.steps[funnelchecklist.id].values[stepId].value = funnelchecklist.tasks;
}
}
var url = '/ajax/getClientLogForEventsNew.php?id=' + id_client;
if (req_id > 0) {
url += "&req_id=" + req_id;
}
$.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');
}
}
});
}
});
}
}
}
return false;
});
$("body").on('click', '#addDealButtonNew', function(e) {
e.stopPropagation();
var who_work = 0;
if($('#chat-modal__deal .who_work_tasks')){
who_work = $('#chat-modal__deal .who_work_tasks').val();
}
var text = $('#dealComment').val();
var sum = $('#dealSum').val();
var date = $('#dealDatetime').datepicker().val();
if (date && $.trim(date)) {
var type = $("#chat-modal__deal").attr('data-type');
if (type == 'object') {
var id_object = $('#submitTextButton').attr('data-id');
var client_id = $('#dealClient').val();
var blank_id = $('#dealBlank').val();
$('#event-chat').html('<div class="preloader"></div>');
$('#event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addObjectDeal.php',
method: "post",
data: {
"object_id": id_object,
"client_id": client_id,
"blank_id": blank_id,
"comment": text,
"sum": sum,
"schedule_date": date
},
success: function() {
$("#chat-modal__bg__deal").hide(10);
$("#chat-modal__deal").hide(10);
$('#dealComment').val('');
$('#dealSum').val('');
$('#dealDatetime').datepicker().data('datepicker').selectDate(new Date());
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
if ($('#calendar').length) {
$('#calendar').fullCalendar('refetchEvents');
}
}
});
}
});
} else {
if (type == 'client') {
var id_client = $('#submitClientInfoTextButtonNew').attr('data-id');
if ($(this).attr('data-id'))
id_client = $(this).attr('data-id');
var req_id = 0;
if ($(this).attr('data-req'))
req_id = $(this).attr('data-req');
var stepId = $(this).attr("data-step");
var object_id = $("#dealObject").val();
var blank_id = $("#dealBlank").val();
var clients_ids = null;
if(docs_new_client_input_vue.values){
clients_ids = docs_new_client_input_vue.values;
console.log(clients_ids);
} else {
clients_ids = $('#dealClients').val();
}
console.log(clients_ids);
$.ajax({
url: '/ajax/addClientDeal.php',
method: "post",
data: {
"client_id": id_client,
"object_id": object_id,
"blank_id": blank_id,
"comment": text,
"sum": sum,
"schedule_date": date,
"req_id": req_id,
"who_work": who_work,
"clients_ids": clients_ids,
},
success: function(data) {
console.log(data);
$("#chat-modal__bg__deal").hide(10);
$("#chat-modal__deal").hide(10);
$('#dealComment').val('');
$('#dealSum').val('');
$('#dealDatetime').datepicker().data('datepicker').selectDate(new Date());
if (stepId !== undefined) {
if (ac.step.values[ac.stepVal]) {
ac.tasks.push({ 'name': 'Сделка', 'type': 'deal', date: date });
ac.step.values[ac.stepVal].value = ac.tasks;
}
if (funnelchecklist.steps[funnelchecklist.id].values[stepId]) {
funnelchecklist.tasks.push({ 'name': 'Сделка', 'type': 'deal', date: date });
funnelchecklist.steps[funnelchecklist.id].values[stepId].value = funnelchecklist.tasks;
}
}
var url = '/ajax/getClientLogForEventsNew.php?id=' + id_client;
if (req_id > 0) {
url += "&req_id=" + req_id;
}
$.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');
}
}
});
}
});
}
}
}
return false;
});
$("body").on('click', '#addFileButtonNew', function(e) {
e.stopPropagation();
var text = $('#fileComment').val();
var type = $("#chat-modal__file").attr('data-type');
var name = $("#chat-modal__file .fileNames").val();
if (type == 'object') {
// TODO: complete action
var id_object = $('#submitTextButton').attr('data-id');
$('#event-chat').html('<div class="preloader"></div>');
$('#event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$.ajax({
url: '/ajax/addClientFile.php',
method: "post",
data: {
"object_id": id_object,
"comment": text,
"name": name,
},
success: function() {
$('#popup__actions_' + id_object + ' .showDoc').removeClass('hidden');
$("#chat-modal__bg__file").hide(10);
$("#chat-modal__file").hide(10);
$('#fileComment').val('');
$.ajax({
url: '/ajax/getLogForEvents.php?object_id=' + id_object,
success: function(data) {
$('#event-chat').html(data);
$('.history__chat').scrollTop($('#event-chat').prop("scrollHeight"));
}
});
}
});
} else {
if (type == 'client') {
var id_client = $('#submitClientInfoTextButtonNew').attr('data-id');
if ($(this).attr('data-id')) id_client = $(this).attr('data-id');
var req_id = 0;
if ($(this).attr('data-req')) req_id = $(this).attr('data-req');
$.ajax({
url: '/ajax/addClientFile.php',
method: "post",
data: {
"client_id": id_client,
"comment": text,
"req_id": req_id,
"name": name,
},
success: function() {
$('#client_history .fileList').removeClass('hidden');
$("#chat-modal__bg__file").hide(10);
$("#chat-modal__file").hide(10);
$('#fileComment').val('');
var url = '/ajax/getClientLogForEventsNew.php?id=' + id_client;
if (req_id > 0) {
url += "&req_id=" + req_id;
}
$.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' });
});
}
});
}
});
}
}
return false;
});
$("body").on("keypress", "#clientChatTextAreaNew", function(e) {
if (e.keyCode == 13 && e.shiftKey) {
$('#submitClientInfoTextButtonNew').click();
}
});
$("body").on("click", ".zipal-radio-price, .destination-box", function() {
calculateZipalPrice();
calculatePackagePrice();
});
$("body").on("input", ".adv-price-manual-field", function() {
calculatePackagePrice();
});
$("body").on("click", ".add-new-object, .jw__add-object", function() {
$.ajax({
url: '/ajax/checkObjectsCount.php',
method: "get",
success: function(data) {
var resParsed = JSON.parse(data);
if (resParsed.canAdd === '1') {
window.location.href = '/add-object.php';
return false;
} else {
showMaxCountWin();
}
}
});
return false;
});
$("#advertisingPackageDaysCount").on('input', function() {
callZipalForAdvPackage();
});
$("#advertisingPackagePhotoFlag").on('click', function() {
callZipalForAdvPackage();
});
$("body").on("click", ".egrnRequestPay", function() {
newEgrnRequestPay();
});
$("body").on("click", ".egrnRequest", function() {
newEgrnRequest(this);
});
$("body").on("click", ".egrnRequestList", function() {
var objId = $(this).attr('data-object-id');
$.ajax({
url: '/ajax/getObjectRequestList.php?objectId=' + objId,
method: "get",
success: function(data) {
$("#egrn_request_object_list_object_id").val(objId);
$("#egrn_request_object_list").html(data);
$("#egrn_request_object_list_window_bg").fadeIn(500);
$("#egrn_request_object_list_window").toggle(10);
$("body").addClass("lock");
}
});
});
//
$('body').on('click', '#clients_list .fltr-objects-list', function() {
let filter_id = $(this).data('filter-id');
openAutoSearchResults(filter_id, null);
});
//
$('body').on('click', '.fltr-req-list', function() {
let object_id = $(this).data('id');
openAutoSearchObjectReq(object_id);
});
// Закрыть модал результатов автопоиска
$('body').on('click', '#modalAutoSearchResults_bg .closer', function() {
closeAutoSearchResults();
});
// Закрыть модал заявок
$('body').on('click', '#modalAutoSearchObjectReq_bg .closer', function() {
closeAutoSearchObjectReq();
});
// Закрыть модал заявок
$('body').on('click', '#noLimitAdv', function() {
if ($('#noLimitAdv').prop("checked")) {
$('#numDaysAdv').attr("disabled", "disabled");
$('#numDaysAdvLabel').css("color", "#757575");
$('#numDaysAdv').val('');
} else {
$('#numDaysAdv').removeAttr("disabled", "");
$('#numDaysAdvLabel').css("color", "#000");
}
});
//Антизнак
$('body').on('click', '.antiznakRequestPay', function() {
antiznak_modals.open_modal_request();
})
$('body').on('click', '.antiznakRequest', function() {
let object_id = $(this).attr("data-id");
antiznak_modals.open_modal_photos(object_id);
})
});
function togglePriceStatInputs() {
if ($('.price-stats').is(":visible")) {
$('.price-stats').hide();
} else {
$('.price-stats').show();
}
}
function selectCurrencyPrice() {
let agency_id = $('#session_agency_id').val();
let cur = $('#select_currency_price').val();
let cur_name = 'руб.';
if (cur == 0) {
$('#price_avito_rub').hide();
} else
if (cur == 1) {
cur_name = 'usd';
$('#price_avito_rub').show();
} else if (cur == 2) {
cur_name = 'eur';
$('#price_avito_rub').show();
} else if (cur == 3 && agency_id == 20079) {
cur_name = 'azn';
$('#price_avito_rub').show();
}
$('#currency_prices_prep').text(cur_name);
$('#currency_prices_start').text(cur_name);
$('#currency_prices_fact').text(cur_name);
}
function selectObjectPopupCurrencyPrice() {
let agency_id = $('#session_agency_id').val();
let cur = $('#select_currency_price').val();
let cur_name = 'руб.';
if (cur == 0) {
$('#price_avito_rub').hide();
} else
if (cur == 1) {
cur_name = 'usd';
$('#price_avito_rub').css('display', 'flex');
} else if (cur == 2) {
cur_name = 'eur';
$('#price_avito_rub').css('display', 'flex');
} else if (cur == 3 && agency_id == 20079) {
cur_name = 'azn';
$('#price_avito_rub').css('display', 'flex');
}
$('#currency_prices_prep').text(cur_name);
$('#currency_prices_start').text(cur_name);
$('#currency_prices_fact').text(cur_name);
}
function createNewRequest(el) {
$("#egrn_request_object_list_window_bg").hide(10);
$("#egrn_request_object_list_window").hide(10);
newEgrnRequest(el);
}
function payForNewRequests() {
$("#egrn_request_object_list_window_bg").hide(10);
$("#egrn_request_object_list_window").hide(10);
newEgrnRequestPay();
}
function newEgrnRequestPay() {
$.ajax({
url: '/ajax/getCurrentEgrnTariffsTable.php',
method: "get",
success: function(data) {
$('#egrn_request_list').html(data);
$("#egrn_request_list_window_bg").fadeIn(500);
$("#egrn_request_list_window").toggle(10);
$("body").addClass("lock");
}
});
}
function newEgrnRequest(el) {
var objId = $(el).attr('data-object-id');
$.ajax({
url: '/ajax/getUserEgrnRequestCount.php',
method: "get",
success: function(data) {
$("#egrn_request_object_id").val(objId);
$("#egrnRequestAvailableCount").html("Доступно выписок: " + data);
$("#egrnRequestErrors").html('');
$("#moveEgrnRequest").prop('checked', false);
$("#simpleEgrnRequest").prop('checked', false);
$("#egrn_create_request_window_bg").fadeIn(500);
$("#egrn_create_request_window").toggle(10);
$("body").addClass("lock");
}
});
}
function calculateZipalPrice() {
var commonPrice = parseFloat($('#zipal-base-price').html());
$('#zipal_content').find('.destination-box:checked').each(function() {
var dest = $(this).attr("data-destination");
var radioLen = $("input[name='" + dest + "_radio']:checked").length;
if (radioLen > 0) {
var price = parseFloat($("input[name='" + dest + "_radio']:checked").attr("data-price"));
commonPrice = commonPrice + price;
}
});
$('#zipal-total-price').html(Math.round(commonPrice * 100) / 100);
}
function saveClientsTableFields(columns) {
let fields = [];
Object.entries(columns).forEach(([, column]) => {
if (column.id && column.visible)
fields.push(column.id);
});
$.post('/ajax/getClientsView.php', { table_fields: fields });
}
function openClientEventsWindowNew(id_client, to_send, scroll, req_id, adjacent_id = false, ignoreFunnelsUpdate = false) {
console.log(adjacent_id);
var reqId = false;
if (req_id) {
reqId = req_id;
$('#req__' + req_id).removeClass('is_new');
} else {
$('#client__' + id_client).removeClass('is_new');
}
$.post('/ajax/getClientsView.php', { chat_block: id_client, to_send: to_send, req_id: reqId, adjacent_id: adjacent_id }, function(data) {
$('#client_history').html(data);
$('.history__chat-n').slimScroll({
height: "100%",
width: "66%",
position: "right",
size: "6px",
color: "#585858",
alwaysVisible: true
});
$('.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
});
$('#client-info-block').html('<div class="preloader"></div>');
$('#client-event-chat').html('<div class="preloader"></div>');
$('#client-info-block .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$('#client-event-chat .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px"
});
$('.object-content__preloader').hide();
$("#client-history__bg").fadeIn(500);
$("#client_history").fadeIn(10);
$("body").addClass("lock");
var url = '/ajax/getClientLogForEventsNew.php?id=' + id_client;
if (reqId) {
url += "&req_id=" + reqId;
}
$('#client_history').attr('data-active-req', reqId);
$.ajax({
url: url,
success: function(data) {
$('#client-info-block').html(data);
if (scroll != 1) {
$('#client_history .history__chat-n').slimScroll({ scrollTo: $('#client-info-block').prop("scrollHeight") + 'px' });
}
$(".add-task-client").click(function(e) {
e.preventDefault();
$(".chat-history__actions_new").toggleClass("show");
});
$(".chat-history__actions_new").mouseover(function(e) {
e.preventDefault();
if ($(this).attr("id") == undefined)
$(".chat-history__actions_new").addClass("show");
}).mouseleave(function(e) {
e.preventDefault();
if ($(this).attr("id") == undefined)
$(".chat-history__actions_new").removeClass("show");
});
}
});
let funnel_id = $('#funnelIdClients').val();
let use_custom_funnel = $('#useCustomFunnel').val();
let section = 'clients';
if (reqId)
section = 'requisitions';
if (!ignoreFunnelsUpdate) {
get_funnels(funnel_id, section, use_custom_funnel);
}
if (reqId) {
get_finance_info(reqId);
}
});
}
function get_finance_info(req_id){
axios.post('/ajax/ajax_vue_requisitions.php', {
request: 'req_finance_info',
req_id: req_id,
})
.then(function(response) {
//console.log(response.data);
let res = response.data;
if(res.is_block){
$('.finance_info').removeClass('hidden');
$('#req_finance_info').html(res.html);
} else {
$('.finance_info').addClass('hidden');
}
if(document.location.pathname == '/requisitions.php' && typeof requisitions == 'object' && requisitions.view == 'list'){
requisitions.get_req_id(req_id);
}
})
.catch(function(error) {
consle.error(error);
});
}
function email_settings() {
var type = parseInt($("#type_email_settings").val());
$(".mail_settings").hide();
switch (type) {
case 1:
$('input[name="smtp"]').val("smtp.yandex.ru");
$('input[name="smtp_port"]').val("465");
$('input[name="smtp_ssl"]').prop("checked", true);
var smtp_lg = $('input[name="email_login"]').val();
$('input[name="smtp_lg"]').val(smtp_lg);
$('input[name="smtp_from"]').val(smtp_lg + $('#type_email_settings option:selected').text());
break;
case 2:
$('input[name="smtp"]').val("smtp.mail.ru");
$('input[name="smtp_port"]').val("465");
$('input[name="smtp_ssl"]').prop("checked", true);
var smtp_lg = $('input[name="email_login"]').val() + $('#type_email_settings option:selected').text();
$('input[name="smtp_lg"]').val(smtp_lg);
$('input[name="smtp_from"]').val(smtp_lg);
break;
case 3:
$('input[name="smtp"]').val("smtp.rambler.ru");
$('input[name="smtp_port"]').val("465");
$('input[name="smtp_ssl"]').prop("checked", true);
var smtp_lg = $('input[name="email_login"]').val() + $('#type_email_settings option:selected').text();
$('input[name="smtp_lg"]').val(smtp_lg);
$('input[name="smtp_from"]').val(smtp_lg);
break;
case 4:
$('input[name="smtp"]').val("smtp.gmail.com");
$('input[name="smtp_port"]').val("587");
$('input[name="smtp_ssl"]').prop("checked", true);
var smtp_lg = $('input[name="email_login"]').val() + $('#type_email_settings option:selected').text();
$('input[name="smtp_lg"]').val(smtp_lg);
$('input[name="smtp_from"]').val(smtp_lg);
break;
case 5:
$(".mail_settings").show();
var smtp_lg = $('input[name="email_login"]').val();
$('input[name="smtp_lg"]').val(smtp_lg);
$('input[name="smtp_from"]').val(smtp_lg);
break;
}
}
stop = false;
function setOnline() {
$.ajax({
url: '/ajax/set_online.php'
});
}
function clearAllPdf() {
$.ajax({
url: '/ajax/clearPdfChecked.php',
success: function() {
$('#num_send').text("0");
$('#kol_send').val("0");
$('#kol_obj_send').text("0");
$('.to_send').removeAttr("checked").removeClass('active');
$('.to_send_newbuilding').removeAttr("checked").removeClass('active');
$('.to_send_complexes').removeAttr("checked").removeClass('active');
$('#head-checkbox').html('');
$('#objts').html('');
$('#catalog-link').html('');
$("#catalog-link-newbuildings").html("");
$("#catalog-link-complexes").html("");
$('.to_send_input, .to_send').removeClass('active');
$('.pdf-resend__all, .pdf-resend, .to_resend, .to_resend__all').removeClass('active');
testIfResendAllCanBeActive();
if (window.complexBus) {
window.complexBus.$emit('all-pdf-clean');
}
}
});
}
function saveCatalog(clients, theme, txt, send_type, closes_contact, priсes, catalog, checkboxAddresses, availableCatalogs, request, catalogNewBuildings = null) {
$.ajax({
url: '/ajax/send_catalog.php',
type: 'POST',
data: {
clients: clients,
theme: theme,
txt: txt,
send_type: send_type,
closes_contact: closes_contact,
priсes: priсes,
catalog: catalog,
addresses: checkboxAddresses,
request: request,
catalog_types: availableCatalogs,
catalogNewBuildings
},
success: function(link) {
//console.log(link);
if (send_type === 'catalog' || send_type == 'links_metro') {
var copyText = link;
var copytext2 = document.createElement('input');
document.body.appendChild(copytext2);
copytext2.value = copyText;
copytext2.select();
document.execCommand("copy");
if(send_type == 'catalog'){
$('.copy_catalog_link').removeClass('hidden');
$('.copy_catalog_link').attr('title', 'Скопировано!');
$('.copy_catalog_link').data('title', 'Скопировано!');
$('#catalog_link_copy_loader').addClass('hidden');
// Добавляем catalogId из ссылки в атрибут (из параметра ?catalog=)
// Если будут еще параметры, эта логика не сработает
$('#button_catalog_link').attr('data-catalog', link.split('=').pop());
}
if(send_type == 'links_metro'){
$('.copy_catalog_link_metro').removeClass('hidden');
$('.copy_catalog_link_metro').attr('title', 'Скопировано!');
$('.copy_catalog_link_metro').data('title', 'Скопировано!');
$('#catalog_link_copy_loader_links').addClass('hidden');
$('#button_catalog_link').attr('data-catalog', 1);
}
document.body.removeChild(copytext2);
} else {
if (send_type == 'whatsapp' || send_type == 'telegram') {
window.open(link, '_blank');
}
if (window.complexBus) {
window.complexBus.$emit('all-pdf-clean');
}
$('#head-checkbox').html('');
$('#catalog-link').html('');
$("#catalog-link-newbuildings").html("");
$('#send_log_new').append('<p>Письмо успешно отправлено!</p>');
$('#send_log_new').css({ "background": "none", "min-height": "0" });
$('#num_send').text('0');
$("#komy").select2("val", "");
$('#kol_send').val('0');
$('#kol_obj_send').text('0');
$('.to_send_input, .to_send').removeClass('active');
$('.pdf-resend__all, .pdf-resend, .to_resend, .to_resend__all').removeClass('active');
clearAllPdf();
}
},
error: function(link) {
console.log('error', link);
}
})
}
function saveNewBuildingsCatalog(
clients,
theme,
txt,
send_type,
closes_contact,
prices,
catalogNewBuildings,
// catalog_type,
checkboxAddresses,
availableCatalogs,
request
) {
$.ajax({
url: "/ajax/send_catalog.php",
type: "POST",
data: {
clients,
theme,
txt,
send_type,
closes_contact,
prices,
// catalog_type,
catalogNewBuildings,
addresses: checkboxAddresses,
catalog_types: availableCatalogs,
request,
},
success: function (link) {
if (availableCatalogs.includes("catalog-newbuilding")) {
var copyText = link;
var copytext2 = document.createElement("input");
document.body.appendChild(copytext2);
copytext2.value = copyText;
copytext2.select();
document.execCommand("copy");
$(".copy_catalog_link_newbuilding").removeClass("hidden");
$(".copy_catalog_link_newbuilding").attr("title", "Скопировано!");
$(".copy_catalog_link_newbuilding").data("title", "Скопировано!");
$("#new_bld_catalog_link_copy_loader").addClass("hidden");
// Добавляем catalogId из ссылки в атрибут (из параметра ?catalog=)
// Если будут еще параметры, эта логика не сработает
const strIn = link;
const index = strIn.indexOf("?catalog=");
if (index != -1) {
let spliitedString = strIn.substr(index);
const catalogId = spliitedString.split("=")[1];
$("#new_bld_btn_catalog_link").attr(
"newbuilding-data-catalog",
catalogId
);
}
document.body.removeChild(copytext2);
}
},
error: function (link) {
console.log("error", link);
},
});
}
function saveComplexesCatalog(
clients,
theme,
txt,
send_type,
closes_contact,
prices,
catalogComplexes,
// catalog_type,
checkboxAddresses,
availableCatalogs,
request
) {
$.ajax({
url: "/ajax/send_catalog.php",
type: "POST",
data: {
clients,
theme,
txt,
send_type,
closes_contact,
prices,
catalogComplexes,
addresses: checkboxAddresses,
catalog_types: availableCatalogs,
request,
},
success: function (link) {
if (availableCatalogs.includes("catalog-complexes")) {
var copyText = link;
var copytext2 = document.createElement("input");
document.body.appendChild(copytext2);
copytext2.value = copyText;
copytext2.select();
document.execCommand("copy");
$(".copy_catalog_link_complexes").removeClass("hidden");
$(".copy_catalog_link_complexes").attr("title", "Скопировано!");
$(".copy_catalog_link_complexes").data("title", "Скопировано!");
$("#complexes_catalog_link_copy_loader").addClass("hidden");
const strIn = link;
const index = strIn.indexOf("?catalog=");
if (index != -1) {
let spliitedString = strIn.substr(index);
const catalogId = spliitedString.split("=")[1];
$("#complexes_btn_catalog_link").attr(
"complexes-data-catalog",
catalogId
);
$("#calc-button").attr("data-complex-id", catalogId);
}
document.body.removeChild(copytext2);
}
},
error: function (link) {
console.log("error", link);
},
});
}
function generateMailWithLinksAndSend(clients, theme, txt, send_type, closes_contact, priсes, checkboxAddresses, request, id) {
$.ajax({
url: '/ajax/send_links.php',
type: 'POST',
data: {
clients: clients,
theme: theme,
txt: txt,
send_type: send_type,
closes_contact: closes_contact,
priсes: priсes,
addresses: checkboxAddresses,
request: request,
id: id,
},
success: function(d) {
if (send_type == 'link') {
var copyText = d;
var copytext2 = document.createElement('input');
document.body.appendChild(copytext2);
copytext2.value = copyText;
copytext2.select();
document.execCommand("copy");
$('#link_copy_bufer' + id).removeClass('hidden');
$('#link_copy_bufer' + id).attr('title', 'Скопировано!');
$('#link_copy_bufer' + id).data('title', 'Скопировано!');
$('#link_copy_loader' + id).addClass('hidden');
//alert("Ссылка скопирована");
document.body.removeChild(copytext2);
setTimeout(function() {
$('.ui-tooltip').remove();
$('#link_copy_bufer' + id).addClass('hidden');
$('#link_copy_loader' + id).removeClass('hidden');
setTimeout(function() {
$('#link_copy_bufer' + id).removeClass('hidden');
$('#link_copy_bufer' + id).attr('title', 'Скопировать ссылку');
$('#link_copy_bufer' + id).data('title', 'Скопировать ссылку');
$('#link_copy_loader' + id).addClass('hidden');
}, 1000);
}, 2000);
} else {
if (send_type == 'whatsapp' || send_type == 'telegram') {
window.open(d, '_blank');
}
$('#send_log_new').append('<p>Письмо успешно отправлено!</p>');
$('#send_log_new').css({ "background": "none", "min-height": "0" });
$('#num_send').text('0');
$("#komy").select2("val", "");
$('#kol_send').val('0');
$('#kol_obj_send').text('0');
$('.to_send_input, .to_send').removeClass('active');
$('.pdf-resend__all, .pdf-resend, .to_resend, .to_resend__all').removeClass('active');
}
},
error: function(d) {
console.log(d);
}
})
}
function generatePDFAndSendNewBuilding(num, clients, theme, txt, sendNum, closes_contact, priсes, checkboxAddress, request) {
$.ajax({
url: '/ajax/send_pdf.php',
type: 'POST',
data: {
clients: clients,
theme: theme,
txt: txt,
closes_contact: closes_contact,
priсes: priсes,
address: checkboxAddress,
request: request
},
success: function(d) {
console.log(d);
$('#send_log_new').append('<p>Письмо успешно отправлено!</p>');
$('#send_log_new').css({ "background": "none", "min-height": "0" });
$('#num_send').text('0');
$("#komy").select2("val", "");
$('#kol_send').val('0');
$('#kol_obj_send').text('0');
$('.to_send_input, .to_send, .to_send_newbuilding').removeClass('active');
$('.pdf-resend__all, .pdf-resend, .to_resend, .to_resend__all').removeClass('active');
},
error: function(d) {
console.log(d);
}
});
}
function advertisingCostsWindow(objId) {
$('#ad_cost_stat_block').html('<div class="preloader"></div>');
$('#ad_cost_stat_block .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px", "width": "26px", "height": "26px" });
$.ajax({
url: '/ajax/getAdCostStatWindowContent.php?id=' + objId,
success: function(data) {
$('#ad_cost_stat_block').html(data);
$('.history__results').slimScroll({
height: "300px",
width: "100%",
position: "right",
size: "8px",
color: "#585858",
alwaysVisible: false
});
try {
$("#popup__actions_" + objId).toggleClass("show");
} catch (ex) {
}
// Редактирование стоимости размещения в рекламе
function editStatTable(link, input, id, object_id, section, destination, old_price, price) {
$.post("ajax/editStatTable.php", {
action: 'edit_price',
section: section,
id: id,
object_id: object_id,
destination: destination,
price: price,
old_price: old_price
}, function(data) {
let result = JSON.parse(data);
if (result.price && result.price_string) {
$(input).val(result.price);
$(link).text(result.price_string);
}
$(link).toggleClass('hidden', '');
$(input).parent('.wrapper').toggleClass('hidden', '');
});
}
$('i[id^="ad_cost_save_"]').on('click', (event) => {
let target = $(event.target.dataset.ref).get(0);
let link = target.dataset.link;
let id = event.target.dataset.id;
let object_id = target.dataset.objectId;
let section = target.dataset.type;
let destination = target.dataset.destination;
let old_price = target.dataset.oldPrice;
let price = target.value;
if (object_id && destination && price >= 0) {
editStatTable(link, target, id, object_id, section, destination, old_price, price);
}
});
$("#ad_cost_stat_bg").fadeIn(500);
$("#ad_cost_stat").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
}
function generatePDFandSend(num, clients, theme, txt, closes_contact, priсes, checkboxAddress, request) {
var n = parseInt(num) + 1;
$.ajax({
url: '/ajax/generate_pdf.php?el=' + num + '&closes=' + closes_contact + '&priсes=' + priсes + '&address=' + checkboxAddress,
success: function(data) {
console.log(data);
if (!data || (data && data.indexOf("no_el") >= 0)) {
if (!data) {
$('#send_log_new').append('<p>Файл PDF № ' + n + ' сгенерирован...</p>');
}
if (data && data.indexOf("no_el") >= 0) {
n = 0;
}
generatePDFAndSendNewBuilding(0, clients, theme, txt, n, closes_contact, priсes, checkboxAddress, request);
} else {
$('#send_log_new').append('<p>Файл PDF № ' + n + ' сгенерирован...</p>');
generatePDFandSend(data, clients, theme, txt, closes_contact, priсes, checkboxAddress);
}
},
error: function(d) {
console.log(d);
}
})
}
function hidechangeTarif() {
$("#changeTarif_bg").hide(10);
$("#changeTarif").hide(10);
$("body").removeClass("lock");
}
function show_pay() {
$("#pay_bg").fadeIn(500);
$("#pay").toggle(10);
$("body").addClass("lock");
}
function showAfterComplaint() {
$.ajax({
url: '/ajax/modals/afterComplaintWinContent.php',
success: function(data) {
$("#after_complaint_bg").html(data).fadeIn(500);
$("#after_complaint").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function closeAfterComplaint() {
$("#after_complaint_bg").hide(10);
$("#after_complaint").hide(10);
$("body").removeClass("lock");
}
function showAfterStageFail() {
$.ajax({
url: '/ajax/modals/afterStageFailWinContent.php',
success: function(data) {
$("#after_stage_fail_bg").html(data).fadeIn(500);
$("#after_stage_fail").fadeIn(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function closeAfterStageFail() {
$("#after_stage_fail_bg").hide(10);
$("#after_stage_fail").hide(10);
$("body").removeClass("lock");
}
function showMaxCountWin() {
$.ajax({
url: '/ajax/modals/maxClientCountWinContent.php',
success: function(data) {
$("#max_client_count_win_bg").html(data).fadeIn(500);
$("#max_client_count_win").fadeIn(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function closeMaxCountWin() {
$("#max_client_count_win_bg").hide(10);
$("#max_client_count_win").hide(10);
$("body").removeClass("lock");
}
function closeAfterReservation() {
$("#after_reservation_bg").hide(10);
$("#after_reservation").hide(10);
$("body").removeClass("lock");
}
function closeAfterAddFromArchive() {
$("#after_add_from_archive_bg").hide(10);
$("#after_add_from_archive").hide(10);
$("body").removeClass("lock");
}
function closeAfterAddToAd() {
$("#after_add_to_ad_bg").hide(10);
$("#after_add_to_ad").hide(10);
$("body").removeClass("lock");
}
function closeRestrictedAccessWin() {
$("#restricted_access_win_bg").hide(10);
$("#restricted_access_win").hide(10);
$("body").removeClass("lock");
}
function closeAfterStats() {
$("#ad_stat_bg").hide(10);
$("#ad_stat").hide(10);
$("body").removeClass("lock");
}
function closeAfterAdStats() {
$("#ad_cost_stat_bg").hide(10);
$("#ad_cost_stat").hide(10);
$("body").removeClass("lock");
}
function closeAfterPublishStats() {
$("#publish_stat_bg").hide(10);
$("#publish_stat").hide(10);
$("body").removeClass("lock");
}
function closeAfterEgrnRequests() {
$("#egrn_request_list_window_bg").hide(10);
$("#egrn_request_list_window").hide(10);
$("body").removeClass("lock");
}
function selectEgrnTariff(element) {
var el = $(element);
var tariffId = el.attr('data-tariff-id');
$.ajax({
url: '/ajax/addUserEgrnTariffRequest.php?tariff=' + tariffId,
success: function(data) {
$('#egrn_request_list').html(data);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function addVkPost(objId, text, toUser) {
var groupIds = $('input[name="onGroupWall[]"]:checked').map(function() {
return this.value;
}).get();
if (groupIds.length == 0 && !toUser) {
alert('Необходимо указать Место назначения поста.');
return;
}
$("#vk_post .load-bar").removeClass("hidden");
$.ajax({
url: "/ajax/addVkPost.php",
method: "post",
data: {
"objId": objId,
"text": text,
"toGroup": groupIds.length == 0 ? "0" : "1",
"toUser": toUser ? "1" : "0",
"groupIds": groupIds
},
success: function(data) {
if (data == 'success') {
$("#vk_post_bg").hide(10);
$("#vk_post").hide(10);
$("body").removeClass("lock");
} else {
$("#vk_post .load-bar").addClass("hidden");
alert(data.replace("error:", ""));
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
}
function getVkToken() {
$.ajax({
url: '/ajax/modals/getVkTokenWinContent.php',
success: function(data) {
$("#get_vk_token_bg").html(data).fadeIn(500);
$("#get_vk_token").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function generateToken(code) {
if (code && $.trim(code)) {
$.ajax({
url: '/ajax/generateVkToken.php?code=' + code,
success: function(data) {
if (data && data == 'success') {
$("#get_vk_token_bg").hide(10);
$("#get_vk_token").hide(10);
$("body").removeClass("lock");
showAfterVkToken();
} else {
alert(data.replace("error:", ""));
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
alert('Необходимо заполнить поле код.');
}
}
function showLowPriceWin() {
$("#low_object_price_bg").fadeIn(500);
$("#low_object_price").toggle(10);
$("body").addClass("lock");
}
function recalculatePrice(lowPricePercent) {
if (lowPricePercent && $.trim(lowPricePercent)) {
var intPercent = parseInt(lowPricePercent);
if (isNaN(intPercent)) {
alert('Процент снижения цены должен быть числом.');
} else {
if (intPercent < 1 || intPercent > 99) {
alert('Процент снижения цены должен иметь значение от 1 до 99.');
} else {
$.ajax({
url: '/ajax/lowPriceForSelected.php?pct=' + intPercent,
success: function() {
$("#low_object_price_bg").hide(10);
$("#low_object_price").hide(10);
$("body").removeClass("lock");
clearAllSelected();
location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
} else {
alert('Необходимо указать процент снижения цены.');
}
}
function openWazzapModal() {
$("#wazzap_access_win_bg").fadeIn(500);
$("#wazzap_access_win").toggle(10);
$("body").addClass("lock");
}
function closeWazzapAccessWin() {
$("#wazzap_access_win_bg").hide(10);
$("#wazzap_access_win").hide(10);
$("body").removeClass("lock");
}
function closeWhatsappSendedWin() {
$("#whatsapp_sended_win_bg").hide(10);
$("#whatsapp_sended_win").hide(10);
$("body").removeClass("lock");
}
function showChangeObjectContactsWin() {
$.ajax({
url: '/ajax/modals/changeObjectContactsWinContent.php',
success: function(data) {
$("#change_object_contacts_bg").html(data).fadeIn(500);
$("#change_object_contacts").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function showDeleteObjectsWindow() {
$.ajax({
url: '/ajax/modals/deleteAdObjectsWinContent.php',
success: function(data) {
$("#delete_ad_objects_bg").html(data).fadeIn(500);
$("#delete_ad_objects").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function showSaveAutosearchFieldsWindow() {
$.ajax({
url: '/ajax/modals/saveAutosearchWinContent.php',
success: function(data) {
$("#save_autosearch_fields_bg").html(data).fadeIn(500);
$("#save_autosearch_fields").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function showDeleteMyObjectsWindow() {
$.ajax({
url: '/ajax/modals/deleteMyObjectsWinContent.php',
success: function(data) {
$("#delete_my_objects_bg").html(data).fadeIn(500);
$("#delete_my_objects").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function showAddObjectsToArchiveWin() {
$.ajax({
url: '/ajax/modals/objectsToArchiveWinContent.php',
success: function(data) {
$("#add_objects_to_archive_bg").html(data).fadeIn(500);
$("#add_objects_to_archive").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function changeContacts(fio, phone, comission, studio) {
if (fio && $.trim(fio) && phone && $.trim(phone) && comission && $.trim(comission)) {
$.ajax({
url: '/ajax/changeContactsForSelected.php?newFio=' + fio + "&newPhone=" + phone + "&newCom=" + comission + "&st=" + (studio ? "1" : "0"),
success: function() {
$("#change_object_contacts_bg").hide(10);
$("#change_object_contacts").hide(10);
$("body").removeClass("lock");
clearAllSelected();
location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
alert('Необходимо заполнить все поля.');
}
}
function showAfterVkToken() {
$.ajax({
url: '/ajax/modals/afterGetTokenWinContent.php',
success: function(data) {
$("#after_vk_token_bg").html(data).fadeIn(500);
$("#after_vk_token").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function closeAfterVkToken() {
$("#after_vk_token_bg").hide(10);
$("#after_vk_token").hide(10);
$("body").removeClass("lock");
window.location = '/settings.php';
}
function showWindowRemoveVkToken() {
$.ajax({
url: '/ajax/modals/deleteVkTokenWinContent.php',
success: function(data) {
$("#delete_vk_token_bg").html(data).fadeIn(500);
$("#delete_vk_token").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function deleteVkToken() {
$.ajax({
url: '/ajax/deleteVkToken.php',
success: function() {
window.location = '/settings.php';
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function removeSelectedPhotos() {
$('input[name="fileuploader-list-photo"]').attr('data-immidiate-remove', true);
$('.fileuploader-items-list').find('input[type="checkbox"]:checked').each(function() {
var checkbox = $(this);
const photoContainer = checkbox.parent().parent();
const fileUploaderItem = photoContainer.parent();
$(fileUploaderItem).find('.fileuploader-action-remove').click()
});
$('input[name="fileuploader-list-photo"]').removeAttr('data-immidiate-remove', true);
$("body").removeClass("lock");
$("#delete_photos").hide(10);
}
function removeAllPhotos() {
const parentContainer = document.querySelector('.fileuploader-items-list')
$('input[name="fileuploader-list-photo"]').attr('data-immidiate-remove', true);
parentContainer.querySelectorAll('.fileuploader-item').forEach((container) => {
container.querySelector('.fileuploader-action-remove').click()
})
$('input[name="fileuploader-list-photo"]').removeAttr('data-immidiate-remove');
$("body").removeClass("lock");
$("#delete_photos").hide(10);
}
function deleteAdObjects() {
$.ajax({
url: '/ajax/deleteAdObjects.php',
success: function() {
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function deleteMyObjects() {
$.ajax({
url: '/ajax/deleteMyObjects.php',
success: function() {
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function getVkObjDesc(objId) {
$.ajax({
url: '/ajax/modals/vkPostWinContent.php',
success: function(data) {
$("#vk_post_bg").html(data);
$.ajax({
url: '/ajax/getObjectDescForVk.php?objId=' + objId,
success: function(data) {
$("#vk_post_idObj").val(objId);
$("#vk_post_text").val(data).focus();
if (document.getElementById('onGroupWall')) {
document.getElementById('onUserWall').checked = false;
document.getElementById('onGroupWall').checked = true;
}
$("#vk_post_bg").fadeIn(500);
$("#vk_post").toggle(10);
$("body").addClass("lock");
$("#vk_post .load-bar").addClass("hidden");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown);
}
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function changeUserClients(userId) {
$.ajax({
url: '/ajax/modals/deleteUserWinContent.php',
success: function(data) {
$("#delete_user_bg").html(data);
$("#delete_user_id").val(userId);
$("#delete_who_work option").show();
$("#delete_who_work option[value='" + userId + "']").hide();
$("#delete_who_work_obj option[value='" + userId + "']").hide();
$("#delete_user_bg").fadeIn(500);
$("#delete_user").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function deleteUser(userId, newWhoWork, newWhoWorkObj, newWhoWorkReq) {
$.ajax({
url: '/ajax/deleteUser.php',
method: "post",
data: {
"userId": userId,
"newWhoWork": newWhoWork,
"newWhoWorkObj": newWhoWorkObj,
"newWhoWorkReq": newWhoWorkReq
},
success: function(data) {
if (data && data == 'success') {
window.location = "/users.php";
} else {
alert(data.replace("error:", ""));
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function testIfResendAllCanBeActive(oneElement) {
if (!oneElement) {
oneElement = $('.to_resend__all');
}
oneElement.each(function() {
var allActive = true;
$(this).closest('ul').find('.to_resend').each(function() {
var id = $(this).attr('data-id');
if (!$('.object_' + id).hasClass('active')) {
allActive = false;
}
});
if (allActive) {
$(this).addClass('active');
$(this).closest('.pdf-resend__all').addClass('active');
} else {
$(this).removeClass('active');
$(this).closest('.pdf-resend__all').removeClass('active');
}
});
}
function updateEventState(id) {
if (id) {
$.ajax({
url: '/ajax/setEventViewed.php?id=' + id,
success: function(data) {
$('#calendarCounter').html(data);
$('#calendar').fullCalendar('refetchEvents');
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function updateClientEventState() {
/*if (id) {
$.ajax({
url: '/ajax/setClientEventViewed.php?id=' + id,
success:function(data){
$('#calendarCounter').html(data);
$('#calendar').fullCalendar('refetchEvents');
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}*/
}
function openEventsWindow(id_object) {
$('#submitTextButton').attr('data-id', id_object);
$('#object-info-block').html('<div class="preloader"></div>');
$('#event-chat').html('<div class="preloader"></div>');
$('#object-info-block .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#event-chat .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#chat__new-deal').attr('data-object-id', id_object);
$('#chat__new-file').attr('data-object-id', id_object);
$('#chat__new-showing').attr('data-object-id', id_object);
$('#chat__new-event').attr('data-object-id', id_object);
$("#object-history__bg").fadeIn(500);
$("#object-history").toggle(10);
$("body").addClass("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);
}
});
}
function openNotesWindow(id_object) {
$('#submitTextButton2').attr('data-id', id_object);
$('#object-info-block2').html('<div class="preloader"></div>');
$('#notes-chat').html('<div class="preloader"></div>');
$('#object-info-block2 .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#notes-chat .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$("#object-notes__bg").fadeIn(500);
$("#object-notes").toggle(10);
$("body").addClass("lock");
$.ajax({
url: '/ajax/getObjectInfoForEvents.php?id=' + id_object,
success: function(data) {
$('#object-info-block2').html(data);
$.ajax({
url: '/ajax/getLogForNotes.php?object_id=' + id_object,
success: function(data) {
//console.log(data);
$('#notes-chat').html(data);
if ($('#notes-chat .chat-block').length > 0)
$('.addEditNote[data-id="' + id_object + '"]').addClass('haveNotes');
else
$('.addEditNote[data-id="' + id_object + '"]').removeClass('haveNotes');
$('.history__chat').scrollTop($('#notes-chat').prop("scrollHeight"));
}
});
setTimeout(function() {
$('#object-info-block2 .fotorama').fotorama();
initializeMapOnEventWindow();
}, 100);
}
});
}
function openAdStatsWindow(id_object) {
$('#advert_report').html('<div class="object-content__preloader" style="position:absolute;left:calc(50% - 75px);">\n' +
'<img src="../images/rocket-spinner.svg" width="96px">\n' +
'<br/>\n' +
'<p style="padding: 15px 0">Дождитесь завершения загрузки...</p>\n' +
'</div>');
$("#ad_stat_bg").fadeIn(500);
$('#ad_stat_bg .object-content__preloader').show();
$("#ad_stat").toggle(10);
$("body").addClass("lock");
try {
$("#popup__actions_" + id_object).toggleClass("show");
} catch (ex) {
}
$.ajax({
url: '/ajax/getAdObjectStats.php?id=' + id_object,
success: function(data) {
$('#ad_stat_bg .object-content__preloader').hide();
$('#advert_report').html(data);
}
});
}
function openObjectAdvPlacesStatsWindow(id_object, outerUserId) {
$('#stats_adv_objects_list').html('<div class="preloader"></div>');
$('#stats_adv_objects_list .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$("#stats_adv_objects_list__bg").fadeIn(500);
$("#stats_adv_objects_list").toggle(10);
$("body").addClass("lock");
var period = $('.filter-popup-type.period.active').attr('id');
var responsible = $('#ms-crm-charts-work').val();
var userId = $('#obj_table_stat_user_id').val();
var params = {
stats: 'stats',
period: period,
responsible: JSON.stringify(responsible),
userId: userId ? userId : outerUserId,
objectId: id_object,
user_id: $('#session_user_id').val(),
users_admin: $('#session_user_admin').val()
};
if (period && period === 'dates') {
var onDate = $('#onDate').val();
var offDate = $('#offDate').val();
params.onDate = onDate;
params.offDate = offDate;
}
$.ajax({
url: '/ajax/getOneObjectAdvStats.php',
method: "post",
data: params,
success: function(data) {
$('#stats_adv_objects_list').html(data);
$('.dropdown-toggle').dropdown();
}
});
}
function openPublishStatsWindow(id_object) {
$('#publish_stat_rep').html('<div class="preloader"></div>');
$('#publish_stat_rep .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$("#publish_stat_bg").fadeIn(500);
$("#publish_stat").toggle(10);
$("body").addClass("lock");
try {
$("#popup__actions_" + id_object).toggleClass("show");
} catch (ex) {
}
$.ajax({
url: '/ajax/getPublishObjectStats.php?id=' + id_object,
success: function(data) {
$('#publish_stat_rep').html(data);
}
});
}
function openSendToNewUserWindow(id_object) {
$("#send_to_other_user_id_obj").val(id_object);
$.ajax({
url: '/ajax/getAgencyUsersComboFill.php?id_obj=' + id_object,
success: function(data) {
$('#ms-new-user-work').html(data);
$("#send_to_other_user_bg").fadeIn(500);
$("#send_to_other_user").toggle(10);
$("body").addClass("lock");
}
});
}
function sendToNewUser(newUserId, objectId) {
if (newUserId && $.trim(newUserId)) {
if (newUserId === "-1") {
alert('Необходимо выбрать нового сотрудника.');
} else {
if (!objectId || !$.trim(objectId)) {
alert('Необходимо указать объект для передачи.');
} else {
$.ajax({
url: '/ajax/sendObjectToNewUser.php?newUser=' + newUserId + '&objectId=' + objectId,
success: function() {
$("#send_to_other_user_bg").hide(10);
$("#send_to_other_user").hide(10);
$("body").removeClass("lock");
// обновим кнопку-состояние
updateSendToNewUserButton(objectId)
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
} else {
alert('Необходимо выбрать нового сотрудника.');
}
}
function showCancelSendToNewUserWindow(user_id, object_id) {
$("#send_to_user_canceled_user_id").val(user_id);
$("#send_to_user_canceled_object_id").val(object_id);
$("#cancel_send_object_to_other_user_bg").fadeIn(500);
$("#cancel_send_object_to_other_user").toggle(10);
$("body").addClass("lock");
$.ajax({
url: '/ajax/getSendUserName.php?objectId=' + object_id,
success: function(data) {
$("#send_to_user_canceled_user_name").html(data);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function cancelSendToNewUser(userId, objectId) {
$.ajax({
url: '/ajax/cancelSendObjectToNewUser.php?userId=' + userId + '&objectId=' + objectId,
success: function() {
$("#cancel_send_object_to_other_user_bg").hide(10);
$("#cancel_send_object_to_other_user").hide(10);
$("body").removeClass("lock");
// обновим кнопку-состояние
updateSendToNewUserButton(objectId)
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function updateArchiveButton() {
//Страница
var page = null;
var paginations = $('.pagination');
if (paginations.length > 0) {
var href = $(paginations[0]).find('.active a').attr('href');
if (href) {
href = href.replace('?page=', '');
}
if (!isNaN(parseInt(href))) {
page = parseInt(href);
}
}
show_objects_options_search();
get_objects_list(page);
$.get("/ajax/updateTabObjects.php", function(data) {
var res = JSON.parse(data);
if (res.activeObj > 0 && !isNaN(parseInt(res.activeObj))) {
$('#activeObj').text(res.activeObj);
$('#activeObj').removeClass('hidden');
} else if (res.activeObj == 0) {
$('#activeObj').addClass('hidden');
}
if (res.archiveObj > 0 && !isNaN(parseInt(res.archiveObj))) {
$('#archiveObj').text(res.archiveObj);
$('#archiveObj').removeClass('hidden');
} else if (res.archiveObj == 0) {
$('#archiveObj').addClass('hidden');
}
});
}
function updateSendToNewUserButton(object_id) {
$.ajax({
url: '/ajax/getStateToOtherUserButton.php?object_id=' + object_id,
success: function(data) {
let target = $('.jw__objects #item' + object_id + ' .jw__action-button').find('.sendToNewUser, .cancelSendToNewUser').parent();
target.after(data);
target.remove();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function openSendObjectsToNewUserWindow(objectsId) {
$("#send_objects_to_other_user_id_obj").val(objectsId);
$.ajax({
url: '/ajax/getAgencyUsersComboFill.php?id_obj=' + objectsId,
success: function(data) {
$('#ms-new-user-work2').html(data);
$("#send_objects_to_other_user_bg").fadeIn(500);
$("#send_objects_to_other_user").toggle(10);
$("body").addClass("lock");
}
});
}
function sendObjectsToNewUser(newUserId, objectsId) {
if (newUserId && $.trim(newUserId)) {
if (newUserId === "-1") {
alert('Необходимо выбрать нового сотрудника.');
} else {
if (!objectsId || !objectsId.length) {
alert('Необходимо указать объекты для передачи.');
} else {
$.ajax({
url: '/ajax/selectedToOtherUser.php?newUser=' + newUserId + '&objectsId=' + objectsId,
success: function() {
$("#send_objects_to_other_user_bg").hide(10);
$("#send_objects_to_other_user").hide(10);
$("body").removeClass("lock");
location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
} else {
alert('Необходимо выбрать нового сотрудника.');
}
}
function saveCabinetLink() {
var cabinetId = document.getElementById('cabinet_link_cabinet_id').value;
var recordId = document.getElementById('cabinet_link_record_id').value;
var url = document.getElementById('cabinet_link_url').value;
var name = document.getElementById('cabinet_link_name').value;
var viewCount = document.getElementById('cabinet_link_view_count').value;
if (cabinetId) {
if (!url || !name) {
alert('Необходимо указать ссылку и наименование.');
} else {
$.ajax({
url: '/ajax/saveCabinetLink.php',
method: "post",
data: {
"cabinetId": cabinetId,
"recordId": recordId,
"name": name,
"url": url,
"viewCount": viewCount
},
success: function(data) {
$("#cabinetData").html(data);
$("#cabinet_link_add_edit_bg").hide(10);
$("#cabinet_link_add_edit").hide(10);
$("body").removeClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
} else {
$("#cabinet_link_add_edit_bg").hide(10);
$("#cabinet_link_add_edit").hide(10);
$("body").removeClass("lock");
}
}
function deleteCabinetLink(id) {
if (id) {
$.ajax({
url: '/ajax/deleteCabinetLink.php?id=' + id,
success: function(data) {
$("#cabinetData").html(data);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
alert('Не указан ИД - перезагрузите страницу и попробуйте снова.');
}
}
function openClientEventsWindow(id_client) {
$('#submitClientInfoTextButton').attr('data-id', id_client);
$('#client-info-block').html('<div class="preloader"></div>');
$('#client-event-chat').html('<div class="preloader"></div>');
$('#client-info-block .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#client-event-chat .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$("#client-history__bg").fadeIn(500);
$("#client_history").toggle(10);
$("body").addClass("lock");
$.ajax({
url: '/ajax/getClientInfoForEvents.php?id=' + id_client,
success: function(data) {
$('#client-info-block').html(data);
$.ajax({
url: '/ajax/getClientLogForEvents.php?id=' + id_client,
success: function(data) {
$('#client-event-chat').html(data);
$('#client_history .history .history__chat').scrollTop($('#client-event-chat').prop("scrollHeight"));
}
});
setTimeout(function() {
testIfResendAllCanBeActive($('#client-info-block .to_resend__all'));
$('#client-info-block .open_folder').click(function() {
var id = $(this).attr('data-id');
if ($('.link' + id).is(":visible")) {
$(this).css({ "font-weight": "normal", "border-bottom-style": "dashed" });
$('.link' + id).hide();
} else {
$(this).css({ "font-weight": "bold", "border-bottom-style": "none" });
$('.link' + id).show();
}
return false;
})
}, 100);
}
});
}
function switchPotential() {
var id_object = $('#potentialObj').attr('data-id');
var state = $('#potentialObj').prop('checked');
if (id_object) {
$.ajax({
url: '/ajax/switchPotential.php',
method: "post",
data: {
"id_object": id_object,
"state": state ? 1 : 0
},
success: function() {
//nothing
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function switchCanAd(element, check=null) {
var el = $(element);
var id_object = el.attr('data-id');
var state = el.hasClass('active');
if(id_object == 'all'){
if($('#checkdox_free_feed_'+id_object) !== undefined){
state = $('#checkdox_free_feed_'+id_object).prop('checked');
if(check == 'checbox'){
state = !state;
$('#checkdox_free_feed_'+id_object).prop('checked', state);
}
}
}
var is_moderation = 0;
if (el.attr('data-moderation') === 1 || el.attr('data-moderation') == '1')
is_moderation = 1;
var is_budget = 0;
if (el.attr('data-budget') === 1 || el.attr('data-budget') == '1')
is_budget = 1;
if (id_object) {
if(id_object == 'all'){
if (state !== true) {
if (confirm("Убрать объекты из рекламы? Если показ в рекламе уже был начат, то все ротации по объектам будут остановлены.")) {
$.ajax({
url: '/ajax/advertAll.php',
method: "post",
data: {
"id_object": id_object,
"state": 0,
"is_moderation": is_moderation,
"is_budget": is_budget,
"feed": 'FREE_JW_FEED'
},
success: function(data) {
console.log(data);
el.removeClass('active');
// обновление виджета о рекламе
// if (is_moderation == 0) {
//objectAdvertUpdateNew(id_object);
//}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
$('#checkdox_free_feed_all').prop('checked', true);
}
} else {
openAdvDaysCountWindow(id_object, 'FREE_JW_FEED', is_moderation, is_budget);
}
} else {
//если включено - выключаем, иначе показываем окно с количеством дней
if (state) {
openAdvRemoveWindow(id_object, 'FREE_JW_FEED', is_moderation, is_budget);
} else {
//окно с количеством дней
openAdvDaysCountWindow(id_object, 'FREE_JW_FEED', is_moderation, is_budget);
}
}
}
}
function switchDomAd(element, check=null) {
var el = $(element);
var id_object = el.attr('data-id');
var state = el.hasClass('active');
if(id_object == 'all'){
if($('#checkdox_dom_feed_'+id_object) !== undefined){
state = $('#checkdox_dom_feed_'+id_object).prop('checked');
if(check == 'checbox'){
state = !state;
$('#checkdox_dom_feed_'+id_object).prop('checked', state);
}
}
}
var is_moderation = 0;
if (el.attr('data-moderation') === 1 || el.attr('data-moderation') == '1')
is_moderation = 1;
var is_budget = 0;
if (el.attr('data-budget') === 1 || el.attr('data-budget') == '1')
is_budget = 1;
if (id_object) {
if(id_object == 'all'){
if (state !== true) {
if (confirm("Убрать объекты из рекламы? Если показ в рекламе уже был начат, то все ротации по объектам будут остановлены.")) {
$.ajax({
url: '/ajax/advertAll.php',
method: "post",
data: {
"id_object": id_object,
"state": 0,
"is_moderation": is_moderation,
"is_budget": is_budget,
"feed": 'DOMCLICK_JW_FEED'
},
success: function(data) {
console.log(data);
el.removeClass('active');
// обновление виджета о рекламе
// if (is_moderation == 0) {
//objectAdvertUpdateNew(id_object);
//}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
$('#checkdox_dom_feed_all').prop('checked', true);
}
} else {
openAdvDaysCountWindow(id_object, 'DOMCLICK_JW_FEED', is_moderation, is_budget);
}
} else {
//если включено - выключаем, иначе показываем окно с количеством дней
if (state) {
openAdvRemoveWindow(id_object, 'DOMCLICK_JW_FEED', is_moderation, is_budget);
} else {
//окно с количеством дней
openAdvDaysCountWindow(id_object, 'DOMCLICK_JW_FEED', is_moderation, is_budget);
}
}
}
}
function switchBnAd(element, check=null) {
var el = $(element);
var id_object = el.attr('data-id');
var state = el.hasClass('active');
if(id_object == 'all'){
if($('#checkdox_yandex_feed_'+id_object) !== undefined){
state = $('#checkdox_yandex_feed_'+id_object).prop('checked');
if(check == 'checbox'){
state = !state;
$('#checkdox_yandex_feed_'+id_object).prop('checked', state);
}
}
}
var is_moderation = 0;
if (el.attr('data-moderation') === 1 || el.attr('data-moderation') == '1')
is_moderation = 1;
var is_budget = 0;
if (el.attr('data-budget') === 1 || el.attr('data-budget') == '1')
is_budget = 1;
if (id_object) {
if(id_object == 'all'){
if (state !== true) {
if (confirm("Убрать объекты из рекламы? Если показ в рекламе уже был начат, то все ротации по объектам будут остановлены.")) {
$.ajax({
url: '/ajax/advertAll.php',
method: "post",
data: {
"id_object": id_object,
"state": 0,
"is_moderation": is_moderation,
"is_budget": is_budget,
"feed": 'YANDEX_JW_FEED'
},
success: function(data) {
console.log(data);
el.removeClass('active');
// обновление виджета о рекламе
// if (is_moderation == 0) {
//objectAdvertUpdate(id_object);
//}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
$('#checkdox_yandex_feed_all').prop('checked', true);
}
} else {
openAdvDaysCountWindow(id_object, 'YANDEX_JW_FEED', is_moderation, is_budget);
}
} else {
console.log(state)
//если включено - выключаем, иначе показываем окно с количеством дней
if (state) {
openAdvRemoveWindow(id_object, 'YANDEX_JW_FEED', is_moderation, is_budget);
} else {
//окно с количеством дней
openAdvDaysCountWindow(id_object, 'YANDEX_JW_FEED', is_moderation, is_budget);
}
}
}
}
function showZipalVariants(element) {
var el = $(element);
var id_object = el.attr('data-id');
var state = el.hasClass('active');
if (id_object) {
if (state) {
//отзыв публикации
$("#zipal_unpublish_id").val(id_object);
$("#zipal_unpublish_bg").fadeIn(500);
$("#zipal_unpublish").toggle(10);
$("body").addClass("lock");
} else {
$("#zipal_content").html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$("#reportTimeHint").show();
$("#sendButtonInVariants").show();
$("#reportTitleInVariants").html('Выберите площадки для размещения');
$("#zipal_variants_bg").fadeIn(500);
$("#zipal_variants").toggle(10);
$("body").addClass("lock");
//публикация
callZipalPrices(id_object, 30);
// обновление виджета о рекламе
objectAdvertUpdate(id_object);
}
}
}
function showPromotionModal(element) {
let object_id = $(element).data('id');
$.ajax({
url: '/ajax/modals/addPromotionWinContent.php?object_id=' + object_id,
success: function(data) {
$("#addPromotionBg").html(data);
$("#addPromotionBg").show();
$("#addPromotion").show();
$("body").addClass("lock");
let form = $('#addPromotionForm');
form.find('input[type="checkbox"][name^="avito_"]').on('click', function(event) {
form.find('input[type="checkbox"][name^="avito_"]').not($(event.target)).prop('checked', false);
if ($(event.target).prop('checked'))
form.find('input[name="avito_price"]').prop('disabled', false);
else
form.find('input[name="avito_price"]').prop('disabled', true);
});
form.find('input[type="checkbox"][name^="cian_"]').on('click', function(event) {
form.find('input[type="checkbox"][name^="cian_"]').not($(event.target)).prop('checked', false);
if ($(event.target).prop('checked'))
form.find('input[name="cian_price"]').prop('disabled', false);
else
form.find('input[name="cian_price"]').prop('disabled', true);
});
form.find('input[type="checkbox"][name^="yandex_"]').on('click', function(event) {
form.find('input[type="checkbox"][name^="yandex_"]').not($(event.target)).prop('checked', false);
if ($(event.target).prop('checked'))
form.find('input[name="yandex_price"]').prop('disabled', false);
else
form.find('input[name="yandex_price"]').prop('disabled', true);
});
form.find('input[type="checkbox"][name^="domclick_"]').on('click', function(event) {
form.find('input[type="checkbox"][name^="domclick_"]').not($(event.target)).prop('checked', false);
if ($(event.target).prop('checked'))
form.find('input[name="domclick_price"]').prop('disabled', false);
else
form.find('input[name="domclick_price"]').prop('disabled', true);
});
form.find('[type="submit"]').unbind('click');
form.find('[type="submit"]').on('click', function(event) {
event.preventDefault();
event.stopPropagation();
let errors = [];
let params = {};
params.avito_highlight = (form.find('[name="avito_highlight"]').prop('checked')) ? 1 : 0;
params.avito_xl = (form.find('[name="avito_xl"]').prop('checked')) ? 1 : 0;
params.avito_x2_1 = (form.find('[name="avito_x2_1"]').prop('checked')) ? 1 : 0;
params.avito_x2_7 = (form.find('[name="avito_x2_7"]').prop('checked')) ? 1 : 0;
params.avito_x5_1 = (form.find('[name="avito_x5_1"]').prop('checked')) ? 1 : 0;
params.avito_x5_7 = (form.find('[name="avito_x5_7"]').prop('checked')) ? 1 : 0;
params.avito_x10_1 = (form.find('[name="avito_x10_1"]').prop('checked')) ? 1 : 0;
params.avito_x10_7 = (form.find('[name="avito_x10_7"]').prop('checked')) ? 1 : 0;
params.cian_highlight = (form.find('[name="cian_highlight"]').prop('checked')) ? 1 : 0;
params.cian_standard = (form.find('[name="cian_standard"]').prop('checked')) ? 1 : 0;
params.cian_paid = (form.find('[name="cian_paid"]').prop('checked')) ? 1 : 0;
params.cian_premium = (form.find('[name="cian_premium"]').prop('checked')) ? 1 : 0;
params.cian_top3 = (form.find('[name="cian_top3"]').prop('checked')) ? 1 : 0;
params.cian_bet = form.find('[name="cian_bet"]').val();
params.cian_ignore_pkg = (form.find('[name="cian_ignore_pkg"]').prop('checked')) ? 1 : 0;
params.yandex_premium = (form.find('[name="yandex_premium"]').prop('checked')) ? 1 : 0;
params.yandex_raise = (form.find('[name="yandex_raise"]').prop('checked')) ? 1 : 0;
params.yandex_promotion = (form.find('[name="yandex_promotion"]').prop('checked')) ? 1 : 0;
params.domclick_express = (form.find('[name="domclick_express"]').prop('checked')) ? 1 : 0;
params.domclick_premium = (form.find('[name="domclick_premium"]').prop('checked')) ? 1 : 0;
params.domclick_top = (form.find('[name="domclick_top"]').prop('checked')) ? 1 : 0;
params.user_id = form.find('[name="user_id"]').val();
params.object_id = form.find('[name="object_id"]').val();
params.avito_price = form.find('input[name="avito_price"]').val();
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();
params.avito_promo_type = form.find('select[name="avito_promo_type"]').val();
if (errors.length == 0) {
form.find('.jw__error').empty();
form.find('.jw__error').fadeOut(100);
$.ajax({
url: '/ajax/addPromotion.php',
method: "post",
data: params,
success: function(data) {
console.log(data);
let results = JSON.parse(data);
if (results.success) {
$("#addPromotionBg").hide();
$("#addPromotionBg").empty();
$("#addPromotion").hide();
$("body").removeClass("lock");
} else {
console.log(results);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
form.find('.jw__error').html(errors.join('<br/>'));
form.find('.jw__error').fadeIn(500);
form.find('.jw__error').get(0).scrollIntoView();
}
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
return false;
}
function showSearchPromotionModal(agensyObj) {
if ($('#searchPromotion').length == 0) {
$.ajax({
url: '/ajax/modals/searchPromotionWinContent.php',
success: function(data) {
$("#searchPromotionBg").html(data);
$("#searchPromotionBg").show();
$("#searchPromotion").show();
$("body").addClass("lock");
let form = $('#searchPromotionForm');
form.find('[type="submit"]').unbind('click');
form.find('[type="submit"]').on('click', function() {
searchPromotion(agensyObj);
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
$("#searchPromotionBg").show();
$("#searchPromotion").show();
$("body").addClass("lock");
}
return false;
}
function searchPromotion(agensyObj) {
event.preventDefault();
event.stopPropagation();
let form = $('#searchPromotionForm');
let params = {};
params.avito_highlight = (form.find('[name="avito_highlight"]').prop('checked')) ? 1 : 0;
params.avito_xl = (form.find('[name="avito_xl"]').prop('checked')) ? 1 : 0;
params.avito_x2_1 = (form.find('[name="avito_x2_1"]').prop('checked')) ? 1 : 0;
params.avito_x2_7 = (form.find('[name="avito_x2_7"]').prop('checked')) ? 1 : 0;
params.avito_x5_1 = (form.find('[name="avito_x5_1"]').prop('checked')) ? 1 : 0;
params.avito_x5_7 = (form.find('[name="avito_x5_7"]').prop('checked')) ? 1 : 0;
params.avito_x10_1 = (form.find('[name="avito_x10_1"]').prop('checked')) ? 1 : 0;
params.avito_x10_7 = (form.find('[name="avito_x10_7"]').prop('checked')) ? 1 : 0;
params.cian_highlight = (form.find('[name="cian_highlight"]').prop('checked')) ? 1 : 0;
params.cian_standard = (form.find('[name="cian_standard"]').prop('checked')) ? 1 : 0;
params.cian_paid = (form.find('[name="cian_paid"]').prop('checked')) ? 1 : 0;
params.cian_premium = (form.find('[name="cian_premium"]').prop('checked')) ? 1 : 0;
params.cian_top3 = (form.find('[name="cian_top3"]').prop('checked')) ? 1 : 0;
params.cian_bet = form.find('[name="cian_bet"]').val();
params.cian_ignore_pkg = (form.find('[name="cian_ignore_pkg"]').prop('checked')) ? 1 : 0;
params.yandex_premium = (form.find('[name="yandex_premium"]').prop('checked')) ? 1 : 0;
params.yandex_raise = (form.find('[name="yandex_raise"]').prop('checked')) ? 1 : 0;
params.yandex_promotion = (form.find('[name="yandex_promotion"]').prop('checked')) ? 1 : 0;
params.domclick_express = (form.find('[name="domclick_express"]').prop('checked')) ? 1 : 0;
params.domclick_premium = (form.find('[name="domclick_premium"]').prop('checked')) ? 1 : 0;
params.domclick_top = (form.find('[name="domclick_top"]').prop('checked')) ? 1 : 0;
var totalParams = 0;
for (var key in params) {
if (params[key] > 0) {
totalParams++;
}
}
if (totalParams > 0) {
$('#filter_is_promotion').attr('data-active', "1");
} else {
$('#filter_is_promotion').attr('data-active', "0");
}
$("#searchPromotionBg").hide();
$("#searchPromotion").hide();
$("body").removeClass("lock");
if (agensyObj == 1) {
q__001();
} else {
show_objects_options_search();
get_objects_list();
}
}
function showObjectFieldsSearchModal(section) {
$.ajax({
url: '/ajax/modals/objectFieldsSearchWinContent.php',
success: function(data) {
$("#objectFieldsSearchBg").html(data);
$("#objectFieldsSearchBg").show();
$("#objectFieldsSearch").show();
$("body").addClass("lock");
let form = $('#objectFieldsSearchForm');
form.find('[type="submit"]').unbind('click');
form.find('[type="submit"]').on('click', function(event) {
event.preventDefault();
event.stopPropagation();
$.ajax({
url: '/ajax/setObjectFieldsFilter.php',
method: "post",
data: form.serialize(),
success: function(data) {
let results = JSON.parse(data);
if (results.success) {
$('.fr-system__objects #filter-object-fields, .crm__filters #filter-object-fields').attr('data-active', 1);
$('.fr-system__objects #filter-object-fields-reset, .crm__filters #filter-object-fields-reset').css('display', 'inline-block');
$("#objectFieldsSearchBg").hide();
$("#objectFieldsSearchBg").empty();
$("#objectFieldsSearch").hide();
$("body").removeClass("lock");
} else {
console.log(results);
}
if (section == "my-objects") {
show_objects_options_search();
get_objects_list();
}
if (section == "agency-objects") {
q__001();
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
/*
Рекламные телефоны
*/
function createNewAdvPhone() {
$("#advPhonePhone").val('');
$("#advPhoneName").val('');
$("#adv_phone_id").val('');
$("#advPhoneModalTitle").html('Создание рекламного телефона');
var html = '<select name="advPhoneType" id="advPhoneType">' + $("#advPhoneType").html() + '</select>';
$("#advPhoneType").closest(".inputs").html(html);
$("#advPhoneType option[value='-1']").prop("selected", true);
$("#adv_phone_modal_bg").fadeIn(500);
$("#adv_phone_modal").toggle(10);
$("body").addClass("lock");
}
function editAdvPhone(phoneId) {
if (phoneId) {
$.ajax({
url: '/ajax/getAdvPhoneData.php?id=' + phoneId,
method: "get",
success: function(data) {
var res = JSON.parse(data);
$("#advPhoneModalTitle").html('Редактирование рекламного телефона');
$("#advPhoneName").val(res.name);
$("#adv_phone_id").val(phoneId);
$("#advPhonePhone").val(res.phone);
var html = '<select name="advPhoneType" id="advPhoneType">' + $("#advPhoneType").html() + '</select>';
$("#advPhoneType").closest(".inputs").html(html);
$("#advPhoneType option[value='" + res.feed_adv_phone_type_id + "']").prop("selected", true);
$("#adv_phone_modal_bg").fadeIn(500);
$("#adv_phone_modal").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function confirmDeleteAdvPhone(packageId) {
if (packageId) {
$("#delete_adv_phone_id").val(packageId);
$("#delete_adv_phone_confirm_bg").fadeIn(500);
$("#delete_adv_phone_confirm").toggle(10);
$("body").addClass("lock");
}
}
function deleteAdvPhone() {
var phoneId = $("#delete_adv_phone_id").val();
if (phoneId) {
$.ajax({
url: '/ajax/deleteAdvPhone.php',
method: "post",
data: {
"phoneId": phoneId
},
success: function() {
$("#delete_adv_phone_id").val('');
$("#delete_adv_phone_confirm_bg").hide(10);
$("#delete_adv_phone_confirm").hide(10);
$("body").removeClass("lock");
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function saveAdvPhoneLink() {
var links = [];
var types = [];
$('#advPhoneLinkModalContent').find('.destination-box:checked').each(function() {
var id = $(this).attr("data-id");
var typeId = $(this).attr("data-typeId");
links.push(id);
types.push(typeId);
});
if (types.includes("1") && types.length > 1) {
$('#advPhoneLinkModalErrors').html('<p>При привязке рекламного телефона, общего для всех выгрузок, необходимо указывать только его.</p>');
$('html, body').animate({
scrollTop: $("#advPhoneLinkModalErrors").offset().top
}, 1000);
} else {
if (new Set(types).size !== types.length) {
$('#advPhoneLinkModalErrors').html('<p>При привязке рекламного телефона не должно быть выбрано повторящихся типов выгрузки.</p>');
$('html, body').animate({
scrollTop: $("#advPhoneLinkModalErrors").offset().top
}, 1000);
} else {
$.ajax({
url: '/ajax/saveAdvPhoneAgencyLinks.php',
method: "post",
data: {
"links": links
},
success: function() {
$("#adv_phone_link_modal_bg").hide(10);
$("#adv_phone_link_modal").hide(10);
$("body").removeClass("lock");
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
}
function saveAdvPhoneLinkUser() {
var links = [];
var types = [];
var userId = $("#advPhoneLinkUserId").val();
$('#advPhoneLinkUserModalContent').find('.destination-box:checked').each(function() {
var id = $(this).attr("data-id");
var typeId = $(this).attr("data-typeId");
links.push(id);
types.push(typeId);
});
if (types.includes("1") && types.length > 1) {
$('#advPhoneLinkUserModalErrors').html('<p>При привязке рекламного телефона, общего для всех выгрузок, необходимо указывать только его.</p>');
$('html, body').animate({
scrollTop: $("#advPhoneLinkUserModalErrors").offset().top
}, 1000);
} else {
if (new Set(types).size !== types.length) {
$('#advPhoneLinkUserModalErrors').html('<p>При привязке рекламного телефона не должно быть выбрано повторящихся типов выгрузки.</p>');
$('html, body').animate({
scrollTop: $("#advPhoneLinkUserModalErrors").offset().top
}, 1000);
} else {
$.ajax({
url: '/ajax/saveAdvPhoneUserLinks.php',
method: "post",
data: {
"userId": userId,
"links": links
},
success: function() {
$("#adv_phone_link_user_modal_bg").hide(10);
$("#adv_phone_link_user_modal").hide(10);
$("body").removeClass("lock");
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
}
function saveAdvPhone() {
$('#advPhoneModalErrors').html('');
var phoneId = $("#adv_phone_id").val();
var name = $("#advPhoneName").val();
var type = $("#advPhoneType").val();
var phone = $("#advPhonePhone").val();
if (!name) {
$('#advPhoneModalErrors').html('<p>Необходимо указать Наименование</p>');
$('html, body').animate({
scrollTop: $("#advPhoneModalErrors").offset().top
}, 1000);
} else {
if (!phone) {
$('#advPhoneModalErrors').html('<p>Необходимо указать Телефон</p>');
$('html, body').animate({
scrollTop: $("#advPhoneModalErrors").offset().top
}, 1000);
} else {
if (!type || type < 0) {
$('#advPhoneModalErrors').html('<p>Необходимо указать Тип выгрузки</p>');
$('html, body').animate({
scrollTop: $("#advPhoneModalErrors").offset().top
}, 1000);
} else {
$('#advPhoneModalErrors').html("");
$.ajax({
url: '/ajax/saveAdvPhone.php',
method: "post",
data: {
"phoneId": phoneId,
"name": name,
"type": type,
"phone": phone
},
success: function() {
$("#adv_phone_modal_bg").hide(10);
$("#adv_phone_modal").hide(10);
$("body").removeClass("lock");
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
}
}
function linkAdvPhoneToAgency() {
$.ajax({
url: '/ajax/getAdvPhoneAgencySettings.php',
method: "post",
success: function(data) {
$("#advPhoneLinkModalContent").html(data);
$("#adv_phone_link_modal_bg").fadeIn(500);
$("#adv_phone_link_modal").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function openAdvPhoneUserSettings(userId) {
$.ajax({
url: '/ajax/getAdvPhoneUserSettings.php',
method: "post",
data: {
"userId": userId
},
success: function(data) {
$("#advPhoneLinkUserModalContent").html(data);
$("#advPhoneLinkUserId").val(userId);
$("#adv_phone_link_user_modal_bg").fadeIn(500);
$("#adv_phone_link_user_modal").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function addUserToWazzap(userId) {
$.ajax({
url: '/ajax/addUserToWazzap.php',
method: "post",
data: {
"agency_id": $('#session_agency_id').val() || null,
"userId": userId
},
success: function(data) {
if (data === 'done') {
$('#wazzap_span_' + userId).html("<a class='fr-btn edit-btn steel i-btn very-small' href='javascript:void(0);' onclick='deleteUserFromWazzap(" + userId + ")'>Удалить из Wazzup</a>");
alert("Пользователь добавлен!");
} else {
alert(data.data);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function deleteUserFromWazzap(userId) {
$.ajax({
url: '/ajax/deleteUserFromWazzap.php',
method: "post",
data: {
"agency_id": $('#session_agency_id').val() || null,
"userId": userId
},
success: function(data) {
if (data === 'done') {
$('#wazzap_span_' + userId).html("<a class='fr-btn edit-btn steel i-btn very-small' href='javascript:void(0);' onclick='addUserToWazzap(" + userId + ")'>Добавить в Wazzup</a>");
alert("Пользователь удален!");
} else {
alert(data.data);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
/*
Интерактивные документы
*/
function createNewInnerBlank() {
$("#inner_blank_modal_bg").fadeIn(10);
$("#inner_blank_modal").toggle(10);
$("body").addClass("lock");
let form = $('form#inner_blank_form');
form.get(0).reset();
form.find('[name="blank_id"]').val('');
if (typeof CKEDITOR == "object")
CKEDITOR.instances["blankContent"].setData('');
form.find("#inner_blank_title").text('Новый бланк');
form.find('[type="submit"]').text('Добавить');
form.find('[type="submit"]').unbind('click');
form.find('[type="submit"]').on('click', function(event) {
event.preventDefault();
event.stopPropagation();
let params = {};
params.name = form.find('[name="name"]').val();
params.type = form.find('[name="type"]').val();
if (typeof CKEDITOR == "object")
form.find('[name="content"]').val(CKEDITOR.instances["blankContent"].getData());
params.content = form.find('[name="content"]').val();
params.user_id = form.find('[name="user_id"]').val();
params.blank_id = form.find('[name="blank_id"]').val();
params.prefix = form.find('[name="prefix_doc"]').val();
$.ajax({
url: '/ajax/addEditInnerBlank.php',
method: "post",
data: params,
success: function(data) {
console.log(data);
$("#inner_blank_modal_bg").hide(10);
$("#inner_blank_modal").hide(10);
$("body").removeClass("lock");
getInnerBlanks();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
return false;
});
}
function editInnerBlank(blank_id) {
let form = $('form#inner_blank_form');
form.get(0).reset();
form.find('[name="blank_id"]').val('');
updateCKEditorVariables();
if (blank_id) {
$.ajax({
url: '/ajax/getInnerBlank.php?id=' + blank_id,
method: "get",
success: function(data) {
let result = JSON.parse(data);
//console.log(result);
form.find('[name="name"]').val(result.name);
form.find('[name="type"]').val(result.type);
form.find('[name="prefix_doc"]').val(result.prefix);
form.find('[name="content"]').html(result.content);
if (typeof CKEDITOR == "object")
CKEDITOR.instances["blankContent"].setData(result.content);
form.find('[name="blank_id"]').prop('value', result.id);
form.find("#inner_blank_title").text('Редактирование бланка');
form.find('[type="submit"]').text('Сохранить');
form.find('[type="submit"]').unbind('click');
form.find('[type="submit"]').on('click', function(event) {
event.preventDefault();
event.stopPropagation();
let params = {};
params.name = form.find('[name="name"]').val();
params.type = form.find('[name="type"]').val();
params.prefix = form.find('[name="prefix_doc"]').val();
if (typeof CKEDITOR == "object")
form.find('[name="content"]').val(CKEDITOR.instances["blankContent"].getData());
params.content = form.find('[name="content"]').val();
params.user_id = form.find('[name="user_id"]').val();
params.blank_id = form.find('[name="blank_id"]').val();
$.ajax({
url: 'ajax/addEditInnerBlank.php',
method: "post",
data: params,
success: function(data) {
console.log(data);
$("#inner_blank_modal_bg").hide(10);
$("#inner_blank_modal").hide(10);
$("body").removeClass("lock");
getInnerBlanks();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
return false;
});
$("#inner_blank_modal_bg").fadeIn(10);
$("#inner_blank_modal").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function copyVariable(elemn) {
let dummy = document.createElement("textarea");
document.body.appendChild(dummy);
dummy.value = $(elemn).text();
dummy.select();
document.execCommand("copy");
let title = $(elemn).attr('title');
let title_copy = "Скопировано!";
$(elemn).attr('title', title_copy);
$(elemn).data('title', title_copy);
$(".ui-tooltip").text(title_copy);
setTimeout(function() {
$(elemn).attr('title', title);
$(elemn).data('title', title);
}, 2000);
document.body.removeChild(dummy);
}
function saveFieldsVariables(section, button) {
if ($(button).is('[disabled=disabled]'))
return;
let formData = new FormData;
formData.append('user_id', $('#session_user_id').val());
let section_id = 0;
if (section == "objects")
section_id = 1;
else if (section == "clients")
section_id = 2;
let form = $('#variablesInnerForm');
form.find('.variable-input').each(function() {
formData.append('titles[]', ((typeof $(this).find('[name="titles[]"]').val() !== "undefined") ? $(this).find('[name="titles[]"]').val() : ""));
formData.append('names[]', ((typeof $(this).find('[name="names[]"]').val() !== "undefined") ? $(this).find('[name="names[]"]').val() : ""));
formData.append('defaults[]', ((typeof $(this).find('[name="defaults[]"]').val() !== "undefined") ? $(this).find('[name="defaults[]"]').val() : ""));
formData.append('ids[]', ((typeof $(this).find('[name="ids[]"]').val() !== "undefined") ? $(this).find('[name="ids[]"]').val() : ""));
formData.append('sections[]', section_id);
});
$.ajax({
type: 'POST',
url: '/ajax/addEditInnerFields.php',
data: formData,
cache: false,
async: false,
contentType: false,
processData: false,
success: function(data) {
let result = JSON.parse(data);
if (result.error) {
form.find(".error_msg").removeClass('hidden').html(result.error);
} else {
form.find('.variable-input').remove();
form.find('.save_btn').hide();
getFormVariables(section);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function getInnerBlanks() {
let list = $('.docs .docs-list.blanks');
return $.ajax({
url: '/ajax/getInnerBlanks.php',
method: "get",
success: function(data) {
list.html(data);
return true;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
return false;
}
});
}
function getBlankVariables() {
let form = $('form#inner_fields_form');
let params = {};
params.view = "list";
params.system = form.find('[name="show_system_vars"]:checked').length;
return $.ajax({
url: '/ajax/getInnerFields.php',
method: "get",
data: params,
success: function(data) {
form.find('.variables-list').html(data);
return true;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
return false;
}
});
}
function getInnerVariables(system, section) {
let variables = [];
if (typeof system == "undefined")
system = false;
if (typeof section == "undefined")
section = null;
$.ajax({
type: 'GET',
url: '/ajax/getInnerFields.php?view=json&system=' + system + '&section=' + section,
cache: false,
async: false,
contentType: false,
processData: false,
success: function(data) {
variables = JSON.parse(data);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
return variables;
}
function getFormVariables(section, source_id) {
if (!source_id || typeof source_id == "undefined")
source_id = false;
let form = $('#variablesInputsForm');
return $.ajax({
url: '/ajax/getInnerFields.php?view=form&section=' + section + '&source_id=' + source_id,
method: "get",
success: function(data) {
form.html(data);
/*if (form.find('.line.rooms').length >= 2) {
form.addClass('collapsed');
form.closest('.block').find('.collapse-link').text("Развернуть");
} else {
form.removeClass('collapsed');
form.closest('.block').find('.collapse-link').text("Свернуть");
}*/
return true;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
return false;
}
});
}
function addInnerFields() {
if (getBlankVariables()) {
$("#inner_fields_modal_bg").fadeIn(500);
$("#inner_fields_modal").toggle(10);
$("body").addClass("lock");
}
let form = $('form#inner_fields_form');
form.find('[name="show_system_vars"]').on('change', function(event) {
event.preventDefault();
event.stopPropagation();
getBlankVariables();
});
form.find('[type="submit"]').on('click', function(event) {
event.preventDefault();
event.stopPropagation();
let form = $(this).closest('form');
let formData = new FormData(form[0]);
form.find('.error_msg').empty();
$.ajax({
type: 'POST',
url: '/ajax/addEditInnerFields.php',
data: formData,
cache: false,
async: false,
contentType: false,
processData: false,
success: function(data) {
let result = JSON.parse(data);
if (result.error) {
$(".user_form_edit .error_msg").removeClass('hidden').html(result.error);
} else {
$('#inner_fields_form .variables-form .variable-input').remove();
let scroll = $('#inner_fields_form .variables-list').scrollTop();
if (getBlankVariables()) {
$('#inner_fields_form .variables-list').scrollTop(parseInt(scroll));
}
}
updateCKEditorVariables();
//window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
return false;
});
}
function confirmDeleteInnerBlank(blank_id) {
if (confirm('Вы точно хотите безвозвратно удалить этот бланк?')) {
$.ajax({
url: '/ajax/deleteInnerBlank.php?blank_id=' + blank_id,
method: "get",
success: function() {
getInnerBlanks();
updateCKEditorVariables();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function cloneInnerBlank(blank_id) {
if (confirm('Создать копию этого бланка?')) {
$.ajax({
url: '/ajax/cloneInnerBlank.php?blank_id=' + blank_id,
method: "get",
success: function() {
getInnerBlanks();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function previewInnerBlank(blank_id) {
if (blank_id) {
let preview = window.open("", "ckeditor_preview", "location=0,status=0,scrollbars=0,width=860,height=640");
$.ajax({
url: '/ajax/getInnerBlank.php?id=' + blank_id,
method: "get",
success: function(data) {
let result = JSON.parse(data);
$(preview.document.body).css({
padding: "3em 2em"
});
let content = result.content.replace(/(\$\{[a-zA-z0-9_.]+\})+/g, function(match) {
return '<span class="variable">' + match + '</span>';
});
$(preview.document.body).html(content);
let styles = $('<style />').html('span.variable {\n' +
' color: #D0021B;\n' +
'}');
$(preview.document.body).append(styles);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function editBlankVariable(variable_id, section, inner) {
/*$('#variablesInputsForm').removeClass('collapsed');
$('#variablesInputsForm').closest('.block').find('.collapse-link').text("Свернуть");*/
$.ajax({
url: '/ajax/getInnerField.php?field_id=' + variable_id,
method: "get",
success: function(data) {
let form = $('.variables-form:not(.inner-block)');
if (inner == true)
form = $('.variables-form.inner-block');
let field = JSON.parse(data);
if (!form.find('.variable-input[data-id="' + field.id + '"]').length) {
let inputs = '<div class="variable-input has-exist" data-id="' + field.id + '">\n';
if (typeof section == "undefined" || section == "") {
inputs += '<div class="form-block">\n' +
'<div class="label">Назначение:</div>\n' +
'<div class="inputs"><select class="input" name="sections[]" style="width:400px;margin-bottom:5px">\n' +
'<option value="0"' + ((field.section == 0) ? ' selected="selected"' : '') + '>Не выбрано</option>\n' +
'<option value="1"' + ((field.section == 1 || section == "objects") ? ' selected="selected"' : '') + '>Объекты</option>\n' +
'<option value="2"' + ((field.section == 2 || section == "clients") ? ' selected="selected"' : '') + '>Клиенты</option>\n' +
'</select></div>\n' +
'<div class="clear"></div>\n' +
'</div>';
} else {
let section_id = 0;
if (section == "objects")
section_id = 1;
else if (section == "clients")
section_id = 2;
inputs += '<input type="hidden" name="sections[]" value="' + section_id + '" />';
}
inputs += '<div class="form-block">\n' +
'<div class="label">Название:</div>\n' +
'<div class="inputs"><input type="text" class="input" name="titles[]" value="' + field.title + '" placeholder="Название..." style="width:400px;margin-bottom:5px" />\n' +
'</div>\n' +
'<div class="clear"></div>\n' +
'</div>';
inputs += '<div class="form-block">\n' +
'<div class="label">Переменная:</div>\n' +
'<div class="inputs"><input type="text" class="input" name="names[]" value="' + field.variable + '" placeholder="Только латинница (a-z)..." style="width:400px;margin-bottom:5px" />\n' +
'</div>\n' +
'<div class="clear"></div>\n' +
'</div>';
inputs += '<div class="form-block">\n' +
'<div class="label">Значение:</div>\n' +
'<div class="inputs"><input type="text" class="input" name="defaults[]" value="' + field.default+'" placeholder="Значение по-умолчанию..." style="width:400px;margin-bottom:5px" />\n' +
'</div>\n' +
'<div class="clear"></div>\n' +
'</div>';
inputs += '<input type="hidden" name="ids[]" value="' + field.id + '" />';
inputs += '<span class="remove" title="Отменить"><i class="ti-close"></i></span>';
inputs += '</div>';
if (form.find('.variable-input').length > 0)
form.find('.variable-input').last().after($(inputs));
else
form.prepend($(inputs));
if (inner)
form.find('.save_btn').fadeIn();
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function confirmDeleteBlankVariable(variable_id, section, source_id) {
if (confirm('Вы точно хотите безвозвратно удалить эту переменную?')) {
$.ajax({
url: '/ajax/deleteInnerField.php?field_id=' + variable_id,
method: "get",
success: function() {
if (typeof section !== "undefined" && typeof source_id !== "undefined") {
getFormVariables(section, source_id);
} else {
let scroll = $('#inner_fields_form .variables-list').scrollTop();
if (getBlankVariables()) {
if ($('.variables-form .variable-input[data-id="' + variable_id + '"]').length > 0)
$('.variables-form .variable-input[data-id="' + variable_id + '"]').remove();
$('#inner_fields_form .variables-list').scrollTop(parseInt(scroll));
}
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
updateCKEditorVariables();
}
}
function updateCKEditorVariables() {
let variables = getInnerVariables(true);
if (typeof CKEDITOR.instances["blankContent"] == "object") {
CKEDITOR.instances["blankContent"].config.customValues.variablesList = variables
}
return variables;
}
function showInnerFieldsInfoWin(section, source_id, elemn) {
if (typeof section !== "undefined" && typeof source_id !== "undefined") {
return $.ajax({
url: '/ajax/getInnerFields.php?view=info&section=' + section + '&source_id=' + source_id + '&system=0',
method: "get",
success: function(data) {
if (result = JSON.parse(data)) {
let list = $('<dl />');
Object.keys(result).forEach(function eachKey(key) {
let value = result[key];
if (value)
list.append('<dt>' + key + '</dt>' + '<dd>' + result[key] + '</dd>');
else
list.append('<dt>' + key + '</dt>' + '<dd><span style="color:#e2574c;">не заполнено</span></dd>');
});
if (!$(elemn).next('.jw__popup.fields__popup').length) {
let popup = $('<div class="jw__popup fields__popup" />');
popup.append(list);
$(elemn).after(popup);
popup.on("mousewheel", function(e) {
e.stopPropagation();
e.preventDefault();
});
popup.addClass('show');
} else {
$(elemn).next('.jw__popup.fields__popup').addClass('show');
}
}
return true;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
return false;
}
});
}
}
function showAutoSearchInfoWin(req_id, elemn) {
if (typeof req_id !== "undefined") {
return $.ajax({
url: '/ajax/ajax_vue_autosearch.php?request=get_filter_info&req_id=' + req_id,
method: "get",
success: function(data) {
if (result = JSON.parse(data)) {
let list = $('<dl />');
Object.keys(result).forEach(function eachKey(key) {
let value = result[key];
if (value) {
list.append('<dt>' + key + '</dt>' + '<dd>' + result[key] + '</dd>');
}
});
if (!$(elemn).next('.jw__popup.autosearch__popup').length) {
let popup = $('<div class="jw__popup autosearch__popup" />');
if (list.length)
popup.append(list);
else
popup.append($('<p>Параметры автопоиска ещё не указаны.</p>'));
$(elemn).after(popup);
popup.on("mousewheel", function(e) {
e.stopPropagation();
e.preventDefault();
});
popup.addClass('show');
} else {
$(elemn).next('.jw__popup.autosearch__popup').addClass('show');
}
}
return true;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
return false;
}
});
}
}
function getInnerDocs() {
let list = $('.docs .docs-list.docs');
return $.ajax({
url: '/ajax/getInnerDocs.php',
method: "get",
success: function(data) {
list.html(data);
return true;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
return false;
}
});
}
function scrollToElement(element) {
var selectedPosX = 0;
var selectedPosY = 0;
var theElement = document.querySelector(element);
if (theElement != null) {
selectedPosX += theElement.offsetLeft;
selectedPosY += (theElement.offsetTop - 100);
theElement = theElement.offsetParent;
window.scrollTo(selectedPosX, selectedPosY);
}
console.info('scrollToElement', { selectedPosX, selectedPosY });
}
/*function collapseToggle(elem, btn) {
if ($(elem).hasClass('collapsed')) {
$(elem).removeClass('collapsed');
$(btn).text("Свернуть");
} else {
$(elem).addClass('collapsed');
$(btn).text("Развернуть");
}
}*/
function createNewInnerDoc(blank_id) {
let form = $('form#inner_doc_form');
let user_id = $('#session_user_id').val();
let agency_id = $('#session_agency_id').val();
form.get(0).reset();
$('#inner_doc_modal .modal-submit button[type="button"]').prop('disabled', true);
if (blank_id) {
form.find('.blank-id-input').hide();
form.find('input[name="blank_id_save"]').attr('value', blank_id);
} else {
form.find('.blank-id-input').show();
}
if(typeof docs_docs_new_client_input_vue == 'object'){
docs_docs_new_client_input_vue.clear();
} else {
form.find('[name="client_id"]').closest(".inputs").html('<select name="client_id" multiple></select>');
$.get("/ajax/getInnerSources.php", {
user_id: user_id,
agency_id: agency_id,
section: 'clients',
view: 'option'
}, function(result) {
if (result.length) {
let non_sel = '<option value="0">Не выбрано</option>';
form.find('[name="client_id"]').html(non_sel + result);
}
});
form.find('[name="client_id"] option').prop("selected", false);
form.find('[name="client_id"]').fastselect({
placeholder: 'Выберите клиентов'
});
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('[name="object_id"]').closest(".inputs").html('<select name="object_id"></select>');
$.get("/ajax/getInnerSources.php", {
user_id: user_id,
agency_id: agency_id,
section: 'objects',
view: 'option'
}, function(result) {
if (result.length) {
let non_sel = '<option value="0">Не выбрано</option>';
form.find('[name="object_id"]').html(non_sel + result);
}
});
form.find('[name="object_id"] option').prop("selected", false);
form.find('[name="object_id"]').fastselect({
placeholder: 'Выберите объект'
});
form.find('[name="object_id"]').closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
form.find('[name="object_id"]').closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');
form.find('[name="blank_id"]').closest(".inputs").html('<select name="blank_id"></select>');
if (!blank_id) {
$.get("/ajax/getInnerBlanks.php?view=option", function(result) {
let non_sel = '<option value="0">Не выбрано</option>';
form.find('[name="blank_id"]').html(non_sel + result);
});
form.find('[name="blank_id"] option').prop("selected", false);
form.find('[name="blank_id"]').fastselect({
placeholder: 'Выберите бланк'
});
form.find('[name="blank_id"]').closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
form.find('[name="blank_id"]').closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');
}
let selector = '[name="client_id"], [name="object_id"], [name="blank_id"]';
if (blank_id)
selector = '[name="client_id"], [name="object_id"]';
form.find(selector).on("change", function() {
let blank_id = form.find('[name="blank_id_save"]').val();
if (blank_id == '' || blank_id == 0 || typeof blank_id == "undefined")
blank_id = form.find('[name="blank_id"]').val();
if (
(form.find('[name="client_id"]').val() || !isEmpty(docs_docs_new_client_input_vue.values)) &&
form.find('[name="object_id"]').val() &&
blank_id
) {
$('#inner_doc_modal .modal-submit button[type="button"]').removeAttr('disabled');
}
});
$("#inner_doc_modal_bg").fadeIn(500);
$("#inner_doc_modal").toggle(10);
$("body").addClass("lock");
}
function addInnerDoc() {
if ($(this).is(':disabled'))
return false;
let form = $('form#inner_doc_form');
let client_id = form.find('[name="client_id"]').val();
let client_ids = null;
if(typeof docs_docs_new_client_input_vue == 'object'){
client_ids = docs_docs_new_client_input_vue.values;
} else {
client_ids = form.find('[name="client_id"]').val();
}
let object_id = form.find('[name="object_id"]').val();
if(!isEmpty(client_ids[0])){
client_id = client_ids[0];
}
let blank_id = form.find('[name="blank_id_save"]').val();
if (blank_id == '' || blank_id == 0 || typeof blank_id == "undefined")
blank_id = form.find('[name="blank_id"]').val();
if (client_id && object_id && blank_id) {
$.post("/ajax/addInnerDoc.php", {
client_id: client_id,
object_id: object_id,
blank_id: blank_id,
client_ids: client_ids,
}, function(result) {
console.log(result);
getInnerDocs();
$("#inner_doc_modal_bg").fadeOut(10);
$("#inner_doc_modal").toggle(10);
$("body").removeClass("lock");
});
}
}
function saveInnerDoc() {
let form = $('form#save_inner_doc_form');
let params = {};
params.name = form.find('[name="name"]').val();
if (typeof CKEDITOR == "object")
form.find('[name="content"]').val(CKEDITOR.instances["docContent"].getData());
params.content = form.find('[name="content"]').val();
params.user_id = form.find('[name="user_id"]').val();
params.id = form.find('[name="doc_id"]').val();
$.ajax({
url: '/ajax/editInnerDoc.php',
method: "post",
data: params,
success: function(data) {
console.log(data);
$("#save_inner_doc_modal_bg").hide(10);
$("#save_inner_doc_modal").hide(10);
$("body").removeClass("lock");
getInnerDocs();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
return false;
}
function editInnerDoc(doc_id) {
let form = $('form#save_inner_doc_form');
$("#save_inner_doc_modal_bg").css({
zIndex: 100001
});
$.ajax({
url: '/ajax/getInnerDoc.php?id=' + doc_id,
method: "get",
success: function(data) {
let result = JSON.parse(data);
form.find('[name="name"]').val(result.name);
form.find('[name="content"]').html(result.content);
if (typeof CKEDITOR == "object")
CKEDITOR.instances["docContent"].setData(result.content);
form.find('[name="doc_id"]').val(result.id);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
$("#save_inner_doc_modal_bg").fadeIn(500);
$("#save_inner_doc_modal").toggle(10);
$("body").addClass("lock");
}
function sendInnerDocWin(doc_id) {
let form = $('form#send_inner_doc_form');
form.find('[name="email"]').val('');
form.find('[name="theme"]').val('');
form.find('[name="txt"]').val('');
form.find('[name="doc_id_save"]').val('');
let user_id = $('#session_user_id').val();
let agency_id = $('#session_agency_id').val();
$("#send_inner_doc_modal_bg").css({
zIndex: 100002
});
form.find('[name="client_id"]').closest(".inputs").html('<select name="client_id"></select>');
let non_sel = '<option value="0">Указать произвольный адрес эл. почты</option>';
form.find('[name="client_id"]').html(non_sel);
$.get("/ajax/getInnerSources.php", {
user_id: user_id,
agency_id: agency_id,
section: 'clients',
required: 'email',
view: 'option'
}, function(result) {
if (result.length) {
let non_sel = '<option value="0">Указать произвольный адрес эл. почты</option>';
form.find('[name="client_id"]').html(non_sel + result);
}
});
form.find('[name="client_id"] option').prop("selected", false);
$('#send_inner_doc_modal .modal-submit button[type="button"]').attr('disabled', 'disabled');
$('#send_inner_doc_modal .error_msg').empty();
$('#send_inner_doc_modal .error_msg').hide();
$('#send_inner_doc_modal .result_msg').empty();
$('#send_inner_doc_modal .result_msg').hide();
let as_client = true;
let selector = '[name="email"], [name="theme"]';
if (as_client)
selector = '[name="client_id"], [name="theme"]';
if (typeof doc_id !== "undefined")
selector += ', [name="doc_id_save"]';
else
selector += ', [name="doc_id"]';
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"]';
if (typeof doc_id !== "undefined")
selector += ', [name="doc_id_save"]';
else
selector += ', [name="doc_id"]';
});
if (typeof doc_id !== "undefined") {
form.find('[name="doc_id_save"]').val(doc_id);
$.ajax({
url: '/ajax/getInnerDoc.php?id=' + doc_id,
method: "get",
success: function(data) {
let result = JSON.parse(data);
if (result.name) {
let timestamp = Math.floor(Date.now() / 1000);
form.find('.pdf-file-input a[download]').attr('href', '/ajax/getInnerDoc.php?id=' + doc_id + '&download_pdf=true&t=' + timestamp);
form.find('.pdf-file-input .file-name').text(result.name + '.pdf');
form.find('.pdf-file-input').show();
form.find('.doc-id-input').hide();
} else {
form.find('.pdf-file-input').hide();
form.find('.doc-id-input').show();
}
if (result.params) {
let params = JSON.parse(result.params);
if (typeof params.client_id !== "undefined") {
setTimeout(() => {
as_client = true;
let client_id = params.client_id;
let select = form.find('[name="client_id"]');
select.val(client_id).change();
select.find('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();
}, 500);
}
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
form.find('[name="doc_id"]').closest(".inputs").html('<select name="doc_id"></select>');
$.get("/ajax/getInnerDocs.php?view=option", function(result) {
let non_sel = '<option value="0">Не выбрано</option>';
form.find('[name="doc_id"]').html(non_sel + result);
});
form.find('[name="doc_id"] option').prop("selected", false);
form.find('[name="doc_id"]').fastselect({
placeholder: 'Выберите документ'
});
form.find('[name="doc_id"]').closest(".inputs").find(".fstControls input.hidenClass").attr('type', "text");
form.find('[name="doc_id"]').closest(".inputs").find(".fstControls input.hidenClass").removeClass('hidenClass');
form.find('[name="client_id"]').closest(".inputs").html('<select name="client_id"></select>');
form.find('[name="client_id"]').fastselect({
placeholder: 'Выберите клиента'
});
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('.pdf-file-input').hide();
form.find('.doc-id-input').show();
form.find('.client-id-input').fadeIn();
}
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_inner_doc_modal .modal-submit button[type="button"]').removeAttr('disabled');
else
$('#send_inner_doc_modal .modal-submit button[type="button"]').attr('disabled', 'disabled');
});
$("#send_inner_doc_modal_bg").fadeIn(500);
$("#send_inner_doc_modal").toggle(10);
$("body").addClass("lock");
}
function sendInnerDoc() {
if ($(this).is(':disabled'))
return false;
let form = $('form#send_inner_doc_form');
let doc_id = form.find('[name="doc_id"]').val();
let doc_id_save = form.find('[name="doc_id_save"]').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 ((doc_id || doc_id_save) && (client_id || email)) {
$('#send_inner_doc_modal .modal-submit [type="button"]').addClass('loading');
$.post("/ajax/sendInnerDoc.php", {
doc_id: doc_id,
doc_id_save: doc_id_save,
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_inner_doc_modal .result_msg').text('Документ был успешно отправлен!');
$('#send_inner_doc_modal .error_msg').hide();
$('#send_inner_doc_modal .error_msg').empty();
$('#send_inner_doc_modal .result_msg').show();
$('#send_inner_doc_modal .modal-submit [type="button"]').removeClass('loading');
setTimeout(() => {
$("#send_inner_doc_modal_bg").fadeOut(10);
$("#send_inner_doc_modal").toggle(10);
$("body").removeClass("lock");
}, 2000);
} else {
$('#send_inner_doc_modal .modal-submit [type="button"]').removeClass('loading');
$('#send_inner_doc_modal .error_msg').text('Произошла ошибка при отправке документа.');
$('#send_inner_doc_modal .error_msg').show();
$('#send_inner_doc_modal .result_msg').hide();
$('#send_inner_doc_modal .result_msg').empty();
}
});
}
}
function confirmDeleteInnerDoc(doc_id) {
if (confirm('Вы точно хотите безвозвратно удалить этот документ?')) {
$.ajax({
url: '/ajax/deleteInnerDoc.php?doc_id=' + doc_id,
method: "get",
success: function() {
getInnerDocs();
$('.chat-message.deal .chat-content .document[data-id="' + doc_id + '"]').remove();
$('#popup__document_' + doc_id).closest('.chat-block.is__left').remove();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function previewInnerDoc(doc_id) {
if (doc_id) {
let preview = window.open("", "ckeditor_preview", "location=0,status=0,scrollbars=0,width=860,height=640");
$.ajax({
url: '/ajax/getInnerDoc.php?id=' + doc_id,
method: "get",
success: function(data) {
let result = JSON.parse(data);
if (result.content) {
$(preview.document.body).css({
padding: "3em 2em"
});
//let content = result.content.replace(/(\_\_\{\s\S+\}\_\_)+/g, function(match) {
let content = result.content.replace(/__\{[^{]*\}__+/g, function(match) {
return '<span class="variable">' + match + '</span>';
});
$(preview.document.body).html(content);
let styles = $('<style />').html('span.variable {\n' +
' color: #328436;\n' +
'}');
$(preview.document.body).append(styles);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
/*
Рекламный бюджет и ограничение публикации
*/
function onOffAdvertBudget(checked) {
let is_confirmed = false;
if (!checked) {
if (confirm('Вы действительно желаете отключить Рекламный бюджет? Это затронет всё АН и статистика/ограничение затрат на размещение не будет учитываться в этот период.')) {
is_confirmed = true;
} else {
$('input[name="use_advert_budget"]').prop("checked", true);
return false;
}
} else {
is_confirmed = true;
}
if (is_confirmed) {
$.ajax({
url: '/ajax/onOffAdvertBudget.php',
method: "post",
data: {
"state": checked,
},
success: function(data) {
if (data) {
let result = JSON.parse(data);
if (result.success) {
if (result.state) {
window.location.reload(true);
} else {
$('.top__advert-budget').hide();
$('.user_info_advert_budget').hide();
}
}
} else {
window.location.reload(true);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
/*
Рекламные пакеты
*/
function createNewAdvertisingPackage() {
$("#adv_zipal_content").html('');
$("#advertisingPackageModalTitle").html('Создание рекламного пакета');
$("#advertisingPackageName").val('');
$("#advertisingPackageDaysCount").val('3');
$("#adv_pack_id").val('');
$("#advertisingRegion").val('')
$("#advertisingPackagePhotoFlag").prop('checked', false);
var html = '<select name="advertisingPackageDealType" id="advertisingPackageDealType">' + $("#advertisingPackageDealType").html() + '</select>';
$("#advertisingPackageDealType").closest(".inputs").html(html);
$("#advertisingPackageDealType option[value='-1']").prop("selected", true);
html = '<select name="advertisingPackageObjectType" id="advertisingPackageObjectType">' + $("#advertisingPackageObjectType").html() + '</select>';
$("#advertisingPackageObjectType").closest(".inputs").html(html);
$("#advertisingPackageObjectType option[value='-1']").prop("selected", true);
html = '<select name="advertisingPackagePriceType" id="advertisingPackagePriceType">' + $("#advertisingPackagePriceType").html() + '</select>';
$("#advertisingPackagePriceType").closest(".inputs").html(html);
$("#advertisingPackagePriceType option[value='-1']").prop("selected", true);
$("#advertisingPackageDealType").fastselect({
placeholder: '',
onItemSelect: function() {
callZipalForAdvPackage();
}
});
$("#advertisingPackageObjectType").fastselect({
placeholder: '',
onItemSelect: function() {
callZipalForAdvPackage();
}
});
$("#advertisingPackagePriceType").fastselect({
placeholder: '',
onItemSelect: function() {
callZipalForAdvPackage();
}
});
$("#advertising_package_modal_bg").fadeIn(500);
$("#advertising_package_modal").toggle(10);
$("body").addClass("lock");
}
function callZipalForAdvPackage() {
var packageId = $("#adv_pack_id").length > 0 ? $("#adv_pack_id").val() : 0;
var numDays = $("#advertisingPackageDaysCount").val();
var dealType = $("#advertisingPackageDealType").val();
var priceType = $("#advertisingPackagePriceType").val();
var objectType = $("#advertisingPackageObjectType").val();
var hasPhoto = $("#advertisingPackagePhotoFlag").is(':checked');
var asScript = $("#adv_pack_formed").length > 0 ? '&asScript=1' : '';
var packagePart = packageId ? '&packageId=' + packageId : '';
var region = $('#advertisingRegion').val()
if (numDays && numDays > 0 && dealType && dealType > 0 && objectType && objectType > 0) {
$.ajax({
url: '/ajax/getZipalAdvPrices.php?dealTypeId=' + dealType + '&numDays=' + numDays + "&region=" + region + '&objectTypeId=' + objectType + '&hasPhoto=' + hasPhoto + '&priceTypeId=' + priceType + asScript + packagePart,
method: "get",
success: function(data) {
$('#adv_zipal_errors').html('');
if (asScript) {
var result = JSON.parse(data);
for (var k = 0; k < result.length; k++) {
if (result[k]['id']) {
if (result[k]['value']) {
$("#" + result[k]['id']).html(result[k]['value']);
}
if (result[k]['price']) {
$("#" + result[k]['id']).attr("data-price", result[k]['price']);
}
}
}
calculatePackagePrice();
} else {
$("#adv_zipal_content").html(data);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function calculatePackagePrice() {
var commonPrice = parseFloat($('#adv-zipal-base-price').html());
var numDays = parseFloat($('#advertisingPackageDaysCount').val());
$('#adv_zipal_content').find('.destination-box:checked').each(function() {
var dest = $(this).attr("data-destination");
var radioLen = $("input[name='adv_" + dest + "_radio']:checked").length;
if (radioLen > 0) {
var price = parseFloat($("input[name='adv_" + dest + "_radio']:checked").attr("data-price"));
var manualPrice = 0;
if (dest === 'YANDEX' || dest === 'CIAN' || dest === 'EMLS' || dest === 'AVITO') {
var value = $("input[name='adv_" + dest + "_price_manual']").val();
if (!$("input[name='adv_" + dest + "_price_manual']").is(':disabled') && value) {
//у авито цена за размещение
if (dest === 'AVITO') {
manualPrice = parseFloat(value);
} else {
manualPrice = parseFloat(value) * numDays;
}
}
}
commonPrice = commonPrice + price + manualPrice;
}
});
$('#adv-zipal-total-price').html(Math.round(commonPrice * 100) / 100);
}
function editAdvertisingPackage(packageId) {
if (packageId) {
$.ajax({
url: '/ajax/getAdvPackageData.php?id=' + packageId,
method: "get",
success: function(data) {
var res = JSON.parse(data);
$("#adv_zipal_content").html('<div class="preloader" style="height: 26px; width: 26px;"><img src="/images/ajax_preloader.gif"></div>');
$("#advertisingPackageModalTitle").html('Редактирование рекламного пакета');
$("#advertisingPackageName").val(res.name);
$("#adv_pack_id").val(packageId);
$("#advertisingPackageDaysCount").val(res.days_count);
$("#advertisingRegion").val(res.region_rf_id)
$("#advertisingPackagePhotoFlag").prop('checked', res.has_photo === '1');
var html = '<select name="advertisingPackageDealType" id="advertisingPackageDealType">' + $("#advertisingPackageDealType").html() + '</select>';
$("#advertisingPackageDealType").closest(".inputs").html(html);
$("#advertisingPackageDealType option[value='" + res.advertising_package_deal_type_id + "']").prop("selected", true);
html = '<select name="advertisingPackageObjectType" id="advertisingPackageObjectType">' + $("#advertisingPackageObjectType").html() + '</select>';
$("#advertisingPackageObjectType").closest(".inputs").html(html);
$("#advertisingPackageObjectType option[value='" + res.advertising_package_object_type_id + "']").prop("selected", true);
html = '<select name="advertisingPackagePriceType" id="advertisingPackagePriceType">' + $("#advertisingPackagePriceType").html() + '</select>';
$("#advertisingPackagePriceType").closest(".inputs").html(html);
$("#advertisingPackagePriceType option[value='" + res.advertising_package_price_type_id + "']").prop("selected", true);
$("#advertisingPackageDealType").fastselect({
placeholder: '',
onItemSelect: function() {
callZipalForAdvPackage();
}
});
$("#advertisingPackageObjectType").fastselect({
placeholder: '',
onItemSelect: function() {
callZipalForAdvPackage();
}
});
$("#advertisingPackagePriceType").fastselect({
placeholder: '',
onItemSelect: function() {
callZipalForAdvPackage();
}
});
$("#advertisingRegion").fastselect({
placeholder: '',
onItemSelect: function() {
callZipalForAdvPackage();
}
});
$("#advertising_package_modal_bg").fadeIn(500);
$("#advertising_package_modal").toggle(10);
$("body").addClass("lock");
callZipalForAdvPackage();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function confirmDeleteAdvertisingPackage(packageId) {
if (packageId) {
$("#delete_adv_pack_id").val(packageId);
$("#delete_adv_pack_confirm_bg").fadeIn(500);
$("#delete_adv_pack_confirm").toggle(10);
$("body").addClass("lock");
}
}
function closeEgrnRequestListForObject() {
$("#egrn_request_object_list_window_bg").hide(10);
$("#egrn_request_object_list_window").hide(10);
$("body").removeClass("lock");
}
function saveEgrnRequestForObject(el) {
$(el).attr("disabled", "disabled");
$('#egrnRequestSubmitLoader').html('<div class="preloader"></div>');
$('#egrnRequestSubmitLoader .preloader').css({
"background": "url(/images/ajax_preloader.gif) no-repeat center center",
"background-size": "26px 26px",
"width": "30px",
"height": "30px",
"margin": "auto"
});
var objId = $("#egrn_request_object_id").val();
var simpleChecked = $("#simpleEgrnRequest").is(':checked') ? '1' : '0';
var moveChecked = $("#moveEgrnRequest").is(':checked') ? '1' : '0';
if (objId) {
$.ajax({
url: '/ajax/createObjectEgrnRequest.php',
method: "post",
data: {
"objectId": objId,
"simpleChecked": simpleChecked,
"moveChecked": moveChecked
},
success: function(data) {
if (data) {
$(el).removeAttr("disabled");
$('#egrnRequestSubmitLoader').html('');
$("#egrnRequestErrors").html(data);
} else {
window.location.reload(true);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function deleteAdvertisingPackage() {
var packageId = $("#delete_adv_pack_id").val();
if (packageId) {
$.ajax({
url: '/ajax/deleteAdvPackage.php',
method: "post",
data: {
"packageId": packageId
},
success: function() {
$("#delete_adv_pack_id").val('');
$("#delete_adv_pack_confirm_bg").hide(10);
$("#delete_adv_pack_confirm").hide(10);
$("body").removeClass("lock");
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function showPackagesWindow(element) {
if (element) {
var objectId = $(element).attr('data-id');
if (objectId) {
$.ajax({
url: '/ajax/getAdvPackagesForObject.php?objectId=' + objectId,
success: function(data) {
$("#adv_pack_object_id").val(objectId);
$("#adv_pack_list_content").html(data);
$("#adv_pack_list_bg").fadeIn(500);
$("#adv_pack_list").toggle(10);
$("body").addClass("lock");
}
});
}
}
}
function closeAdvPackList() {
$("#adv_pack_object_id").val('');
$("#adv_pack_list_bg").hide(10);
$("#adv_pack_list").hide(10);
$("body").removeClass("lock");
}
function saveZipalPackage() {
$('#adv_zipal_errors').html('');
var packId = $("#adv_pack_id").val();
var name = $("#advertisingPackageName").val();
var numDays = $("#advertisingPackageDaysCount").val();
var dealType = $("#advertisingPackageDealType").val();
var priceType = $("#advertisingPackagePriceType").val();
var objectType = $("#advertisingPackageObjectType").val();
var hasPhoto = $("#advertisingPackagePhotoFlag").is(':checked');
var price = $('#adv-zipal-total-price').html();
var basePrice = $('#adv-zipal-base-price').html();
var region_code = $('#advertisingRegion').val();
if (!name) {
$('#adv_zipal_errors').html('<p>Необходимо указать имя пакета</p>');
$('html, body').animate({
scrollTop: $("#adv_zipal_errors").offset().top
}, 1000);
} else {
if (!numDays || numDays <= 0) {
$('#adv_zipal_errors').html('<p>Необходимо указать количество дней размещения, положительное число</p>');
$('html, body').animate({
scrollTop: $("#adv_zipal_errors").offset().top
}, 1000);
} else {
if (!dealType || dealType < 0) {
$('#adv_zipal_errors').html('<p>Поле Тип сделки обязательно для заполнения</p>');
document.getElementById("adv_zipal_errors").scrollIntoView();
} else {
if (!objectType || objectType < 0) {
$('#adv_zipal_errors').html('<p>Поле Тип объекта обязательно для заполнения</p>');
document.getElementById("adv_zipal_errors").scrollIntoView();
} else {
if (!region_code || region_code < 0) {
$('#adv_zipal_errors').html('<p>Поле Регион обязательно для заполнения</p>');
document.getElementById("adv_zipal_errors").scrollIntoView();
} else {
var count = $('#adv_zipal_content').find('.destination-box:checked').length;
if (count === 0) {
$('#adv_zipal_errors').html('<p>Не выбрана ни одна площадка для размещения</p>');
document.getElementById("adv_zipal_errors").scrollIntoView();
} else {
var allPriceFilled = true;
$('.adv-price-manual-field').each(function() {
if (!$(this).is(':disabled') && !$(this).val() && $(this).val() !== '0') {
allPriceFilled = false;
}
});
if (!allPriceFilled) {
$('#adv_zipal_errors').html('<p>Для фидов Яндекс, Циан, Емлс и Авито необходимо указать цену размещения вручную.</p>');
document.getElementById("adv_zipal_errors").scrollIntoView();
} else {
var destinations = [];
var errors = '';
$('#adv_zipal_content').find('.destination-box:checked').each(function() {
var dest = $(this).attr("data-destination");
var radioLen = $("input[name='adv_" + dest + "_radio']:checked").length;
if (radioLen === 0) {
errors = errors + '<p>Не выбран тип размещения для ' + $(this).parent().find('label').html() + '</p>';
} else {
var jsonDest = {
"destination": dest,
"feed": $("input[name='adv_" + dest + "_radio']:checked").attr("data-feed"),
"placementType": $("input[name='adv_" + dest + "_radio']:checked").attr("data-type"),
"manualPrice": (dest === 'YANDEX' || dest === 'CIAN' || dest === 'EMLS' || dest === 'AVITO') ? $("input[name='adv_" + dest + "_price_manual']").val() : '0',
"price": $("input[name='adv_" + dest + "_radio']:checked").attr("data-price")
};
destinations.push(jsonDest);
}
});
if (errors) {
$('#adv_zipal_errors').html(errors);
document.getElementById("adv_zipal_errors").scrollIntoView();
} else {
$('#adv_zipal_errors').html("");
$.ajax({
url: '/ajax/saveAdvPackage.php',
method: "post",
data: {
"packageId": packId,
"name": name,
"days": numDays,
"dealType": dealType,
"objectType": objectType,
"priceType": priceType,
"hasPhoto": hasPhoto,
"destinations": destinations,
"price": price,
"basePrice": basePrice,
"region_code": region_code
},
success: function() {
$("#advertising_package_modal_bg").hide(10);
$("#advertising_package_modal").hide(10);
$("body").removeClass("lock");
// обновление виджета о рекламе
//objectAdvertUpdate(id_object);
window.location.reload(true);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
}
}
}
}
}
}
}
function publishAdvPack(element) {
var el = $(element);
var state = el.hasClass('active');
var packageId = el.attr('data-package-id');
var objectId = $('#adv_pack_object_id').val();
if (!state) {
//publish
formAdvPackWindow(packageId, objectId, true);
} else {
$.ajax({
url: '/ajax/unpublishAdvPackage.php?objectId=' + objectId + '&packageId=' + packageId,
success: function() {
el.removeClass('active');
el.html('Опубликовать');
$('#days_' + packageId + '_' + objectId).hide();
}
});
}
}
function formAdvPackWindow(packageId, objectId, showWnd) {
var daysCount = $("#adv_pck_zipal_days").length > 0 && $("#adv_pck_zipal_days").is(':visible') ? $("#adv_pck_zipal_days").val() : 0;
var daysStr = '';
if (daysCount) {
daysStr = '&days_count=' + daysCount;
}
$.ajax({
url: '/ajax/getAdvPackageModalForObject.php?objectId=' + objectId + '&packageId=' + packageId + daysStr,
success: function(data) {
$("#adv_package_variants_content").html(data);
$("#publish_object_id").val(objectId);
$("#publish_pack_id").val(packageId);
$("#adv_pck_zipal_days").on('input', function() {
var numDays = $("#adv_pck_zipal_days").val();
if (numDays) {
formAdvPackWindow(packageId, objectId, false);
}
});
recalculatePackPrice();
if (showWnd) {
$("#adv_package_variants_bg").fadeIn(500);
$("#adv_package_variants").toggle(10);
$("body").addClass("lock");
}
}
});
}
function recalculatePackPrice() {
var commonPrice = parseFloat($('#adv-pck-zipal-base-price').html());
var totalPrice = commonPrice;
var zipalPrice = commonPrice;
var nonZipalPrice = 0;
$('#adv_package_variants_content').find('.adv-package-publish-radio:checked').each(function() {
var dest = $(this).attr("data-dest");
var price = parseFloat($(this).attr("data-price"));
if (dest === 'AVITO' || dest === 'YANDEX' || dest === 'CIAN' || dest === 'EMLS') {
nonZipalPrice = nonZipalPrice + price;
} else {
zipalPrice = zipalPrice + price;
}
totalPrice = totalPrice + price;
});
$('#adv-pck-zipal-total-price').html(Math.round(totalPrice * 100) / 100);
$('#adv-pck-zipal-only-price').html(Math.round(zipalPrice * 100) / 100);
$('#adv-pck-zipal-other-price').html(Math.round(nonZipalPrice * 100) / 100);
}
function publishAdvPackage() {
var daysCount = $("#adv_pck_zipal_days").length > 0 ? $("#adv_pck_zipal_days").val() : 0;
var objectId = $("#publish_object_id").val();
var packageId = $("#publish_pack_id").val();
var price = $("#adv-pck-zipal-only-price").html();
if (objectId && packageId) {
$.ajax({
url: '/ajax/checkZipalSum.php',
method: "post",
data: {
"price": price
},
success: function(data) {
if (data.indexOf("false") > -1) {
$('#adv_package_variants_errors').html('<p>Сумма размещения превышает рекламный бюджет</p>');
} else {
if (!daysCount) {
$('#adv_package_variants_errors').html('<p>Необходимо указать количество дней размещения</p>');
} else {
$.ajax({
url: '/ajax/publishAdvPackage.php',
method: "post",
data: {
"daysCount": daysCount,
"objectId": objectId,
"packageId": packageId,
"price": price
},
success: function(data) {
var result = JSON.parse(data);
$("#adv_package_variants_bg").hide(10);
$("#adv_package_variants").hide(10);
$("#pack_" + packageId + "_" + objectId).addClass("active");
$("#pack_" + packageId + "_" + objectId).html("Опубликовано");
$('#days_' + packageId + '_' + objectId).html(result.html);
$('#addToZipalCount_' + objectId).html(result.htmlWithTooltip);
// обновление виджета о рекламе
objectAdvertUpdate(objectId);
}
});
}
}
}
});
}
}
function objectAdvertUpdate(object_id) {
// Обновляем бейдж о текущем рекламном бюджете
if ($('#session_use_advert_budget').val() === "1") {
let user_id = $('#session_user_id').val();
let is_agency = (user_id === $('#session_agency_id').val())
$.post('/ajax/getAdvertBudget.php', { 'user_id': user_id, 'is_agency': is_agency, main_badge: 1 }, function(data) {
$('.content-top .top__advert-budget').html(data);
});
}
// Обновляем данные о рекламировании объекта в карточке
if (object_id) {
$.ajax({
url: '/ajax/getObjectAdverts.php?object_id=' + object_id,
method: "get",
success: function(data) {
$('.jw__objects #item' + object_id + ' .object-content__actions .object-content__advert').remove();
if($('.jw__objects #item' + object_id + ' .object-content__actions .blockEditMyObject').length > 0){
$('.jw__objects #item' + object_id + ' .object-content__actions .blockEditMyObject').after(data);
} else {
$('.jw__objects #item' + object_id + ' .object-content__actions .actions-menu__icons').after(data);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
$.ajax({
url: '/ajax/getObjectRemoveAdvert.php?object_id=' + object_id,
method: "get",
success: function(data) {
//console.log(data);
$('.jw__objects #item' + object_id + ' .object-content__actions .object-content__remove_advert').remove();
if($('.jw__objects #item' + object_id + ' .object-content__actions .object-content__advert').length > 0){
$('.jw__objects #item' + object_id + ' .object-content__actions .object-content__advert').after(data);
} else {
if($('.jw__objects #item' + object_id + ' .object-content__actions .blockEditMyObject').length > 0){
$('.jw__objects #item' + object_id + ' .object-content__actions .blockEditMyObject').after(data);
} else {
$('.jw__objects #item' + object_id + ' .object-content__actions .actions-menu__icons').after(data);
}
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
//обновление данных в закрытии этапа
if (object_id > 0 && $('#closeStepAddToAdvertSwitcher__' + object_id).length > 0) {
if (typeof ac.pole_dop_close_step.object == 'object' && ac.pole_dop_close_step.object.id == object_id) {
axios.post('/ajax/ajax_vue_clients.php', {
request: 'get_object_pole_dop',
object_id: object_id,
}, )
.then((response) => {
//console.log(response.data);
ac.pole_dop_close_step.object = response.data;
})
.catch(function(error) {
console.log(error);
});
}
}
}
function switchToAdvert(object_id, user_id, state) {
console.log({ object_id, user_id, state });
if(object_id == 'all'){
$.ajax({
url: '/ajax/advertAll.php',
method: "post",
data: {
"id_object": object_id,
"state": state,
"is_moderation": 0,
"is_budget": 0,
"feed": 'ALL_FEED'
},
success: function(data) {
console.log(data);
el.removeClass('active');
// обновление виджета о рекламе
// if (is_moderation == 0) {
//objectAdvertUpdateNew(id_object);
//}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else if (object_id) {
$.ajax({
url: '/ajax/switchAdvertState.php',
method: "post",
data: {
"id_object": object_id,
"state": state
},
success: function(data) {
console.log(data);
// обновление виджета о рекламе
objectAdvertUpdate(object_id);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function showWithReportsInfo() {
$("#zipal_content").html('<div class="settings-block"><p>При помощи данной функции Вы сможете выставить свое объявление на 80 досок по недвижимости и получить отчет в виде ссылок на объявление.</p><p>Для настройки данной функции свяжитесь с поддержкой по тел. 8 812 765-08-01</p></div>');
$("#reportTimeHint").hide();
$("#sendButtonInVariants").hide();
$("#reportTitleInVariants").html('Информация');
$("#zipal_variants_bg").fadeIn(500);
$("#zipal_variants").toggle(10);
$("body").addClass("lock");
}
function callZipalPricesAjax(id_object, days) {
$.ajax({
url: '/ajax/getZipalPrices.php?asScript=1&object_id=' + id_object + '&days_num=' + days,
method: "get",
success: function(data) {
try {
var result = JSON.parse(data);
for (var k = 0; k < result.length; k++) {
if (result[k]['id']) {
if (result[k]['value']) {
$("#" + result[k]['id']).html(result[k]['value']);
}
if (result[k]['price']) {
$("#" + result[k]['id']).attr("data-price", result[k]['price']);
}
}
}
calculateZipalPrice();
} catch (error) {
$("#zipal_content").html(data);
$("#zipal_days").on('input', function() {
var numDays = $("#zipal_days").val();
if (numDays) {
callZipalPricesAjax(id_object, numDays);
}
});
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function callZipalPrices(id_object, days) {
$.ajax({
url: '/ajax/getZipalPrices.php?object_id=' + id_object + '&days_num=' + days,
method: "get",
success: function(data) {
$("#zipal_content").html(data);
$("#zipal_days").on('input', function() {
var numDays = $("#zipal_days").val();
if (numDays) {
callZipalPricesAjax(id_object, numDays);
}
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function switchCanEmlsAd(element, check=null) {
var el = $(element);
var id_object = el.attr('data-id');
var state = el.hasClass('active');
if(id_object == 'all'){
if($('#checkdox_jcat_feed_'+id_object) !== undefined){
state = $('#checkdox_jcat_feed_'+id_object).prop('checked');
if(check == 'checbox'){
state = !state;
$('#checkdox_jcat_feed_'+id_object).prop('checked', state);
}
}
}
var is_moderation = 0;
if (el.attr('data-moderation') === 1 || el.attr('data-moderation') == '1')
is_moderation = 1;
var is_budget = 0;
if (el.attr('data-budget') === 1 || el.attr('data-budget') == '1')
is_budget = 1;
if (id_object) {
if(id_object == 'all'){
if (state !== true) {
if (confirm("Убрать объекты из рекламы? Если показ в рекламе уже был начат, то все ротации по объектам будут остановлены.")) {
$.ajax({
url: '/ajax/advertAll.php',
method: "post",
data: {
"id_object": id_object,
"state": 0,
"is_moderation": is_moderation,
"is_budget": is_budget,
"feed": 'EMLS_JW_FEED'
},
success: function(data) {
console.log(data);
el.removeClass('active');
// обновление виджета о рекламе
// if (is_moderation == 0) {
//objectAdvertUpdate(id_object);
//}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
$('#checkdox_jcat_feed_all').prop('checked', true);
}
} else {
openAdvDaysCountWindow(id_object, 'EMLS_JW_FEED', is_moderation, is_budget);
}
} else {
//если включено - выключаем, иначе показываем окно с количеством дней
if (state) {
openAdvRemoveWindow(id_object, 'EMLS_JW_FEED', is_moderation, is_budget);
} else {
//окно с количеством дней
openAdvDaysCountWindow(id_object, 'EMLS_JW_FEED', is_moderation, is_budget);
}
}
}
}
function showRestrictedAccessWin() {
$("#restricted_access_win_bg").fadeIn(500);
$("#restricted_access_win").toggle(10);
$("body").addClass("lock");
}
function switchCanCianAd(element, check = null) {
var el = $(element);
var id_object = el.attr('data-id');
var state = el.hasClass('active');
if(id_object == 'all'){
if($('#checkdox_cian_feed_'+id_object) !== undefined){
state = $('#checkdox_cian_feed_'+id_object).prop('checked');
if(check == 'checbox'){
state = !state;
$('#checkdox_cian_feed_'+id_object).prop('checked', state);
}
}
}
var is_moderation = 0;
if (el.attr('data-moderation') === 1 || el.attr('data-moderation') == '1')
is_moderation = 1;
var is_budget = 0;
if (el.attr('data-budget') === 1 || el.attr('data-budget') == '1')
is_budget = 1;
if (id_object) {
//если включено - выключаем, иначе показываем окно с количеством дней
if(id_object == 'all'){
if (state !== true) {
if (confirm("Убрать объекты из рекламы? Если показ в рекламе уже был начат, то все ротации по объектам будут остановлены.")) {
$.ajax({
url: '/ajax/advertAll.php',
method: "post",
data: {
"id_object": id_object,
"state": 0,
"is_moderation": is_moderation,
"is_budget": is_budget,
"feed": 'CIAN_JW_FEED'
},
success: function(data) {
console.log(data);
el.removeClass('active');
// обновление виджета о рекламе
// if (is_moderation == 0) {
//objectAdvertUpdate(id_object);
//}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
$('#checkdox_cian_feed_all').prop('checked', true);
}
} else {
openAdvDaysCountWindow(id_object, 'CIAN_JW_FEED', is_moderation, is_budget);
}
} else {
if (state) {
openAdvRemoveWindow(id_object, 'CIAN_JW_FEED', is_moderation, is_budget);
} else {
//окно с количеством дней
openAdvDaysCountWindow(id_object, 'CIAN_JW_FEED', is_moderation, is_budget);
}
}
}
}
function switchCanAvitoAd(element, check = null) {
var el = $(element);
var id_object = el.attr('data-id');
var state = el.hasClass('active');
if(id_object == 'all'){
if($('#checkdox_avito_feed_'+id_object) !== undefined){
state = $('#checkdox_avito_feed_'+id_object).prop('checked');
if(check == 'checbox'){
state = !state;
$('#checkdox_avito_feed_'+id_object).prop('checked', state);
}
}
}
var is_moderation = 0;
if (el.attr('data-moderation') === 1 || el.attr('data-moderation') == '1')
is_moderation = 1;
var is_budget = 0;
if (el.attr('data-budget') == 1)
is_budget = 1;
if (id_object) {
if(id_object == 'all'){
console.log(state);
if (state !== true) {
if (confirm("Убрать объекты из рекламы? Если показ в рекламе уже был начат, то все ротации по объектам будут остановлены.")) {
$.ajax({
url: '/ajax/advertAll.php',
method: "post",
data: {
"id_object": id_object,
"state": 0,
"is_moderation": is_moderation,
"is_budget": is_budget,
"feed": 'AVITO_JW_FEED'
},
success: function() {
// console.log(data);
el.removeClass('active');
// обновление виджета о рекламе
// if (is_moderation == 0) {
objectAdvertUpdate(id_object);
//}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
} else {
$('#checkdox_avito_feed_all').prop('checked', true);
}
} else {
openAdvDaysCountWindow(id_object, 'AVITO_JW_FEED', is_moderation, is_budget);
}
} else {
//если включено - выключаем, иначе показываем окно с количеством дней
if (state) {
openAdvRemoveWindow(id_object, 'AVITO_JW_FEED', is_moderation, is_budget);
} else {
//окно с количеством дней
openAdvDaysCountWindow(id_object, 'AVITO_JW_FEED', is_moderation, is_budget);
}
}
}
}
function copyMyObjects(objId) {
if (objId) {
$.ajax({
url: '/ajax/copyMyObject.php',
method: "post",
data: {
"objId": objId
},
success: function() {
$.ajax({
url: '/ajax/modals/afterCopyMyObjectWinContent.php',
success: function(data) {
$("#after_add_from_archive_bg").html(data).fadeIn(500);
$("#after_add_from_archive").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function closeAfterAddCopyMyObject() {
window.location.reload(true);
}
function copyToMyObjects(objId) {
if (objId) {
$.ajax({
url: '/ajax/modals/afterAddFromArchiveWinContent.php',
success: function(data) {
$.ajax({
url: '/ajax/copyObjectFromArchive.php',
method: "post",
data: {
"objId": objId
},
success: function() {
if (window.authUser) {
$.ajax({
url: '/ajax/addObjectNote.php',
method: "post",
data: {
"object_id": objId,
"message": `Добавлено в "Мои объекты" сотрудником ${authUser.first_name} ${authUser.last_name} ${authUser.middle_name}`
},
success: () => $('.addEditNote[data-id="' + objId + '"]').addClass('haveNotes')
})
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
$("#after_add_from_archive_bg").html(data).fadeIn(500);
$("#after_add_from_archive").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
$(function() {
$("#addToAdv").on("click", function() {
if ($(this).is(":checked")) {
$(".checkbox .on").addClass("active");
$(".checkbox .off").removeClass("active");
$(".checkbox .off").removeClass("active");
} else {
$(".checkbox .off").addClass("active");
$(".checkbox .on").removeClass("active");
}
})
});
$(function() {
$(".addToMyObject").on("click", function() {
if ($(this).hasClass('active')) {
$(".addToMyObject").removeClass("active");
$(".addToMyObject").text("В мои объекты");
$(".returnObject").addClass("hidden");
$(".addToArchive").addClass("hidden");
} else {
$(".addToMyObject").addClass("active");
$(".addToMyObject").text("Мой объект");
$(".returnObject").removeClass("hidden");
$(".addToArchive").removeClass("hidden");
}
})
});
// A formatted version of a popular md5 implementation.
// Original copyright (c) Paul Johnston & Greg Holt.
// The function itself is now 42 lines long.
function md5(inputString) {
var hc = "0123456789abcdef";
function rh(n) { var j, s = ""; for (j = 0; j <= 3; j++) s += hc.charAt((n >> (j * 8 + 4)) & 0x0F) + hc.charAt((n >> (j * 8)) & 0x0F); return s; }
function ad(x, y) { var l = (x & 0xFFFF) + (y & 0xFFFF); var m = (x >> 16) + (y >> 16) + (l >> 16); return (m << 16) | (l & 0xFFFF); }
function rl(n, c) { return (n << c) | (n >>> (32 - c)); }
function cm(q, a, b, x, s, t) { return ad(rl(ad(ad(a, q), ad(x, t)), s), b); }
function ff(a, b, c, d, x, s, t) { return cm((b & c) | ((~b) & d), a, b, x, s, t); }
function gg(a, b, c, d, x, s, t) { return cm((b & d) | (c & (~d)), a, b, x, s, t); }
function hh(a, b, c, d, x, s, t) { return cm(b ^ c ^ d, a, b, x, s, t); }
function ii(a, b, c, d, x, s, t) { return cm(c ^ (b | (~d)), a, b, x, s, t); }
function sb(x) {
var i;
var nblk = ((x.length + 8) >> 6) + 1;
var blks = new Array(nblk * 16);
for (i = 0; i < nblk * 16; i++) blks[i] = 0;
for (i = 0; i < x.length; i++) blks[i >> 2] |= x.charCodeAt(i) << ((i % 4) * 8);
blks[i >> 2] |= 0x80 << ((i % 4) * 8);
blks[nblk * 16 - 2] = x.length * 8;
return blks;
}
var i, x = sb(inputString),
a = 1732584193,
b = -271733879,
c = -1732584194,
d = 271733878,
olda, oldb, oldc, oldd;
for (i = 0; i < x.length; i += 16) {
olda = a;
oldb = b;
oldc = c;
oldd = d;
a = ff(a, b, c, d, x[i + 0], 7, -680876936);
d = ff(d, a, b, c, x[i + 1], 12, -389564586);
c = ff(c, d, a, b, x[i + 2], 17, 606105819);
b = ff(b, c, d, a, x[i + 3], 22, -1044525330);
a = ff(a, b, c, d, x[i + 4], 7, -176418897);
d = ff(d, a, b, c, x[i + 5], 12, 1200080426);
c = ff(c, d, a, b, x[i + 6], 17, -1473231341);
b = ff(b, c, d, a, x[i + 7], 22, -45705983);
a = ff(a, b, c, d, x[i + 8], 7, 1770035416);
d = ff(d, a, b, c, x[i + 9], 12, -1958414417);
c = ff(c, d, a, b, x[i + 10], 17, -42063);
b = ff(b, c, d, a, x[i + 11], 22, -1990404162);
a = ff(a, b, c, d, x[i + 12], 7, 1804603682);
d = ff(d, a, b, c, x[i + 13], 12, -40341101);
c = ff(c, d, a, b, x[i + 14], 17, -1502002290);
b = ff(b, c, d, a, x[i + 15], 22, 1236535329);
a = gg(a, b, c, d, x[i + 1], 5, -165796510);
d = gg(d, a, b, c, x[i + 6], 9, -1069501632);
c = gg(c, d, a, b, x[i + 11], 14, 643717713);
b = gg(b, c, d, a, x[i + 0], 20, -373897302);
a = gg(a, b, c, d, x[i + 5], 5, -701558691);
d = gg(d, a, b, c, x[i + 10], 9, 38016083);
c = gg(c, d, a, b, x[i + 15], 14, -660478335);
b = gg(b, c, d, a, x[i + 4], 20, -405537848);
a = gg(a, b, c, d, x[i + 9], 5, 568446438);
d = gg(d, a, b, c, x[i + 14], 9, -1019803690);
c = gg(c, d, a, b, x[i + 3], 14, -187363961);
b = gg(b, c, d, a, x[i + 8], 20, 1163531501);
a = gg(a, b, c, d, x[i + 13], 5, -1444681467);
d = gg(d, a, b, c, x[i + 2], 9, -51403784);
c = gg(c, d, a, b, x[i + 7], 14, 1735328473);
b = gg(b, c, d, a, x[i + 12], 20, -1926607734);
a = hh(a, b, c, d, x[i + 5], 4, -378558);
d = hh(d, a, b, c, x[i + 8], 11, -2022574463);
c = hh(c, d, a, b, x[i + 11], 16, 1839030562);
b = hh(b, c, d, a, x[i + 14], 23, -35309556);
a = hh(a, b, c, d, x[i + 1], 4, -1530992060);
d = hh(d, a, b, c, x[i + 4], 11, 1272893353);
c = hh(c, d, a, b, x[i + 7], 16, -155497632);
b = hh(b, c, d, a, x[i + 10], 23, -1094730640);
a = hh(a, b, c, d, x[i + 13], 4, 681279174);
d = hh(d, a, b, c, x[i + 0], 11, -358537222);
c = hh(c, d, a, b, x[i + 3], 16, -722521979);
b = hh(b, c, d, a, x[i + 6], 23, 76029189);
a = hh(a, b, c, d, x[i + 9], 4, -640364487);
d = hh(d, a, b, c, x[i + 12], 11, -421815835);
c = hh(c, d, a, b, x[i + 15], 16, 530742520);
b = hh(b, c, d, a, x[i + 2], 23, -995338651);
a = ii(a, b, c, d, x[i + 0], 6, -198630844);
d = ii(d, a, b, c, x[i + 7], 10, 1126891415);
c = ii(c, d, a, b, x[i + 14], 15, -1416354905);
b = ii(b, c, d, a, x[i + 5], 21, -57434055);
a = ii(a, b, c, d, x[i + 12], 6, 1700485571);
d = ii(d, a, b, c, x[i + 3], 10, -1894986606);
c = ii(c, d, a, b, x[i + 10], 15, -1051523);
b = ii(b, c, d, a, x[i + 1], 21, -2054922799);
a = ii(a, b, c, d, x[i + 8], 6, 1873313359);
d = ii(d, a, b, c, x[i + 15], 10, -30611744);
c = ii(c, d, a, b, x[i + 6], 15, -1560198380);
b = ii(b, c, d, a, x[i + 13], 21, 1309151649);
a = ii(a, b, c, d, x[i + 4], 6, -145523070);
d = ii(d, a, b, c, x[i + 11], 10, -1120210379);
c = ii(c, d, a, b, x[i + 2], 15, 718787259);
b = ii(b, c, d, a, x[i + 9], 21, -343485551);
a = ad(a, olda);
b = ad(b, oldb);
c = ad(c, oldc);
d = ad(d, oldd);
}
return rh(a) + rh(b) + rh(c) + rh(d);
}
function openFlat(flatId, flatNum) {
$('#flat_info_tab').html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$('#block_info_tab').html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$('#conditions_info_tab').html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$('#banks_info_tab').html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$('#docs_info_tab').html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$('#flat_info_tab .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#block_info_tab .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#conditions_info_tab .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#banks_info_tab .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#docs_info_tab .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
if (!flatNum) {
$("#flat_modal_title").html("Квартира №" + flatNum);
} else {
$("#flat_modal_title").html("Квартира");
}
// $("#flat_modal_title").html("Квартира №" + flatNum);
$("#print_newbuilding_link").attr("href", "https://joywork.ru/newbuilding-view.php?token=" + md5($('#session_user_id').val()) + "&id=" + flatId);
$("#to_send_window_button").attr("data-id", flatId);
$("#bookingWindowButton").attr("data-id", flatId);
$("#bookingWindowButton").attr("data-FlatNum", flatNum);
if ($('#to_send_button' + flatId).hasClass('active')) {
$("#to_send_window_button").addClass("active");
} else {
$("#to_send_window_button").removeClass("active");
}
$("#flatModalTabs").jwTabs();
$("#flat__bg").fadeIn(500);
$("#flat").toggle(10);
$("body").addClass("lock");
$.ajax({
url: '/ajax/getFlatInfoTabData.php?id=' + flatId,
success: function(data) {
$('#flat_info_tab').html(data);
$('.flat-flat-plan, .flat-etag-plan').viewer({
navbar: false,
toolbar: false,
rotatable: false,
scalable: false,
transition: false,
keyboard: false,
zIndex: 100000
});
$.ajax({
url: '/ajax/getBlockInfoTabData.php?apartmentId=' + flatId,
success: function(data) {
$('#block_info_tab').html(data);
$('#block_info_tab .fotorama').fotorama();
ymaps.ready(onYandexMapInit);
$.ajax({
url: '/ajax/getFlatConditionsTabData.php?apartmentId=' + flatId,
success: function(data) {
$('#conditions_info_tab').html(data);
$.ajax({
url: '/ajax/getBlockBanksInfoTabData.php?apartmentId=' + flatId,
success: function(data) {
$('#banks_info_tab').html(data);
$.ajax({
url: '/ajax/getBlockDocumentsInfoTabData.php?apartmentId=' + flatId,
success: function(data) {
$('#docs_info_tab').html(data);
}
});
}
});
}
});
}
});
}
});
}
function openFlatBooking(flatId, flatNum) {
$('#flat_booking_modal_title').html("Бронирование квартиры №" + flatNum);
$("#reservationObjectId").val(flatId);
$("#errorBlock").html('');
$.ajax({
url: '/ajax/getApartmentDescForReservation.php?id=' + flatId,
success: function(data) {
$('#reservationObjectDescription').html(data);
$("#flat-booking__bg").fadeIn(500);
$("#flat-booking").toggle(10);
$("body").addClass("lock");
}
});
}
function hideReservationAndOpenSuccess() {
$("#flat-booking").hide(10);
$("#flat-booking__bg").hide(10);
$("#after_reservation_bg").fadeIn(500);
$("#after_reservation").toggle(10);
$("body").addClass("lock");
}
function openReservationFlat(reservationId, flatNum) {
$('#flat_info_tab').html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$('#block_info_tab').html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$('#conditions_info_tab').html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$('#banks_info_tab').html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$('#docs_info_tab').html('<div class="preloader" style="height: 26px; width: 26px;"></div>');
$('#flat_info_tab .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#block_info_tab .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#conditions_info_tab .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#banks_info_tab .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
$('#docs_info_tab .preloader').css({ "background": "url(/images/ajax_preloader.gif) no-repeat center center", "background-size": "26px 26px" });
if (!flatNum) {
$("#flat_modal_title").html("Квартира №" + flatNum);
} else {
$("#flat_modal_title").html("Квартира");
}
$("#flatModalTabs").jwTabs();
$("#flat__bg").fadeIn(500);
$("#flat").toggle(10);
$("body").addClass("lock");
$.ajax({
url: '/ajax/getReservationFlatInfoTabData.php?id=' + reservationId,
success: function(data) {
$('#flat_info_tab').html(data);
$('.flat-flat-plan, .flat-etag-plan').viewer({
navbar: false,
title: false,
toolbar: false,
tooltip: false,
rotatable: false,
scalable: false,
transition: false,
keyboard: false,
zIndex: 100000
});
$.ajax({
url: '/ajax/getReservationBlockInfoTabData.php?id=' + reservationId,
success: function(data) {
$('#block_info_tab').html(data);
$('#block_info_tab .fotorama').fotorama();
ymaps.ready(onYandexMapInit);
$.ajax({
url: '/ajax/getReservationFlatConditionsTabData.php?id=' + reservationId,
success: function(data) {
$('#conditions_info_tab').html(data);
$.ajax({
url: '/ajax/getReservationBlockBanksInfoTabData.php?id=' + reservationId,
success: function(data) {
$('#banks_info_tab').html(data);
$.ajax({
url: '/ajax/getReservationBlockDocumentsInfoTabData.php?id=' + reservationId,
success: function(data) {
$('#docs_info_tab').html(data);
}
});
}
});
}
});
}
});
}
});
}
function saveZipal() {
var days = $('#zipal_days').val();
var objectId = $('#zipal_object_Id').val();
var price = $('#zipal-total-price').html();
$.ajax({
url: '/ajax/checkZipalSum.php',
method: "post",
data: {
"price": price
},
success: function(data) {
if (data.indexOf("false") > -1) {
$('#zipal_errors').html('<p>Сумма размещения превышает рекламный бюджет</p>');
} else {
if (!days) {
$('#zipal_errors').html('<p>Необходимо указать количество дней размещения</p>');
} else {
var count = $('#zipal_content').find('.destination-box:checked').length;
if (count === 0) {
$('#zipal_errors').html('<p>Не выбрана ни одна площадка для размещения</p>');
} else {
var destinations = [];
var errors = '';
$('#zipal_content').find('.destination-box:checked').each(function() {
var dest = $(this).attr("data-destination");
var radioLen = $("input[name='" + dest + "_radio']:checked").length;
if (radioLen === 0) {
errors = errors + '<p>Не выбран тип размещения для ' + $(this).parent().find('label').html() + '</p>';
} else {
var jsonDest = {
"destination": dest,
"feed": $("input[name='" + dest + "_radio']:checked").attr("data-feed"),
"placementType": $("input[name='" + dest + "_radio']:checked").attr("data-type")
};
destinations.push(jsonDest);
}
});
if (errors) {
$('#zipal_errors').html(errors);
} else {
$('#zipal_errors').html("");
$.ajax({
url: '/ajax/saveZipal.php',
method: "post",
dataType: "json",
data: {
"days": days,
"objectId": objectId,
"destinations": destinations,
"price": price
},
success: function(data) {
$("#zipal_variants_bg").hide(10);
$("#zipal_variants").hide(10);
$("body").removeClass("lock");
$(".addToZipal[data-id='" + objectId + "']").addClass("active");
$(".addToZipalCount[data-id='" + objectId + "']").html(data['html']);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
// обновление виджета о рекламе
objectAdvertUpdate(objectId);
}
}
}
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function unpublishZipal() {
var objectId = $('#zipal_unpublish_id').val();
$.ajax({
url: '/ajax/unpublishZipal.php',
method: "post",
data: {
"objectId": objectId
},
success: function() {
$("#zipal_unpublish_bg").hide(10);
$("#zipal_unpublish").hide(10);
$("body").removeClass("lock");
$(".addToZipal[data-id='" + objectId + "']").removeClass("active");
$(".addToZipalCount[data-id='" + objectId + "']").html('');
// обновление виджета о рекламе
objectAdvertUpdate(objectId);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function goToPage(event, input, additionalUrl) {
if (event.keyCode === 13) {
var pageNum = $(input).val();
if (pageNum) {
window.location = '?page=' + pageNum + '&' + additionalUrl;
}
}
}
function goToObjectsPage(event, input) {
if (event.keyCode === 13) {
var pageNum = $(input).val();
if (pageNum) {
get_objects_list(pageNum);
}
}
}
function get_sources(group) {
var user_id = $('#source_user_id').val();
var manager_id = $('#source_manager_id').val();
$.get("/ajax/advertisingSources.php?get_source=1&user_id=" + user_id + "&manager_id=" + manager_id + "&group=" + group, function(res) {
$('#advertising_sources .flat__modal').html(res);
$('#advertising_sources .editSources').click(function() {
var adv_source = $(this).data("source");
var ideditsources = $(this).data("id");
var group = $(this).data("group");
$('#edit_advertising_sources [name=editsources]').val(adv_source);
$('#edit_advertising_sources [name=ideditsources]').val(ideditsources);
$('#edit_advertising_sources [name=group]').val(group);
$('#edit_advertising_sources').fadeIn(500);
$("#edit_advertising_sources .edit-modal").show(10);
$("body").addClass("lock");
return false;
});
$('#advertising_sources .delSources').click(function() {
var id_adv = $(this).data("id");
if (confirm('Вы точно хотите безвозвратно удалить этот рекламный источник?')) {
$.get('/ajax/advertisingSources.php?del_adv=' + id_adv, function() {
$('#advertising_sources_li_' + id_adv).remove();
if ($('#advertising_sources li').length == 0) {
$("#advertising_sources ul").remove();
var html = '<div class="empty-block" style="margin-top: 30px;"><h2>Рекламных источников нет</h2></div>';
$("#advertising_sources .bottom").before(html);
}
});
}
});
});
}
function openAddCabinetLink(cabinetId, recordId) {
$.ajax({
url: '/ajax/modals/cabinetLinkAddEditWinContent.php',
success: function(data) {
$("#cabinet_link_add_edit_bg").html(data);
$("#cabinet_link_cabinet_id").val(cabinetId);
$("#cabinet_link_record_id").val(recordId);
if (!recordId) {
$("#cabinet_link_view_count").val("");
$("#cabinet_link_url").val("");
$("#cabinet_link_name").val("");
$("#cabinet_link_add_edit_bg").fadeIn(500);
$("#cabinet_link_add_edit").toggle(10);
$("body").addClass("lock");
} else {
$.ajax({
url: '/ajax/getCabinetLinkData.php?id=' + recordId,
success: function(data) {
var res = JSON.parse(data);
$("#cabinet_link_view_count").val(res.view_count);
$("#cabinet_link_url").val(res.url);
$("#cabinet_link_name").val(res.name);
$("#cabinet_link_add_edit_bg").fadeIn(500);
$("#cabinet_link_add_edit").toggle(10);
$("body").addClass("lock");
}
});
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
function changeSendType(type) {
$('.send_type').val(type);
if (type == 'mail') {
$('.watsappbtn').removeClass('selected');
$('.mailbtn').addClass('selected');
$('.telegrambtn').removeClass('selected');
$('.mail_block').show();
} else if (type == 'whatsapp') {
$('.watsappbtn').addClass('selected');
$('.mailbtn').removeClass('selected');
$('.telegrambtn').removeClass('selected');
$('.mail_block').hide();
} else if (type == 'telegram') {
$('.watsappbtn').removeClass('selected');
$('.mailbtn').removeClass('selected');
$('.telegrambtn').addClass('selected');
$('.mail_block').hide();
}
return false;
}
function array_combine(keys, values) {
var new_array = {},
keycount = keys.length,
i;
if (!keys || !values || keys.constructor !== Array || values.constructor !== Array)
return false;
if (keycount != values.length)
return false;
for (i = 0; i < keycount; i++) {
new_array[keys[i]] = values[i];
}
return new_array;
}
function calcAdvertCost(price = 0, days = 0, period = 30) {
let cost = price;
if (days > 0 && cost > 0)
cost = (price * Math.ceil(days / period).toFixed(0));
return cost;
}
function openAdvDaysCountWindow(objectId, feed, is_moderation = 0, is_budget = 0) {
console.info({ objectId, feed, is_moderation, is_budget });
$.ajax({
url: '/ajax/modals/advSelectTimeWinContent.php',
data: {
object_id: objectId,
feed: feed,
is_moderation: is_moderation,
is_budget: is_budget,
},
success: function(data) {
$("#adv_select_time_bg").html(data).fadeIn(500);
$('#advTimeObjectId').val(objectId);
$('#advTimeFeedCode').val(feed);
$('#advTimeIsModeration').val(is_moderation);
$('#advTimeIsBudget').val(is_budget);
$('#objectsInAd').show();
$.ajax({
url: "/ajax/checkAdUnique.php",
type: "POST",
data: {object_id: objectId},
dataType: "json",
success: function(response) {
console.log(response, 'response test');
if (response.object_in_ads === true) {
$("#the_object_in_ad").show();
$("#ad_to_add_btn").attr("in-ad", "true");
// let objIds = response.object_id.map(id => `<div>${id}</div>`).join("");
// console.log(response.object_ids.join(", "), 'response.object_id.join(", ")');
$("#ad_object_id").text('ID: ' + response.object_ids.join(", "));
$("#ad_object_id").show();
}
$('#objectsInAd').hide();
},
error: function(error) {
console.log(error, 'error test');
}
});
if (feed) {
$('#adv_select_time .adv_select').css({ 'display': 'none' });
switch (feed) {
case 'AVITO_JW_FEED':
$('#adv_select_time .adv_select.adv_avito_selected').css({ 'display': 'inline-flex' });
$('#adv_select_time .adv_budget .adv_budget_service_name').text('Avito');
break;
case 'CIAN_JW_FEED':
$('#adv_select_time .adv_select.adv_cian_selected').css({ 'display': 'inline-flex' });
$('#adv_select_time .adv_budget .adv_budget_service_name').text('ЦИАН');
break;
case 'DOMCLICK_JW_FEED':
$('#adv_select_time .adv_select.adv_domclick_selected').css({ 'display': 'inline-flex' });
$('#adv_select_time .adv_budget .adv_budget_service_name').text('ДомКлик');
break;
case 'EMLS_JW_FEED':
$('#adv_select_time .adv_select.adv_jcat_selected').css({ 'display': 'inline-flex' });
$('#adv_select_time .adv_budget .adv_budget_service_name').text('JCat');
break;
case 'YANDEX_JW_FEED':
$('#adv_select_time .adv_select.adv_yandex_selected').css({ 'display': 'inline-flex' });
$('#adv_select_time .adv_budget .adv_budget_service_name').text('Я.Недвижимость');
break;
}
}
let price = $('#advTimePrice').val();
let days = $('#numDaysAdv').val();
let cost = calcAdvertCost(price, days, 30);
let userIsAgency = ($('#session_admin_rights').val() === "1");
$('#adv_select_time .adv_budget .adv_budget_price').text(cost + ' руб.');
let budget = $('#advTimeBudget').val();
if (budget && $("#adv_select_time .adv_budget_available").length > 0) {
if (price > 0 && cost > budget) {
$("#adv_select_time .adv_budget_available").addClass('is_lower');
$("#adv_select_time .adv_budget_available").removeClass('is_hight');
if (!userIsAgency)
$("#adv_select_time .submit-button").attr('disabled', true);
} else {
$("#adv_select_time .adv_budget_available").removeClass('is_lower');
$("#adv_select_time .adv_budget_available").addClass('is_hight');
if (!userIsAgency)
$("#adv_select_time .submit-button").removeAttr('disabled');
}
}
$("#numDaysAdv").on('change', (event) => {
cost = calcAdvertCost(price, event.target.value, 30);
$('#adv_select_time .adv_budget .adv_budget_price').text(cost + ' руб.');
if (budget && $("#adv_select_time .adv_budget_available").length > 0) {
if (price > 0 && cost > budget) {
$("#adv_select_time .adv_budget_available").addClass('is_lower');
$("#adv_select_time .adv_budget_available").removeClass('is_hight');
if (!userIsAgency)
$("#adv_select_time .submit-button").attr('disabled', true);
} else {
$("#adv_select_time .adv_budget_available").removeClass('is_lower');
$("#adv_select_time .adv_budget_available").addClass('is_hight');
if (!userIsAgency)
$("#adv_select_time .submit-button").removeAttr('disabled');
}
}
});
$("#adv_select_time_bg").fadeIn(500);
$("#adv_select_time").toggle(10);
$("body").addClass("lock");
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
})
}
function closeAdvDaysCountWindow() {
$("#adv_select_time_bg").hide(10);
$("#adv_select_time").hide(10);
$("body").removeClass("lock");
}
function saveAdvDaysCount(state = 1) {
if ($('#ad_to_add_btn').attr("in-ad") === "true") {
console.log('CONFIRMED IT IS ON AD');
}
if ($('#adv_select_time .submit-button').attr("disabled"))
return;
var numDays = 5000;
var feed = $('#advTimeFeedCode').val();
var objectId = $('#advTimeObjectId').val();
var is_moderation = 0;
if ($('#advTimeIsModeration').length > 0) {
is_moderation = $('#advTimeIsModeration').val();
}
if (!$('#noLimitAdv').prop("checked")) {
//срочное размещение
numDays = $('#numDaysAdv').val();
if (!numDays || numDays < 1) {
$('#adv_select_time_error').html("Укажите срок размещения от 1 дня.");
return;
}
}
var url = '';
var elClass = '';
if (feed === 'AVITO_JW_FEED') {
url = '/ajax/switchAvitoAd.php';
elClass = 'addToAvito';
}
if (feed === 'EMLS_JW_FEED') {
url = '/ajax/switchEmlsAd.php';
elClass = 'addToEMLS';
}
if (feed === 'CIAN_JW_FEED') {
url = '/ajax/switchCianAd.php';
elClass = 'addToCian';
}
if (feed === 'YANDEX_JW_FEED') {
url = '/ajax/switchBnAd.php';
elClass = 'addToBn';
}
if (feed === 'FREE_JW_FEED') {
url = '/ajax/switchAd.php';
elClass = 'addToFreeAdv';
}
if (feed === 'DOMCLICK_JW_FEED') {
url = '/ajax/switchDomAd.php';
elClass = 'addToDomClick';
}
if (feed === 'COMPLEX_YANDEX_JW_FEED' ||
feed === 'COMPLEX_EMLS_JW_FEED' ||
feed === 'COMPLEX_DOMCLICK_JW_FEED' ||
feed === 'COMPLEX_CIAN_JW_FEED' ||
feed === 'COMPLEX_AVITO_JW_FEED' ||
feed === 'COMPLEX_FREE_JW_FEED'
) {
url = '';
complexId = objectId;
objectId = 0;
if (typeof complexsearchform == 'object') {
complexsearchform.advertPlases(complexId, 1, feed, numDays);
}
}
if(objectId == 'all'){
url = '/ajax/advertAll.php';
}
if (objectId && url) {
$.ajax({
url: url,
method: "post",
data: {
"id_object": objectId,
"state": state,
"numDays": numDays,
"is_moderation": is_moderation,
"feed": feed
},
success: function(data) {
console.log(data);
if (!data) {
$('.jw__objects #item' + objectId + ' .' + elClass).addClass('active');
if (is_moderation > 0) {
$('#advertisings_moderation__' + objectId + ' .send_moderaion').show();
$('#advertisings_moderation__' + objectId + ' .done_send_moderation').hide();
}
// обновление виджета о рекламе
objectAdvertUpdate(objectId);
closeAdvDaysCountWindow();
} else {
$('#adv_select_time_error').html(data);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function openAdvRemoveWindow(objectId, feed, is_moderation = 0, is_budget = 0){
console.log({ objectId, feed, is_moderation, is_budget });
$("#adv_confirm_remove_bg").fadeIn(500);
$('#advRemoveObjectId').val(objectId);
$('#advRemoveFeedCode').val(feed);
$('#advRemoveIsModeration').val(is_moderation);
$('#advRemoveIsBudget').val(is_budget);
$('#adv_confirm_remove').show();
if (feed) {
$('#adv_confirm_remove .adv_select').css({ 'display': 'none' });
switch (feed) {
case 'AVITO_JW_FEED':
$('#adv_confirm_remove .adv_select.adv_avito_selected').css({ 'display': 'inline-flex' });
$('#adv_confirm_remove .adv_budget .adv_budget_service_name').text('Avito');
break;
case 'CIAN_JW_FEED':
$('#adv_confirm_remove .adv_select.adv_cian_selected').css({ 'display': 'inline-flex' });
$('#adv_confirm_remove .adv_budget .adv_budget_service_name').text('ЦИАН');
break;
case 'DOMCLICK_JW_FEED':
$('#adv_confirm_remove .adv_select.adv_domclick_selected').css({ 'display': 'inline-flex' });
$('#adv_confirm_remove .adv_budget .adv_budget_service_name').text('ДомКлик');
break;
case 'EMLS_JW_FEED':
$('#adv_confirm_remove .adv_select.adv_jcat_selected').css({ 'display': 'inline-flex' });
$('#adv_confirm_remove .adv_budget .adv_budget_service_name').text('JCat');
break;
case 'YANDEX_JW_FEED':
$('#adv_confirm_remove .adv_select.adv_yandex_selected').css({ 'display': 'inline-flex' });
$('#adv_confirm_remove.adv_budget .adv_budget_service_name').text('Я.Недвижимость');
break;
}
}
$("body").addClass("lock");
}
function closeAdvRemoveWindow(){
$("#adv_confirm_remove_bg").hide(10);
$("#adv_confirm_remove").hide(10);
$("body").removeClass("lock")
}
function saveAdvRemove(){
var feed = $('#advRemoveFeedCode').val();
var objectId = $('#advRemoveObjectId').val();
var is_moderation = 0;
if ($('#advRemoveIsModeration').length > 0) {
is_moderation = $('#advRemoveModeration').val();
}
var url = '';
var elClass = '';
if (feed === 'AVITO_JW_FEED') {
url = '/ajax/switchAvitoAd.php';
elClass = 'addToAvito';
}
if (feed === 'EMLS_JW_FEED') {
url = '/ajax/switchEmlsAd.php';
elClass = 'addToEMLS';
}
if (feed === 'CIAN_JW_FEED') {
url = '/ajax/switchCianAd.php';
elClass = 'addToCian';
}
if (feed === 'YANDEX_JW_FEED') {
url = '/ajax/switchBnAd.php';
elClass = 'addToBn';
}
if (feed === 'FREE_JW_FEED') {
url = '/ajax/switchAd.php';
elClass = 'addToFreeAdv';
}
if (feed === 'DOMCLICK_JW_FEED') {
url = '/ajax/switchDomAd.php';
elClass = 'addToDomClick';
}
if (objectId && url) {
$.ajax({
url: url,
method: "post",
data: {
"id_object": objectId,
"state": 0,
"is_moderation": is_moderation,
"feed": feed
},
success: function(data) {
console.log(data);
if (!data) {
$('.jw__objects #item' + objectId + ' .' + elClass).removeClass('active');
/*if (is_moderation > 0) {
$('#advertisings_moderation__' + objectId + ' .send_moderaion').show();
$('#advertisings_moderation__' + objectId + ' .done_send_moderation').hide();
}*/
// обновление виджета о рекламе
objectAdvertUpdate(objectId);
closeAdvRemoveWindow();
} else {
$('#adv_remove_error').html(data);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log("eRROR: " + errorThrown + "; status:" + textStatus);
}
});
}
}
function hideSearchForm() {
if (!$("#show_form").is(':visible')) {
$(".main-form").slideToggle();
$(".show_form").show();
return false;
}
}
async function changeDocPermissons(doc_id) {
$('#change-perm-doc').fastselect().data('fastselect').destroy()
try {
const data = await $.post('/ajax/folders.php', { get_users_perm_folder: doc_id });
const users_array = JSON.parse(data);
let users_select_perm = '';
let users_have_perm = '';
for (let i = 0; i < users_array.length; i++) {
if (users_array[i]["user_select"] === 1) {
users_select_perm += `<option data-op="${users_array[i]["user_name"]}" selected value="${users_array[i]["user_id"]}">${users_array[i]["user_name"]}</option>`;
users_have_perm += `<li>${users_array[i]["user_name"]}</li>`;
} else {
users_select_perm += `<option data-op="${users_array[i]["user_name"]}" value="${users_array[i]["user_id"]}">${users_array[i]["user_name"]}</option>`;
}
}
$("#change-perm-doc").html(users_select_perm);
$(".have_perm_inner").html(users_have_perm);
$("#change-perm_form input[name='folder_id']").val(doc_id);
$('#change-perm-doc').fastselect();
} catch (error) {
console.error(error);
}
$("#change-perm_modal_bg").fadeIn(500);
$("#change-perm_modal").toggle(10);
$("body").addClass("lock");
}
function changePermDoc() {
let name = 'change_perm_folder';
let folder_id = $("#change-perm_form input[name='folder_id']").val();
let users_perm = $('#change-perm-doc').val()
let params = {};
params.change_perm_folder = name;
params.folder_id = folder_id;
params.users_perm = users_perm;
$.post('/ajax/folders.php', params, function(data) {
console.log(users_perm);
console.log(data);
});
$("#change-perm_modal_bg").hide();
$("#change-perm_modal").toggle(10);
$("body").removeClass("lock");
}
function saveAdvBudget() {
let form = $(this).closest('form');
let formData = new FormData(form[0]);
form.find('.error_msg').empty();
let params = {};
formData.forEach(function(value, key) {
console.log(key, value);
params[key] = value;
});
}
function refreshCalendar(){
var events = {
url: '/ajax/calendarEvents.php',
type: 'POST',
error: function() {
alert('there was an error while fetching events!');
}
}
if($('#calendar ').hasClass('fc')){
$('#calendar').fullCalendar('removeEventSource', events);
$('#calendar').fullCalendar('addEventSource', events);
}
}