14249 lines
534 KiB
JavaScript
14249 lines
534 KiB
JavaScript
|
|
(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">×</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">Сохранить <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">Сохранить <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> <span class="file-name">' + file.filename + '</span></a>' +
|
|||
|
|
' <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 + '§ion=' + 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§ion=' + 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§ion=' + 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 + "®ion=" + 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);
|
|||
|
|
}
|
|||
|
|
}
|