2395 lines
82 KiB
JavaScript
2395 lines
82 KiB
JavaScript
var addMap = null;
|
||
var editMap = null;
|
||
var tableCamp;
|
||
var startMarkerAdd
|
||
var endMarkerAdd
|
||
var isSetStartMarkerAdd = false
|
||
var isSetEndMarkerAdd = false
|
||
var startEditMap = null;
|
||
var endEditMap = null;
|
||
var isSetStartEditMap = false;
|
||
var isSetEndEditMap = false;
|
||
var routeControls = [];
|
||
var checkAjax = true
|
||
var checkEditAjax = true
|
||
var idChoosen
|
||
var mapUrl = 'https://rmsmap.rmto.ir/141map/';
|
||
var bounds = [
|
||
[42.9130026312, 75.6166317076],
|
||
[20.5782370061, 35.5092252948],
|
||
];
|
||
var startAbrarDivIcon = L.divIcon({
|
||
html: `
|
||
<div id="pin-marker-start" class="pin-marker">
|
||
<div class="map-pin-marker">
|
||
<div class="pin-main-circle"></div>
|
||
<div class="pin-white-circle"></div>
|
||
<div class="pin-title-circle">
|
||
<span class="title-circle-text">شروع</span>
|
||
</div>
|
||
<div class="pin-main-line"></div>
|
||
</div>
|
||
<div class="pin-main-shadow">
|
||
<div class="shadow-dot">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
`,
|
||
iconSize: [55, 75],
|
||
iconAnchor: [33, 64],
|
||
});
|
||
|
||
var endAbrarDivIcon = L.divIcon({
|
||
html: `
|
||
<div id="pin-marker-end" class="pin-marker">
|
||
<div class="map-pin-marker">
|
||
<div class="pin-main-circle"></div>
|
||
<div class="pin-white-circle"></div>
|
||
<div class="pin-title-circle">
|
||
<span class="title-circle-text">پایان</span>
|
||
</div>
|
||
<div class="pin-main-line"></div>
|
||
</div>
|
||
<div class="pin-main-shadow">
|
||
<div class="shadow-dot">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
`,
|
||
iconSize: [55, 75],
|
||
iconAnchor: [33, 64],
|
||
});
|
||
|
||
var startAbrarDivIconEdit = L.divIcon({
|
||
html: `
|
||
<div id="pin-marker-start-edit" class="pin-marker">
|
||
<div class="map-pin-marker">
|
||
<div class="pin-main-circle"></div>
|
||
<div class="pin-white-circle"></div>
|
||
<div class="pin-title-circle">
|
||
<span class="title-circle-text">شروع</span>
|
||
</div>
|
||
<div class="pin-main-line"></div>
|
||
</div>
|
||
<div class="pin-main-shadow">
|
||
<div class="shadow-dot">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
`,
|
||
iconSize: [55, 75],
|
||
iconAnchor: [33, 64],
|
||
});
|
||
|
||
var endAbrarDivIconEdit = L.divIcon({
|
||
html: `
|
||
<div id="pin-marker-end-edit" class="pin-marker">
|
||
<div class="map-pin-marker">
|
||
<div class="pin-main-circle"></div>
|
||
<div class="pin-white-circle"></div>
|
||
<div class="pin-title-circle">
|
||
<span class="title-circle-text">پایان</span>
|
||
</div>
|
||
<div class="pin-main-line"></div>
|
||
</div>
|
||
<div class="pin-main-shadow">
|
||
<div class="shadow-dot">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
`,
|
||
iconSize: [55, 75],
|
||
iconAnchor: [33, 64],
|
||
});
|
||
var projectEditData = [];
|
||
var startPos = [35.6892, 51.389];
|
||
var endPos = [35.6892, 51.389];
|
||
var fromDateCamp = null;
|
||
var PERMISSIONS = [];
|
||
var provinces = []
|
||
|
||
function showLoaderScreen() {
|
||
$(".divloader").css("display", "flex").hide().fadeIn();
|
||
}
|
||
|
||
function hideLoaderScreen() {
|
||
$(".divloader").fadeOut();
|
||
}
|
||
|
||
fromDateCamp = $("#datepickfromdate").persianDatepicker({
|
||
format: "YYYY/MM/DD",
|
||
autoClose: true,
|
||
initialValue: false,
|
||
});
|
||
|
||
$(document).bind('click', function (e) {
|
||
const clicked = $(e.target);
|
||
if (clicked.parents('.select2-selection__choice').length != 0 || clicked.parents('.datepicker-container').length != 0) return false;
|
||
if (clicked.closest('.btn-table-filter').length == 0 && clicked.closest(".parent-filter").length == 0 && $(".parent-filter").css("display") != "none") {
|
||
$(".parent-filter").css("display", "none");
|
||
}
|
||
});
|
||
(function () {
|
||
$.ajax({
|
||
url: "/webapi/user/get-permission",
|
||
type: "GET",
|
||
cache: false,
|
||
async: false,
|
||
contentType: false,
|
||
processData: false,
|
||
success: function (result) {
|
||
PERMISSIONS = result.data
|
||
},
|
||
error: function () {
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
text: 'مشکل در دریافت سطح دسترسی',
|
||
confirmButtonText: "بروزرسانی صفحه",
|
||
showLoaderOnConfirm: true,
|
||
preConfirm: () => {
|
||
location.reload(true);
|
||
},
|
||
});
|
||
}
|
||
})
|
||
if (!($.inArray('add-camp', PERMISSIONS) != -1 || $.inArray('add-camp-province', PERMISSIONS) != -1))
|
||
$('.add-camp-btn').remove()
|
||
|
||
/// [START] camp_add_btn
|
||
if (!($.inArray('add-camp', PERMISSIONS) != -1 || $.inArray('add-camp-province', PERMISSIONS) != -1))
|
||
$('.add-camp-btn').remove()
|
||
/// [END] camp_add_btn
|
||
if ($.inArray('show-camp', PERMISSIONS) != -1 || $.inArray('show-camp-province', PERMISSIONS) != -1) {
|
||
$.ajax({
|
||
/// [start] camp_add_province_url
|
||
url: `/webapi/getuser/province-perm${$.inArray('show-camp', PERMISSIONS) != -1 ? '?type=all' : ''}`,
|
||
/// [end] camp_add_province_url
|
||
type: "GET",
|
||
beforeSend: function () {
|
||
showLoaderScreen();
|
||
},
|
||
success: function (result) {
|
||
const provinces = result.data;
|
||
$("#filter-province").empty();
|
||
$("#filter-province").append('<option value="0">انتخاب استان</option>');
|
||
|
||
for (let index = 0; index < provinces.length; index++) {
|
||
$("#filter-province").append(
|
||
"\
|
||
<option value=" +
|
||
provinces[index].id +
|
||
">" +
|
||
provinces[index].name_fa +
|
||
"</option>\
|
||
"
|
||
);
|
||
}
|
||
|
||
hideLoaderScreen();
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
text: "مشکل در دریافت استان ها",
|
||
confirmButtonText: "بروزرسانی صفحه",
|
||
showLoaderOnConfirm: true,
|
||
preConfirm: () => {
|
||
location.reload(true);
|
||
},
|
||
});
|
||
},
|
||
});
|
||
}
|
||
/// [start] camp_add_province
|
||
if ($.inArray('add-camp', PERMISSIONS) != -1 || $.inArray('add-camp-province', PERMISSIONS) != -1) {
|
||
$.ajax({
|
||
/// [start] camp_add_province_url
|
||
url: `/webapi/getuser/province-perm${$.inArray('add-camp', PERMISSIONS) != -1 ? '?type=all' : ''}`,
|
||
/// [end] camp_add_province_url
|
||
type: "GET",
|
||
beforeSend: function () {
|
||
showLoaderScreen();
|
||
},
|
||
success: function (result) {
|
||
const provinces = result.data;
|
||
$("#add_camp_province").empty();
|
||
$("#add_camp_province").append('<option value="0">انتخاب استان</option>');
|
||
|
||
for (let index = 0; index < provinces.length; index++) {
|
||
$("#add_camp_province").append(
|
||
"\
|
||
<option value=" +
|
||
provinces[index].id +
|
||
">" +
|
||
provinces[index].name_fa +
|
||
"</option>\
|
||
"
|
||
);
|
||
}
|
||
|
||
hideLoaderScreen();
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
text: "مشکل در دریافت استان ها",
|
||
confirmButtonText: "بروزرسانی صفحه",
|
||
showLoaderOnConfirm: true,
|
||
preConfirm: () => {
|
||
location.reload(true);
|
||
},
|
||
});
|
||
},
|
||
});
|
||
}
|
||
/// [end] camp_add_province
|
||
|
||
/// [start] camp_edit_province
|
||
if ($.inArray('edit-camp', PERMISSIONS) != -1 || $.inArray('edit-camp-province', PERMISSIONS) != -1) {
|
||
$.ajax({
|
||
/// [start] camp_edit_province_url
|
||
url: `/webapi/getuser/province-perm${$.inArray('edit-camp', PERMISSIONS) != -1 ? '?type=all' : ''}`,
|
||
/// [end] camp_edit_province_url
|
||
type: "GET",
|
||
beforeSend: function () {
|
||
showLoaderScreen();
|
||
},
|
||
success: function (result) {
|
||
provinces = result.data;
|
||
|
||
$("#edit_camp_province").empty();
|
||
$("#edit_camp_province").append('<option value="0">انتخاب استان</option>');
|
||
|
||
for (let index = 0; index < provinces.length; index++) {
|
||
$("#edit_camp_province").append(
|
||
"\
|
||
<option value=" +
|
||
provinces[index].id +
|
||
">" +
|
||
provinces[index].name_fa +
|
||
"</option>\
|
||
"
|
||
);
|
||
}
|
||
|
||
hideLoaderScreen();
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
text: "مشکل در دریافت استان ها",
|
||
confirmButtonText: "بروزرسانی صفحه",
|
||
showLoaderOnConfirm: true,
|
||
preConfirm: () => {
|
||
location.reload(true);
|
||
},
|
||
});
|
||
},
|
||
});
|
||
}
|
||
/// [end] camp_edit_province
|
||
|
||
$.ajax({
|
||
/// [start] camp_filter_province_url
|
||
url: `/webapi/getuser/province-perm${$.inArray('show-camp', PERMISSIONS) != -1 ? '?type=all' : ''}`,
|
||
/// [end] camp_filter_province_url
|
||
type: "GET",
|
||
beforeSend: function () {
|
||
showLoaderScreen();
|
||
},
|
||
success: function (result) {
|
||
const provinces = result.data;
|
||
|
||
$("#province_excel").empty();
|
||
$("#province_excel").append('<option value="0">انتخاب استان</option>');
|
||
|
||
for (let index = 0; index < provinces.length; index++) {
|
||
$("#province_excel").append(
|
||
"\
|
||
<option value=" +
|
||
provinces[index].id +
|
||
">" +
|
||
provinces[index].name_fa +
|
||
"</option>\
|
||
"
|
||
);
|
||
}
|
||
|
||
hideLoaderScreen();
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
text: "مشکل در دریافت استان ها",
|
||
confirmButtonText: "بروزرسانی صفحه",
|
||
showLoaderOnConfirm: true,
|
||
preConfirm: () => {
|
||
location.reload(true);
|
||
},
|
||
});
|
||
},
|
||
});
|
||
|
||
$("[data-mask]").inputmask();
|
||
tableCamp = $("#winter-camp-table").DataTable({
|
||
dom: "<flB<t>p>",
|
||
pagingType: "simple_numbers",
|
||
scrollX: true,
|
||
language: {
|
||
sEmptyTable: "هیچ دادهای در جدول وجود ندارد",
|
||
sInfo: "نمایش _START_ تا _END_ از _TOTAL_ ردیف",
|
||
sInfoEmpty: "نمایش 0 تا 0 از 0 ردیف",
|
||
sInfoFiltered: "(فیلتر شده از _MAX_ ردیف)",
|
||
sInfoPostFix: "",
|
||
sInfoThousands: ",",
|
||
sLengthMenu: "نمایش _MENU_ ردیف",
|
||
sLoadingRecords: "در حال بارگزاری...",
|
||
sProcessing: "در حال پردازش...",
|
||
sSearch: "جستجو / فیلتر: ",
|
||
sZeroRecords: "رکوردی با این مشخصات پیدا نشد",
|
||
oPaginate: {
|
||
sFirst: "برگهی نخست",
|
||
sLast: "برگهی آخر",
|
||
sNext: "بعدی",
|
||
sPrevious: "قبلی",
|
||
},
|
||
oAria: {
|
||
sSortAscending: ": فعال سازی نمایش به صورت صعودی",
|
||
sSortDescending: ": فعال سازی نمایش به صورت نزولی",
|
||
},
|
||
},
|
||
order: [[0, "asc"][(1, "asc")], [2, "desc"], [3, "desc"], [4, "desc"]],
|
||
order: [[0, "asc"]],
|
||
processing: true,
|
||
select: true,
|
||
destroy: true,
|
||
ajax: {
|
||
url: "/webapi/camp/index",
|
||
type: "GET",
|
||
dataSrc: function (json) {
|
||
return json.data;
|
||
},
|
||
},
|
||
columns: [
|
||
{
|
||
className: "text-center",
|
||
data: null,
|
||
render: function (data, type, row, meta) {
|
||
return meta.row + 1;
|
||
},
|
||
},
|
||
{ className: "text-center", data: "province_fa" },
|
||
{
|
||
className: "text-center",
|
||
data: null,
|
||
render: function (data, type, row) {
|
||
if (data.city_2_fa != null && data.city_3_fa != null)
|
||
return `${data.city_1_fa}-${data.city_2_fa}-${data.city_3_fa}`;
|
||
else if (data.city_2_fa != null)
|
||
return `${data.city_1_fa}-${data.city_2_fa}`;
|
||
else return `${data.city_1_fa}`;
|
||
},
|
||
},
|
||
{ className: "text-center", data: "axis_name" },
|
||
{
|
||
className: "text-center", data: "axis_type_fa",
|
||
},
|
||
{ className: "text-center", data: "blockage_cause_fa" },
|
||
|
||
{ className: "text-center", data: "blockage_length" },
|
||
{ className: "text-center", data: "blockage_damage_higher_6_count" },
|
||
{ className: "text-center", data: "blockage_damage_lower_6_count" },
|
||
{ className: "text-center", data: "blockage_damage_count" },
|
||
{ className: "text-center", data: "active_cars_count" },
|
||
{ className: "text-center", data: "active_rahdar_count" },
|
||
{
|
||
className: "text-center",
|
||
data: null,
|
||
render: function (data, type, row) {
|
||
return `<button class="btn-dataTable btn-sm description">...</button>`;
|
||
},
|
||
},
|
||
{ className: "text-center", data: "blockage_damage_money" },
|
||
{
|
||
className: "text-nowrap testshow text-center",
|
||
data: null,
|
||
render: function (data) {
|
||
const createdAtFa = moment(data.submited_at).format('HH:mm:ss | YYYY/MM/DD')
|
||
return createdAtFa
|
||
}
|
||
},
|
||
{ className: "text-center", data: "prediction_time_fa" },
|
||
{
|
||
className: "text-nowrap testshow text-center",
|
||
data: null,
|
||
render: function (data) {
|
||
if (data.is_open_at != null) {
|
||
const createdAtFa = moment(data.is_open_at).format('HH:mm:ss | YYYY/MM/DD')
|
||
return createdAtFa + "</br>" + data.is_open_type_fa
|
||
}
|
||
else return "-"
|
||
}
|
||
},
|
||
{
|
||
className: "text-center",
|
||
data: null,
|
||
render: function (data, type, row) {
|
||
if (data.is_open_at == null) {
|
||
let content = '<div class="d-flex justify-content-center parent-btn">'
|
||
/// [start] camp_edit_can
|
||
if (data.canEdit)
|
||
content += '<button class="btn-dataTable Edit-row" title="ویرایش"><i class="fa fa-edit icon-btnTable"></i></button>'
|
||
/// [end] camp_edit_can
|
||
content += `<div class="line-btn-table"></div>
|
||
<button class="btn-dataTable location-button" title="مشاهده مکانی پروژه" ><i class="fa fa-eye icon-btnTable"></i></button>
|
||
<div class="line-btn-table"></div>
|
||
<button class="btn-dataTable image-show" title="مشاهده عکس ها" ><i class="fa fa-image icon-btnTable"></i></button>`
|
||
/// [start] camp_delete_can
|
||
if (data.canDelete)
|
||
content += `<div class="line-btn-table"></div>
|
||
<button class="btn-dataTable deletsubmit" title=" حذف " ><i class="fa fa-trash icon-btnTable"></i></button>`
|
||
/// [end] camp_delete_can
|
||
content += '</div>'
|
||
return content
|
||
|
||
} else {
|
||
let content = '<div class="d-flex justify-content-center parent-btn">'
|
||
content += `<button class="btn-dataTable location-button" title="مشاهده مکانی پروژه" ><i class="fa fa-eye icon-btnTable"></i></button>
|
||
<div class="line-btn-table"></div>
|
||
<button class="btn-dataTable image-show" title="مشاهده عکس ها" ><i class="fa fa-image icon-btnTable"></i></button>`
|
||
content += '</div>'
|
||
return content
|
||
}
|
||
},
|
||
},
|
||
{
|
||
className: "text-center",
|
||
data: null,
|
||
render: function (data, type, row) {
|
||
if (data.is_open_at == null) {
|
||
return `
|
||
<button class=" btn-dataTable btn btn-sm finalsubmit" title=" بازگشایی " ><i class="fa fa-check icon-btnTable"></i></button>
|
||
`;
|
||
} else {
|
||
return `
|
||
<button class=" btn-dataTable btn btn-sm finalsubmit" title=" بازگشایی " disabled ><i class="fa fa-check icon-btnTable"></i></button>
|
||
`;
|
||
}
|
||
},
|
||
},
|
||
],
|
||
buttons: [
|
||
{
|
||
text: '<div class="btn-table-filter"><div class="d-flex flex-column"><i class="fa mb-2 fa-filter icon-color"></i> فیلترینگ پیشرفته</div></div>',
|
||
action: function (e, dt, node, config) {
|
||
topPosition = $(e.target).parents('.btn-table-filter').offset().top + $(e.target).parents('.btn-table-filter').height() + 5
|
||
$(".parent-filter").css('top', topPosition);
|
||
$(".parent-filter").css("display", "block");
|
||
},
|
||
},
|
||
|
||
{
|
||
extend: "excelHtml5",
|
||
title: "Excel",
|
||
text:
|
||
'<div class="d-flex flex-column"><i class="fa mb-2 fa-book icon-color"></i>خروجی به اکسل</div>',
|
||
messageTop: "محورهای انسدادی ",
|
||
exportOptions: {
|
||
columns: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13],
|
||
},
|
||
customize: function (xlsx) {
|
||
var sheet = xlsx.xl.worksheets["sheet1.xml"];
|
||
$('row c[r^="M"]', sheet).each(function () {
|
||
|
||
$(this).attr("s", "52");
|
||
});
|
||
$('row c[r^="N"]', sheet).each(function () {
|
||
|
||
$(this).attr("s", "52");
|
||
});
|
||
},
|
||
},
|
||
|
||
],
|
||
initComplete: function () {
|
||
$("body").find(".dataTables_scrollBody").addClass("scrollbar");
|
||
},
|
||
});
|
||
})()
|
||
$("#submit-new-camp").on("click", function () {
|
||
checkAjax = true
|
||
let formData = new FormData();
|
||
var start_latlng = []
|
||
var end_latlng = []
|
||
var image_1
|
||
var image_2
|
||
var image_3
|
||
var province_id = $("#add_camp_province").children("option:selected").val();
|
||
|
||
var city_id = $("#town-id").children("option:selected").val();
|
||
|
||
var axis_name = $("#axis-name").val();
|
||
|
||
var axis_type = $("#axis-type").children("option:selected").val();
|
||
|
||
var blockage_cause = $("#dicc-type-id").children("option:selected").val();
|
||
|
||
var prediction_time = $("#predict-type-id").children("option:selected").val();
|
||
|
||
var blockage_length = $("#damage-road").val()
|
||
|
||
var blockage_damage_count = $("#damage-pol").val()
|
||
|
||
var blockage_damage_lower_6_count = $("#damage-pol-lessthan").val()
|
||
|
||
var blockage_damage_higher_6_count = $("#damage-pol-morethan").val()
|
||
|
||
var blockage_damage_money = $("#milion").val()
|
||
|
||
var active_cars_count = $("#machinery-count").val()
|
||
|
||
var active_rahdar_count = $("#active_rahdar").val()
|
||
|
||
var block_axis_desc = $("#extra-modal").val()
|
||
|
||
if (!isSetStartMarkerAdd) {
|
||
start_latlng = []
|
||
}
|
||
else {
|
||
start_latlng.push(startMarkerAdd.getLatLng().lat.toFixed(6))
|
||
start_latlng.push(startMarkerAdd.getLatLng().lng.toFixed(6))
|
||
}
|
||
|
||
if (!isSetEndMarkerAdd) {
|
||
end_latlng = []
|
||
}
|
||
else {
|
||
end_latlng.push(endMarkerAdd.getLatLng().lat.toFixed(6))
|
||
end_latlng.push(endMarkerAdd.getLatLng().lng.toFixed(6))
|
||
}
|
||
var image_1 = $("#deviceImg1").get(0).files[0];
|
||
var image_2 = $("#deviceImg2").get(0).files[0];
|
||
var image_3 = $("#deviceImg3").get(0).files[0];
|
||
|
||
|
||
|
||
if (image_1 == undefined) {
|
||
checkAjax = false
|
||
$(".imagebox1").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('image_1', image_1);
|
||
$(".imagebox1").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (image_2 == undefined) {
|
||
checkAjax = false
|
||
$(".imagebox2").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('image_2', image_2);
|
||
$(".imagebox2").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (image_3 == undefined) {
|
||
checkAjax = false
|
||
$(".imagebox3").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('image_3', image_3);
|
||
$(".imagebox3").removeClass("is-invalid-input");
|
||
}
|
||
if (province_id == 0) {
|
||
checkAjax = false
|
||
$("#add_camp_province").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('province_id', province_id);
|
||
$("#add_camp_province").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (city_id == 0) {
|
||
checkAjax = false
|
||
$("#town-id").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('city_id', city_id);
|
||
$("#town-id").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (axis_name == "") {
|
||
checkAjax = false
|
||
$("#axis-name").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('axis_name', axis_name);
|
||
$("#axis-name").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (axis_type == 0) {
|
||
checkAjax = false
|
||
$("#axis-type").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('axis_type', axis_type);
|
||
$("#axis-type").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_cause == 0) {
|
||
checkAjax = false
|
||
$("#dicc-type-id").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_cause', blockage_cause);
|
||
$("#dicc-type-id").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (prediction_time == 0) {
|
||
checkAjax = false
|
||
$("#predict-type-id").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('prediction_time', prediction_time);
|
||
$("#predict-type-id").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_length == "") {
|
||
checkAjax = false
|
||
$("#damage-road").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_length', blockage_length);
|
||
$("#damage-road").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_damage_count == "") {
|
||
checkAjax = false
|
||
$("#damage-pol").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_damage_count', blockage_damage_count);
|
||
$("#damage-pol").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_damage_lower_6_count == "") {
|
||
checkAjax = false
|
||
$("#damage-pol-lessthan").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_damage_lower_6_count', blockage_damage_lower_6_count);
|
||
$("#damage-pol-lessthan").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_damage_higher_6_count == "") {
|
||
checkAjax = false
|
||
$("#damage-pol-morethan").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_damage_higher_6_count', blockage_damage_higher_6_count);
|
||
$("#damage-pol-morethan").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_damage_money == "") {
|
||
checkAjax = false
|
||
$("#milion").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_damage_money', blockage_damage_money);
|
||
$("#milion").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (active_cars_count == "") {
|
||
checkAjax = false
|
||
$("#machinery-count").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('active_cars_count', active_cars_count);
|
||
$("#machinery-count").removeClass("is-invalid-input");
|
||
}
|
||
if (active_rahdar_count == "") {
|
||
checkAjax = false
|
||
$("#active_rahdar").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('active_rahdar_count', active_rahdar_count);
|
||
$("#active_rahdar").removeClass("is-invalid-input");
|
||
}
|
||
if (block_axis_desc == "") {
|
||
checkAjax = false
|
||
$("#extra-modal").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('block_axis_desc', block_axis_desc);
|
||
$("#extra-modal").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (start_latlng.length != 0) {
|
||
$("input[name=project-latlng-start]").removeClass("is-invalid-input")
|
||
formData.append('start_latlng', start_latlng);
|
||
} else {
|
||
checkAjax = false
|
||
$("input[name=project-latlng-start]").addClass("is-invalid-input")
|
||
}
|
||
|
||
if (end_latlng.length != 0) {
|
||
formData.append('end_latlng', end_latlng);
|
||
$("input[name=project-latlng-end]").removeClass("is-invalid-input")
|
||
} else {
|
||
checkAjax = false
|
||
$("input[name=project-latlng-end]").addClass("is-invalid-input")
|
||
}
|
||
if (checkAjax) {
|
||
$.ajax({
|
||
url: "/webapi/camp/storeDevelop",
|
||
type: "POST",
|
||
data: formData,
|
||
headers: {
|
||
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
|
||
},
|
||
cache: false,
|
||
contentType: false,
|
||
processData: false,
|
||
success: function (result) {
|
||
Swal.fire({
|
||
text: "با موفقیت ثبت شد",
|
||
icon: 'success',
|
||
confirmButtonColor: '#3085d6',
|
||
confirmButtonText: 'بستن'
|
||
}).then((result) => {
|
||
if (result.isConfirmed) {
|
||
showLoaderScreen()
|
||
location.reload(true);
|
||
}
|
||
})
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
text: "خطایی رخ داده است",
|
||
confirmButtonText: "بستن",
|
||
});
|
||
},
|
||
});
|
||
}
|
||
});
|
||
$("#winter-camp-table").on("click", "button.Edit-row", function () {
|
||
$("#edit-add-camp").removeAttr('disabled')
|
||
var start_latlng
|
||
var end_latlng
|
||
var tr = $(this).closest("tr");
|
||
var row = tableCamp.row(tr);
|
||
selectedId = row.data().id;
|
||
start_latlng = row.data().start_latlng
|
||
end_latlng = row.data().end_latlng
|
||
idChoosen = row.data().id
|
||
$("#winter-camp-modal-edit").modal("show");
|
||
resetEditData(row.data())
|
||
if (editMap == null) {
|
||
setTimeout(() => {
|
||
console.log("edit1")
|
||
createLeafletMapEdit(start_latlng, end_latlng);
|
||
}, 400);
|
||
} else {
|
||
console.log("edit2")
|
||
|
||
reinitialMapEdit(start_latlng, end_latlng, 1);
|
||
}
|
||
})
|
||
$("#winter-camp-table").on("click", "button.description", function () {
|
||
var tr = $(this).closest("tr");
|
||
var row = tableCamp.row(tr);
|
||
var block_axis_desc = row.data().block_axis_desc
|
||
$("#description").modal("show");
|
||
$("#description-text").val(block_axis_desc)
|
||
|
||
})
|
||
$("#winter-camp-table").on("click", "button.image-show", function () {
|
||
var tr = $(this).closest("tr");
|
||
var row = tableCamp.row(tr);
|
||
var photoSelected = row.data().files
|
||
$("#photo-modal").modal("show")
|
||
for (var i = 0; i < 3; i++) {
|
||
$("#imgSubItem" + i + "").removeAttr("src")
|
||
if (photoSelected[i] != undefined) {
|
||
$("#imgSubItem" + i + "").attr("src", "/" + photoSelected[i].path.replace("public", "storage") + "")
|
||
}
|
||
else {
|
||
$("#imgSubItem" + i + "").attr("src", "../dist/images/notavailable.jpg")
|
||
|
||
}
|
||
}
|
||
});
|
||
$("#add-camp-btn").on("click", function () {
|
||
$("#submit-new-camp").removeAttr('disabled')
|
||
$("#winter-camp-modal").modal("show");
|
||
resetData();
|
||
if (addMap == null) {
|
||
setTimeout(() => {
|
||
console.log("add1")
|
||
createLeafletMap();
|
||
}, 400);
|
||
} else {
|
||
console.log("add2")
|
||
|
||
reinitialMap(35.7065000000, 51.3477000000);
|
||
}
|
||
|
||
});
|
||
$("#winter-camp-table").on("click", "button.location-button", function () {
|
||
var tr = $(this).closest("tr");
|
||
var row = tableCamp.row(tr);
|
||
idSelect = row.data().id;
|
||
window.open("/v2/winter_camp/map/" + idSelect);
|
||
});
|
||
$("#winter-camp-table").on("click", "button.deletsubmit", function () {
|
||
var tr = $(this).closest("tr");
|
||
var row = tableCamp.row(tr);
|
||
idSelect = row.data().id;
|
||
Swal.fire({
|
||
icon: "warning",
|
||
title: "آیا برای حذف مطمئن هستید؟",
|
||
showCancelButton: true,
|
||
confirmButtonColor: "#3085d6",
|
||
cancelButtonColor: "#d33",
|
||
confirmButtonText: "بله، تایید میشود",
|
||
cancelButtonText: "منصرف شدم!",
|
||
showLoaderOnConfirm: true,
|
||
preConfirm: () => {
|
||
showLoaderScreen();
|
||
$.ajax({
|
||
url: "/webapi/camp/deleteDevelop/" + idSelect,
|
||
type: "POST",
|
||
headers: {
|
||
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
|
||
},
|
||
cache: false,
|
||
contentType: false,
|
||
processData: false,
|
||
success: function (result) {
|
||
location.reload(true);
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
confirmButtonText: "بستن",
|
||
});
|
||
},
|
||
});
|
||
},
|
||
});
|
||
});
|
||
$("#town-id").on("change", function () {
|
||
if (parseInt($(this).children("option:selected").val()) == 0) {
|
||
$("#town-id").addClass("is-invalid-input");
|
||
} else {
|
||
$("#town-id").removeClass("is-invalid-input");
|
||
}
|
||
});
|
||
$("#edit-add-camp").on("click", function () {
|
||
checkEditAjax = true
|
||
let formData = new FormData();
|
||
var start_latlng = []
|
||
var end_latlng = []
|
||
var image_1
|
||
var image_2
|
||
var image_3
|
||
var province_id = $("#edit_camp_province").children("option:selected").val();
|
||
|
||
var city_id = $("#town-id-edit").children("option:selected").val();
|
||
|
||
var axis_name = $("#axis-name-edit").val();
|
||
|
||
var axis_type = $("#axis-type-edit").children("option:selected").val();
|
||
|
||
var blockage_cause = $("#dicc-type-id-edit").children("option:selected").val();
|
||
|
||
var prediction_time = $("#predict-type-id-edit").children("option:selected").val();
|
||
|
||
var blockage_length = $("#damage-road-edit").val()
|
||
|
||
var blockage_damage_count = $("#damage-pol-edit").val()
|
||
|
||
var blockage_damage_lower_6_count = $("#damage-pol-lessthan-edit").val()
|
||
|
||
var blockage_damage_higher_6_count = $("#damage-pol-morethan-edit").val()
|
||
|
||
var blockage_damage_money = $("#milion-edit").val()
|
||
|
||
var active_cars_count = $("#machinery-count-edit").val()
|
||
|
||
var active_rahdar_count = $("#extra-modal-edit").val()
|
||
|
||
var block_axis_desc = $("#extra-edit").val()
|
||
|
||
if (!isSetStartEditMap) {
|
||
start_latlng = []
|
||
}
|
||
else {
|
||
start_latlng.push(startEditMap.getLatLng().lat.toFixed(6))
|
||
start_latlng.push(startEditMap.getLatLng().lng.toFixed(6))
|
||
}
|
||
|
||
if (!isSetEndEditMap) {
|
||
end_latlng = []
|
||
}
|
||
else {
|
||
end_latlng.push(endEditMap.getLatLng().lat.toFixed(6))
|
||
end_latlng.push(endEditMap.getLatLng().lng.toFixed(6))
|
||
}
|
||
var image_1 = $("#edit-deviceImg1").get(0).files[0];
|
||
var image_2 = $("#edit-deviceImg2").get(0).files[0];
|
||
var image_3 = $("#edit-deviceImg3").get(0).files[0];
|
||
|
||
if ((image_1 == undefined)) {
|
||
if ($('#edit-deviceImg1Preview').prop('src') === '') {
|
||
$(".edit-imagebox1").addClass("is-invalid-input");
|
||
checkEditAjax = false
|
||
}
|
||
} else {
|
||
formData.append('image_1', image_1);
|
||
$(".edit-imagebox1").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (image_2 == undefined) {
|
||
if ($('#edit-deviceImg2Preview').prop('src') === '') {
|
||
$(".edit-imagebox2").addClass("is-invalid-input");
|
||
checkEditAjax = false
|
||
}
|
||
} else {
|
||
formData.append('image_2', image_2);
|
||
$(".edit-imagebox2").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (image_3 == undefined) {
|
||
if ($('#edit-deviceImg3Preview').prop('src') === '') {
|
||
$(".edit-imagebox3").addClass("is-invalid-input");
|
||
checkEditAjax = false
|
||
}
|
||
} else {
|
||
formData.append('image_3', image_3);
|
||
$(".edit-imagebox3").removeClass("is-invalid-input");
|
||
}
|
||
if (province_id == 0) {
|
||
checkEditAjax = false
|
||
$("#edit_camp_province").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('province_id', province_id);
|
||
$("#edit_camp_province").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (city_id == 0) {
|
||
checkEditAjax = false
|
||
$("#town-id-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('city_id', city_id);
|
||
$("#town-id-edit").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (axis_name == "") {
|
||
checkEditAjax = false
|
||
$("#axis-name-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('axis_name', axis_name);
|
||
$("#axis-name-edit").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (axis_type == 0) {
|
||
checkEditAjax = false
|
||
$("#axis-type-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('axis_type', axis_type);
|
||
$("#axis-type-edit").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_cause == 0) {
|
||
checkEditAjax = false
|
||
$("#dicc-type-id-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_cause', blockage_cause);
|
||
$("#dicc-type-id-edit").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (prediction_time == 0) {
|
||
checkEditAjax = false
|
||
$("#predict-type-id-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('prediction_time', prediction_time);
|
||
$("#predict-type-id-edit").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_length == "") {
|
||
checkEditAjax = false
|
||
$("#damage-road-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_length', blockage_length);
|
||
$("#damage-road-edit").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_damage_count == "") {
|
||
checkEditAjax = false
|
||
$("#damage-pol-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_damage_count', blockage_damage_count);
|
||
$("#damage-pol-edit").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_damage_lower_6_count == "") {
|
||
checkEditAjax = false
|
||
$("#damage-pol-lessthan-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_damage_lower_6_count', blockage_damage_lower_6_count);
|
||
$("#damage-pol-lessthan-edit").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_damage_higher_6_count == "") {
|
||
checkEditAjax = false
|
||
$("#damage-pol-morethan-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_damage_higher_6_count', blockage_damage_higher_6_count);
|
||
$("#damage-pol-morethan-edit").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (blockage_damage_money == "") {
|
||
checkEditAjax = false
|
||
$("#milion-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('blockage_damage_money', blockage_damage_money);
|
||
$("#milion-edit").removeClass("is-invalid-input");
|
||
}
|
||
|
||
if (active_cars_count == "") {
|
||
checkEditAjax = false
|
||
$("#machinery-count-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('active_cars_count', active_cars_count);
|
||
$("#machinery-count-edit").removeClass("is-invalid-input");
|
||
}
|
||
if (active_rahdar_count == "") {
|
||
checkEditAjax = false
|
||
$("#extra-modal-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('active_rahdar_count', active_rahdar_count);
|
||
$("#extra-modal-edit").removeClass("is-invalid-input");
|
||
}
|
||
if (block_axis_desc == "") {
|
||
checkEditAjax = false
|
||
$("#extra-edit").addClass("is-invalid-input");
|
||
} else {
|
||
formData.append('block_axis_desc', block_axis_desc);
|
||
$("#extra-edit").removeClass("is-invalid-input");
|
||
}
|
||
if (start_latlng.length != 0) {
|
||
$("input[name=project-latlng-start-edit]").removeClass("is-invalid-input")
|
||
formData.append('start_latlng', start_latlng);
|
||
} else {
|
||
checkEditAjax = false
|
||
$("input[name=project-latlng-start-edit]").addClass("is-invalid-input")
|
||
}
|
||
if (end_latlng.length != 0) {
|
||
formData.append('end_latlng', end_latlng);
|
||
$("input[name=project-latlng-end-edit]").removeClass("is-invalid-input")
|
||
} else {
|
||
checkEditAjax = false
|
||
$("input[name=project-latlng-end-edit]").addClass("is-invalid-input")
|
||
}
|
||
if (checkEditAjax) {
|
||
$.ajax({
|
||
url: "/webapi/camp/editDevelop/" + idChoosen,
|
||
type: "POST",
|
||
data: formData,
|
||
headers: {
|
||
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
|
||
},
|
||
cache: false,
|
||
contentType: false,
|
||
processData: false,
|
||
success: function (result) {
|
||
Swal.fire({
|
||
text: "با موفقیت ثبت شد",
|
||
icon: 'success',
|
||
confirmButtonColor: '#3085d6',
|
||
confirmButtonText: 'بستن'
|
||
}).then((result) => {
|
||
if (result.isConfirmed) {
|
||
showLoaderScreen()
|
||
$("#winter-camp-modal-edit").modal("hide")
|
||
location.reload(true);
|
||
}
|
||
})
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
text: "خطایی رخ داده است",
|
||
confirmButtonText: "بستن",
|
||
});
|
||
},
|
||
});
|
||
}
|
||
else {
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
text: "لطفا تمام آیتم ها را پر نمایید",
|
||
confirmButtonText: "بستن",
|
||
});
|
||
}
|
||
|
||
|
||
});
|
||
$(".cancel").on("click", function () {
|
||
$("#winter-camp-modal").modal("hide");
|
||
});
|
||
$(".cancel-edit").on("click", function () {
|
||
$("#winter-camp-modal-edit").modal("hide");
|
||
});
|
||
$(".cancel-describe").on("click", function () {
|
||
$("#description").modal("hide");
|
||
});
|
||
$("#add_camp_province").on("change", function () {
|
||
if (parseInt($(this).children("option:selected").val()) == 0) {
|
||
$("#add_camp_province").addClass("is-invalid-input");
|
||
} else {
|
||
showLoaderScreen()
|
||
$("#add_camp_province").removeClass("is-invalid-input");
|
||
onLocationChange(parseInt($(this).children("option:selected").val()))
|
||
addTowntoSelect(parseInt($(this).children("option:selected").val()))
|
||
}
|
||
});
|
||
$("#edit_camp_province").on("change", function () {
|
||
if (parseInt($(this).children("option:selected").val()) == 0) {
|
||
$("#edit_camp_province").addClass("is-invalid-input");
|
||
} else {
|
||
showLoaderScreen()
|
||
$("#edit_camp_province").removeClass("is-invalid-input");
|
||
onLocationChangeEdit(parseInt($(this).children("option:selected").val()))
|
||
addTowntoSelectEdit(parseInt($(this).children("option:selected").val()))
|
||
}
|
||
});
|
||
|
||
$("#axis-name-id").on("change", function () {
|
||
if ($(this).val() == "") {
|
||
$("#axis-name-id").addClass("is-invalid-input");
|
||
} else {
|
||
$("#axis-name-id").removeClass("is-invalid-input");
|
||
}
|
||
});
|
||
$("#axis-type-id").on("change", function () {
|
||
if (parseInt($(this).children("option:selected").val()) == 0) {
|
||
$("#axis-type-id").addClass("is-invalid-input");
|
||
} else {
|
||
$("#axis-type-id").removeClass("is-invalid-input");
|
||
}
|
||
});
|
||
// filter camp
|
||
$("#btn_filter_show").on("click", function () {
|
||
showLoaderScreen()
|
||
var filterCamp = ""
|
||
var provinceFiletr
|
||
var blockage
|
||
var axisType
|
||
var CampStartTime
|
||
var timeVal
|
||
let queryParems = []
|
||
|
||
provinceFiletr = $("#filter-province").val()
|
||
blockage = $("#blockage").val()
|
||
axisType = $("#axis_type").val()
|
||
timeVal = $("#datepickfromdate").val()
|
||
|
||
CampStartTime = moment(
|
||
fromDateCamp.getState().selected.year +
|
||
"/" +
|
||
fromDateCamp.getState().selected.month +
|
||
"/" +
|
||
fromDateCamp.getState().selected.date,
|
||
"jYYYY/jM/jD"
|
||
);
|
||
|
||
if (timeVal != "") {
|
||
queryParems.push(`blockage_date=${CampStartTime.locale("fa").format("YYYY-MM-DD")}`)
|
||
}
|
||
if (provinceFiletr != 0)
|
||
queryParems.push(`province=${provinceFiletr}`)
|
||
if (axisType != 0)
|
||
queryParems.push(`axis_type=${axisType}`)
|
||
if (blockage != 0)
|
||
queryParems.push(`blockage=${blockage}`)
|
||
|
||
const url = `/camp/all${queryParems.length != 0 ? `?${queryParems.join('&')}` : ''}`
|
||
|
||
$.ajax({
|
||
url: url,
|
||
type: "GET",
|
||
success: function (result) {
|
||
hideLoaderScreen()
|
||
if (result.data.length != 0) {
|
||
$("#winter-camp-table").dataTable().fnClearTable();
|
||
$("#winter-camp-table").dataTable().fnAddData(result.data);
|
||
}
|
||
else {
|
||
$("#winter-camp-table").dataTable().fnClearTable();
|
||
|
||
}
|
||
|
||
},
|
||
error: function (error) {
|
||
|
||
|
||
},
|
||
});
|
||
})
|
||
function createLeafletMap() {
|
||
addMap = L.map("add-map", {
|
||
maxBounds: bounds,
|
||
minZoom: 6, zoomControl: true, zoom: 1, zoomAnimation: false, fadeAnimation: true, markerZoomAnimation: true
|
||
}).setView([35.7065000000, 51.3477000000], 7);
|
||
|
||
|
||
L.tileLayer(`${mapUrl}{z}/{x}/{y}.png`, {}).addTo(addMap);
|
||
setMarkerDefaultAdd()
|
||
}
|
||
function reinitialMap(lat, lng) {
|
||
isSetStartMarkerAdd = false
|
||
isSetEndMarkerAdd = false
|
||
if (routeControls.length) {
|
||
$(routeControls).each(function (index, control) {
|
||
addMap.removeControl(control);
|
||
routeControls.splice(routeControls.indexOf(index), 1);
|
||
});
|
||
}
|
||
addMap.removeLayer(startMarkerAdd);
|
||
if (endMarkerAdd != null) {
|
||
addMap.removeLayer(endMarkerAdd);
|
||
}
|
||
addMap.setView([lat, lng], 7);
|
||
setMarkerDefaultAdd()
|
||
}
|
||
function setMarkerDefaultAdd() {
|
||
|
||
$("input[name=project-latlng-start]").val("")
|
||
$("input[name=project-latlng-end]").val("")
|
||
|
||
startMarkerAdd = new L.marker(L.latLng(addMap.getCenter()), {
|
||
icon: startAbrarDivIcon,
|
||
draggable: true,
|
||
}).addTo(addMap);
|
||
|
||
endMarkerAdd = new L.marker(L.latLng(addMap.getCenter()), {
|
||
icon: endAbrarDivIcon,
|
||
draggable: true,
|
||
})
|
||
|
||
addMap.on("move", function () {
|
||
if (!isSetStartMarkerAdd && !isSetEndMarkerAdd) {
|
||
startMarkerAdd.setLatLng(L.latLng(addMap.getCenter()));
|
||
$("#pin-marker-start").removeClass("pin-set").addClass("pin-move");
|
||
}
|
||
|
||
if (isSetStartMarkerAdd && !isSetEndMarkerAdd) {
|
||
endMarkerAdd.setLatLng(L.latLng(addMap.getCenter()));
|
||
$("#pin-marker-end").removeClass("pin-set").addClass("pin-move");
|
||
}
|
||
});
|
||
|
||
addMap.on("moveend", function () {
|
||
if (!isSetStartMarkerAdd && !isSetEndMarkerAdd) {
|
||
startMarkerAdd.setLatLng(L.latLng(addMap.getCenter()));
|
||
$("#pin-marker-start").removeClass("pin-move pin-set");
|
||
}
|
||
|
||
if (isSetStartMarkerAdd && !isSetEndMarkerAdd) {
|
||
endMarkerAdd.setLatLng(L.latLng(addMap.getCenter()));
|
||
$("#pin-marker-end").removeClass("pin-move pin-set");
|
||
}
|
||
});
|
||
|
||
startMarkerAdd.on("click", function () {
|
||
if (!isSetStartMarkerAdd) {
|
||
startMarkerAdd.setLatLng(L.latLng(addMap.getCenter()));
|
||
endMarkerAdd.setLatLng(L.latLng(addMap.getCenter()));
|
||
isSetStartMarkerAdd = true;
|
||
$("#pin-marker-start")
|
||
.removeClass("pin-move pin-warn")
|
||
.addClass("pin-set");
|
||
$("input[name=project-latlng-start]").val(
|
||
startMarkerAdd.getLatLng().lat.toFixed(6) +
|
||
startMarkerAdd.getLatLng().lng.toFixed(6)
|
||
);
|
||
$(
|
||
"input[name=project-latlng-start]"
|
||
).removeClass("validity-checker");
|
||
}
|
||
endMarkerAdd.addTo(addMap);
|
||
|
||
$(this).hide();
|
||
$("#pin-marker-start")
|
||
.removeClass("pin-move pin-warn")
|
||
.addClass("pin-set");
|
||
})
|
||
|
||
startMarkerAdd.on("drag", function () {
|
||
$("#pin-marker-start").addClass("pin-move");
|
||
});
|
||
|
||
startMarkerAdd.on("dragend", function () {
|
||
$("#pin-marker-start").removeClass("pin-move");
|
||
if ($("#pin-marker-start").hasClass("pin-set") || isSetStartMarkerAdd) {
|
||
$("#pin-marker-start").addClass("pin-set");
|
||
$("input[name=project-latlng-start]").val(
|
||
startMarkerAdd.getLatLng().lat.toFixed(6) +
|
||
startMarkerAdd.getLatLng().lng.toFixed(6)
|
||
);
|
||
$(
|
||
"input[name=project-latlng-start]"
|
||
).removeClass("validity-checker");
|
||
checkMarkersAndDrawPath();
|
||
} else {
|
||
addMap.setView(startMarkerAdd.getLatLng());
|
||
}
|
||
});
|
||
|
||
endMarkerAdd.on("click", function () {
|
||
if (!isSetEndMarkerAdd) {
|
||
isSetEndMarkerAdd = true;
|
||
$("#pin-marker-end").removeClass("pin-move").addClass("pin-set");
|
||
$("input[name=project-latlng-end]").val(
|
||
endMarkerAdd.getLatLng().lat.toFixed(6) +
|
||
endMarkerAdd.getLatLng().lng.toFixed(6)
|
||
);
|
||
$(
|
||
"input[name=project-latlng-end]"
|
||
).removeClass("validity-checker");
|
||
}
|
||
checkMarkersAndDrawPath();
|
||
})
|
||
|
||
endMarkerAdd.on("drag", function () {
|
||
$("#pin-marker-end").addClass("pin-move");
|
||
checkMarkersAndDrawPath();
|
||
});
|
||
|
||
endMarkerAdd.on("dragend", function () {
|
||
$("#pin-marker-end").removeClass("pin-move");
|
||
|
||
if ($("#pin-marker-end").hasClass("pin-set") || isSetEndMarkerAdd) {
|
||
$("#pin-marker-end").addClass("pin-set");
|
||
$("input[name=project-latlng-end]").val(
|
||
endMarkerAdd.getLatLng().lat.toFixed(6) +
|
||
endMarkerAdd.getLatLng().lng.toFixed(6)
|
||
);
|
||
$(
|
||
"input[name=project-latlng-end]"
|
||
).removeClass("validity-checker");
|
||
checkMarkersAndDrawPath();
|
||
} else {
|
||
addMap.setView(endMarkerAdd.getLatLng());
|
||
}
|
||
});
|
||
}
|
||
function resetData() {
|
||
$("#add_camp_province").val(0)
|
||
$("#axis-name").val("")
|
||
$("#axis-type").val(0)
|
||
$("#dicc-type-id").val(0)
|
||
$("#predict-type-id").val(0)
|
||
$("#damage-road").val("")
|
||
$("#milion").val("")
|
||
$("#damage-pol-morethan").val("")
|
||
$("#damage-pol-lessthan").val("")
|
||
$("#damage-pol").val("")
|
||
$("#machinery-count").val("")
|
||
$("#active_rahdar").val("")
|
||
$("#extra-modal").val("")
|
||
$("#town-id").val(0)
|
||
$('.img-preview').removeAttr('src');
|
||
$('.img-input').val('');
|
||
$('.img-title').css('display', '');
|
||
$(".btn-delete-img").attr('disabled', 'disabled')
|
||
|
||
|
||
|
||
$("#add_camp_province").removeClass("is-invalid-input");
|
||
$("#axis-name").removeClass("is-invalid-input");
|
||
$("#axis-type").removeClass("is-invalid-input");
|
||
$("#dicc-type-id").removeClass("is-invalid-input");
|
||
$("#predict-type-id").removeClass("is-invalid-input");
|
||
$("#damage-road").removeClass("is-invalid-input");
|
||
$("#milion").removeClass("is-invalid-input");
|
||
$("#damage-pol-morethan").removeClass("is-invalid-input");
|
||
$("#damage-pol-lessthan").removeClass("is-invalid-input");
|
||
$("#damage-pol").removeClass("is-invalid-input");
|
||
$("#machinery-count").removeClass("is-invalid-input");
|
||
$("#extra-modal").removeClass("is-invalid-input");
|
||
$("#town-id").removeClass("is-invalid-input");
|
||
$("#active_rahdar").removeClass("is-invalid-input");
|
||
$("#active_rahdar").removeClass("is-invalid-input");
|
||
$(".imgbox ").removeClass("is-invalid-input")
|
||
$(".map-latlng-input").removeClass("is-invalid-input")
|
||
}
|
||
function resetEditData(data) {
|
||
$("#edit_camp_province").val(data);
|
||
$("#axis-name-edit").val(data.axis_name);
|
||
$("#axis-type-edit").val(data.axis_type);
|
||
$("#dicc-type-id-edit").val(data.blockage_cause);
|
||
$("#predict-type-id-edit").val(data.prediction_time);
|
||
$("#damage-road-edit").val(data.blockage_length);
|
||
$("#milion-edit").val(data.blockage_damage_money);
|
||
$("#damage-pol-morethan-edit").val(data.blockage_damage_higher_6_count);
|
||
$("#damage-pol-lessthan-edit").val(data.blockage_damage_lower_6_count);
|
||
$("#damage-pol-edit").val(data.blockage_damage_count);
|
||
$("#machinery-count-edit").val(data.active_cars_count);
|
||
$("#extra-modal-edit").val(data.active_rahdar_count);
|
||
$("#extra-edit").val(data.block_axis_desc);
|
||
showSelectedPro(data.province_id)
|
||
addTownToEditedCity(data.province_id, data.city_id)
|
||
$("input[name=project-latlng-start-edit]").val(
|
||
data.start_latlng[0] +
|
||
data.start_latlng[1]
|
||
);
|
||
$("input[name=project-latlng-end-edit]").val(
|
||
data.end_latlng[0] +
|
||
data.end_latlng[1]
|
||
);
|
||
|
||
$("#edit-deviceImg1Preview").removeAttr("src")
|
||
$("#edit-deviceImg2Preview").removeAttr("src")
|
||
$("#edit-deviceImg3Preview").removeAttr("src")
|
||
$("#edit-deviceImg1Title").css("display", "block")
|
||
$("#edit-deviceImg2Title").css("display", "block")
|
||
$("#edit-deviceImg3Title").css("display", "block")
|
||
$("#edit-deleteDeviceImg1").attr('disabled', 'disabled');
|
||
$("#edit-deleteDeviceImg2").attr('disabled', 'disabled');
|
||
$("#edit-deleteDeviceImg3").attr('disabled', 'disabled');
|
||
|
||
if (data.files[0] != undefined) {
|
||
|
||
$("#edit-deviceImg1Preview").attr("src", "/" + data.files[0].path.replace("public", "storage") + "")
|
||
$("#edit-deviceImg1Title").css("display", "none")
|
||
$("#edit-deleteDeviceImg1").removeAttr('disabled');
|
||
|
||
|
||
}
|
||
if (data.files[1] != undefined) {
|
||
|
||
$("#edit-deviceImg2Preview").attr("src", "/" + data.files[1].path.replace("public", "storage") + "")
|
||
$("#edit-deviceImg2Title").css("display", "none")
|
||
$("#edit-deleteDeviceImg2").removeAttr('disabled');
|
||
|
||
|
||
}
|
||
if (data.files[2] != undefined) {
|
||
|
||
$("#edit-deviceImg3Preview").attr("src", "/" + data.files[2].path.replace("public", "storage") + "")
|
||
$("#edit-deviceImg3Title").css("display", "none")
|
||
$("#edit-deleteDeviceImg3").removeAttr('disabled');
|
||
|
||
|
||
}
|
||
|
||
|
||
$("#edit_camp_province").removeClass("is-invalid-input");
|
||
$("#axis-name-edit").removeClass("is-invalid-input");
|
||
$("#axis-type-edit").removeClass("is-invalid-input");
|
||
$("#dicc-type-id-edit").removeClass("is-invalid-input");
|
||
$("#predict-type-id-edit").removeClass("is-invalid-input");
|
||
$("#damage-road-edit").removeClass("is-invalid-input");
|
||
$("#milion-edit").removeClass("is-invalid-input");
|
||
$("#damage-pol-morethan-edit").removeClass("is-invalid-input");
|
||
$("#damage-pol-lessthan-edit").removeClass("is-invalid-input");
|
||
$("#damage-pol-edit").removeClass("is-invalid-input");
|
||
$("#machinery-count-edit").removeClass("is-invalid-input");
|
||
$("#extra-modal-edit").removeClass("is-invalid-input");
|
||
$("#extra-edit").removeClass("is-invalid-input");
|
||
$("#town-id-edit").removeClass("is-invalid-input");
|
||
$(".imgbox").removeClass("is-invalid-input")
|
||
$(".map-latlng-input-edit").removeClass("is-invalid-input")
|
||
}
|
||
function showSelectedPro(id) {
|
||
$("#edit_camp_province").empty();
|
||
$("#edit_camp_province").append('<option value="0" disabled>انتخاب اداره کل</option>');
|
||
|
||
for (let index = 0; index < provinces.length; index++) {
|
||
if (id == provinces[index].id) {
|
||
$("#edit_camp_province").append(
|
||
"\
|
||
<option value=" +
|
||
provinces[index].id +
|
||
" selected>" +
|
||
provinces[index].name_fa +
|
||
"</option>\
|
||
"
|
||
);
|
||
}
|
||
else {
|
||
$("#edit_camp_province").append(
|
||
"\
|
||
<option value=" +
|
||
provinces[index].id +
|
||
">" +
|
||
provinces[index].name_fa +
|
||
"</option>\
|
||
"
|
||
);
|
||
}
|
||
|
||
}
|
||
}
|
||
|
||
function createLeafletMapEdit(startlatlng, endlatlng) {
|
||
editMap = L.map("add-map-edit", {
|
||
maxBounds: bounds,
|
||
minZoom: 6, minZoom: 6, zoomControl: true, zoom: 1, zoomAnimation: false, fadeAnimation: true, markerZoomAnimation: true
|
||
}).setView(startlatlng, 7);
|
||
|
||
L.tileLayer(`${mapUrl}{z}/{x}/{y}.png`, {}).addTo(editMap);
|
||
setMarkerDefaultAddEdit(startlatlng, endlatlng, 1)
|
||
}
|
||
function reinitialMapEdit(startlatlng, endlatlng, status) {
|
||
if (routeControls.length) {
|
||
$(routeControls).each(function (index, control) {
|
||
editMap.removeControl(control);
|
||
routeControls.splice(routeControls.indexOf(index), 1);
|
||
});
|
||
}
|
||
editMap.removeLayer(startEditMap);
|
||
if (endEditMap != null) {
|
||
editMap.removeLayer(endEditMap);
|
||
}
|
||
editMap.setView(startlatlng, 7);
|
||
setMarkerDefaultAddEdit(startlatlng, endlatlng, status)
|
||
}
|
||
function setMarkerDefaultAddEdit(startlatlng, endlatlng, status) {
|
||
if (status == 1) {
|
||
isSetStartEditMap = true;
|
||
isSetEndEditMap = true;
|
||
startEditMap = new L.marker(L.latLng(startlatlng), {
|
||
icon: startAbrarDivIconEdit,
|
||
draggable: true,
|
||
}).addTo(editMap);
|
||
|
||
endEditMap = new L.marker(L.latLng(endlatlng), {
|
||
icon: endAbrarDivIconEdit,
|
||
draggable: true,
|
||
}).addTo(editMap)
|
||
$("#pin-marker-start-edit").removeClass("pin-move pin-warn").addClass("pin-set");
|
||
$("#pin-marker-end-edit").removeClass("pin-move pin-warn").addClass("pin-set");
|
||
checkMarkersAndDrawPathshow()
|
||
}
|
||
else {
|
||
isSetStartEditMap = false;
|
||
isSetEndEditMap = false;
|
||
startEditMap = new L.marker(L.latLng(startlatlng), {
|
||
icon: startAbrarDivIconEdit,
|
||
draggable: true,
|
||
}).addTo(editMap);
|
||
|
||
endEditMap = new L.marker(L.latLng(endlatlng), {
|
||
icon: endAbrarDivIconEdit,
|
||
draggable: true,
|
||
})
|
||
|
||
$("#pin-marker-start-edit").removeClass("pin-set")
|
||
$("#pin-marker-start-edit").removeClass("pin-set")
|
||
|
||
$("input[name=project-latlng-start-edit]").val("");
|
||
$("input[name=project-latlng-end-edit]").val("");
|
||
|
||
}
|
||
|
||
editMap.on("move", function () {
|
||
if (!isSetStartEditMap && !isSetEndEditMap) {
|
||
startEditMap.setLatLng(L.latLng(editMap.getCenter()));
|
||
$("#pin-marker-start-edit").removeClass("pin-set").addClass("pin-move");
|
||
}
|
||
|
||
if (isSetStartEditMap && !isSetEndEditMap) {
|
||
endEditMap.setLatLng(L.latLng(editMap.getCenter()));
|
||
$("#pin-marker-end-edit").removeClass("pin-set").addClass("pin-move");
|
||
}
|
||
});
|
||
|
||
editMap.on("moveend", function () {
|
||
if (!isSetStartEditMap && !isSetEndEditMap) {
|
||
startEditMap.setLatLng(L.latLng(editMap.getCenter()));
|
||
$("#pin-marker-start-edit").removeClass("pin-move pin-set");
|
||
}
|
||
|
||
if (isSetStartEditMap && !isSetEndEditMap) {
|
||
endEditMap.setLatLng(L.latLng(editMap.getCenter()));
|
||
$("#pin-marker-end-edit").removeClass("pin-move pin-set");
|
||
}
|
||
});
|
||
|
||
startEditMap.on("click", function () {
|
||
if (!isSetStartEditMap) {
|
||
startEditMap.setLatLng(L.latLng(editMap.getCenter()));
|
||
endEditMap.setLatLng(L.latLng(editMap.getCenter()));
|
||
isSetStartEditMap = true;
|
||
$("#pin-marker-start-edit")
|
||
.removeClass("pin-move pin-warn")
|
||
.addClass("pin-set");
|
||
$("input[name=project-latlng-start-edit]").val(
|
||
startEditMap.getLatLng().lat.toFixed(6) +
|
||
startEditMap.getLatLng().lng.toFixed(6)
|
||
);
|
||
$(
|
||
"input[name=project-latlng-start-edit]"
|
||
).removeClass("validity-checker");
|
||
}
|
||
endEditMap.addTo(editMap);
|
||
|
||
$(this).hide();
|
||
$("#pin-marker-start-edit")
|
||
.removeClass("pin-move pin-warn")
|
||
.addClass("pin-set");
|
||
})
|
||
|
||
startEditMap.on("drag", function () {
|
||
$("#pin-marker-start-edit").addClass("pin-move");
|
||
});
|
||
startEditMap.on("dragend", function () {
|
||
$("#pin-marker-start-edit").removeClass("pin-move");
|
||
if ($("#pin-marker-start-edit").hasClass("pin-set") || isSetStartEditMap) {
|
||
$("#pin-marker-start-edit").addClass("pin-set");
|
||
$("input[name=project-latlng-start-edit]").val(
|
||
startEditMap.getLatLng().lat.toFixed(6) +
|
||
startEditMap.getLatLng().lng.toFixed(6)
|
||
);
|
||
$(
|
||
"input[name=project-latlng-start-edit]"
|
||
).removeClass("validity-checker");
|
||
checkMarkersAndDrawPathshow();
|
||
} else {
|
||
editMap.setView(startEditMap.getLatLng());
|
||
}
|
||
});
|
||
|
||
endEditMap.on("click", function () {
|
||
if (!isSetEndEditMap) {
|
||
isSetEndEditMap = true;
|
||
$("#pin-marker-end-edit").removeClass("pin-move").addClass("pin-set");
|
||
$("input[name=project-latlng-end-edit]").val(
|
||
endEditMap.getLatLng().lat.toFixed(6) +
|
||
endEditMap.getLatLng().lng.toFixed(6)
|
||
);
|
||
$(
|
||
"input[name=project-latlng-end]"
|
||
).removeClass("validity-checker");
|
||
}
|
||
checkMarkersAndDrawPathshow();
|
||
})
|
||
|
||
endEditMap.on("drag", function () {
|
||
$("#pin-marker-end-edit").addClass("pin-move");
|
||
checkMarkersAndDrawPathshow();
|
||
});
|
||
|
||
endEditMap.on("dragend", function () {
|
||
$("#pin-marker-end-edit").removeClass("pin-move");
|
||
|
||
if ($("#pin-marker-end-edit").hasClass("pin-set") || isSetEndEditMap) {
|
||
$("#pin-marker-end-edit").addClass("pin-set");
|
||
$("input[name=project-latlng-end-edit]").val(
|
||
endEditMap.getLatLng().lat.toFixed(6) +
|
||
endEditMap.getLatLng().lng.toFixed(6)
|
||
);
|
||
$(
|
||
"input[name=project-latlng-end]"
|
||
).removeClass("validity-checker");
|
||
checkMarkersAndDrawPathshow();
|
||
} else {
|
||
editMap.setView(endEditMap.getLatLng());
|
||
}
|
||
});
|
||
}
|
||
function reloadTable() {
|
||
$.ajax({
|
||
url:
|
||
"/webapi/camp/index",
|
||
type: "GET",
|
||
success: function (result) {
|
||
$("#winter-camp-table").dataTable().fnClearTable();
|
||
$("#winter-camp-table").dataTable().fnAddData(result.data);
|
||
hideLoaderScreen();
|
||
$("#winter-camp-modal").modal("hide");
|
||
},
|
||
});
|
||
}
|
||
function onLocationChange(num) {
|
||
var choosenlat, choosenlng;
|
||
let provinceIndex = provinces.findIndex(function (entry) {
|
||
return entry.id == num;
|
||
});
|
||
if (provinceIndex != -1) {
|
||
choosenlat = provinces[provinceIndex].center_lat;
|
||
choosenlng = provinces[provinceIndex].center_long;
|
||
}
|
||
reinitialMap(choosenlat, choosenlng)
|
||
}
|
||
function onLocationChangeEdit(num) {
|
||
var choosenlat, choosenlng;
|
||
let provinceIndex = provinces.findIndex(function (entry) {
|
||
return entry.id == num;
|
||
});
|
||
if (provinceIndex != -1) {
|
||
choosenlat = provinces[provinceIndex].center_lat;
|
||
choosenlng = provinces[provinceIndex].center_long;
|
||
}
|
||
reinitialMapEdit([parseFloat(choosenlat), parseFloat(choosenlng)], [parseFloat(choosenlat), parseFloat(choosenlng)], 0)
|
||
|
||
}
|
||
function restrictInputOtherThanArabic($field) {
|
||
var arabicCharUnicodeRange = /[\u0600-\u06FF-0-9-45]/;
|
||
|
||
$field.bind("keypress", function (event) {
|
||
var key = event.which;
|
||
// 8 = backspace
|
||
if (key == 8 || key == 0 || key === 32) {
|
||
return true;
|
||
}
|
||
|
||
var str = String.fromCharCode(key);
|
||
if (arabicCharUnicodeRange.test(str)) {
|
||
return true;
|
||
}
|
||
|
||
return false;
|
||
});
|
||
}
|
||
function checkMarkersAndDrawPath() {
|
||
if (
|
||
$("#pin-marker-start").hasClass("pin-set") &&
|
||
!$("#pin-marker-start").hasClass("pin-move") &&
|
||
$("#pin-marker-end").hasClass("pin-set") &&
|
||
!$("#pin-marker-end").hasClass("pin-move")
|
||
) {
|
||
drawPath();
|
||
}
|
||
}
|
||
function checkMarkersAndDrawPathshow() {
|
||
if (
|
||
$("#pin-marker-start-edit").hasClass("pin-set") &&
|
||
!$("#pin-marker-start-edit").hasClass("pin-move") &&
|
||
$("#pin-marker-end-edit").hasClass("pin-set") &&
|
||
!$("#pin-marker-end-edit").hasClass("pin-move")
|
||
) {
|
||
drawPathshow();
|
||
}
|
||
}
|
||
function drawPath() {
|
||
if (routeControls.length) {
|
||
$(routeControls).each(function (index, control) {
|
||
addMap.removeControl(control);
|
||
routeControls.splice(routeControls.indexOf(index), 1);
|
||
});
|
||
}
|
||
routeControls.push(
|
||
L.Routing.control({
|
||
waypoints: [
|
||
L.latLng(
|
||
parseFloat(startMarkerAdd.getLatLng().lat),
|
||
parseFloat(startMarkerAdd.getLatLng().lng)
|
||
),
|
||
L.latLng(
|
||
parseFloat(endMarkerAdd.getLatLng().lat),
|
||
parseFloat(endMarkerAdd.getLatLng().lng)
|
||
),
|
||
],
|
||
fitSelectedRoutes: false,
|
||
draggableWaypoints: true,
|
||
createMarker: function () {
|
||
return null;
|
||
},
|
||
lineOptions: {
|
||
addWaypoints: false,
|
||
styles: [
|
||
{
|
||
color: "#28a745",
|
||
opacity: 0.8,
|
||
weight: 5,
|
||
},
|
||
],
|
||
},
|
||
})
|
||
.addTo(addMap)
|
||
);
|
||
$(".leaflet-control-container").css("display", "none");
|
||
$(".leaflet-routing-container-hide").css("display", "none");
|
||
}
|
||
function drawPathshow() {
|
||
if (routeControls.length) {
|
||
$(routeControls).each(function (index, control) {
|
||
editMap.removeControl(control);
|
||
routeControls.splice(routeControls.indexOf(index), 1);
|
||
});
|
||
}
|
||
routeControls.push(
|
||
L.Routing.control({
|
||
waypoints: [
|
||
L.latLng(
|
||
parseFloat(startEditMap.getLatLng().lat),
|
||
parseFloat(startEditMap.getLatLng().lng)
|
||
),
|
||
L.latLng(
|
||
parseFloat(endEditMap.getLatLng().lat),
|
||
parseFloat(endEditMap.getLatLng().lng)
|
||
),
|
||
],
|
||
fitSelectedRoutes: false,
|
||
draggableWaypoints: true,
|
||
createMarker: function () {
|
||
return null;
|
||
},
|
||
lineOptions: {
|
||
addWaypoints: false,
|
||
styles: [
|
||
{
|
||
color: "#28a745",
|
||
opacity: 0.8,
|
||
weight: 5,
|
||
},
|
||
],
|
||
},
|
||
})
|
||
.addTo(editMap)
|
||
);
|
||
$(".leaflet-control-container").css("display", "none");
|
||
$(".leaflet-routing-container-hide").css("display", "none");
|
||
}
|
||
$(".map-latlng-first-input").on(
|
||
"keyup",
|
||
function () {
|
||
checkStartMarkerValidation();
|
||
}
|
||
);
|
||
$(".map-latlng-sec-input").on(
|
||
"keyup",
|
||
function () {
|
||
checkEndMarkerValidation();
|
||
}
|
||
);
|
||
|
||
function checkStartMarkerValidation(forSaveData = false, pageOnLoad = false) {
|
||
let reg = /^([0-9]){2}\.([0-9])+$/;
|
||
let startLatLngVal = $(
|
||
".map-latlng-first-input"
|
||
)
|
||
.val()
|
||
.split(" - ");
|
||
let startLatLng = startLatLngVal.map(function (e) {
|
||
e = e.replace(/_/g, "");
|
||
return parseFloat(e.slice(1, -1));
|
||
});
|
||
if (isNaN(startLatLng[0])) {
|
||
if (!forSaveData) {
|
||
$(
|
||
".map-latlng-first-input"
|
||
).removeClass("is-invalid-input");
|
||
} else {
|
||
$(
|
||
".map-latlng-first-input"
|
||
).addClass("is-invalid-input");
|
||
}
|
||
$("#pin-marker-start").removeClass("pin-move pin-set");
|
||
$(".map-latlng-first-input").val("");
|
||
$(".map-latlng-first-input").attr(
|
||
"placeholder",
|
||
"(شروع) => (عرض جغرافیایی) - (طول جغرافیایی)"
|
||
);
|
||
return false;
|
||
} else if (!startLatLng == 2 ||
|
||
!reg.test(startLatLng[0]) ||
|
||
!reg.test(startLatLng[1])
|
||
) {
|
||
$(
|
||
".map-latlng-first-input"
|
||
).addClass("is-invalid-input");
|
||
$("#pin-marker-start").removeClass("pin-move pin-set");
|
||
return false;
|
||
} else {
|
||
if (!forSaveData) {
|
||
$(
|
||
".map-latlng-first-input"
|
||
).removeClass("is-invalid-input");
|
||
|
||
startMarkerAdd.setLatLng(startLatLng);
|
||
|
||
if (pageOnLoad) {
|
||
setTimeout(() => {
|
||
$("#pin-marker-start").removeClass("pin-move").addClass("pin-set");
|
||
startMarkerAdd.setLatLng(startLatLng);
|
||
}, 10);
|
||
} else {
|
||
$("#pin-marker-start").removeClass("pin-move").addClass("pin-set");
|
||
}
|
||
if (!isSetEndMarkerAdd) {
|
||
let markerLatLng = [
|
||
startMarkerAdd.getLatLng().lat,
|
||
startMarkerAdd.getLatLng().lng + 0.0008,
|
||
];
|
||
|
||
addMap.setView(markerLatLng);
|
||
endMarkerAdd.setLatLng(markerLatLng);
|
||
|
||
if (!isSetStartMarkerAdd) {
|
||
endMarkerAdd.addTo(addMap);
|
||
}
|
||
}
|
||
isSetStartMarkerAdd = true;
|
||
}
|
||
checkMarkersAndDrawPath();
|
||
|
||
return true;
|
||
}
|
||
}
|
||
function checkEndMarkerValidation(forSaveData = false, pageOnLoad = false) {
|
||
let reg = /^([0-9]){2}\.([0-9])+$/;
|
||
let endLatLngVal = $(
|
||
".map-latlng-sec-input"
|
||
)
|
||
.val()
|
||
.split(" - ");
|
||
let endLatLng = endLatLngVal.map(function (e) {
|
||
e = e.replace(/_/g, "");
|
||
return parseFloat(e.slice(1, -1));
|
||
});
|
||
|
||
if (isNaN(endLatLng[0])) {
|
||
if (!forSaveData) {
|
||
$(
|
||
".map-latlng-sec-input"
|
||
).removeClass("is-invalid-input");
|
||
} else {
|
||
$(
|
||
".map-latlng-sec-input"
|
||
).addClass("is-invalid-input");
|
||
}
|
||
$("#pin-marker-end").removeClass("pin-move pin-set");
|
||
$(".map-latlng-sec-input").val("");
|
||
$(".map-latlng-sec-input").attr(
|
||
"placeholder",
|
||
"(پایان) => (طول جغرافیایی) - (عرض جغرافیایی)"
|
||
);
|
||
return false;
|
||
} else if (
|
||
!endLatLng == 2 ||
|
||
!reg.test(endLatLng[0]) ||
|
||
!reg.test(endLatLng[1])
|
||
) {
|
||
$(".map-latlng-sec-input").addClass(
|
||
"is-invalid-input"
|
||
);
|
||
$("#pin-marker-end").removeClass("pin-move pin-set");
|
||
return false;
|
||
} else {
|
||
if (!forSaveData) {
|
||
$(
|
||
".map-latlng-sec-input"
|
||
).removeClass("is-invalid-input");
|
||
|
||
endMarkerAdd.setLatLng(endLatLng);
|
||
isSetEndMarkerAdd = true;
|
||
|
||
if (pageOnLoad) {
|
||
setTimeout(() => {
|
||
$("#pin-marker-end").removeClass("pin-move").addClass("pin-set");
|
||
endMarkerAdd.setLatLng(endLatLng);
|
||
}, 10);
|
||
} else {
|
||
$("#pin-marker-end").removeClass("pin-move").addClass("pin-set");
|
||
}
|
||
}
|
||
|
||
checkMarkersAndDrawPath();
|
||
|
||
return true;
|
||
}
|
||
}
|
||
//edit marker
|
||
$(".map-latlng-first-input-edit").on(
|
||
"keyup",
|
||
function () {
|
||
checkStartMarkerValidationEdit();
|
||
}
|
||
);
|
||
$(".map-latlng-sec-input-edit").on(
|
||
"keyup",
|
||
function () {
|
||
checkEndMarkerValidationEdit();
|
||
}
|
||
);
|
||
function checkStartMarkerValidationEdit(forSaveData = false, pageOnLoad = false) {
|
||
let reg = /^([0-9]){2}\.([0-9])+$/;
|
||
let startLatLngVal = $(
|
||
".map-latlng-first-input-edit"
|
||
)
|
||
.val()
|
||
.split(" - ");
|
||
let startLatLng = startLatLngVal.map(function (e) {
|
||
e = e.replace(/_/g, "");
|
||
return parseFloat(e.slice(1, -1));
|
||
});
|
||
if (isNaN(startLatLng[0])) {
|
||
if (!forSaveData) {
|
||
$(
|
||
".map-latlng-first-input-edit"
|
||
).removeClass("is-invalid-input");
|
||
} else {
|
||
$(
|
||
".map-latlng-first-input-edit"
|
||
).addClass("is-invalid-input");
|
||
}
|
||
$("#pin-marker-start-edit").removeClass("pin-move pin-set");
|
||
$(".map-latlng-first-input-edit").val("");
|
||
$(".map-latlng-first-input-edit").attr(
|
||
"placeholder",
|
||
"(شروع) => (طول جغرافیایی) - (عرض جغرافیایی)"
|
||
);
|
||
return false;
|
||
} else if (
|
||
!startLatLng == 2 ||
|
||
!reg.test(startLatLng[0]) ||
|
||
!reg.test(startLatLng[1])
|
||
) {
|
||
$(
|
||
".map-latlng-first-input-edit"
|
||
).addClass("is-invalid-input");
|
||
$("#pin-marker-start-edit").removeClass("pin-move pin-set");
|
||
return false;
|
||
} else {
|
||
if (!forSaveData) {
|
||
$(
|
||
".map-latlng-first-input-edit"
|
||
).removeClass("is-invalid-input");
|
||
|
||
startEditMap.setLatLng(startLatLng);
|
||
|
||
if (pageOnLoad) {
|
||
setTimeout(() => {
|
||
$("#pin-marker-start-edit").removeClass("pin-move").addClass("pin-set");
|
||
startEditMap.setLatLng(startLatLng);
|
||
}, 10);
|
||
} else {
|
||
$("#pin-marker-start-edit").removeClass("pin-move").addClass("pin-set");
|
||
}
|
||
|
||
if (!isSetEndEditMap) {
|
||
let markerLatLng = [
|
||
startEditMap.getLatLng().lat,
|
||
startEditMap.getLatLng().lng + 0.0008,
|
||
];
|
||
|
||
editMap.setView(markerLatLng);
|
||
endAbrarMarker.setLatLng(markerLatLng);
|
||
|
||
if (!isSetstartEditMap) {
|
||
endAbrarMarker.addTo(editMap);
|
||
}
|
||
}
|
||
|
||
isSetStartEditMap = true;
|
||
}
|
||
|
||
checkMarkersAndDrawPathshow();
|
||
|
||
return true;
|
||
}
|
||
}
|
||
function checkEndMarkerValidationEdit(forSaveData = false, pageOnLoad = false) {
|
||
let reg = /^([0-9]){2}\.([0-9])+$/;
|
||
let endLatLngVal = $(
|
||
".map-latlng-sec-input-edit"
|
||
)
|
||
.val()
|
||
.split(" - ");
|
||
let endLatLng = endLatLngVal.map(function (e) {
|
||
e = e.replace(/_/g, "");
|
||
return parseFloat(e.slice(1, -1));
|
||
});
|
||
|
||
if (isNaN(endLatLng[0])) {
|
||
if (!forSaveData) {
|
||
$(
|
||
".map-latlng-sec-input-edit"
|
||
).removeClass("is-invalid-input");
|
||
} else {
|
||
$(
|
||
".map-latlng-sec-input-edit"
|
||
).addClass("is-invalid-input");
|
||
}
|
||
$("#pin-marker-end-edit").removeClass("pin-move pin-set");
|
||
$(".map-latlng-sec-input-edit").val("");
|
||
$(".map-latlng-sec-input-edit").attr(
|
||
"placeholder",
|
||
"(پایان) => (طول جغرافیایی) - (عرض جغرافیایی)"
|
||
);
|
||
return false;
|
||
} else if (
|
||
!endLatLng == 2 ||
|
||
!reg.test(endLatLng[0]) ||
|
||
!reg.test(endLatLng[1])
|
||
) {
|
||
$(".map-latlng-sec-input-edit").addClass(
|
||
"is-invalid-input"
|
||
);
|
||
$("#pin-marker-end-edit").removeClass("pin-move pin-set");
|
||
return false;
|
||
} else {
|
||
if (!forSaveData) {
|
||
$(
|
||
".map-latlng-sec-input-edit"
|
||
).removeClass("is-invalid-input");
|
||
|
||
endEditMap.setLatLng(endLatLng);
|
||
isSetEndEditMap = true;
|
||
|
||
if (pageOnLoad) {
|
||
setTimeout(() => {
|
||
$("#pin-marker-end-edit").removeClass("pin-move").addClass("pin-set");
|
||
endEditMap.setLatLng(endLatLng);
|
||
}, 10);
|
||
} else {
|
||
$("#pin-marker-end-edit").removeClass("pin-move").addClass("pin-set");
|
||
}
|
||
}
|
||
|
||
checkMarkersAndDrawPathshow();
|
||
|
||
return true;
|
||
}
|
||
}
|
||
// add photo
|
||
$(document).on('change', '.img-input', function () {
|
||
var input = this;
|
||
var parent = $(input).parents('.img-box');
|
||
if (input.files && input.files[0]) {
|
||
var reader = new FileReader();
|
||
reader.onload = function (e) {
|
||
parent.find('.img-title').css('display', 'none')
|
||
parent.find('.btn-delete-img').removeAttr('disabled');
|
||
parent.find('.img-preview')
|
||
.attr('src', e.target.result);
|
||
};
|
||
reader.readAsDataURL(input.files[0]);
|
||
}
|
||
})
|
||
|
||
$('.btn-delete-img').on('click', function () {
|
||
var parent = $(this).parents('.img-box');
|
||
parent.find('.img-input').val('');
|
||
parent.find('.img-preview').removeAttr('src');
|
||
parent.find('.img-title').css('display', '');
|
||
$(this).attr('disabled', 'disabled')
|
||
});
|
||
|
||
|
||
function addTowntoSelect(num) {
|
||
$.ajax({
|
||
url: "/public/contents/provinces/" + num,
|
||
type: "GET",
|
||
success: function (result) {
|
||
hideLoaderScreen();
|
||
$("#town-id").empty();
|
||
$("#town-id").append('<option value="0" selected disabled>انتخاب شهرستان</option>');
|
||
for (var i = 0; i < result.data.length; i++) {
|
||
$("#town-id").append(
|
||
"\
|
||
<option value=" +
|
||
result.data[i].id +
|
||
">" +
|
||
result.data[i].name_fa +
|
||
"</option>\
|
||
"
|
||
);
|
||
}
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
},
|
||
});
|
||
}
|
||
function addTowntoSelectEdit(num) {
|
||
$.ajax({
|
||
url: "/public/contents/provinces/" + num,
|
||
type: "GET",
|
||
success: function (result) {
|
||
hideLoaderScreen();
|
||
$("#town-id-edit").empty();
|
||
$("#town-id-edit").append('<option value="0" selected disabled>انتخاب شهرستان</option>');
|
||
for (var i = 0; i < result.data.length; i++) {
|
||
$("#town-id-edit").append(
|
||
"\
|
||
<option value=" +
|
||
result.data[i].id +
|
||
">" +
|
||
result.data[i].name_fa +
|
||
"</option>\
|
||
"
|
||
);
|
||
}
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
},
|
||
});
|
||
}
|
||
function addTownToEditedCity(num, cityid) {
|
||
showLoaderScreen()
|
||
$.ajax({
|
||
url: "/public/contents/provinces/" + num,
|
||
type: "GET",
|
||
success: function (result) {
|
||
hideLoaderScreen();
|
||
$("#town-id-edit").empty();
|
||
$("#town-id-edit").append('<option value="0" disabled>انتخاب شهرستان</option>');
|
||
for (var i = 0; i < result.data.length; i++) {
|
||
if (cityid == result.data[i].id) {
|
||
$("#town-id-edit").append(
|
||
"\
|
||
<option value=" +
|
||
result.data[i].id +
|
||
" selected>" +
|
||
result.data[i].name_fa +
|
||
"</option>\
|
||
"
|
||
);
|
||
}
|
||
else {
|
||
$("#town-id-edit").append(
|
||
"\
|
||
<option value=" +
|
||
result.data[i].id +
|
||
">" +
|
||
result.data[i].name_fa +
|
||
"</option>\
|
||
"
|
||
);
|
||
}
|
||
}
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
},
|
||
});
|
||
}
|
||
// add photo
|
||
restrictInputOtherThanArabic($("#axis-name"));
|
||
restrictInputOtherThanArabic($("#damage-road"));
|
||
restrictInputOtherThanArabic($("#milion"));
|
||
restrictInputOtherThanArabic($("#damage-pol-morethan"));
|
||
restrictInputOtherThanArabic($("#damage-pol-lessthan"));
|
||
restrictInputOtherThanArabic($("#damage-pol"));
|
||
restrictInputOtherThanArabic($("#machinery-count"));
|
||
restrictInputOtherThanArabic($("#active_rahdar"));
|
||
restrictInputOtherThanArabic($("#extra-modal"));
|
||
|
||
restrictInputOtherThanArabic($("#axis-name-edit"));
|
||
restrictInputOtherThanArabic($("#damage-road-edit"));
|
||
restrictInputOtherThanArabic($("#milion-edit"));
|
||
restrictInputOtherThanArabic($("#damage-pol-morethan-edit"));
|
||
restrictInputOtherThanArabic($("#damage-pol-lessthan-edit"));
|
||
restrictInputOtherThanArabic($("#damage-pol-edit"));
|
||
restrictInputOtherThanArabic($("#machinery-count-edit"));
|
||
restrictInputOtherThanArabic($("#extra-modal-edit"));
|
||
restrictInputOtherThanArabic($("#extra-edit"));
|
||
|
||
|
||
function restrictInputOtherThanArabic($field) {
|
||
var arabicCharUnicodeRange = /[\u0600-\u06FF-0-9-45]/;
|
||
|
||
$field.bind("keypress", function (event) {
|
||
var key = event.which;
|
||
if (key == 8 || key == 0 || key === 32) {
|
||
return true;
|
||
}
|
||
|
||
var str = String.fromCharCode(key);
|
||
if (arabicCharUnicodeRange.test(str)) {
|
||
return true;
|
||
}
|
||
|
||
return false;
|
||
});
|
||
}
|
||
function preventNonNumericalInput(e) {
|
||
e = e || window.event;
|
||
var charCode = (typeof e.which == "undefined") ? e.keyCode : e.which;
|
||
var charStr = String.fromCharCode(charCode);
|
||
|
||
if (!charStr.match(/^[0-9]+$/))
|
||
e.preventDefault();
|
||
}
|
||
// opening camp
|
||
$("#winter-camp-table").on("click", "button.finalsubmit", function () {
|
||
var tr = $(this).closest("tr");
|
||
var row = tableCamp.row(tr);
|
||
idChoosen = row.data().id
|
||
$("#openingModal").modal("show");
|
||
});
|
||
$(".temporary-open").on('click', function () {
|
||
let formData = new FormData();
|
||
formData.append("id", idChoosen);
|
||
formData.append("is-open-type", 1);
|
||
$.ajax({
|
||
url: "/camp/update",
|
||
type: "POST",
|
||
headers: {
|
||
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
|
||
},
|
||
beforeSend: function () {
|
||
showLoaderScreen();
|
||
},
|
||
data: formData,
|
||
cache: false,
|
||
contentType: false,
|
||
processData: false,
|
||
success: function (result) {
|
||
hideLoaderScreen();
|
||
$("#openingModal").modal("hide");
|
||
location.reload(true);
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
console.log(error);
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
confirmButtonText: "بستن",
|
||
});
|
||
},
|
||
});
|
||
})
|
||
$(".complet-open").on('click', function () {
|
||
let formData = new FormData();
|
||
formData.append("id", idChoosen);
|
||
formData.append("is-open-type", 2);
|
||
$.ajax({
|
||
url: "/camp/update",
|
||
type: "POST",
|
||
headers: {
|
||
"X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content"),
|
||
},
|
||
beforeSend: function () {
|
||
showLoaderScreen();
|
||
},
|
||
data: formData,
|
||
cache: false,
|
||
contentType: false,
|
||
processData: false,
|
||
success: function (result) {
|
||
hideLoaderScreen();
|
||
$("#openingModal").modal("hide");
|
||
location.reload(true);
|
||
},
|
||
error: function (error) {
|
||
hideLoaderScreen();
|
||
console.log(error);
|
||
Swal.fire({
|
||
icon: "error",
|
||
title: "خطا",
|
||
confirmButtonText: "بستن",
|
||
});
|
||
},
|
||
});
|
||
})
|
||
|